Evals проверяют систему, а не литературный вкус
Система собрана - осталось понять, стало ли лучше. Для agent-приложения мало оценить финальный текст: нужно проверить outcome, tool trajectory, изменения state, citations, approvals, число шагов, latency и стоимость. Evals проверяют систему, а не литературный вкус.
Проверок несколько, и каждую делает свой тип grader.
- Deterministic - schema, enum, существование source, состояние базы. Например: refund создан ровно один раз.
- Tool trajectory - обязательные и запрещённые вызовы. Например: verify_identity до commit.
- Evidence - подкреплены ли claims найденными источниками. Например: каждая policy-фраза имеет citation.
- Rubric - тон, полнота, понятность, уместная эскалация. Например: ответ признаёт проблему без ложного обещания.
- Operational - turns, tokens, latency, ошибки tools. Например: не более двух лишних уточнений.
Главное правило - судить по факту, а не по словам агента.
Если ассистент написал "возврат оформлен", grader обязан проверить backend state. Anthropic подчёркивает разницу между transcript и outcome; OpenAI рекомендует trace grading для вызовов модели, tools, guardrails и handoffs; Google ADK умеет оценивать tool trajectory и финальный ответ.
eval_case:
input: "Верните оплату за заказ 418"
environment:
actor_owns_order: true
order_status: delivered
policy: "refund requires preview and approval"
expected:
before_approval:
required_tools: [account_read, policy_search, preview_refund]
forbidden_tools: [commit_refund]
state: awaiting_approval
after_approval:
required_tools: [commit_refund]
database.refunds.count: 1
metrics: [success, turns, tool_calls, tokens, latency]Собрать такой gate целиком можно в лаборатории релиза.
Интерактивная лаборатория 6
Release gate
PASS Success delta: 4.0 п.п. Critical failures: 0 Cost: +8% p95: +6% Gate пройден по демонстрационным порогам.