goal
Named-entity extraction (Few-NERD)
Pick an extractor that finds the named entities in a sentence and types them into eight coarse types.
01what it is for
- decision
- Which extractors can be told apart on entity F1, and at what cost.
- audience
- a pipeline that indexes people, places and organisations mentioned in text
- decides
- f1, higher is better
- weighs
- quality (f1); cost per item; speed per item
- strategy
- balanced: contenders: not significantly different from the leader by the paired test AND within the quality margin (default)
- tie-break
- cost, speed
- output contract
- entity_list
- status
- active
- guardrails
- what was not measured: Labelling and training cost, an LLM given definitions or examples, and contamination of the hosted models were not measured. (
research/REPORT_NER.md, executive summary)
- what was not measured: Labelling and training cost, an LLM given definitions or examples, and contamination of the hosted models were not measured. (
- links
02the answer so far
few_nerd_280 · baseline promoted 2026-10-25 · scored against gold
span_marker (0.7674, $0, 499 MB on a CPU) differs significantly from all 27 other arms: with labelled data in a fixed taxonomy, fine-tune a small tagger. REPORT_NER, executive summary. Promoted with --allow-dirty: this rescore was written from a dirty tree on 2026-10-01; on 2026-10-25 today's clean code re-scored it from its stored outputs identically, item by item.
deploy sheet: what production must match
- measured by
fn_span_marker_n200_v1_20260928T070856Zon few_nerd_280- against
- gold/few_nerd_280
- model sent
guishe/span-marker-generic-ner-v1-fewnerd-fine-super- model record
guishe-span-marker-generic-ner-v1-fewnerd-fine-super- server
- not recorded
- build
- f836dfa9b6b0e6a6379607a8e35166103ac41aee
- settings sent
coarsen: truedevice: cpumodel: guishe/span-marker-generic-ner-v1-fewnerd-fine-superprecision: fp32provider: span_marker- not sent
- bookkeeping:
family, price_tier - declared
deployment.coarsen: Truedeployment.labels: ['art', 'building', 'event', 'location', 'organization', 'other', 'person', 'product']deployment.normalizer_sha256: a7c22b054099a72f91d772754dcd49b748fa739340ea4f38f2934eb18950a942deployment.parser_sha256: 101110f889f26b800af7eacbd887bab82aef1556713b869ab27d86f78a605181deployment.provider: span_markerdeployment.weight_files: ['model.safetensors:499028932']- adapter
examples/ner-few-nerd/adapter.pyd147da551073- harness
- b3cc5d861cf2
No capture here says what production ran (the adapter's production_ran).
Command: evh deploy-sheet --config fn_span_marker_n200_v1 [--capture C]
No decision yet. When the tests separate an arm worth keeping, promote its run with the reason they give: evh run-promote --run <run_id> --reason "…"
03how we got here: rounds
Rounds are optional: each one sets out to learn something, changes a few arms, drops what lost and says why, and ends in a conclusion. Decisions are made with evh round-open, round-retire and round-close; evh rounds says the same as this page. Open a round for what changed, what was retired and why, and what to do next.
r1 closedspan_marker (fine-tuned on Few-NERD's training split; 499 MB, CPU, $0) scores 0.7674 against 0.6864 for the best of 24 zero-shot hosted LLMs (openai_m) and differs significantly from all 27 other arms. With labelled data in a fixed taxonomy, fine-tune a small tagger; if you rent, take the cheapest of the arms openai_m is not significantly different from, gemma_m. (REPORT_NER, executive summary.)Which of 24 hosted LLMs, a fine-tuned and a zero-shot span tagger and two non-learned baselines tags Few-NERD's eight coarse types best, and at what cost?
04few_nerd_280 · test
few_nerd_280: 280 items · test
280 sentences
references: gold/few_nerd_280
Mean f1 over each arm's items, in groups by what each arm is scored against: numbers from different references, or from a judge, are different measurements and are never ranked together. A mean is not a verdict: the inspector tests each arm against its group's leader (Holm across them). Flagged arms are never the leader. filed: the arm's config names this goal (goal:); an arm without it is listed because it records the measure.
scored against gold/few_nerd_280 gold
Test every arm in this group against its leader
Recommended: fn_span_marker_n200_v1
- Strategy balanced. Quality leader: fn_span_marker_n200_v1 (f1 0.7674). Contenders beside it (not significantly different by the paired test and within 0.01535 (2% of the leader)): none.
- Recommended: fn_span_marker_n200_v1.
Strategy balanced (contenders: not significantly different from the leader by the paired test AND within the quality margin (default)). Weighs quality (f1); cost per item; speed per item. Among the contenders on quality, the tie-break is cost, speed. The rule recommends; promoting is evh run-promote; the goal chooses its strategy (strategy:).
| arm | mean f1 | items | cost per item | speed per item | flags | |
|---|---|---|---|---|---|---|
| fn_ | 0.767 | 280 | $0.000000 | p50 630 · p95 1,217 ms | — | leader |
| fn_ | 0.686 | 280 | $0.002324 · 174 tok | p50 1,490 · p95 2,322 ms | — | test vs leader |
| fn_ | 0.680 | 280 | $0.002463 · 233 tok | p50 2,651 · p95 4,020 ms | — | test vs leader |
| fn_ | 0.673 | 280 | $0.000032 · 203 tok | p50 1,759 · p95 10,254 ms | — | test vs leader |
| fn_ | 0.672 | 280 | $0.000612 · 154 tok | p50 1,804 · p95 2,890 ms | — | test vs leader |
| fn_ | 0.666 | 280 | $0.001016 · 236 tok | p50 2,511 · p95 3,392 ms | — | test vs leader |
| fn_ | 0.665 | 280 | $0.000056 · 213 tok | p50 1,893 · p95 3,747 ms | — | test vs leader |
| fn_ | 0.655 | 280 | $0.000142 · 204 tok | p50 2,094 · p95 4,116 ms | — | test vs leader |
| fn_ | 0.648 | 280 | $0.000048 · 206 tok | p50 2,458 · p95 7,003 ms | — | test vs leader |
| fn_ | 0.624 | 280 | $0.000258 · 161 tok | p50 1,548 · p95 2,671 ms | — | test vs leader |
| fn_ | 0.615 | 280 | $0.000071 · 172 tok | p50 919 · p95 3,161 ms | — | test vs leader |
| fn_ | 0.599 | 280 | $0.000063 · 176 tok | p50 3,713 · p95 12,665 ms | — | test vs leader |
| fn_ | 0.598 | 280 | $0.000150 · 176 tok | p50 1,548 · p95 57,451 ms | — | test vs leader |
| fn_ | 0.595 | 280 | $0.000280 · 158 tok | p50 1,121 · p95 1,571 ms | — | test vs leader |
| fn_ | 0.594 | 280 | $0.000159 · 177 tok | p50 2,167 · p95 7,803 ms | — | test vs leader |
| fn_ | 0.591 | 280 | $0.000165 · 183 tok | p50 739 · p95 1,294 ms | — | test vs leader |
| fn_ | 0.587 | 280 | $0.000305 · 180 tok | p50 3,036 · p95 7,752 ms | — | test vs leader |
| fn_ | 0.584 | 280 | $0.000554 · 210 tok | p50 1,241 · p95 1,902 ms | — | test vs leader |
| fn_ | 0.576 | 280 | $0.000032 · 176 tok | p50 1,782 · p95 5,277 ms | — | test vs leader |
| fn_ | 0.574 | 280 | $0.000069 · 207 tok | p50 3,203 · p95 15,183 ms | — | test vs leader |
| fn_ | 0.569 | 280 | $0.000037 · 185 tok | p50 2,354 · p95 5,653 ms | — | test vs leader |
| fn_ | 0.566 | 280 | $0.000365 · 252 tok | p50 2,096 · p95 8,249 ms | — | test vs leader |
| fn_ | 0.553 | 280 | $0.000069 · 184 tok | p50 1,966 · p95 3,882 ms | — | test vs leader |
| fn_ | 0.550 | 280 | $0.000033 · 215 tok | p50 3,792 · p95 13,451 ms | — | test vs leader |
| fn_ | 0.524 | 280 | $0.000027 · 182 tok | p50 1,827 · p95 4,100 ms | — | test vs leader |
| fn_ | 0.454 | 280 | $0.000000 | p50 158 · p95 239 ms | — | test vs leader |
| fn_ | 0.191 | 280 | $0.000000 | p50 0.032 · p95 0.066 ms | — | test vs leader |
| fn_ | 0.125 | 280 | $0.000000 | p50 0.002 · p95 0.004 ms | — | test vs leader |
05few_nerd_56 · pilot
few_nerd_56: 56 items · pilot
the pilot slice; all 56 of its items are in few_nerd_280
references: gold/few_nerd_56
No arm on this dataset records f1.