21 điểm bởi GN⁺ 2025-04-24 | 2 bình luận | Chia sẻ qua WhatsApp
  • Việc tạo ra phần mềm bằng AI rất thú vị và năng suất, nhưng phần lớn ứng dụng AI lại kém hiệu quả như những "cỗ xe không ngựa (horseless carriage)" bắt chước lối cũ
  • Trợ lý email AI của Gmail tạo ra kết quả quá kiểu cách và không mang lại trải nghiệm cá nhân hóa cho người dùng
  • Một ứng dụng AI thực sự hữu ích nên cho phép người dùng chỉnh sửa System Prompt để tạo ra agent được cá nhân hóa
  • Ứng dụng lý tưởng trong thời đại AI không nên bắt chước các chương trình cũ, mà phải là phần mềm AI-native giúp giảm việc lặp lại của người dùng và thực sự nâng cao năng suất thông qua tự động hóa
  • Tiềm năng thực sự của AI nằm ở việc tự động hóa công việc hằng ngày để giúp người dùng tập trung vào những việc quan trọng và sáng tạo

Vì sao làm phần mềm bằng AI lại thú vị hơn dùng các ứng dụng do AI tạo ra

  • Gần đây tôi nhận ra một điều thú vị: so với việc sử dụng phần lớn các ứng dụng dựa trên AI, tự tay làm phần mềm bằng AI vui hơn và năng suất hơn nhiều
  • Khi dùng AI như một công cụ phát triển, ta gần như có cảm giác có thể nhanh chóng tạo ra bất cứ thứ gì mình tưởng tượng được
  • Ngược lại, nhiều ứng dụng AI chỉ đơn thuần gắn thêm tính năng AI, nhưng lại thiếu giá trị thực tế hoặc thậm chí còn bất tiện

“Cỗ xe không ngựa” của thời đại AI

  • Hiện nay, nhiều ứng dụng AI về bản chất vẫn đi theo nguyên xi cách thiết kế phần mềm cũ
  • Điều này khiến các mô hình mạnh như LLM bị đặt vào một cấu trúc ràng buộc không cần thiết
  • Có thể gọi chúng là những "cỗ xe không ngựa (horseless carriages)" của thời đại AI
    • Tương tự lịch sử thời kỳ đầu của ô tô, khi thiết kế vẫn giữ nguyên hình thức xe ngựa nên rất kém hiệu quả

Ví dụ về một ứng dụng AI được thiết kế sai: trợ lý AI của Gmail

  • Gần đây Gmail đã ra mắt tính năng tạo bản nháp email bằng mô hình Gemini
  • Trong ví dụ, người dùng (tác giả) yêu cầu tạo một email gửi cho sếp

> Prompt: yêu cầu tạo email cho sếp

  • Bản nháp do Gemini tạo ra tuy hoàn hảo về ngữ pháp nhưng hoàn toàn khác với cách tác giả thực sự sẽ viết
    • Phong cách thật của tác giả: "hey garry, my daughter woke up with the flu so I won't make it in today"
    • Kết quả của Gemini thì quá trang trọng và gượng gạo
  • Kết quả là còn mất nhiều thời gian hơn cả việc tự viết email
  • Tác giả mô tả tính năng này giống như quản lý một nhân viên làm việc kém hiệu quả
  • Hàng triệu người dùng Gmail có lẽ cũng đã có trải nghiệm tương tự, từ đó dễ hiểu lầm rằng AI vẫn chưa biết viết email
  • Nhưng vấn đề không nằm ở bản thân mô hình Gemini mà ở cách đội Gmail thiết kế ứng dụng

Ví dụ về một trợ lý email tốt hơn

  • Nếu Gmail xây dựng trợ lý email theo cách dưới đây, nó hẳn đã thực dụng hơn nhiều

Ví dụ về email reading agent

  • Demo này không viết email mà hoạt động theo cách đọc và xử lý email

  • Các công cụ được dùng:

    • labelEmail(label, color, priority) : gắn nhãn email
    • archiveEmail() : lưu trữ email
    • draftReply(body) : tạo bản nháp trả lời
  • Các email trong hộp thư đến được sắp như sau:

    • TechCrunch Weekly
    • Gustaf Alströmer - founder intro?
    • HackerNews Digest
    • The Verge Updates
    • Garry Tan - reschedule
    • và tổng cộng 12 email
  • Mỗi email được tự động phân loại và gán độ ưu tiên, một số được tự động tạo bản nháp trả lời hoặc tự động lưu trữ

  • Từng email được xử lý riêng theo System Prompt do người dùng định nghĩa

  • Người dùng có thể tự chỉnh sửa System Prompt để phản ánh logic gắn nhãn của mình

