← Все статьи
2026-05-12 22:02 · 🌐 СНГ (tech/AI)

Как измерить ИИ-агента, если он каждый раз отвечает по-разному

LLM — вероятностная машина: одинаковый запрос при ненулевой температуре даёт разные ответы. Фреймворк RAGAS предлагает два инструмента, которые переводят «кажется, работает» в измеримые цифры — Factual Correctness и Summarization Score.

Как измерить ИИ-агента, если он каждый раз отвечает по-разному

Посимвольное сравнение ответа с эталоном для LLM-агента не работает — и это не мнение, а математический факт. Фреймворк RAGAS решает проблему через семантическое сравнение: агент разбирает ответ на атомарные утверждения и проверяет каждое по смыслу. Вторая часть серии разбирает две метрики — Factual Correctness и Summarization Score — с промптами, формулами и настройками.

Контекст

Генеративные нейросети фундаментально вероятностны. При агрессивной температуре один запрос может вернуть десятки разных формулировок одного и того же правильного ответа. Это означает: классический инженерный подход «запустил тест — сравнил вывод с эталоном» здесь ломается сразу.

RAGAS — open-source Python-фреймворк, изначально создававшийся для оценки RAG-пайплайнов, а сегодня де-факто ставший стандартом измерения качества LLM-систем в целом. Его ключевая идея: использовать саму LLM для извлечения смысла из ответа, а потом семантически сравнивать извлечённые факты с эталоном.

В основе любой метрики RAGAS лежит GoldenSet — набор эталонных пар «вопрос → правильный ответ», собранных вручную или полуавтоматически. Без него никакие вычисления невозможны. Большинство команд откладывают сборку GoldenSet и обнаруживают деградацию агента не в тестах, а через жалобы пользователей.

Аналитика

Factual Correctness отвечает на вопрос: «Что агент утверждает — правда или нет?» Метрика работает в два шага. Сначала промпт ClaimDecompositionPrompt разбивает фактический ответ на атомарные утверждения. Затем второй промпт проверяет каждое утверждение: можно ли его напрямую вывести из эталона (1) или нет (0). На выходе — Precision, Recall и F-beta. Параметры atomicity=high, coverage=high дают максимальную точность ценой скорости; значение beta регулирует, что важнее — Recall или Precision.

Summarization Score работает тоньше. Метрика извлекает ключевые сущности из оригинального текста (люди, организации, даты, суммы), генерирует по ним вопросы с ответами «да/нет» и проверяет, отвечает ли суммаризация на эти вопросы. Плюс к этому — Conciseness Score, штрафующий за избыточную длину: без него идеальный балл получала бы дословная копия исходника. Параметр coeff (по умолчанию 0.5) определяет баланс между полнотой и краткостью.

Для AI-first компаний это означает возможность выстроить воспроизводимый CI/CD для LLM-компонентов. Падение Factual Correctness после обновления промпта — это регрессия, которую можно поймать автоматически до деплоя. Без метрик эту регрессию замечают пользователи — обычно в самый неподходящий момент.

Нам нужна методология, способная извлечь из фактического ответа смысловую нагрузку и корректно сравнить её с эталоном. Проще всего сделать это, используя саму LLM.

Кейсы применения в бизнесе

B2B SaaS стартап с AI-ассистентом поддержки. Агент отвечает на вопросы о продукте. После каждого изменения базы знаний запускается RAGAS: Factual Correctness на GoldenSet из 50–100 вопросов, порог — 0.85. Падение ниже блокирует деплой. Команда перестаёт бояться обновлять документацию и ловит деградацию до, а не после попадания в продакшн.

Корпорация с legacy-системами и внутренним knowledge base. Тысячи внутренних документов суммаризируются в карточки для HR-агента. Summarization Score с coeff=0.3 (акцент на полноту) проверяет, не потерял ли агент ключевые даты, должности и суммы. Это снижает риск ошибок при автоматической обработке запросов сотрудников — особенно там, где одно пропущенное число меняет смысл.

SMB и локальный бизнес в КР и СНГ. Интернет-магазин строит FAQ-бота по описаниям товаров. GoldenSet собирают из реальных вопросов в Telegram-поддержке. Factual Correctness позволяет убедиться, что бот не галлюцинирует характеристики (цвет, размер, цену). Даже 30 эталонных примеров дают ощутимый сигнал о качестве.

Кейсы в личной жизни

Разработчик, строящий персонального AI-ассистента по кодовой базе. Собирает 20 вопросов с эталонными ответами, раз в неделю прогоняет Factual Correctness. Видит, какие промпты деградируют при обновлении контекста — за 15 минут, а не через месяц в продакшне.

Контент-мейкер, суммаризирующий интервью для Shorts. Summarization Score с coeff=0.5 показывает, когда модель срезает ключевые цитаты и когда делает конспект слишком близким к исходнику. Помогает выбрать лучшую модель для конкретного типа контента.

Студент или исследователь, работающий с научными статьями. Агент конспектирует тексты. Через RAGAS проверяется, не теряет ли суммаризация ключевые термины и числа — в технических и медицинских текстах одно пропущенное значение меняет весь смысл.

Как применить сегодня

  • Установи RAGAS: pip install ragas — фреймворк open-source.
  • Собери минимальный GoldenSet: 20–50 пар «вопрос → эталонный ответ» из реальных кейсов своей системы.
  • Запусти Factual Correctness с параметрами atomicity=high, coverage=high — получи baseline точности агента.
  • Для агентов с суммаризацией добавь Summarization Score и настрой coeff: 0.3 — важна полнота, 0.7 — важна краткость.
  • Интегрируй в CI: порог по Factual Correctness как gate перед деплоем нового промпта или обновлённой модели.
← Все статьи