Lumaktaw sa pangunahing nilalaman

Espesipikasyon ng Run Card

Executive Summary. Ang run card ang atomikong yunit ng benchmarking — isang JSON document na nagtatala ng kumpletong configuration, mga resulta kada entry, at aggregate scores ng isang evaluation run. Idinodokumento ng pahinang ito ang schema, mga field, mekanismo ng fingerprinting, at istruktura ng score. Tingnan ang Espesipikasyon ng Benchmark para sa mga kanonikal na depinisyon.

Ang run card ang kumpletong talaan ng isang evaluation run. Naglalaman ito ng lahat ng kinakailangan upang maunawaan, ma-reproduce, at ma-verify ang eksperimento: configuration, scores, indibiduwal na resulta, token usage, at environment metadata.

Bersyon ng schema: 2.0

:::info Awtoritatibong Schema Ang Espesipikasyon ng Benchmark ang nag-iisang source of truth para sa run card schema. Para sa mga depinisyon ng metric, composite weights, at quality tiers, tingnan ang Espesipikasyon ng Scoring. Idinodokumento ng pahinang ito ang kasalukuyang implementation. :::


Mga Top-Level Field

FieldUriPaglalarawan
run_idstringUUID v4 na ginawa sa simula ng run
harness_versionstringSemantic version ng harness na gumawa ng card na ito (hal., 2.0)
model_slugstringModel slug na ginamit para sa run (hal., google/gemini-3.1-pro)
model_idstringNa-resolve na model identifier na ibinalik ng API (hal., gemini-3.1-pro-001)
conditionstringLabel ng eksperimento (hal., baseline, coached-v3, few-shot)
timestampstringISO 8601 UTC timestamp noong nagsimula ang run
elapsed_secondsnumberWall-clock duration ng buong run
{
"run_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"harness_version": "2.0",
"model_slug": "google/gemini-3.1-pro",
"model_id": "gemini-3.1-pro-001",
"condition": "baseline",
"timestamp": "2026-06-01T03:22:41Z",
"elapsed_seconds": 142.7
}

dataset

Tinutukoy nito ang evaluation dataset at ini-pin ito sa isang partikular na content version sa pamamagitan ng SHA-256.

FieldUriPaglalarawan
idstringDataset identifier (hal., edtekla-dev-v1)
versionstringString ng bersyon ng dataset
language_pairstringDisplay label (hal., EN→CRK)
sha256stringSHA-256 hash ng nilalaman ng dataset file. Ginagarantiyahan nito ang eksaktong data na ginamit
entry_countnumberBilang ng mga entry sa dataset
// Example using master_corpus.json (62 gold + 342 textbook = 404)
{
"dataset": {
"id": "edtekla-dev-v1",
"version": "1.0",
"language_pair": "EN→CRK",
"sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"entry_count": 404
}
}

config

Ang API at batching configuration na ginamit para sa run na ito.

FieldUriPaglalarawan
api_providerstringPangalan ng API provider (hal., openrouter)
temperaturenumberSampling temperature
max_tokensnumberMaximum tokens kada completion
batch_sizenumberMga entry kada concurrent batch
concurrencynumberMaximum parallel API requests
coaching_filestringPath papunta sa coaching prompt file, kung ginamit
method_pathstringPath papunta sa method plugin directory, kung ginamit
fst_retriesnumberBilang ng FST retry attempts
{
"config": {
"api_provider": "openrouter",
"temperature": 0.0,
"max_tokens": 32768,
"batch_size": 25,
"concurrency": 8
}
}

:::info Kasama sa Mga Na-publish na Run Card ang method_config Kapag na-publish ang isang run card sa pamamagitan ng mt-eval publish, nag-i-inject ang publish.py ng method_config block na naglalaman ng kanonikal na 8-field MethodConfig. Nagbibigay-daan ito sa walang-aberyang pag-install sa leaderboard — maaaring i-reproduce ng sinuman ang method nang direkta mula sa na-publish na card.

{
"method_config": {
"model": "gemini-pro",
"temperature": 0.0,
"batchSize": 25,
"register": "Formal Plains Cree. Use SRO orthography.",
"coachingFile": "prompts/crk-coaching-v8.txt",
"coachingPrompt": null,
"promptContext": "champollion",
"qualityTier": "verified"
}
}