> Cách này mạnh hơn, trực quan hơn và năng suất hơn nhiều, vậy tại sao đội Gmail lại không thiết kế như thế?

  • Cốt lõi của vấn đề: giọng văn khuôn mẫu và đồng phục
    • Một trong những vấn đề lớn nhất phát sinh từ thiết kế của Gmail là văn phong quá điển hình và thiếu cá tính

AI Slop: đầu ra kiểu cách và gượng gạo

  • Bản nháp email do Gemini trong Gmail tạo ra quá dài dòng, quá hình thức và hoàn toàn khác phong cách của tác giả
  • Những kết quả như vậy thậm chí có thể trông giống email lừa đảo
  • Phần lớn người dùng LLM đều từng gặp tình huống này, và để tránh nó họ tự nhiên hình thành chiến lược gọi là prompt hacking
    • Ví dụ prompt:
      > "let my boss garry know that my daughter woke up with the flu and that I won't be able to come in to the office today. Use no more than one line for the entire email body. Make it friendly but really concise. Don't worry about punctuation or capitalization. Sign off with “Pete” or “pete” and not “Best Regards, Pete” and certainly not “Love, Pete”"
  • Chất lượng đầu ra tốt hơn, nhưng prompt trở nên quá dài và không hiệu quả vì phải lặp lại quy trình này mỗi lần
  • Cách giải quyết đơn giản cho vấn đề này là: trao cho người dùng quyền chỉnh sửa System Prompt

Phân biệt giữa System Prompt và User Prompt

  • Về bản chất, LLM là một hệ thống dự đoán từ tiếp theo dựa trên các từ đầu vào (prompt)
  • Mọi đầu vào và đầu ra đều ở dạng văn bản
    • Trong bài, tác giả chỉ nói đến giao diện xoay quanh văn bản để đơn giản hóa; trên thực tế, âm thanh hay video cũng có thể là đầu vào/đầu ra
  • Để đơn giản hóa điều này, OpenAI, Anthropic và các công ty khác đã tách prompt thành System PromptUser Prompt
    • System Prompt: định nghĩa tính cách và cách hành xử của agent (tương ứng với hàm)
    • User Prompt: yêu cầu hoặc câu hỏi cụ thể từ người dùng (tương ứng với giá trị đầu vào)
    • Phản hồi của mô hình: giá trị đầu ra

> Ví dụ:
> - User Prompt: "Let my boss Garry know that my daughter woke up with the flu this morning and that I won't be able to come in to the office today."
> - System Prompt ước đoán của Gmail:
> - "You are a helpful email-writing assistant responsible for writing emails on behalf of a Gmail user. Follow the user’s instructions and use a formal, businessy tone and correct punctuation so that it’s obvious the user is smart and serious."

  • Vấn đề là Gmail không công khai System Prompt này, cũng không cho người dùng quyền chỉnh sửa

System Prompt tùy biến của Pete

  • Nếu Gmail không dùng một System Prompt đồng phục mà cho người dùng quyền tự viết, có lẽ nó sẽ trông như sau:

    > You're Pete, a 43 year old husband, father, programmer, and YC Partner.
    > You're very busy and so is everyone you correspond with, so you do your best to keep your emails as short as possible and to the point. You avoid all unnecessary words and you often omit punctuation or leave misspellings unaddressed because it's not a big deal and you'd rather save the time. You prefer one-line emails.
    > Do your best to be kind, and don't be so informal that it comes across as rude.

  • Nếu để GPT tạo email dựa trên System Prompt như vậy, ta có thể nhận được kết quả sau:

    > Garry, my daughter has the flu. I can't come in today.

  • Kết quả này ngắn gọn, mang tính cá nhân và đúng với phong cách thật của người dùng

  • Ưu điểm lớn nhất là System Prompt này có thể tái sử dụng, nên mọi email viết sau đó cũng sẽ dùng cùng một phong cách

