Hacker News: AI bài nổi bật
92

Thủ thuật

Dan McKinley: Prompt không phải là tất cả, hãy tập trung vào hệ thống đánh giá tự động cho AI Agent

(giờ Việt Nam)

Tóm tắt AI

Kỹ sư Dan McKinley khẳng định trong môi trường sản xuất, việc tối ưu hóa prompt thủ công không hiệu quả bằng việc xây dựng hệ thống đánh giá và tự sửa lỗi cho AI Agent.

Bản dịch AI

Prompts aren’t Real

Chào mọi người. Tôi là Dan.

Tôi là một kỹ sư đang sống tại Los Angeles. Tôi đã làm kỹ thuật được khoảng 25 năm và tôi thấy mình thật may mắn.

Một điều may mắn gần đây là tôi có cơ hội được thử sức với việc vận hành các agent (tác nhân) một cách ổn định trong môi trường thực tế (production).

Ý tôi cụ thể là các "agent" mà người dùng cuối sử dụng để thực hiện các tác vụ thay cho họ. Tôi coi chúng khác biệt hoàn toàn với các chatbot mà người dùng trò chuyện cùng, nơi mà kết quả và đầu ra mang tính chủ quan.

Mục tiêu tạo ra một trải nghiệm agent tối thiểu để không phải cảm thấy xấu hổ, và là thứ mà tôi thực sự tự hào, đã đặt ra những thách thức nghiêm trọng.

Rõ ràng không phải ai cũng có động lực từ cảm giác xấu hổ bên trong như tôi.

Một số người cảm thấy hài lòng khi cung cấp cho bạn một cỗ máy đưa ra lời khuyên chủ quan, rồi mặc kệ bạn đi vào chốn hoang dã để bị gấu ăn thịt.

Nhưng tôi thì không. Tôi ở đây vì các bạn.

Ngay từ đầu, tôi muốn nói rằng đây là công việc thú vị nhất mà tôi từng làm trong suốt sự nghiệp của mình! Nó thật kỳ diệu và gây nghiện. Tôi cảm thấy như một chú chó đang đùa nghịch trong hố bóng vậy.

Khi tôi 22 tuổi, việc được trả tiền để viết Visual Basic đã là một điều gì đó rất ly kỳ. Làm việc tại một startup thú vị ở Brooklyn năm 2007 khiến tôi cảm thấy mình như một vị thần.

Hơn một thập kỷ qua là một chuỗi ngày mệt mỏi. Tôi đã từng nghĩ mình không còn đủ sức nữa.

Nhưng tôi lại đang cảm thấy niềm vui khi lập trình trở lại!

Tôi nói điều này một cách chân thành, mặc dù bài nói chuyện này sẽ trở nên kỳ quặc đến mức nào đi chăng nữa.

Nó sẽ trở nên kỳ quặc vì tôi cảm thấy bất kỳ ai tham gia vào lĩnh vực này đều có khả năng là một người đang gặp rủi ro ở khía cạnh này hay khía cạnh khác.

Tôi đang vắt kiệt não bộ của mình mỗi ngày để sử dụng các agent nhằm vận hành các agent khác, rồi lại xây dựng hệ thống đánh giá cho các agent đó, và điều đó thật sự rất thú vị.

Nhưng tôi sẽ nói vậy thôi, phải không nào.

Ranh giới giữa kỹ thuật đỉnh cao và sự sụp đổ tâm lý hoàn toàn chưa bao giờ mong manh đến thế. Và trong lĩnh vực của chúng ta, điều đó thực sự có ý nghĩa.

Tôi không cảm thấy mình hoàn toàn biết mình đang làm gì. Nhưng tôi cũng không thấy mình đã đọc được nhiều từ những người thực sự biết họ đang làm gì.

Và tôi chắc chắn đã đọc những thứ từ những người rõ ràng là không biết họ đang làm gì.

Có vẻ đây là thời điểm hợp lý để trao đổi kinh nghiệm.

