Eval AI Library¶
Комплексный фреймворк для оценки AI моделей
Оценивайте RAG-системы, AI-агентов и безопасность LLM с помощью 15+ метрик, поддержки множества провайдеров и продвинутых техник скоринга. Eval AI Library предоставляет единый интерфейс для всесторонней оценки качества ваших AI-систем -- от точности ответов до устойчивости к атакам.
Ключевые возможности¶
-
15+ метрик оценки
RAG-метрики, оценка агентов, проверки безопасности и пользовательские метрики -- всё необходимое для комплексной оценки AI-систем. Библиотека включает метрики релевантности ответов, точности, верности контексту, а также специализированные метрики для обнаружения предвзятости и токсичности. Каждая метрика настраивается индивидуально с помощью порогов, температуры агрегации и выбора модели-судьи.
-
Оценка агентов
Корректность вызова инструментов, процент успешного выполнения задач, соблюдение роли, сохранение знаний и обнаружение ошибок для AI-агентов. Eval AI Library позволяет оценивать не только одиночные ответы, но и сложные цепочки взаимодействий агента с инструментами и пользователем, включая мультитёрновые диалоги.
-
Тестирование безопасности
Обнаружение и устойчивость к prompt-инъекциям и jailbreak-атакам, утечка персональных данных (PII), обнаружение вредоносного контента и соответствие политикам. Комплексный набор метрик безопасности позволяет выявить уязвимости вашей AI-системы до того, как они станут проблемой в продакшене.
-
Поддержка множества провайдеров
OpenAI, Azure OpenAI, Google Gemini, Anthropic Claude, Ollama и пользовательские LLM-провайдеры через единый интерфейс. Переключайтесь между провайдерами одной строкой кода. Используйте локальные модели через Ollama для разработки и облачные -- для продакшена.
-
G-Eval и пользовательские метрики
Передовой метод G-Eval с взвешиванием по вероятности токенов, а также полностью настраиваемые критерии оценки. Создавайте собственные метрики для специфических доменных задач, определяя критерии оценки на естественном языке. G-Eval обеспечивает высокую корреляцию с экспертными оценками.
-
Генерация тестовых данных
Генерируйте тест-кейсы из документов в 15+ форматах, включая PDF, DOCX, CSV, JSON, HTML и изображения с OCR. Автоматическая генерация позволяет быстро создать репрезентативный набор тестов на основе вашей документации, базы знаний или любых других источников данных.
Быстрый пример¶
Ниже приведён минимальный пример, демонстрирующий основной рабочий процесс Eval AI Library: создание тест-кейса, выбор метрик и запуск оценки. Всего несколько строк кода позволяют получить количественную оценку качества ответов вашей AI-системы.
import asyncio
from eval_lib import evaluate, EvalTestCase, AnswerRelevancyMetric, FaithfulnessMetric
test_case = EvalTestCase(
input="What is machine learning?",
actual_output="Machine learning is a subset of AI that enables systems to learn from data.",
expected_output="Machine learning is a branch of artificial intelligence focused on building systems that learn from data.",
retrieval_context=[
"Machine learning is a subset of artificial intelligence (AI) that provides systems the ability to automatically learn and improve from experience without being explicitly programmed."
]
)
metrics = [
AnswerRelevancyMetric(model="gpt-4o", threshold=0.7),
FaithfulnessMetric(model="gpt-4o", threshold=0.7),
]
results = asyncio.run(evaluate([test_case], metrics))
В результате выполнения вы получите подробный отчёт с оценками по каждой метрике, статусом прохождения порога и общей стоимостью вычислений:
============================================================
EVALUATION RESULTS
============================================================
Test Case 1/1: What is machine learning?
Answer Relevancy
Score: 0.92 | Threshold: 0.70 | PASSED
Faithfulness
Score: 0.95 | Threshold: 0.70 | PASSED
============================================================
Overall: 1/1 test cases passed (100.0%)
Total evaluation cost: $0.0034
============================================================
Каждая метрика возвращает числовой score от 0.0 до 1.0, где 1.0 означает идеальный результат. Порог (threshold) определяет минимальное значение score, при котором тест-кейс считается пройденным. Стоимость оценки (evaluation cost) рассчитывается автоматически на основе количества токенов, отправленных модели-судье.
Обзор архитектуры¶
Архитектура Eval AI Library построена по модульному принципу. Тест-кейсы поступают в движок оценки, который распределяет их по выбранным метрикам. Каждая метрика использует LLM-провайдер для получения вердиктов, которые затем агрегируются в итоговый score. Результаты доступны как программно, так и через интерактивный дашборд.
graph TD
A[Тест-кейсы] --> B[Движок оценки]
B --> C{Метрики}
C --> D[RAG-метрики]
C --> E[Метрики агентов]
C --> F[Метрики безопасности]
C --> G[Пользовательские / G-Eval]
D --> H[LLM-провайдер]
E --> H
F --> H
G --> H
H --> I[OpenAI]
H --> J[Azure]
H --> K[Gemini]
H --> L[Claude]
H --> M[Ollama]
H --> N[Custom]
B --> O[Результаты и дашборд] Движок оценки выполняет все метрики асинхронно, что позволяет эффективно использовать ресурсы при оценке большого количества тест-кейсов. Провайдеры LLM абстрагированы через единый интерфейс, поэтому переключение между моделями не требует изменения логики оценки.
Категории метрик¶
В таблице ниже перечислены все категории метрик, доступные в Eval AI Library. Каждая категория предназначена для оценки определённого аспекта вашей AI-системы.
| Категория | Метрики | Назначение |
|---|---|---|
| RAG | Answer Relevancy, Precision, Faithfulness, Contextual Relevancy/Precision/Recall, Bias, Toxicity | Оценка пайплайнов генерации с использованием извлечённого контекста (RAG). Позволяет измерить, насколько точно и полно система использует предоставленный контекст для формирования ответов. |
| Агенты | Tool Correctness, Task Success, Role Adherence, Knowledge Retention, Tool Errors | Оценка AI-агентов и ассистентов. Измеряет корректность выбора инструментов, успешность выполнения задач и соблюдение заданной роли. |
| Безопасность | Prompt Injection, Jailbreak, PII Leakage, Harmful Content, Policy Compliance | Тестирование безопасности и защищённости. Выявляет уязвимости к инъекциям, утечки персональных данных и генерацию вредоносного контента. |
| Пользовательские | Custom Metric, G-Eval | Оценка по специфическим доменным критериям. Позволяет определить собственные критерии оценки на естественном языке и использовать метод G-Eval для автоматического скоринга. |
Агрегация оценок¶
Eval AI Library использует Temperature-Controlled Verdict Aggregation via Generalized Power Mean -- новаторский подход, обеспечивающий гибкий скоринг через настраиваемые уровни строгости. Этот метод позволяет контролировать, насколько сильно единичные низкие вердикты влияют на итоговый score.
В отличие от простого среднего арифметического, обобщённое степенное среднее с параметром температуры позволяет настроить поведение агрегации от практически минимума (строгая оценка) до практически максимума (мягкая оценка). Это особенно важно для сценариев, где критически важна безопасность или, наоборот, допускается определённая степень вариативности.
| Температура | Поведение | Рекомендуется для |
|---|---|---|
| 0.1 | Строгая (близко к минимуму) | Приложения с критичной безопасностью, медицинские и юридические системы |
| 0.5 | Сбалансированная (среднее арифметическое) | Общая оценка, большинство типовых задач |
| 1.0 | Мягкая (близко к максимуму) | Креативные задачи, генерация контента |
Установка¶
Установите Eval AI Library с помощью pip:
Требуется Python 3.9 и выше. Библиотека поддерживает все основные операционные системы: Linux, macOS и Windows. Подробные инструкции по установке, настройке окружения и установке дополнительных зависимостей смотрите в руководстве по установке.