Niềm vui và tiềm năng của việc viết prompt cho người dùng

  • Trải nghiệm dạy LLM suy nghĩ giống mình rồi xem kết quả ngay lập tức là điều rất trực quan và thú vị
  • Tác giả khuyến khích người dùng thử viết một “System Prompt của riêng mình” để định nghĩa văn phong cá nhân
    • Ví dụ User Prompt:
      > "Let my wife know I'll be home from work late and will miss dinner"
      > "Write an email to comcast customer service explaining that they accidentally double billed you last month."
  • Nếu cho ra kết quả tốt, nghĩa là phần mô tả đã đủ rõ; nếu chưa, chỉ cần bổ sung và lặp lại
  • So với việc dạy con người, điều này thậm chí có thể dễ hơn nhờ vòng phản hồi nhanh và trung thực hơn

Vì sao phần lớn ứng dụng AI không để lộ System Prompt?

Horseless Carriages: áp dụng công nghệ mới theo tư duy cũ

  • Khi một công nghệ mới xuất hiện, các công cụ đầu tiên thường sao chép nguyên khung của cách làm cũ rồi thất bại
  • “Horseless Carriage” chỉ trường hợp ô tô đời đầu giữ nguyên thiết kế của xe ngựa kéo
    • Ví dụ: thiết kế xe ngựa chạy hơi nước của Trevithick năm 1803
    • Vào thời đó, thiết kế này có thể trông rất đột phá, nhưng nhìn từ hiện tại thì cấu trúc nền tảng không phù hợp với ô tô
  • Khi ấy, người ta có thể đã trải nghiệm những chiếc xe như vậy rồi nghĩ rằng “ngựa vẫn tốt hơn động cơ” — đó là nhận định hợp lý trước khi ô tô thật sự xuất hiện
  • Tác giả cho rằng các ứng dụng AI hiện nay đang ở tình huống tương tự
    • Ví dụ như tính năng Gemini của Gmail: chỉ gắn AI vào một UX cũ kỹ
  • Cách nghĩ cũ dừng lại ở mức “hãy thay con ngựa bằng động cơ”
    • Các ứng dụng AI ngày nay cũng vậy: chỉ thêm tính năng AI vào ứng dụng cũ

Old World Thinking: giới hạn của cách thiết kế phần mềm truyền thống

  • Trước đây, muốn tận dụng máy tính chỉ có hai cách:
    1. Tự lập trình
    2. Dùng chương trình do người khác tạo ra
  • Vì lập trình khó nên phần lớn mọi người chọn cách thứ hai
  • Từ đó, ngành phần mềm phát triển theo mô hình phân tách rõ ràng vai trò của nhà phát triển và người dùng
    • Nhà phát triển: quyết định hành vi tổng quát của phần mềm
    • Người dùng: cung cấp đầu vào cụ thể
  • Cách phân tách System/User Prompt của LLM phản ánh nguyên cấu trúc đó
    • System Prompt = phần của nhà phát triển
    • User Prompt = phần của người dùng
  • Nhưng email là một lĩnh vực rất cá nhân, và nếu AI viết email thay người dùng thì nó phải phản ánh văn phong cá nhân
  • Trong cấu trúc cũ, nếu người dùng không tự viết chương trình thì rất khó cá nhân hóa
  • Nhưng trong thời đại LLM, người dùng có thể tự viết System Prompt
    • Nghĩa là giờ đây có thể thiết kế cách AI hành xử mà không cần lập trình

Trả lại cho người dùng những gì thuộc về họ

  • Lập luận của tác giả là: nếu LLM hành động thay tôi, thì chính tôi phải là người dạy nó cách hành động đó (System Prompt)
  • Tất nhiên, không phải người dùng nào cũng muốn tự viết prompt từ đầu
    • Gmail có thể tham chiếu lịch sử email của người dùng để tạo sẵn một System Prompt mặc định
    • Điều quan trọng là phải cho người dùng nhìn thấy prompt đó và sửa được nó
  • “Nếu ai đó không biết viết prompt thì sao?” → lúc đầu có thể như vậy, nhưng hầu hết sẽ học rất nhanh
    • Thành công của ChatGPT đã chứng minh điều đó
  • Còn trong các lĩnh vực như kế toán hay pháp lý, nơi agent không mang tính cá nhân thì sao?
    • System Prompt nên do chuyên gia trong lĩnh vực đó viết, nhưng ngay cả chuyên gia cũng muốn điều chỉnh nó theo ngữ cảnh riêng của họ
  • Ví dụ: đội kế toán của YC dùng cách làm, quy tắc và tổ hợp phần mềm rất đặc thù cho YC
    • Một agent AI kế toán tổng quát sẽ hoàn toàn vô dụng với YC
  • Gần như mọi đội kế toán đều có cách làm riêng, vì vậy họ thích các công cụ đa dụng như Excel
  • Kết luận: trong phần lớn ứng dụng AI, System Prompt phải do chính người dùng viết và duy trì

