LLM и AI-агенты работают как чёрный ящик: один и тот же промпт может вернуть корректный ответ, а через минуту — галлюцинацию. В production-среде это не просто неудобство, а риск для бизнеса. Вы не можете полагаться на тестирование «на глаз», потому что вероятностная природа моделей делает каждый запуск уникальным. В этой статье разбираем, какие инструменты и метрики реально работают в 2026 году, и как собрать из них пайплайн оценки.

Gartner оценивает, что уже в 2026 году 40% корпоративных приложений будут включать специализированных AI-агентов. При этом, по данным SDVG Labs, только 25% команд внедрили систематическое тестирование LLM-приложений. Остальные проверяют «вручную» — запустили пару промптов, посмотрели, вроде работает, задеплоили. А через неделю прод падает с жалобами пользователей на бессмысленные ответы.

Хорошая новость: к середине 2026 года экосистема инструментов для оценки LLM созрела. Есть фреймворки с открытым исходным кодом (DeepEval, RAGAS), платформы трассировки (LangSmith, Langfuse) и инструменты observability (Arize Phoenix, Opik). Каждый решает свою часть задачи. Разберёмся, как их комбинировать.

60+ встроенных метрик
16.4K ★ DeepEval на GitHub
29.6K ★ Langfuse на GitHub
83% организаций без контроля
Пайплайн оценки LLM: от тест-кейсов через метрики к инструментам и отчётам

Типовой пайплайн оценки: тесты → метрики → инструменты → результат

Почему тестировать LLM сложнее, чем обычный код

Обычный софт детерминирован: функция add(2, 2) всегда возвращает 4. С LLM всё иначе. Та же модель с теми же параметрами может вернуть два принципиально разных ответа. И оба могут быть правильными. Это не баг, а свойство вероятностных систем. К нему добавляются специфические для LLM проблемы: галлюцинации (модель уверенно врёт), токсичность, смещения, уязвимость к инъекциям.

Confident AI выделяет три ключевых отличия LLM-тестирования от классического:

Первое — оценка субъективна. Для кода есть чёткий критерий: «падают тесты = есть баг». Для LLM это спектр: ответ может быть частично верным, формально верным, но бесполезным, или верным, но с галлюцинацией в середине. Второе — регрессии скрыты. Изменение промпта, замена модели, обновление бэкенда могут незаметно ухудшить качество на определённой группе запросов. Третье — контекстная зависимость. То, что хорошо для техподдержки (коротко, по делу), плохо для креативного сценария. Универсальных метрик не существует.

Поэтому подход к тестированию LLM многослойный. Нижний слой — автоматические метрики: проверка фактологической точности, релевантности, галлюцинаций. Средний слой — юнит-тесты с пороговыми значениями. Верхний — человеческая оценка и мониторинг в продакшене.

Ключевые метрики оценки LLM

Прежде чем выбирать инструмент, разберитесь с метриками. Почти все фреймворки используют один и тот же набор, но считают по-разному. Вот основные группы.

Метрики корректности — отвечают на вопрос «правильный ли ответ по смыслу?». Faithfulness (точность) проверяет, соответствует ли ответ фактам из контекста. Answer Relevancy — отвечает ли он на заданный вопрос. Hallucination — измеряет долю вымышленных данных. Эти три — база. Без них любая оценка бессмысленна.

Метрики качества ответа — оценивают оформление. BLEU и ROUGE сравнивают с эталоном (пришли из NLP). Семантическое сходство через эмбеддинги. Concision проверяет, нет ли лишнего. Helpfulness — полезен ли ответ для пользователя.

Метрики безопасности — bias (предвзятость), toxicity (токсичность), bias в гендерных/расовых вопросах. Garak от NVIDIA специализируется именно на безопасности — проверяет устойчивость к джейлбрейкам, промпт-инъекциям, утечкам PII.

Метрики для RAG — оценивают качество поиска. Context Precision — насколько релевантен найденный контекст. Context Recall — ничего ли важного не упущено. Faithfulness применительно к RAG проверяет, использует ли модель только найденные документы или додумывает от себя.

Практический совет: Не пытайтесь покрыть все метрики сразу. Начните с трёх: faithfulness, answer relevancy, hallucination. Этого достаточно, чтобы отсечь 80% проблем. Добавляйте специфические метрики по мере того, как ловите конкретные типы ошибок.

DeepEval — open-source фреймворк для unit-тестов LLM

DeepEval — это, по сути, pytest для LLM. Фреймворк с открытым исходным кодом (16 425 ★ на GitHub, 1 577 форков) предоставляет 14+ research-backed метрик для оценки. Его главная фишка — простой интерфейс, который легко встраивается в CI/CD пайплайны.

