Практикум по оценке ИИ-агента
Проверяйте действия агента: результат, согласие и повторяемость
Агент написал «Возврат оформлен». Достаточно ли этого для отчёта? Разберите учебный заказ: проверьте товар, итог базы и согласие, отделите заявку от выплаты. Затем посчитайте, насколько часто успех повторяется, и сравните pass^k с pass@k.
Что вы сможете сделать
- Отличать текстовое заявление агента от результата в моделируемой базе.
- Проверять нужный товар и отдельно — соблюдение политики согласия.
- Различать заявку на возврат и факт банковской выплаты.
- Считать и толковать pass^k и pass@k для независимых повторов.
Сначала проверьте, что изменилось
Разберём τ-bench — набор задач с имитируемым пользователем, инструментами и правилами предметной области. В нашем учебном примере доставленный заказ содержит товары A и B; цель — оформить возврат только A. Слова агента и состояние заказа дают разные свидетельства.
В τ-bench эталонные действия выполняют на исходной базе и сравнивают её итог с итогом агента. В учебном заказе нужен возврат A: заявка для B не проходит, даже если вызов допустим. Сравнивается вся моделируемая база, поэтому оставшееся лишнее изменение другой записи тоже важно. Совпадение базы не требует буквального совпадения последовательности вызовов.
Проверить тезис: τ-bench 01
Если задача задаёт обязательные строки ответа, они тоже участвуют в оценке: отсутствие любой строки обнуляет результат. Но поиск подстроки не понимает отрицание. Например, «Сумма 12.00» и «Сумма не 12.00» содержат одну строку «12.00». Регистры приводятся к одному виду, запятые удаляются из сообщения; запятая не превращается в точку.
Проверить тезис: τ-bench 02
Результат не заменяет согласие
Правильная запись в базе ещё не отвечает на вопрос, разрешил ли пользователь значимое действие.
В политике τ-retail агент должен объяснить изменение и получить явное согласие. При этом инструмент возврата не проверяет диалог и не получает отдельный аргумент согласия, а оценка итогового состояния может засчитать результат при нарушении политики.
Поставьте два отдельных вердикта: «итог базы совпал» и «правило согласия соблюдено». Для первого сравните состояния, для второго найдите подтверждение до изменения. В τ-bench возможен reward=1 без согласия: правило магазина и возможности оценщика — разные вещи.
Заявка — ещё не выплата
Назовите наблюдаемое событие точно: инструмент может зарегистрировать возврат, не подтверждая движение денег.
Инструмент return_delivered_order_items в τ-retail записывает статус return requested, список возвращаемых товаров и способ возврата. Его функция не выполняет банковский перевод и не отправляет письмо.
Проверить тезис: τ-bench 05
Сравните две цели для заказа A/B. «Зарегистрировать возврат A» можно проверить по итоговым данным заказа. Для цели «получить деньги на счёт» тех же данных недостаточно: даже при совпадении базы с эталоном зачисление остаётся неподтверждённым.
Один удачный запуск или успех каждый раз?
Одного удачного возврата мало для понимания повторяемости. Зафиксируйте исходную задачу и критерий успеха, затем сравните два способа подсчёта.
Pass^k — вероятность успеха всех k независимых повторов одной задачи, усреднённая по задачам. Pass@k — вероятность хотя бы одного успеха, тоже усреднённая по задачам. Для одной задачи с n наблюдениями и c успехами оценки равны C(c,k)/C(n,k) и 1−C(n−c,k)/C(n,k). Здесь C(a,k) — число способов выбрать k разных повторов из a без учёта порядка; если a меньше k, способов нет.
В учебных результатах [1, 1, 1, 0, 0] десять неупорядоченных пар. Три пары состоят из двух успехов; только одна — из двух неуспехов. Поэтому оценки pass^2=3/10, pass@2=9/10. Это расчёт по синтетическим наблюдениям, а не результат запуска агента.
Проверить тезис: Надёжность агента по pass^k 03
В τ-bench повторы идут в отдельных исходных средах; продолжение уже изменённого заказа не является таким независимым повтором.
Проверить тезис: Надёжность агента по pass^k 04
Для нескольких задач сначала считают каждую, затем усредняют. Учебный контрпример: одна задача всегда успешна, другая всегда неуспешна. Средняя вероятность успеха равна 1/2, средняя вероятность двух успехов — тоже 1/2, а не (1/2)²=1/4. Здесь заданы истинные вероятности; это отдельное рассуждение, не замена формулы оценки по конечной выборке.
Проверьте инженерное мышление
Вопросы проверяют не память на аббревиатуры, а умение не делать лишних выводов.
Источники курса
Полные сведения о первоисточниках приведены один раз для всего курса. Под тезисами — ссылки на соответствующие утверждения Архивариума.
- Официальная документация
tau-bench envs/base.py
Sierra Research · Git commit 14bf0ef52e595922d597a38f32d3e8c0dce3a8f8 (22.01.2025)
Якоря: to_hashable, consistent_hash, Env.step, Env.get_data_hash, Env.calculate_reward.
Открыть первоисточник - Официальная документация
Retail environment policy
Sierra Research · Git commit 14bf0ef52e595922d597a38f32d3e8c0dce3a8f8 (22.01.2025)
Якоря: подтверждение пользователя до значимых действий; возврат доставленного заказа.
Открыть первоисточник - Официальная документация
ReturnDeliveredOrderItems tool
Sierra Research · Git commit 14bf0ef52e595922d597a38f32d3e8c0dce3a8f8 (22.01.2025)
Якоря: ReturnDeliveredOrderItems.invoke, ReturnDeliveredOrderItems.get_info.
Открыть первоисточник - Первичная публикация
τ-bench: A Benchmark for Tool-Agent-User Interaction in Real-World Domains
Sierra · arXiv:2406.12045v1, 17.06.2024; §3, §4 Stage III, Figure 2
Архивированная версия статьи; исходный код ниже закреплён отдельно и датирован позднее статьи.
Открыть первоисточник - Официальная документация
tau-bench run.py
Sierra Research · Git commit 14bf0ef52e595922d597a38f32d3e8c0dce3a8f8 (22.01.2025)
run: отдельная среда для каждой задачи и повтора; display_metrics: расчёт pass^k. Формула pass@k приведена в статье, а не вычисляется этой функцией.
Открыть первоисточник