> Ứng dụng AI không nên là một agent hoàn chỉnh, mà phải là công cụ giúp người dùng tự tạo agent của mình (agent builder)

Trả lại cho nhà phát triển những gì thuộc về họ

  • Vậy nhà phát triển nên làm gì?
    • Thiết kế UI agent builder chuyên cho từng lĩnh vực cụ thể (ví dụ: email, sổ sách kế toán, v.v.)
    • Cung cấp template và công cụ hỗ trợ sinh prompt để người dùng không phải viết từ đầu
    • Cung cấp giao diện vòng phản hồi để người dùng kiểm tra và chỉnh sửa kết quả của agent
  • Nhà phát triển cũng cung cấp agent tools
    • Gửi bản nháp email, tự động gửi, tìm email, kết nối API bên ngoài, v.v.
  • Những công cụ này là cách kiểm soát phạm vi hành động và độ an toàn của agent
    • Dùng công cụ được viết bằng mã để giới hạn hành vi sẽ an toàn và rõ ràng hơn nhiều so với ràng buộc chỉ bằng prompt văn bản

> Trong tương lai, nỗi lo về “prompt injection” có thể sẽ trở thành điều gây buồn cười
> → vì việc dựng ranh giới trong cấu trúc văn bản là dấu hiệu của một lớp trừu tượng yếu
> → toàn bộ hệ thống nên được xem là không gian của người dùng và được kiểm soát bằng công cụ mạnh cùng UI phù hợp

Giá trị thực sự của agent “đọc” email

  • Như đã nói ở trên, ngay cả một System Prompt tốt hơn cũng không giúp tiết kiệm nhiều thời gian khi phải viết email nháp từ đầu
  • Lý do là các email của tác giả vốn đã rất ngắn và súc tích
    • Tức là độ dài của user prompt ≒ độ dài phần thân email
  • Tác giả đã thử nghiệm nhiều lần và cảm nhận rằng AI tạo sinh mạnh hơn nhiều trong việc biến đổi văn bản so với việc tạo văn bản mới
  • Vì vậy, mục tiêu thực sự của việc dùng LLM không phải là “viết” email, mà là “đọc và xử lý” email

Demo email reading agent (dựa trên gpt-4o-mini)

  • Các công cụ có thể dùng:
    • labelEmail(label, color, priority) : gắn nhãn email
    • archiveEmail() : tự động lưu trữ email
    • draftReply(body) : tự động tạo bản nháp trả lời
  • Agent này đọc từng email rồi:
    • lọc spam khá tốt
    • gắn nhãn theo mức độ quan trọng
    • tóm tắt hoặc viết bản nháp trả lời
    • tự động lưu trữ những thư không cần thiết
  • Thậm chí nếu thêm vài công cụ nữa, nó còn có thể:
    • hủy đăng ký
    • thêm vào lịch
    • tự động thanh toán hóa đơn
  • Đây mới là việc một email client AI-native nên làm:
    tự động hóa các tác vụ lặp lại nhàm chán để tiết kiệm thời gian cho người dùng
    • Một số email client như Superhuman, Zero... đã bắt đầu phát triển theo hướng này

Ý nghĩa của phần mềm AI-native

  • Ứng dụng sát thủ thực sự của AI là khiến máy tính làm thay những việc tôi không muốn tự làm
  • Lý do tác giả đưa demo vào bài cũng là để cho thấy LLM trên thực tế đã có thể làm đủ tốt những việc này
  • Vấn đề không nằm ở năng lực của AI mà ở thiết kế ứng dụng

> Thứ mà đội Gmail tạo ra là một ứng dụng email được gắn AI lên trên
> → không phải công cụ tự động hóa cho người dùng, mà là kiểu nhồi AI cưỡng ép vào một giao diện vốn được thiết kế cho con người

  • Ngược lại, một ứng dụng AI-native phải như sau:
    • tối đa hóa leverage của người dùng trong một lĩnh vực cụ thể
    • ví dụ: email client AI phải giảm tối đa thời gian dành cho việc email
    • ví dụ: phần mềm kế toán AI phải giảm tối đa thời gian xử lý kế toán