Gumagamit ang lahat ng field ng camelCase at sumusunod sa kanonikal na MethodConfig schema (tingnan ang Pagbuo ng Method). :::


system_prompt_sha256 / system_prompt_used

FieldUriPaglalarawan
system_prompt_sha256stringSHA-256 hash ng system prompt. Kasama sa fingerprint
system_prompt_usedstringAng buong system prompt text na ipinadala sa model

Bahagi ng fingerprint ang prompt hash — magkakaroon ng magkaibang fingerprint ang dalawang run na may magkaibang prompt kahit magkatugma ang lahat ng iba pang setting.


fingerprint

Isang reproducibility identifier. Gumamit ng parehong experimental setup ang dalawang run na may magkaparehong fingerprint.

FieldUriPaglalarawan
hashstringSHA-256 hash ng mga nakaayos na component
componentsobjectAng mga input value na na-hash

Mga Component ng Fingerprint

ComponentPaglalarawan
dataset_sha256Hash ng dataset file
model_slugModel na ginamit
conditionLabel ng experiment condition
system_prompt_sha256Hash ng system prompt
temperatureSampling temperature
harness_versionBersyon ng harness
{
"fingerprint": {
"hash": "7f83b1657ff1fc53b92dc18148a1d65dfc2d4b1fa3d677284addd200126d9069",
"components": {
"dataset_sha256": "e3b0c44298fc1c14...",
"model_slug": "google/gemini-3.1-pro",
"condition": "baseline",
"system_prompt_sha256": "abc123...",
"temperature": 0.0,
"harness_version": "2.0"
}
}
}

:::info Fingerprint ≠ Run Card Hash Tinutukoy ng fingerprint ang experiment configuration. Bine-verify ng run_card_hash ang integridad ng result file. Tingnan ang Fingerprint vs Run Card Hash para sa mga detalye. :::


scores

Aggregate metrics para sa buong run.

Mga Top-Level Score

FieldUriPaglalarawan
totalnumberKabuuang mga entry na na-evaluate
exact_matchesnumberMga entry kung saan eksaktong tumugma ang output sa gold standard
exact_match_ratenumberexact_matches / total (0.0–1.0)
fst_acceptednumberMga entry kung saan tinanggap ng FST analyzer ang output
fst_acceptance_ratenumberfst_accepted / total (0.0–1.0). null kung walang FST analyzer na ginamit
chrf_plus_plusnumberCorpus-level chrF++ score (0–100)
errorsnumberMga entry na nabigo (API error, timeout, atbp.)
avg_latency_secondsnumberMean response time sa lahat ng entry
median_latency_secondsnumberMedian response time
p95_latency_secondsnumber95th percentile response time

by_difficulty

Mga score na hinati ayon sa difficulty tier. Ang bawat key (integer 1–5) ay naglalaman ng parehong metric fields gaya ng mga top-level score.

{
"by_difficulty": {
"1": {
"total": 20,
"exact_matches": 8,
"exact_match_rate": 0.40,
"chrf_plus_plus": 68.2,
"fst_accepted": 18,
"fst_acceptance_rate": 0.90
},
"2": { ... },
"3": { ... },
"4": { ... },
"5": { ... }
}
}

by_provenance

Mga score na hinati ayon sa entry provenance. Ang bawat key (hal., gold_standard, textbook) ay naglalaman ng parehong metric fields.

{
"by_provenance": {
"gold_standard": {
"total": 80,
"exact_matches": 10,
"exact_match_rate": 0.125,
"chrf_plus_plus": 44.8
},
"textbook": { ... }
}
}

totals

Token usage at cost tracking para sa buong run.

