ai-benchmark/scripts
second_constantine 2a04e6c089 docs: update test format documentation in README
Update documentation to reflect new TXT format with separator for summarization tests instead of JSON format. Clarify that expected field may be empty if summary generation fails.

feat: change test generation to TXT format with separator

Change test generation from JSON to TXT format with TEST_SEPARATOR. Add filename sanitization function to handle MongoDB record IDs. Update output path and file naming logic. Add attempt to generate expected summary through LLM with fallback to empty string.
2026-01-22 20:40:41 +03:00
..
convert_json_to_txt.py feat: add MongoDB test generation and update dependencies 2026-01-22 20:11:52 +03:00
generate_summarization_from_mongo.py docs: update test format documentation in README 2026-01-22 20:40:41 +03:00
generate_tests.py feat: add MongoDB test generation and update dependencies 2026-01-22 20:11:52 +03:00
README.md docs: update test format documentation in README 2026-01-22 20:40:41 +03:00

Скрипты для генерации тестов

Эта директория содержит скрипты для генерации тестовых данных для AI бенчмарка.

Доступные скрипты

1. generate_tests.py

Скрипт для генерации тестовых данных через LLM (Ollama).

Функциональность:

  • Генерация тестов для переводов (translation)
  • Генерация тестов для пересказов (summarization)
  • Генерация тестов для генерации кода (codegen)
  • Валидация generated тестов

Использование:

python scripts/generate_tests.py --count 2 --category translation --model second_constantine/t-lite-it-1.0:7b --ollama-url http://10.0.0.4:11434

Параметры:

  • --count: Количество тестов для генерации (по умолчанию: 1)
  • --category: Категория тестов (translation, summarization, codegen, или all) (по умолчанию: all)
  • --model: Название модели для генерации тестов (обязательный параметр)
  • --ollama-url: URL подключения к Ollama серверу (обязательный параметр)
  • --validate: Валидировать тесты в указанной директории

2. generate_summarization_from_mongo.py

Скрипт для генерации тестов пересказов из MongoDB.

Функциональность:

  • Извлекает текст статьи из коллекции rssNotification (поле .meta.topicContent)
  • Генерирует тестовые данные в формате JSON для бенчмарка AI
  • Валидирует generated тесты

Использование:

python scripts/generate_summarization_from_mongo.py --record-id 507f1f77bcf86cd799439011

Параметры:

  • --record-id: ID записи в MongoDB (обязательный параметр)
  • --output-dir: Директория для сохранения generated тестов (по умолчанию: tests/summarization)

Требования:

  • Доступ к MongoDB кластеру (10.0.0.3, 10.0.0.4, 10.0.0.5)
  • Установленный пакет pymongo (автоматически устанавливается при первом запуске)

Формат generated тестов:

Summarize the following text in 1-2 sentences: 'Текст статьи из MongoDB'
Ожидаемый пересказ (если доступен)

Примечание: Тесты генерируются в формате TXT с разделителем ==============. Поле "expected" может быть пустым, если генерация пересказа не удалась.

Установка зависимостей

Для работы скриптов требуются следующие зависимости:

pip install pymongo

Все зависимости указаны в файле requirements.txt в корне проекта.