Kỳ vọng cho thời đại AI

  • Mọi công việc lặp lại và nhàm chán đều do agent xử lý thay
  • Người dùng có thể tập trung vào những việc quan trọng
  • Ta có thể làm nhiều hơn những việc mình giỏi và yêu thích

> Đó chính là lý do tác giả hào hứng với tương lai của AI
> Công cụ tốt hơn, sử dụng thời gian tốt hơn, năng suất cao hơn

2 bình luận

 
crawler 2025-04-24

Ứng dụng AI thực sự hữu ích nên cho phép người dùng chỉnh sửa System Prompt để có thể tạo ra tác nhân được cá nhân hóa

Dĩ nhiên các nhà phát triển làm ra tính năng cũng biết điều đó, nhưng chừng nào còn có jailbreak thì chuyện này không dễ.
Ngay cả khi khóa cứng để không thể thay đổi system prompt mà vẫn bị jailbreak, thì việc mở cho thay đổi system prompt gần như là bất khả thi.
Cũng có thể người ta sẽ dùng nó với mục đích khác với tính năng ban đầu, lại còn với chi phí rẻ.

 
GN⁺ 2025-04-24
Ý kiến trên Hacker News
  • Thận trọng với việc dùng mô hình ngôn ngữ để soạn tin nhắn mang tính cá nhân. Cách này thiếu đi tính cụ thể từ trải nghiệm hoặc kiến thức của từng người

    • Nếu các mô hình như Gemini có thể hiểu các chi tiết trong những giải thích kỹ thuật trước đây hoặc công việc đã làm của một cá nhân, thì sẽ dễ chấp nhận hơn
    • Nhưng trong đa số trường hợp, nó không khác gì những email mà một thư ký thập niên 1970 cũng có thể viết
    • Khi viết tin nhắn cá nhân thì việc tóm tắt là không cần thiết, còn mở rộng một tin nhắn ngắn chỉ tạo ra nhiễu vô nghĩa
    • Dùng AI để viết tin nhắn làm mờ ranh giới của việc truyền đạt thông tin
  • Cảm thấy 90% tính năng AI là vô dụng và đắt đỏ

    • Ngoài các tính năng AI cho lập trình, rất khó tìm thấy tính năng AI nào thực sự hữu ích
    • Tính năng tự động hoàn thành của Gmail hay iMessage đã tồn tại từ trước thời LLM
    • Chưa từng dùng tính năng của Gmail để làm cho email nghe chuyên nghiệp hơn
  • Gemini hành xử như một trợ lý cá nhân và gửi email thay cho người dùng

    • Việc dùng AI để viết tin nhắn cá nhân có thể khiến người nhận khó chịu
  • Khó chịu khi giao tiếp với những người không quan tâm đến ngữ pháp và chính tả

    • Không chỉ trích những người viết sai chính tả, nhưng nếu có khả năng mà vẫn không để tâm thì điều đó cho thấy sự thiếu quan tâm đến đối phương
  • Widget tương tác kết nối với LLM khá thú vị

    • Nút "Tóm tắt email" của Gmail tạo cảm giác không cần thiết
  • Nhiều người nghĩ AI viết theo một phong cách dễ đoán, nhưng thực tế không hẳn vậy

    • Điều này không chỉ áp dụng với văn bản mà còn có thể áp dụng cho cả tạo ảnh
    • Khi nhận ra AI có thể nói chuyện giống người thật, mọi người có thể cảm thấy không thoải mái
  • Thích việc bản demo tương tác diễn ra theo thời gian thực

    • Có thể phân tích phong cách email để viết bản nháp
    • Có thể phát triển thành cách AI tự động viết email rồi để người dùng phê duyệt
  • AI không thể biết người dùng muốn gì, và con người cũng gặp khó khăn khi diễn đạt mục tiêu một cách rõ ràng

    • Nếu AI xử lý mọi thứ thì người dùng sẽ bớt suy nghĩ sâu, từ đó làm hạn chế chuyên môn và khả năng giải quyết vấn đề
  • Những tính năng AI hữu ích nhất lại không dễ nhận ra

    • Trợ lý gắn nhãn email là một ví dụ điển hình
    • Tính năng tự động diễn giải email "đổi lịch" và đề xuất thay đổi lịch trình là hữu ích
  • Không hiểu việc để AI viết tin nhắn thay mình

    • Với những tin nhắn quan trọng, tự tay viết vẫn có ý nghĩa, vì đó là biểu hiện của một tương tác sống động