Локальный триаж-судья телеграмного моста: rubert-tiny2 + классификационная голова
- Python 62.8%
- Rust 34.8%
- Nix 2.4%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
model/ — fp16-веса, токенизатор и golden.json лучшего чекпоинта (100% на 57 базовых сценариях, 73% на блокнотных): промежуточная публикация, чтобы модель можно было щупать до финала блокнотных итераций. Пакет переименован в eva-bert-mentions по слову Господина; overlays.default даёт pkgs.eva-bert-mentions и pkgs.eva-triage-cli. Co-Authored-By: Eva |
||
| crates | ||
| model | ||
| training | ||
| .gitignore | ||
| AGENTS.md | ||
| Cargo.lock | ||
| Cargo.toml | ||
| flake.lock | ||
| flake.nix | ||
| README.md | ||
eva-triage
Локальный триаж-судья телеграмного моста: cointegrated/rubert-tiny2
(~29M) с классификационной головой вместо удалённой модели. Пачка
сообщений группы → по классу на сообщение (Skip / Reaction / Message /
Both), команды из pinned-заметок блокнота чата — во входе. Выход — softmax
по 4 классам: инъекция через тела сообщений невозможна по построению.
План целиком: ~/dev/eva/plans/local-triage.md.
Раскладка
crates/eva-triage/ Rust-библиотека инференса (candle)
crates/cli/ eva-triage-cli на фреймворке eva (App)
training/ генератор датасета, дистилляция, трейн, экспорт
model/ артефакты (fp16 + токенизатор + golden.json)
Как гонять
nix develop -c cargo test # библиотека; golden — при EVA_TRIAGE_MODEL
nix develop .#training # шелл с torch/transformers
nix build .#eva-bert-mentions # пакет артефактов модели
nix build .#eva-triage-cli # судья: JSON-пачка на stdin
overlays.default даёт pkgs.eva-bert-mentions и pkgs.eva-triage-cli.
Этапы
- M0 — каркас: API, сборка входа (спецтокены, нормализация
@username, маркер имени[BOT_NAME]из конфига, урезание тел) - M1 — данные и экзамен (синтетика; дистилляция отложена до прода)
- M2 — модель v0: 100% на 57 сценариях (гейт ≥ 95%)
- M3 — модель v1 (блокнот): 87% на командных при пороге 0.45, гейт ≥ 90% пока не взят — итерации данных продолжаются
- M4 — инференс-бэкенд candle + golden-паритет; замер латентности — на целевой машине (ort/int8 отложен решением Господина)
- M5 — тень рядом с удалённым судьёй (ветка моста готова)
- M6 — переключение и снос удалённого пути