FieldUriPaglalarawan
prompt_tokensnumberKabuuang input tokens sa lahat ng API call
completion_tokensnumberKabuuang output tokens
reasoning_tokensnumberMga token na ginamit para sa chain-of-thought reasoning (nakadepende sa model, 0 para sa karamihan ng mga model)
cached_tokensnumberMga token na inihain mula sa prompt cache ng provider
total_cost_usdnumberKabuuang gastos sa USD (ayon sa iniulat ng API)
cost_per_entry_usdnumbertotal_cost_usd / entry_count
reasoning_rationumberreasoning_tokens / completion_tokens (0.0–1.0)
{
"totals": {
"prompt_tokens": 48200,
"completion_tokens": 3100,
"reasoning_tokens": 0,
"cached_tokens": 12000,
"total_cost_usd": 0.42,
"cost_per_entry_usd": 0.0034,
"reasoning_ratio": 0.0
}
}

environment

Runtime environment metadata para sa reproducibility.

FieldUriPaglalarawan
harness_versionstringBersyon ng harness (sumasalamin sa top-level harness_version)
harness_git_commitstringGit commit SHA ng harness sa oras ng run
python_versionstringBersyon ng Python interpreter
sacrebleu_versionstringBersyon ng sacrebleu library (ginamit para sa chrF++ scoring)
osstringIdentifier ng operating system
{
"environment": {
"harness_version": "2.0",
"harness_git_commit": "a1b2c3d",
"python_version": "3.11.9",
"sacrebleu_version": "2.4.0",
"os": "macOS-14.5-arm64"
}
}

results[]

Ang array ng mga resulta kada entry. Isang object kada dataset entry, ayon sa pagkakasunod-sunod ng index.

FieldUriPaglalarawan
entry_idintegerID ng entry na ito sa corpus (tumutugma sa entries[].id)
sourcestringAng source text na isinalin
referencestringAng gold-standard reference mula sa corpus
predictedstringAng aktuwal na output ng method
exact_matchbooleanKung ang predicted ay eksaktong tumutugma sa reference pagkatapos ng normalization
entry_chrfnumberSentence-level chrF++ score para sa entry na ito (0–100)
fst_acceptedboolean | nullKung tinanggap ng FST analyzer ang output. null kung walang analyzer na na-configure
fst_analysisstring[]Mga FST analysis string para sa output (empty array kung hindi na-analyze o tinanggihan)
difficultyintegerDifficulty tier mula sa corpus (1–5)
provenancestringProvenance tag mula sa corpus
latency_secondsnumberResponse time para sa indibiduwal na entry na ito
usageobjectToken usage kada entry: { prompt_tokens, completion_tokens, reasoning_tokens }
errorstring | nullError message kung nabigo ang entry na ito. null kapag matagumpay
{
"results": [
{
"entry_id": 1,
"source": "Hello",
"reference": "tânisi",
"predicted": "tânisi",
"exact_match": true,
"entry_chrf": 100.0,
"fst_accepted": true,
"fst_analysis": ["tânisi+V+AI+Ind+2Sg"],
"difficulty": 1,
"provenance": "gold_standard",
"latency_seconds": 0.82,
"usage": {
"prompt_tokens": 385,
"completion_tokens": 12,
"reasoning_tokens": 0
},
"error": null
}
]
}

run_card_hash

FieldUriPaglalarawan
run_card_hashstringSHA-256 hash ng buong run card JSON, kung saan ang mismong field na run_card_hash ay nakatakda sa "" habang nagha-hash

Ito ang tamper-detection seal. Muling kinukuwenta ng leaderboard ang hash na ito sa submission at tinatanggihan ang mga card kung saan hindi ito tumutugma.

Pagkuwenta ng hash:

  1. I-serialize ang run card sa JSON na may run_card_hash na nakatakda sa ""
  2. Kuwentahin ang SHA-256 ng serialized string
  3. Itakda ang run_card_hash sa nagresultang hex digest
import hashlib, json

card["run_card_hash"] = ""
card_json = json.dumps(card, sort_keys=True, ensure_ascii=False)
card["run_card_hash"] = hashlib.sha256(card_json.encode()).hexdigest()

:::info Per-Entry Drill-Down Pinupunan din ng mga na-publish na run card ang run_card_entries Supabase table, na nag-iimbak ng mga resulta kada entry para sa drill-down analysis sa leaderboard. Awtomatikong pinupunan ang table na ito habang isinasagawa ang mt-eval publish. :::


Tingnan Din