Главная/Блог/Аналитика/LLM-as-a-Judge: Автоматическая оценка…
Аналитика3 мин чтения · 20 сентября 2026 г.

LLM-as-a-Judge: Автоматическая оценка AI-агентов с Ori Eval

Как использовать LLM-судью для оценки качества ответов агентов, когда детерминированные тесты бессильны. Разбор Ori Eval, бенчмарков и оптимизации затрат.

LLM-as-a-Judge: Автоматическая оценка AI-агентов с Ori Eval

Агент может успешно вызвать нужный инструмент, получить правильные данные из базы, но выдать пользователю некорректный или неполный ответ. Детерминированные тесты (unit-тесты) проверяют факт вызова функции, но не оценивают смысловую точность, тон или полноту ответа. Здесь на сцену выходит метод LLM-as-a-Judge (LLM в роли судьи): вторая модель оценивает вывод первого агента по заданным критериям.

01Суть метода и архитектура

В этой схеме участвуют две разные модели. Кандидат (Candidate) — это ваш основной агент, решающий задачу. Судья (Judge) — отдельная модель, которая не решает задачу, а только оценивает ответ кандидата по рубрике (rubric).

Ключевая рекомендация: никогда не используйте одну и ту же модель для обеих ролей. Исследование MT-Bench (Zheng et al., 2023) выявляет три типа смещения: self-enhancement (модель хвалит себя), position bias (предпочтение первому варианту) и verbosity bias (предпочтение длинным ответам). Разделение моделей исключает эти искажения.

⚠️
Важно про приватность. Не передавайте судье скрытые мысли (chain-of-thought) кандидата. Оценивайте только финальный ответ и необходимые результаты инструментов, чтобы оценка оставалась независимой.

02Режимы оценки

Выбор режима зависит от цели тестирования:

  • Pointwise (Точечная): Один ответ + рубрика. Идеально для CI/CD: ответ либо проходит порог, либо нет.
  • Pairwise (Парная): Два ответа + сравнительная рубрика. Используется для сравнения разных моделей или промптов. Совет: меняйте порядок ответов, чтобы исключить bias позиции.
  • Reference-based (С эталоном): Ответ + эталонный текст. Проверяет фактическое покрытие информации, а не совпадение формулировок.

03Практика: Оценка с помощью Ori Eval

Инструмент Ori Eval позволяет писать тесты и запускать их через среду выполнения. Он автоматически настраивает среду, логинится и управляет вызовами API.

1. Установка и вход

Установите CLI и авторизуйтесь. Ori использует среду выполнения для запуска тестов.

terminalbash
curl -fsSL https://openrouter.ai/labs/ori/install.sh | bash
ori login

2. Настройка критериев (Rubric)

Вместо абстрактного «будь полезен» пишите конкретные правила. Например: «Упомяни 14-дневное окно возврата, ответь прямо, не выдумывай исключений».

3. Код теста

Создайте файл с тестом. Здесь мы разделяем проверку инструментов (детерминированную) и смысловую оценку (LLM-судья).

terminaltypescript
import { test } from 'bun:test'
import { setupAgent, setupJudge } from 'ori/eval'

const agent = setupAgent();
// Судья с настроенным порогом
const judge = setupJudge();

test('explains the refund policy accurately', async () => {
  const run = await agent.run(
    'Can I refund a digital order that I placed 10 days ago?'
  );
  
  // Детерминированная проверка: инструмент вызван?
  run.tool('lookup_refund_policy').toBeCalled();
  run.toComplete();
  
  // LLM-судья: оценка смысла ответа
  await judge.autoEvals({
    criteria: 'States the 14-day refund window, answers the question directly, and does not invent exceptions.',
    run,
  });
});

4. Запуск

Запуск тестов возвращает код ошибки при провале, что удобно для CI.

terminalbash
ori eval --report eval-report.md
💡
Оптимизация затрат. Не запускайте LLM-оценку в каждом unit-тесте. Выносите её в отдельный CI-джоб, который запускается вручную, по расписанию или перед релизом. Храните ключ API как секрет репозитория.

04Когда LLM-судья не подходит

Не используйте LLM для проверки того, что можно проверить кодом:

  • Структура JSON (используйте валидаторы схем).
  • Арифметика (используйте калькуляторы).
  • Аргументы инструментов и побочные эффекты (unit-тесты).
  • Критические политики безопасности (должны быть детерминированными).

05Кому подойдёт / что запустится

  • Разработчикам AI-агентов: Для автоматизации оценки качества ответов (groundedness, tone, completeness).
  • Командам QA: Для замены ручного ревью на масштабируемый пайплайн.
  • Железо: Локально запускать судью можно на GPU с достаточным объемом VRAM, но для стабильности и скорости лучше использовать API (OpenRouter, локальные инстансы через Ollama/VLLM).
  • Стек: TypeScript, Bun, OpenRouter API.

Источник: OpenRouter ↗