Вы пишете тест-кейсы, задаёте пороговые значения для каждой метрики и запускаете deepeval test run. Результат — pass или fail с детальным разбором, почему тест не прошёл. Работает с любыми LLM — OpenAI, Anthropic, локальные модели через Ollama.

Пример простого теста на faithfulness:

from deepeval import test_case
from deepeval.metrics import FaithfulnessMetric

metric = FaithfulnessMetric(threshold=0.7)

test = test_case(
    input="Какие модели DeepSeek доступны?",
    actual_output="DeepSeek R1 и V3 доступны на Hugging Face",
    retrieval_context=["DeepSeek R1 и V3 — open-source модели..."]
)

metric.measure(test)
print(f"Score: {metric.score}, Pass: {metric.is_successful()}")

Из коробки DeepEval поддерживает faithfulness, answer relevancy, hallucination, bias, toxicity, и ещё десяток метрик. Для каждой метрики есть встроенный LLM-as-judge — модель оценивает другую модель. Это звучит странно, но на практике работает хорошо: DeepEval использует собственные скоринговые модели, а не оцениваемую.

Где DeepEval слаб — в тестировании многошаговых диалогов. Метрики для multi-turn conversations появились, но пока сырые. Если ваш AI-агент общается в несколько раундов (собирает данные, уточняет, отвечает), DeepEval лучше комбинировать с инструментами трассировки.

Ещё одна проблема — пороговые значения. Вы ставите threshold на 0.7, тест падает. Но что это значит — «ответ недостаточно точен» или «метрика шумит»? Разработчики DeepEval рекомендуют подбирать пороги эмпирически на эталонном датасете из 50-100 примеров, но это дополнительная работа.

RAGAS — метрики для RAG-систем

RAGAS (Retrieval Augmented Generation Assessment) — де-факто стандарт для оценки RAG-систем. 14 499 ★ на GitHub, 1 502 форка. В отличие от DeepEval, который покрывает общие метрики, RAGAS заточен под оценку пайплайна поиска и генерации по отдельности.

Это важно, потому что в RAG-системе проблема может быть на любом этапе. Хороший поиск, но плохая генерация — и ответ неверный. И наоборот: генерация отличная, но поиск вернул мусор — пользователь получает нерелевантный ответ. RAGAS раскладывает это на составляющие.

Context Precision — насколько релевантен контекст, который вернул поиск. Context Recall — не упустил ли поиск что-то важное. Faithfulness — придерживается ли генерация найденного контекста. Answer Relevancy — отвечает ли ответ на вопрос пользователя. Четыре метрики покрывают всю цепочку от запроса до ответа.

RAGAS лёгкий и framework-agnostic. Можно интегрировать в любой пайплайн — хоть LangChain, хоть прямые вызовы API. Минус — RAGAS не умеет в тестирование агентов, мультимодальные модели и сложные диалоги. Это инструмент для одной задачи, но в ней он лучший.

LangSmith — трассировка и отладка от создателей LangChain

LangSmith — самый зрелый инструмент в этой экосистеме. Он сочетает трассировку, оценку, площадку для промптов и управление датасетами в одной платформе.

Трассировка — главная суперсила LangSmith. Каждый вызов LLM, каждая цепочка, каждый шаг агента записывается с таймингами, токенами и полным контекстом. Когда агент выдаёт странный ответ, вы за минуту находите проблемный шаг — неверный вызов инструмента, неправильный промежуточный ответ, превышение контекстного окна.

Помимо трассировки, LangSmith предоставляет встроенную оценку с кастомными скоринговыми функциями, человеческую разметку (human annotation queues) и площадку для A/B-тестирования промптов с side-by-side сравнением.

Минус — привязка к экосистеме LangChain. Если вы используете другой фреймворк (CrewAI, AutoGen, OpenAI Agents SDK), интеграция потребует дополнительных усилий. Также LangSmith платный: от $39 в месяц за команду. Для небольших проектов может быть избыточным.

Последовательность оценки LLM: разработчик → приложение → фреймворк → метрики → отчёт

Процесс оценки: от промпта до дашборда с метриками

Arize Phoenix — observability для продакшена

Arize Phoenix (10 248 ★ на GitHub) — open-source инструмент на стыке мониторинга и оценки. Он построен на OpenTelemetry и собирает данные обо всех шагах LLM-приложения в продакшене: запросы, ответы, вызовы инструментов, метаданные.

Phoenix хорош тем, что работает независимо от фреймворка. Неважно, на чём собран ваш AI-агент — LangChain, CrewAI или кастомная логика. Phoenix подключается через OTel SDK и начинает собирать трейсы. Это особенно ценно для гетерогенных систем, где разные агенты используют разные фреймворки.

