| .. | ||
| pilot | ||
| .gitignore | ||
| adaptive_incontext.py | ||
| adaptive_levers.py | ||
| adaptive_probe.py | ||
| adaptive_reask.py | ||
| build_editor_artifact.py | ||
| content_filter_probe.py | ||
| cost_model_v2.py | ||
| coverage_precision.py | ||
| editor_bench.py | ||
| extract_bench.py | ||
| llama_moe_bench.sh | ||
| local_bench.py | ||
| memory_hotpath.py | ||
| ollama-up.sh | ||
| providers.json | ||
| README.md | ||
| refusal_bench.py | ||
| refusal_corpus_build.py | ||
| retrieval_bench.py | ||
| run_refusal.sh | ||
| token_calc.py | ||
eval/ — полигон TextMachine
Зона сессии «Полигон»: эмпирическая валидация допущений архитектуры (мерить, а не верить). Отчёты — docs/experiments/NN-*.md (методика + цифры + честные ограничения). backend/ только читать; расхождения с architecture/research — пингом оркестратору в docs/PROGRESS.md. .env не читать; data/refusal_corpus/* не открывать без прямой задачи владельца.
Карта
| Скрипт | Эксперимент | Заметки |
|---|---|---|
refusal_bench.py |
exp02; его split_sentences/classify_output = приёмочный оракул coverage-гейта Go (паритет закреплён Go-тестом; любое изменение — Python-first, лок-степ) |
run_refusal.sh — однокоманда |
token_calc.py |
exp01 токен-калибровка (r-множители) | токенизаторы в tokenizers/ |
editor_bench.py + build_editor_artifact.py |
exp04 бейк-офф редакторов | ⚠ слепота артефакта была сломана (ключ внутри) — при новых оценках ключ ВНЕ артефакта, рандомизация меток по фрагментам (D13.5) |
coverage_precision.py, content_filter_probe.py |
exp07 precision гейта (0 FP/57) | |
cost_model_v2.py |
exp08 COGS (~$0.69/ранобэ) | цены датировать и перепроверять |
extract_bench.py |
exp06 экстракция терминов (спот=локаль/рендер=облако) | health-верификация каждого ответа — образец |
retrieval_bench.py |
эмбеддинг-бенч памяти (bge-m3 дефолт) | |
pilot/declmetric.py, pilot/memory_eval.py |
харнесс пилота Ф2.5 (exp09) | ⚠ чинится ДО решающего прогона: стрип эха глоссария, ПОЛНЫЕ выходы (не [:160]), fidelity-ось, имена M0–M3 (D13.5); инъекция = зеркало backend/internal/pipeline/memory.go — при расхождении верить Go |
adaptive_*.py |
research/14 пробы (гибрид отклонён) | индикативные, не решения |
memory_hotpath.py |
УСТАРЕЛ (контракт до cc57c7b) — не переиспользовать |
актуальное зеркало — pilot/memory_eval.py |
providers.json |
базовые URL/слаги для зондов | квирки — docs/experiments/00-provider-quirks.md, читать ПЕРЕД любым вызовом |
Правила (выучены на ошибках)
- Провенанс данных: results-файлы не перезаписывать ре-раном (урок exp02: сырьё 66 вызовов утрачено); каждый прогон — model id + дата + usage; сырые ВЫХОДЫ сохранять целиком.
- Претрейн-контаминация: вся классика (Лу Синь/Акутагава/Уэллс) в претрейне моделей — C0 частично выдаёт канон, эхо систематично (deepseek 13/24 zh-чанков). Выводы на классике = предварительные; решающие замеры — на вебновелл-корпусе владельца.
- Тест ставится, только если его исход может перевернуть решение и не установлен литературой (урок снятого exp05).
- LLM-судьи: ≤2–3 семейства, 11+ повторов со свапом позиций, Bradley-Terry/медиана, судья не судит выходы своего семейства (D13.3); κ против человеческого IAA, не «средняя корреляция».
- Env:
eval/.venv(torch-cpu, sentence-transformers, openai, dotenv, pymorphy3); ключи скрипты читают изeval/.envсами. Стенд: GTX 1070 8GB — модель полигонаqwen3-abliterated:30b-a3bв ollama не выселять без нужды; localhost из-под прокси даёт 403 — для локальных вызовов no-proxy. data/в .gitignore (коммитится только код) — критичные результаты дублируй цифрами вdocs/experiments/.