Установка¶
В этом разделе описан процесс установки Eval AI Library и настройки окружения для работы с различными LLM-провайдерами. Библиотека устанавливается стандартным способом через pip и требует минимальной конфигурации для начала работы.
Системные требования¶
Перед установкой убедитесь, что ваша система соответствует следующим минимальным требованиям:
- Python 3.9 или выше (рекомендуется Python 3.11+ для оптимальной производительности асинхронных операций)
- pip актуальной версии (рекомендуется обновить командой
pip install --upgrade pip) - Как минимум один API-ключ LLM-провайдера (OpenAI, Anthropic, Google и т.д.) для метрик, использующих модель-судью. Некоторые метрики (например, Tool Correctness) работают без LLM и не требуют API-ключей.
Поддерживаемые операционные системы
Eval AI Library протестирована и поддерживается на Linux, macOS и Windows. Все зависимости являются кроссплатформенными.
Установка из PyPI¶
Основной способ установки -- через Python Package Index (PyPI). Эта команда установит библиотеку со всеми необходимыми зависимостями, включая pydantic, aiohttp, openai, anthropic, google-generativeai и другие:
Рекомендуется устанавливать библиотеку в виртуальное окружение, чтобы избежать конфликтов зависимостей с другими проектами:
python -m venv eval-env
source eval-env/bin/activate # Linux/macOS
# eval-env\Scripts\activate # Windows
pip install eval-ai-library
Облегчённая установка (Lite)¶
Если вам нужна только функциональность трейсинга без метрик оценки, используйте облегчённый вариант установки. Это полезно в продакшен-окружениях, где вы хотите собирать данные о работе модели, но не проводить полноценную оценку:
Облегчённая установка включает только pydantic и aiohttp -- минимальный набор зависимостей для трейсинга в продакшене. Размер установки значительно меньше по сравнению с полной версией, что ускоряет сборку Docker-образов и деплой.
Настройка окружения¶
Установите API-ключи для тех LLM-провайдеров, которые вы планируете использовать. API-ключи необходимы для метрик, использующих модель-судью (LLM-as-a-Judge). Каждый провайдер требует свой набор переменных окружения.
OpenAI -- провайдер по умолчанию. Если в спецификации модели не указан префикс провайдера, используется OpenAI. Для получения API-ключа зарегистрируйтесь на platform.openai.com и создайте ключ в разделе API Keys.
Рекомендуемые модели: gpt-4o (оптимальное соотношение качества и стоимости), gpt-4o-mini (бюджетный вариант для больших объёмов оценок).
Для использования моделей Claude от Anthropic получите API-ключ на console.anthropic.com. Claude отличается высоким качеством рассуждений и хорошо подходит для роли модели-судьи.
Рекомендуемые модели: anthropic:claude-3-5-sonnet-latest, anthropic:claude-3-haiku-20240307 (бюджетный вариант).
API-ключ для Google Gemini можно получить в Google AI Studio. Модели Gemini предлагают конкурентное качество при привлекательной стоимости.
Рекомендуемые модели: google:gemini-2.0-flash (быстрый и экономичный), google:gemini-1.5-pro (максимальное качество).
Для Azure OpenAI необходимо настроить три переменные окружения. Убедитесь, что у вас создан ресурс Azure OpenAI и развёрнута (deployed) нужная модель в Azure Portal.
export AZURE_OPENAI_API_KEY="..."
export AZURE_OPENAI_ENDPOINT="https://your-resource.openai.azure.com"
export AZURE_OPENAI_DEPLOYMENT="your-deployment-name"
Azure OpenAI особенно полезен для корпоративных сценариев, где требуется соответствие нормативным требованиям и контроль над местоположением данных.
Ollama позволяет запускать LLM локально на вашем компьютере. Это идеальный вариант для разработки и тестирования без расходов на API, а также для сценариев, где данные не должны покидать ваш контур. Установите Ollama с ollama.ai и скачайте нужную модель (например, ollama pull llama3).
# Ollama работает локально, API-ключ по умолчанию не нужен
export OLLAMA_API_BASE_URL="http://localhost:11434/v1"
Рекомендуемые модели: ollama:llama3 (общего назначения), ollama:mistral (компактный и быстрый). Обратите внимание, что качество оценки с локальными моделями может быть ниже по сравнению с облачными.
Проверка установки¶
После установки убедитесь, что библиотека корректно установлена и доступна. Выполните следующий код в Python-интерпретаторе или скрипте:
Если версия отображается корректно, установка прошла успешно. В случае ошибки импорта убедитесь, что вы используете то виртуальное окружение, в которое установили библиотеку.
Для более полной проверки можно выполнить минимальный тест с метрикой, не требующей LLM:
from eval_lib import EvalTestCase, ToolCorrectnessMetric
import asyncio
from eval_lib import evaluate
test_case = EvalTestCase(
input="Test",
actual_output="Test response",
tools_called=["search"],
expected_tools=["search"],
)
results = asyncio.run(evaluate([test_case], [ToolCorrectnessMetric(threshold=0.5)]))
print("Установка работает корректно!")
Дополнительно: модель spaCy¶
Некоторые метрики используют библиотеку spaCy для обработки естественного языка (NLP), в частности для токенизации, лемматизации и извлечения именованных сущностей. Если вы планируете использовать такие метрики, скачайте модель для английского языка:
Для работы с русскоязычными текстами может потребоваться дополнительная модель:
Примечание
Модели spaCy не являются обязательными для базовой функциональности. Библиотека автоматически определит их отсутствие и использует альтернативные методы обработки текста, если модели не установлены.
Дополнительно: Tesseract OCR¶
Для возможности извлечения текста из изображений при генерации тестовых данных (data generation) необходимо установить Tesseract OCR. Это актуально, если ваша документация или база знаний содержит изображения с текстом, таблицы в виде скриншотов и т.п.
Установка из стандартных репозиториев:
Для поддержки русского языка дополнительно установите языковой пакет:
Скачайте установщик с Tesseract GitHub и добавьте путь к исполняемому файлу в переменную окружения PATH. После установки проверьте командой tesseract --version.
Что дальше?¶
После успешной установки рекомендуем перейти к следующим разделам:
- Быстрый старт -- запустите свою первую оценку за 5 минут и познакомьтесь с основными концепциями библиотеки
- Конфигурация -- настройте провайдеры, метрики и параметры оценки под ваши задачи