Что это
Ragas помогает проверять качество AI-приложения не по одному удачному ответу, а по набору примеров и понятным метрикам. Например, сравнить две версии поиска по одинаковым вопросам и увидеть, какие ответы стали хуже.
Одни метрики используют модель-судью, другие работают без нее. ExactMatch проверяет буквальное совпадение; Faithfulness - поддержку утверждений найденным контекстом. Это разные проверки: совпадение с контекстом не делает устаревший или неверный источник истинным.
Здесь описана открытая Python-библиотека. Она не заменяет RAG-сервис и не исправляет ответы автоматически. Оценки помогают найти слабые случаи, после чего команда проверяет их и меняет систему.
Ключевые параметры
- Категория: Оценка, мониторинг и evals
- Сложность: Для разработчика
- Запуск: Около 30 минут
- Open-source: Да
- Данные: Не известно
- Чувствительные данные: Только с настройками
Доступные модели и версии
Сильные стороны
- Можно отдельно оценивать поиск, ответ и соответствие контексту.
- Метрики без LLM позволяют начать с воспроизводимой проверки без API-ключа.
- Одинаковые примеры помогают обнаружить ухудшения после смены промпта или поиска.
- Открытая библиотека позволяет встроить проверки в свой Python-процесс.
Ограничения
- Некоторые метрики требуют LLM или embeddings и создают отдельные расходы и сетевые обращения.
- Модель-судья тоже ошибается; оценки зависят от ее версии и настроек.
- Среднее значение скрывает отдельные провалы, а маленький набор не представляет все задачи.
- Для новых примеров нужно учитывать текущий collections-based API; старые импорты и методы могут отличаться.
Как использовать
1. Подготовка. Создайте отдельное окружение Python и установите python -m pip install ragas. Начните с коротких ожидаемых меток, например response="support" и reference="support", без клиентских данных.
2. Настройка. Импортируйте ExactMatch из ragas.metrics.collections и создайте scorer = ExactMatch(). Для этой метрики LLM, embeddings и API-ключ не нужны. Сохраните версии пакетов для повторной проверки.
3. Первый результат. Выполните scorer.score(response="support", reference="support").value: ожидается 1.0. Затем измените response на "sales": ожидается 0.0. Сохраните результат каждого примера, а не только среднее.
4. Проверка. Убедитесь, что ExactMatch измеряет только буквальное совпадение и не оценивает смысл свободного ответа. Для RAG подготовьте вопросы, ответы и retrieved_contexts, подключите поддерживаемого судью для Faithfulness и вручную проверьте спорные случаи. Сравнивайте версии системы при одинаковых данных и настройках оценивания.
Примеры сценариев
- Проверить короткую метку классификации без модели-судьи.
- Сравнить ответы RAG до и после изменения поиска.
- Разобрать низкую поддержку ответа найденным контекстом.
Доступ и оплата
- Модель оплаты: Open-source
- Бесплатный тариф: Да
- Работа в РФ: Нужно проверять
- VPN: Не известно
- Русский интерфейс: Не известно
- Русский язык: Не известно
Открытая библиотека имеет Apache-2.0. Плата за внешнюю модель-судью, embeddings и вычислительные ресурсы не включена в библиотеку. API здесь означает Python-интерфейс; отдельный HTTP-сервис она автоматически не разворачивает. Доступность провайдера из России проверяйте отдельно.
Когда не подходит
- Доказать качество одним средним числом
- Заменить проверку экспертом в критичной теме
- Обещать полностью бесплатные оценки с платной моделью-судьей
Альтернативы
DeepEval предлагает другой набор программных оценок. Promptfoo удобен для тестовой матрицы промптов и моделей. Giskard полезен для проверки рисков и качества приложений. Сопоставляйте не только итоговый балл, но критерии и ошибки на тех же примерах.