Một điều tôi nhận thấy là mặc dù LLM nhìn chung rất ấn tượng, nhưng những "con quỷ" bên trong chúng vẫn thoát ra ngoài nếu bạn giám sát những gì chúng đang làm ở bất kỳ quy mô nào.

Tất cả chúng ta đều hiểu về mặt lý thuyết rằng LLM không thể tuân thủ hướng dẫn, nói sự thật hoặc thực hiện tác vụ một cách đáng tin cậy. Nhưng trong công việc hàng ngày, chúng có thể đánh lừa chúng ta rằng chúng khá đáng tin cậy.

Nhận thức này sẽ sụp đổ ngay lập tức nếu bạn cố gắng vận hành một agent mà người thật đang sử dụng. Chúng chắc chắn sẽ thất bại theo những cách tinh vi, nhưng chúng cũng thất bại theo những cách rất đơn giản.

Giống như bất kỳ lập trình viên giỏi nào, tôi cố gắng tương tác với LLM của mình bằng đầu ra có cấu trúc.

Nó rất tốt, bạn có thể ánh xạ mã Python vào một prompt một cách tự động, và hầu hết thời gian schema của bạn đều được tôn trọng.

Hầu hết thời gian thôi. Bạn có thể thử hướng dẫn mô hình trả về một tiêu đề dài 80 ký tự hoặc ít hơn.

Và nó sẽ hoạt động hầu hết thời gian. Nhưng rồi đôi khi nó sẽ làm hỏng hoàn toàn và làm tràn ngập trường dữ liệu của bạn bằng những thứ vô nghĩa cho đến khi hệ thống sụp đổ.

Thông thường đó chỉ là một phần nhỏ các yêu cầu, nhưng ngay cả những mô hình thông minh nhất vẫn thất bại ở việc này. Và tỷ lệ này có thể lớn hơn hoặc nhỏ hơn tùy thuộc vào bản chất chính xác của những gì bạn đưa cho mô hình, vì vậy bạn phải theo dõi nó như một con diều hâu.

Chuyện gì đang xảy ra trong đó vậy? Thường thì đó là một loạt các ghi chú dài như tiểu thuyết tự nhắc nhở bản thân về JSON.

Lần gần đây nhất điều này xảy ra với tôi, hóa ra cách sửa lỗi là đổi tên trường từ "title" thành "heading".

Cách đó hiện đang hoạt động, nhưng vì bản sửa lỗi này hoàn toàn điên rồ nên tôi đoán nó sẽ lại bị lỗi vào một lúc nào đó.

Những vấn đề tương tự cũng tồn tại với việc gọi các công cụ (tools), hoặc hầu hết các hành vi khác. Một phần các yêu cầu sẽ bị "ám" và xoay vòng không kiểm soát.

Nhưng bất chấp điều này, công nghệ này vẫn đầy mê hoặc và kỳ diệu.

Vấn đề chuyển sang việc làm sao để hạn chế hành vi, nhưng không bao giờ có thể thuần hóa hoàn toàn con quái vật này.

Để hạn chế hành vi, bạn phải đo lường nó—một cách là chỉ cần chạy các bài kiểm tra thật nhiều lần.

Thuật ngữ chuyên môn trong ngành cho việc này là pass^k ("pass power k").

Bạn có thể thiết lập một bộ kiểm thử thực hiện việc này và hy vọng bạn sẽ nhận thấy khi có ai đó vô tình "nện" vào agent của bạn bằng một túi búa.

Một điều khác bạn phải kết luận khi cố gắng hạn chế hành vi của LLM là các prompt không quan trọng. Hoặc ít nhất là chúng không quan trọng theo cách mà nhiều người vẫn nghĩ.

Các công ty có rất nhiều lo ngại khi nói đến phần mềm có khả năng nói năng điên rồ. Ở đây có khá nhiều rủi ro.

Đọc bài gốc

Bài viết được AI dịch và tổng hợp tự động từ Hacker News: AI bài nổi bật. Liên kết bài gốc ở phía trên. AIHOT.vn luôn dẫn nguồn đầy đủ — nếu bạn thấy điểm cần chỉnh sửa, hãy gửi ý kiến tại trang phản hồi.