2.7 KiB
Evals
Цель: проверять качество моделей, RAG и будущих адаптеров воспроизводимым способом.
Validate Eval Files
python scripts/validate_evals.py
Run 1C Smoke Eval Without Model
Prompt-only режим проверяет, что eval-набор читается и превращается в отчет.
python scripts/run_1c_smoke_eval.py --print
Отчет пишется в:
reports/evals/1c-smoke.report.json
Папка reports не коммитится.
Run 1C Smoke Eval Against vLLM
После запуска inference:
python scripts/run_1c_smoke_eval.py --base-url http://docker-gpu.cin.su:8000 --model qwen3-4b-instruct
Runner сохраняет ответы и считает автоматические проверки, если критерий задан структурно. Строковые критерии остаются ручными.
Поддерживаемые автоматические типы:
containsnot_containsregexmax_sentencesrefusesrequires_metadata
Для GGUF/llama.cpp:
python scripts/run_1c_smoke_eval.py --base-url http://docker-gpu.cin.su:8080 --model devstral-1c-q4
Перед evals удобно проверить endpoint:
python scripts/check_inference_endpoint.py --base-url http://docker-gpu.cin.su:8000 --expected-model qwen3-4b-instruct --print
python scripts/check_inference_endpoint.py --base-url http://docker-gpu.cin.su:8080 --expected-model devstral-1c-q4 --print
Run Live Evals For Available Models
Единая команда проверяет endpoint-ы активного GPU-профиля и запускает smoke eval только для моделей этого профиля:
python scripts/run_live_model_evals.py --profile text --print
Отчет пишется в:
reports/evals/live-model-evals.json
По умолчанию live eval использует продуктовый 1С system prompt:
plugins/1c/prompts/system.md
Если endpoint недоступен, соответствующая модель получает статус blocked.
Для полной ручной проверки взаимоисключающих профилей используйте:
python scripts/run_live_model_evals.py --all-targets --print
Promotion Rule
Модель или адаптер нельзя переводить из draft/staging в production, пока smoke-evals не пройдены и отчет не просмотрен.