Phần khó nhất của một AI Agent chính là kịch bản lỗi (unhappy path)
Hầu hết các bản demo AI agent đều trình diễn một kịch bản hoàn hảo. Một câu hỏi rõ ràng dẫn đến một câu trả lời gọn gàng. Mọi người đều vỗ tay.
Kỹ thuật thực thụ chỉ xuất hiện khi mọi thứ gặp lỗi.
Chuyện gì sẽ xảy ra khi một API bị sập? Chuyện gì sẽ xảy ra khi một agent lặp vô tận và làm cạn kiệt thẻ tín dụng của bạn? Chuyện gì sẽ xảy ra khi agent không có dữ liệu nhưng vẫn viết một bản báo cáo trông có vẻ như thật?
Tôi đã xây dựng BioAgent để giải quyết những vấn đề này trong lĩnh vực di truyền học. Nó là một nhà phân tích tự trị có khả năng truy xuất dữ liệu, tìm kiếm trên PubMed và viết các báo cáo lâm sàng.
Tôi đã sử dụng LangGraph và Claude để xây dựng nó. Dưới đây là những gì tôi đã học được về việc xây dựng hệ thống để sẵn sàng đối mặt với lỗi.
Giới hạn mọi vòng lặp Một agent phải có một giới hạn thử lại (retry limit) nghiêm ngặt. Nếu agent của bạn gọi các API trả phí, một vòng lặp vô tận là một rủi ro về tài chính. Giới hạn này chỉ có tác dụng nếu bạn tăng biến đếm trong mỗi bước. Nếu bạn quên mất một dòng mã đó, agent sẽ lặp cho đến khi hệ thống bị sập.
Kiểm thử lỗi, đừng chỉ kiểm thử thành công Kịch bản lý tưởng (happy path) luôn hoạt động suôn sẻ trong quá trình phát triển. Bạn phải ép các thành phần phụ thuộc (dependencies) gặp lỗi trong quá trình kiểm thử. Hãy viết các bài kiểm tra để đảm bảo rằng agent sẽ giảm cấp tính năng một cách mượt mà (degrade gracefully) thay vì lặp vô tận khi một API ngoại tuyến.
Ngăn chặn những điều vô lý đầy tự tin Nguy hiểm lớn nhất không phải là một cú sập hệ thống. Nguy hiểm nằm ở một bản báo cáo trông rất chuyên nghiệp nhưng lại chứa dữ liệu giả. Đừng chỉ dựa vào các chỉ dẫn trong prompt để ngăn chặn sự ảo tưởng (hallucinations). Hãy sử dụng các bài kiểm tra để đảm bảo rằng agent không bao giờ tự bịa ra các chỉ số.
Đảm bảo tính xác thực cho kết quả Việc truy xuất (retrieval) chỉ hữu ích nếu văn bản thực sự đến được với người viết. Tôi nhận thấy rằng việc chỉ truyền các ID thay vì toàn bộ bản tóm tắt (abstracts) đã khiến mô hình tự bịa ra sự liên quan. Bạn phải truyền văn bản thực tế vào mô hình để đảm bảo báo cáo luôn dựa trên các sự thật khách quan.
Một quy tắc trong prompt chỉ là một hy vọng. Một quy tắc trong bài kiểm tra mới là một sự đảm bảo.
Hãy xây dựng cho kịch bản lỗi (unhappy path). Đó mới là phần thực sự quan trọng.
Source: https://dev.to/gbadedata/the-hardest-part-of-an-autonomous-ai-agent-is-the-unhappy-path-3p2c
Optional learning community: https://t.me/GyaanSetuAi
