You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit c8ef8b2
Browse filesBrowse the repository at this point in the historyBrowse files
docs(eval): ceiling anatomy + drop unreproducible archive numbers from public surfaces
Phase C of the plan: docs/ceiling_anatomy.md states, with numbers recomputed
from the raw reports rather than carried over, what the ceiling is made of —
the ±16.6pp annotation corridor, the fixed/broken metric on undisputed land,
the generator bakeoff, six negative literature levers, the 32-question wall,
and the fine-tuned-7B verdict.
Three number defects found while recomputing, all corrected here:
1. The Arcwise column for Opus was the ORIGINAL-gold EA on 199 questions
(79.4%) mislabelled as corrected-gold. Opus actually scores 73.9% on
corrected gold — a 5.5pp drop, the largest of any model measured. The
conclusion it supported ("Opus does not fit annotation conventions") was
backwards: it fits them harder than anyone. On corrected gold the whole
top five compresses into 68.8-73.9%, and the free mimo lands 2.0pp behind
Opus rather than 11.0pp.
2. Two arcwise rescores predated their own source reports (the report name
carries no timestamp, so a later top-up run overwrote them). Regenerated:
mimo corrected-gold 71.4% -> 71.9%, and both files' original-gold counts
now agree with the reports they claim to rescore.
3. The fixed/broken column mixed two definitions — Opus counted strictly
(right under BOTH annotations), the rest counted on the original gold
alone, which readmits the annotation luck the metric exists to exclude.
The doc uses the strict definition throughout; it costs most models 3-4
"fixed" and reorders grok-composer above sonnet.
Public surfaces: the headline table and the lift trace carried archive
composites (up to 94.0%, climbing past the human-expert baseline) that are
eval-only merges of ~20 provider runs, do not reproduce, and are not a
pipeline configuration. Removed from README and from the live app caption,
with the disclosure kept in prose and the forensic account left in the
methodology doc. README also claimed 74.37% on corrected gold citing a
document that does not contain that number; the reproducible pipeline scores
60.3% (120/199) and now says so.
Kitchen script fix (untracked): wall_analysis counted "solved by all" as
== 4 after the model set grew to five, reporting 18 where the answer is 112.
Gate §7.3 green: ruff, format 190, mypy 108, pytest 555 passed / 14 skipped
cov 91.05%, hygiene, no_raw_compare.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: README.md
+13-15Lines changed: 13 additions & 15 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,16 +6,14 @@ Portfolio demo для Senior Data Engineer / Data Analyst. Принимает в
6
6
7
7
**Статус:** Stages 1–10 закрыты. Production FastAPI surface, retrieval-augmented LangGraph pipeline, редизайн Streamlit UI с EN/RU-переключателем (детали дизайна — в разделе UI ниже). Тесты, ruff и mypy --strict гоняются в CI (бейдж выше — живой). Live API verified на Mistral + Groq.
8
8
9
-
**Headline metric — три честных уровня (BIRD Mini-Dev SQLite, n=200, $0 free-tier)**
9
+
**Headline metric — два воспроизводимых уровня (BIRD Mini-Dev SQLite, n=200, $0 free-tier)**
10
10
11
-
Одно число вводило бы в заблуждение, поэтому метрика разложена по слоям. Только уровень 1 включён в продукт (Streamlit UI и `/ask`); уровни 2–3 — eval-конфигурация.
11
+
Одно число вводило бы в заблуждение, поэтому метрика разложена по слоям. В продукт (Streamlit UI и `/ask`) входит только уровень 1.
12
12
13
13
| Уровень | EA | Что это | В продукте? | Воспроизводится? |
14
14
|---|---:|---|:--:|:--:|
15
15
|**1. Reproducible single-run**|**61.5%**| Чистый пайплайн на free-tier codestral, один прогон, без голосования и подсказок (123/200). | ✅ да | ✅ одной командой |
16
16
|**2. + per-question schema-link hints**|**62.5%**| Тот же прогон с флагом `--bird-rescue-hints` (125/200): 11 hint-блоков под annotation-quirks конкретных BIRD-вопросов. Кодирует ответы к тесту — **в продукте выключен** (`enable_bird_rescue_hints`, off). | ❌ eval | ✅ одной командой |
@@ -26,12 +24,12 @@ uv run python scripts/eval_baseline.py --config E --n 200 # → 61.5%
26
24
uv run python scripts/eval_baseline.py --config E --n 200 --bird-rescue-hints # → 62.5%
27
25
```
28
26
29
-
Уровни 3–4 этими командами **не получить**: это архивные композиции многих прогонов разных провайдеров, а не конфигурация пайплайна. Артефакт уровня 4 — `eval/reports/2026-05-26/v31-v30-plus-p3f-q37-merged.json`; его поле `sql_model` перечисляет весь ансамбль.
27
+
В архиве проекта лежат также eval-only композиции: накопительные merge'и примерно двух десятков прогонов разных провайдеров поверх тех же per-question подсказок. Они **не являются конфигурацией пайплайна**, не воспроизводятся ни одной командой (часть шла через Perplexity-мост, которого больше нет) и в метрику продукта не входят — поэтому здесь не приводятся. Полный разбор с числами и артефактами — в [методологии](docs/03_eval_methodology.md), раздел 13.
30
28
31
-
Почему так честнее: уровень 4 выше human-expert baseline (92.96%), но стоит на ансамбле из двух десятков прогонов **и** на per-question подсказках — открыв `_hints.py`, ревьюер увидит их сразу. Разделение на слои показывает и инженерию (воспроизводимые 61.5%), и научную честность (какой именно слой что даёт), вместо одного числа, которое злой ревьюер спишет целиком.
29
+
**Единственный живой рычаг качества — сила генератора.** Тот же пайплайн на бесплатном `mimo-v2.5-free` даёт **68.5%**, на `claude-opus-4-8` (effort=max) — **79.5%**; при этом шесть подряд литературных приёмов (CHESS, DAIL, CHASE, E-SQL и др.), реализованных и измеренных по одному на прогон, дали от −0.5 до −9.5 п.п. Разбор — [анатомия потолка](docs/ceiling_anatomy.md): коридор разметки ±16.6 п.п., метрика «чинит/ломает» на бесспорной земле, стена из 32 вопросов и почему её не берёт никто.
32
30
33
31
-**Chinook demo workload (n=60): 100% EA — 60/60.** 30 dev + 30 held-out, сбалансированный split. Все 10 категорий (count/list/filter/aggregation/group-by/having/join-2/join-3/top-n/date-filter) через free-tier codestral — реальный analyst workload.
34
-
-**74.37% EA на Arcwise-corrected gold** (Jin et al., CIDR/VLDB 2026) — noise-floor после исправления annotation-ошибок BIRD. Отчёт:[docs/corrected_gold_evaluation.md](docs/corrected_gold_evaluation.md).
32
+
-**60.3% EA на Arcwise-corrected gold** (120/199) — тот же продуктовый прогон, судимый по исправленной разметке Jin et al. (CIDR/VLDB 2026). Расхождение с 61.5% меньше собственного шума бенчмарка: вердикт по 33 вопросам из 199 зависит только от того, какой разметке верить. Разбор — [анатомия потолка](docs/ceiling_anatomy.md); архивные прогоны на исправленном gold —[docs/corrected_gold_evaluation.md](docs/corrected_gold_evaluation.md).
35
33
-**Безопасность пайплайна:** AST guard (`sqlglot`) + read-only DB connection + row cap + statement timeout. DML/DDL/multi-statement/ATTACH/PRAGMA/`SELECT … INTO` отбрасываются до execution.
36
34
37
35
Полная по-версионная lift-трасса, saturation-evidence и audit-методология — в [docs/03_eval_methodology.md](docs/03_eval_methodology.md).
@@ -111,18 +109,18 @@ The UI reads `MISTRAL_API_KEY` from `.env`; copy `.env.example` first.
111
109
| Week 3 hard checkpoint | ≥ 35% | 47% (config A) ✅ |
Это историческая lift-трасса архива, не воспроизводимое одно число. Строки 85.5% и 94.0% — voting- и voting+hint-слои (eval-only, см. таблицу уровней в начале): каждая получена merge'ем множества прогонов разных провайдеров, а не одной конфигурацией. Воспроизводимый продуктовый пайплайн — **61.5%** (уровень 1), с подсказками — **62.5%** (уровень 2).
119
+
Все три верхние строки — **один и тот же пайплайн**, отличается только генератор: это и есть главный вывод проекта (см. [анатомию потолка](docs/ceiling_anatomy.md)). Опубликованы они как исследовательские точки: `claude-opus-4-8` едет на личной подписке и в HF Space не вызывается, поэтому продуктовое число — 61.5%.
120
+
121
+
Судить эти числа по одному лишь EA не стоит: у BIRD-разметки собственный коридор **±16.6 п.п.** (33 вопроса из 199 меняют вердикт от одной лишь переразметки gold). Устойчивая метрика — «чинит/ломает» на вопросах, где обе разметки согласны.
122
+
123
+
Кроме этого, в архиве проекта есть eval-only композиции — merge'и многих прогонов разных провайдеров поверх per-question подсказок. Они не воспроизводятся и не являются конфигурацией пайплайна, поэтому в таблице выше их нет; разбор с числами — в методологии.
126
124
127
125
> Полная по-версионная трасса, per-qid rescues, saturation-evidence и audit-методология — в [`docs/03_eval_methodology.md`](docs/03_eval_methodology.md).
0 commit comments