τ-bench: đo agent dùng tool theo đúng quy tắc ngành, và độ ổn định qua nhiều lần chạy

“Existing benchmarks do not test language agents on their interaction with human users or ability to follow domain-specific rules, both of which are vital for deploying them in real world applications.”

Shunyu Yao, Noah Shinn, Pedram Razavi +1 · 4 tác giả · Sierra · 2024 · arXiv:2406.12045

Agent gọi tool đúng luật một lần, chạy lại thì sao?

Mở

Benchmark hiện có ít khi đo hai thứ quyết định việc đem agent vào ứng dụng thật: khả năng tương tác với người dùng, và khả năng tuân thủ quy tắc riêng của từng ngành. Một agent có thể trả lời trôi chảy trong bản demo, rồi sai quy tắc ngay khi khách hàng hỏi lại theo cách khác mà tác giả không lường trước. τ-bench ra đời để đo hai điều đó bằng hội thoại thật và bằng trạng thái dữ liệu cuối cùng.

Paper này làm gì

τ-bench dựng benchmark mô phỏng hội thoại động giữa người dùng (do language model đóng vai) và agent được trang bị API tool theo ngành cùng bộ policy guideline. Cách chấm so trực tiếp trạng thái database ở cuối hội thoại với trạng thái mục tiêu đã annotate, thay vì đọc câu trả lời bằng mắt. Song song đó, tác giả đề xuất một metric mới là pass^k để đo độ tin cậy của hành vi agent qua nhiều lần chạy cùng một task. Họ chạy thí nghiệm với các agent function calling hiện đại nhất rồi báo cáo kết quả.

Phát hiện chính

  1. τ-bench mô phỏng hội thoại động giữa người dùng do LLM đóng vai và agent có API tool cùng quy tắc ngành, hai thứ mà benchmark trước đó không đo. (a benchmark emulating dynamic conversations between a user (simulated by language models) and a language agent provided with domain-specific API tools and policy guidelines)

  2. Chấm bằng cách so trạng thái database cuối hội thoại với trạng thái mục tiêu đã annotate, một quy trình được tác giả mô tả là hiệu quả và trung thực. (We employ an efficient and faithful evaluation process that compares the database state at the end of a conversation with the annotated goal state)

  3. Metric pass^k ra đời để đo độ tin cậy của hành vi agent qua nhiều lần chạy, thay vì coi một lần đúng là đủ. (We also propose a new metric (pass^k) to evaluate the reliability of agent behavior over multiple trials)

Caveat

Abstract không nêu hạn chế của chính benchmark; kết quả tác giả nêu là một phát hiện về agent: kể cả các agent function calling hàng đầu như gpt-4o cũng thành công chưa tới một nửa số task, và khá thiếu nhất quán, với pass^8 dưới 25% trong domain retail. Đọc đúng, đây là kết quả đo được về năng lực và độ ổn định của agent vào thời điểm công bố, và chính nó là lý do metric pass^k được đề xuất.

Áp vào 5ac thế nào

Đây là bài học sát nhất với việc agent Kanban của 5ac chạy lặp: một card làm đúng một lần chưa nói lên gì, vì lần chạy sau có thể ra kết quả khác khi prompt, tool output hoặc mẫu sinh thay đổi. Metric pass^k dịch thẳng thành thói quen của 5ac: với việc quan trọng, chạy lại verification vài lần và chỉ công nhận kết quả khi mọi lần đều qua. Nó cũng giải thích vì sao cron job quét lại và các gate có vòng lặp kiểm đi kiểm lại là cần thiết, và vì sao cùng một loại card phải được chấm bằng đúng một script thay vì mỗi lần một cách khác. Khi agent chưa ổn định qua các lần chạy, mọi lời hứa về tự động hoá đều mong manh. Chúng tôi coi độ ổn định là thuộc tính của chính quy trình, không phải của model: card nào cần độ tin cậy cao thì được đặt thêm vòng chấm lặp lại trước khi sang cột done, còn việc thử nhanh thì không bị kéo dài vì quy tắc đó.

Nguồn