Библиотека LLM-mock позволяет записывать и воспроизводить ответы от API OpenAI и Anthropic в рамках unit-тестирования на pytest. Инструмент решает проблему дороговизны и нестабильности реальных запросов к LLM при разработке, позволяя разработчикам создавать детерминированные тесты на основе зафиксированных ответов моделей, что значительно ускоряет цикл CI/CD и снижает затраты на токены.

Принцип работы утилиты основан на перехвате сетевых вызовов к популярным провайдерам ИИ-моделей. При первом запуске теста библиотека сохраняет ответ модели в локальный файл-заглушку (mock), а при последующих прогонах использует этот файл вместо обращения к удаленному серверу. Это исключает зависимость от аптайма внешних сервисов и позволяет тестировать логику обработки ответов в изолированной среде.

Инструмент ориентирован на разработчиков, которые интегрируют LLM в сложные агентные системы или пайплайны обработки данных. Использование заглушек позволяет проверять корректность парсинга JSON, работу с контекстом и обработку ошибок без необходимости каждый раз отправлять запросы в облако, что критично для отладки сложных цепочек вызовов.

Ключевые факты

  • Поддержка основных API-провайдеров: OpenAI и Anthropic.
  • Полная интеграция с фреймворком pytest через систему фикстур.
  • Автоматическое создание файлов-заглушек при первом выполнении теста.
  • Исключение расходов на токены при повторном запуске тестового набора.
  • Обеспечение детерминизма тестов за счет фиксации ответов модели.