Из коробки Phoenix предлагает LLM-as-judge оценку, анализ эмбеддингов (визуализация качества поиска) и эксперименты с A/B-сравнением промптов и моделей. Но главное — это production-observability в реальном времени. Вы видите, что прямо сейчас падает качество, и можете разобраться, почему.

Слабая сторона Phoenix — pre-production тестирование. Он заточен на мониторинг работающей системы, а не на генерацию тестов или создание датасетов. Для предрелизного тестирования всё равно понадобится DeepEval или RAGAS.

Сравнение инструментов: что выбрать

Ни один инструмент не покрывает все сценарии. В production-командах обычно используют 2-3 инструмента вместе. Вот как они соотносятся.

Инструмент Тип Сильная сторона GitHub ★ Цена
DeepEval Open-source Unit-тесты, 14+ метрик 16.4K Бесплатно
RAGAS Open-source RAG-метрики 14.5K Бесплатно
LangSmith Коммерческий Трассировка, отладка От $39/мес
Langfuse Open-source AI engineering platform 29.6K Freemium
Arize Phoenix Open-source Production observability 10.2K Бесплатно
Garak (NVIDIA) Open-source Безопасность, red-teaming 8.2K Бесплатно

Выбор зависит от вашей ситуации:

Если вы только начинаете тестировать LLM — начните с DeepEval. Это бесплатно, просто, покрывает базовые метрики. Добавьте RAGAS, если у вас RAG-система. Когда понадобится трассировка и понимание, что происходит внутри агента — подключайте LangSmith или Arize Phoenix.

Если у вас production-система с многошаговыми агентами — Phoenix обязателен для observability, DeepEval для предрелизных тестов. Если вы плотно сидите на LangChain — LangSmith даст интеграцию «из коробки», но привяжет вас к экосистеме.

Для безопасности — Garak от NVIDIA отдельной строкой. Мы рекомендуем прогонять его хотя бы раз в месяц на критически важных агентах, особенно если агент обрабатывает персональные данные.

Важно: Не гонитесь за инструментом «всё в одном». Стек из DeepEval (метрики) + Arize Phoenix (observability) + Garak (безопасность) покрывает 90% потребностей и обходится бесплатно. LangSmith добавляет удобную трассировку, если бюджет позволяет.

Как собрать пайплайн оценки

На основе того, что разобрали выше, вот практический рецепт для production-системы. Он проверен на реальных проектах — включая наших собственных агентов в N202.

Шаг 1. Соберите эталонный датасет. 100-200 примеров входных запросов с ожидаемыми ответами или критериями оценки. Покройте основные сценарии, граничные случаи и типичные ошибки. Датасет — самая дорогая и самая важная часть. Хороший датасет важнее любого инструмента.

Шаг 2. Выберите метрики и пороги. Начните с faithfulness (0.7), answer relevancy (0.7), hallucination (<0.3). Запустите на датасете, посмотрите распределение, подкрутите пороги. Итеративно — 3-4 прогона, пока пороги не начнут отсекать реально плохие ответы.

Шаг 3. Интегрируйте в CI/CD. DeepEval для этого идеален. Добавьте шаг в GitHub Actions или GitLab CI — прогон тестов при каждом пуше, блокировка мержа при падении. Пример для GitHub Actions:

name: LLM Tests
on: [push]
jobs:
  eval:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - run: pip install deepeval
      - run: deepeval test run tests/

Шаг 4. Production мониторинг. Подключите Arize Phoenix через OpenTelemetry. Собирайте трейсы всех запросов, настройте алерты на падение метрик. Если faithfulness упал ниже порога в продакшене — вы должны узнать об этом за минуты, а не через неделю по жалобам пользователей.

Шаг 5. Red-teaming. Раз в месяц прогоняйте Garak на критических агентах. Проверьте устойчивость к промпт-инъекциям, утечкам данных, джейлбрейкам. Это особенно важно, если агент работает с внешними данными или имеет доступ к внутренним системам.

Шаг 6. Human review для сложных случаев. Автоматические метрики не заменят человеческого суждения. Настройте семплинг — 5-10% production-запросов отправляются на ручную проверку. LangSmith и Langfuse предоставляют human annotation queues для этого.

Коротко

Тестирование LLM — это не опция, а обязательный этап production-внедрения. Без него вы узнаёте о проблемах от пользователей.

DeepEval — лучший выбор для старта: open-source, 14+ метрик, CI/CD-интеграция. RAGAS — если у вас RAG-пайплайн. LangSmith — когда нужна трассировка каждого запроса. Arize Phoenix — для observability в продакшене. Garak — для безопасности и red-teaming.

Главное правило: начните с трёх метрик (faithfulness, answer relevancy, hallucination), соберите эталонный датасет и интегрируйте тесты в CI/CD. Остальное донастраивается по мере роста системы.