Repository navigation
v1.3.0 — быстрый вход, публичные бенчмарки наверху, починка .env
В 1.3.0 два независимых изменения: README наконец начинается с того, ради чего его открывают, и починен баг деплоя, из-за которого .env на сервере не читался вообще.
Быстрый старт вместо предисловия
Установка начиналась на 123-й строке из 1241: человек сначала читал позиционирование и только потом видел первую команду. Теперь сверху pip install → uvicorn → curl с реальным ответом сервиса и честной пометкой, что на hash-энкодере вероятности почти равномерные, а осмысленные числа начинаются с обученного пака. Рядом оглавление и минимальный набор из пяти переменных.
Публичные бенчмарки наверху
| Публичный набор | decision-cascade 124M | Clef-Flash 9.4B | Laya 421M |
|---|---|---|---|
| AG News — accuracy | 0.873 | 0.855 | 0.662 |
| AG News — p50 | 10 мс | 130 мс | 16 мс |
| RouterBench — accuracy | 0.542 | 0.442 | 0.312 |
| RouterBench — p50 | 21 мс | 170 мс | 27 мс |
Синтетический домен support в эту таблицу не попал: он in-distribution, и аргумент «0.915 против 0.667» на нём разваливается от первого же вопроса. Полная картина с политиками эскалации и оговорками осталась в docs/benchmarks.md.
Английская версия и бейджи
README.en.md повторяет quickstart, бенчмарки и SDK на английском; расхождение версии или чисел с русской версией ловит тест. Бейджи поставил только динамические: CI, версия PyPI, поддерживаемые версии Python, лицензия. Покрытие показываю не числом «94%», которое устареет через месяц, а обещанием ≥90% из pyproject.toml.
Юнит не читал .env
Это была настоящая ошибка, а не косметика. docs/deploy.md называет .env основным способом задать DECISION_*, deploy/backup.sh его архивирует, а systemd-юнит его не подключал: на сервере всё, что вы туда положили, молча игнорировалось и сервис работал на дефолтах. Теперь в юните EnvironmentFile=-<project>/.env. Файл по-прежнему необязателен, поэтому забытый .env не роняет сервис, но если он есть — значения применяются.
При апгрейде загляните в .env и сверьте, что там ожидаемое: GET /info → config показывает, что реально применилось.
Совместимость
Ломающих изменений нет: schema_version остаётся "1", блок config в /info аддитивен, новых зависимостей и переменных окружения нет.
Проверки
ruff и shellcheck чистые, uv lock --check проходит, pytest — 799 passed, 14 skipped без GPU, покрытие 94%, pip-audit не знает уязвимостей, twine check и smoke установленного wheel — в порядке.
Артефакты
В релизе wheel и sdist, v1.3.0-weights.tar.gz с манифестом (семь паков; русский не публикуется из-за лицензии датасета) и v1.3.0-benchmarks.tar.gz с 38 файлами прогонов. Контрольные числа паков не менялись: AG News 0.8800, RouterBench 0.5480, support 0.9258.