textmachine/eval/requirements.txt

65 lines
4.4 KiB
Text
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# eval/ — зависимости полигона.
#
# Установка: python3 -m venv .venv && .venv/bin/pip install -r requirements.txt
# Интерпретатор: см. .python-version (3.14.4).
# Эмбеддинг-бенч (retrieval_bench.py) тянет ~2.5 ГБ отдельно — requirements-embed.txt.
#
# СТЕНД 03.08.2026: Ubuntu 26.04 / CPython 3.14.4. Каждая версия сверена ИСПОЛНЕНИЕМ
# против реальных call-site'ов (compat-прогон 03.08), а не взята из памяти.
#
# ⚠ ЭТО НЕ СТЕНД ЗАКРЫТЫХ exp1216 / promptlang / rerun2. Те шли 12.0701.08 на
# Ubuntu 24 / CPython ~3.12 с НЕИЗВЕСТНЫМИ версиями: манифеста тогда не было, .venv и
# data/ в .gitignore. Единственный уцелевший след — `openai 2.44.0` (комментарий
# rerun2_judge/judge.py:33, 24.07). Следствие: перепрогон на этих пинах — НОВЫЙ замер,
# а не репродукция ратифицированных вердиктов (D30/D32/D37/D38/D39.22/D39.61).
# Цифры живут в docs/experiments/, не здесь.
#
# Здесь только то, что импортируется КОДОМ напрямую. Часть строк пришла бы и
# транзитивно (PyYAML через huggingface-hub, regex/requests через tiktoken, numpy через
# scipy) — объявлены ЯВНО намеренно: код импортирует их сам, и смена чужого дерева
# зависимостей не должна их унести.
# --- вызовы моделей -------------------------------------------------------------
# 12 файлов, все через `from openai import OpenAI` (rerun2_judge/judge.py:33,
# exp15/exp15_llm.py:22). Проверено: extra_body кладёт квирк-ключи ПЛОСКО в тело
# (00-provider-quirks.md на этом стоит), max_tokens и max_completion_tokens оба живы
# и SDK их не переписывает, DeepSeek-овый `prefix: true` в сообщении не срезается.
openai==2.52.0
# 14 файлов читают eval/.env сами.
python-dotenv==1.2.2
# --- данные и разбор ------------------------------------------------------------
# 21 файл. Везде safe_load (`yaml.load(` — 0 вхождений), поэтому слом PyYAML 6.x не кусает.
# Байт-стабильность дампа сида держится на dump(allow_unicode, sort_keys, width) —
# exp15/gender_transport.py:37, exp14b/exp14b_reseed_promote.py:25.
PyYAML==6.0.3
# 8 файлов. НЕСУЩЕЕ: классы письменностей \p{Han}/\p{Cyrillic}, которые stdlib re
# не компилирует вовсе — это паритет с Go unicode.Han/Hiragana (exp15/mem_select.py:32).
regex==2026.7.19
# 6 файлов: русская морфология (pilot/declmetric.py:35, pkg7/rubric_probe.py:83).
# Тянет pymorphy3-dicts-ru (словарь) и setuptools (требование самого pymorphy3 на py>=3.12).
pymorphy3==2.0.6
# --- счёт и статистика ----------------------------------------------------------
# 6 файлов (retrieval_bench.py:34, exp15/fertility_calib.py:15). Все 18 используемых
# атрибутов живы в 2.x; ни одного удалённого имени (np.float_/np.NaN/np.trapz/…) в коде нет.
numpy==2.5.1
# 3 файла — только пере-анализы exp15 (stats.t, ttest_1samp).
scipy==1.18.0
# --- токенизация ----------------------------------------------------------------
# token_calc.py:35, exp14/exp14_common.py:141 — ТОЛЬКО Tokenizer.from_file
# (from_pretrained: 0 вхождений, сети не будет). Тянет huggingface-hub/hf-xet/fsspec.
# ⚠ сами файлы токенизаторов в eval/tokenizers/ (gitignore) — на чистой машине их нет.
tokenizers==0.23.1
# token_calc.py:29. ⚠ get_encoding при первом вызове КАЧАЕТ ~4 МБ BPE-таблицы
# с openaipublic.blob.core.windows.net — $0 и не провайдер, но офлайн не отработает.
tiktoken==0.13.0
# exp15/preflight_models.py:54 — единственный call-site, живой фактчек /models.
requests==2.34.2