Coaching-Daten
Coaching-Daten sind der Mechanismus von champollion, um LLMs über Sprachen zu unterrichten, mit denen sie nicht trainiert wurden. Indem Sie Grammatikregeln, Wörterbücher und Stilhinweise zusammen mit jeder Übersetzungsanfrage bereitstellen, verwandeln Sie ein universell einsetzbares LLM in einen kontextbewussten Übersetzer für jede Sprache — einschließlich Sprachen ohne jegliche bestehende MT-Unterstützung.
Funktionsweise
Wenn Sie die Methode eines Paares auf llm-coached setzen, lädt champollion eine Coaching-Datei aus .champollion/coaching/<locale>.json und fügt deren Inhalt als Teil der Systemnachricht in jeden LLM-Prompt ein. Das LLM sieht Ihre linguistischen Regeln zusammen mit der Übersetzungsanfrage und erzeugt eine Ausgabe, die Ihrer Grammatik und Terminologie folgt, anstatt zu raten.
┌──────────────────────────────────────────────────────┐
│ System Message (cached across batches) │
│ ┌──────────────────────────────────────────────────┐ │
│ │ Base translation rules │ │
│ │ + Register instructions │ │
│ │ + Coaching guidance (from coachingFile, if set) │ │
│ │ + Grammar rules (from coaching data) │ │
│ │ + Dictionary entries (from coaching data) │ │
│ │ + Style notes (from coaching data) │ │
│ └──────────────────────────────────────────────────┘ │
├──────────────────────────────────────────────────────┤
│ User Message (per batch) │
│ ┌──────────────────────────────────────────────────┐ │
│ │ Keys to translate (JSON) │ │
│ └──────────────────────────────────────────────────┘ │
└──────────────────────────────────────────────────────┘
Es gibt zwei Arten von Coaching-Inhalten:
- Strukturierte Coaching-Daten (Methode
llm-coached) — Grammatikregeln, Wörterbücher und Stilhinweise im JSON-Format. Geladen aus.champollion/coaching/<locale>.jsonoder dem Verzeichniscoaching/eines Plugins. - Coaching-Prompt als Freitext (Konfigurationsfeld
coachingFile) — Eine reine Textdatei mit zusätzlichen Hinweisen, die in den System-Prompt eingefügt werden. Funktioniert mit jeder LLM-Methode, nicht nur mitllm-coached. Festgelegt übercoachingFilein Ihrer Konfiguration oder--coaching-fileauf der CLI.
Beide können zusammen verwendet werden. Das Eval-Harness verwendet exakt dieselbe Prompt-Struktur — sodass Ihre Benchmark-Ergebnisse Ihre tatsächlichen Produktions-Prompts widerspiegeln.
Da die Coaching-Daten Teil der Systemnachricht sind, profitieren sie vom Prompt-Caching — Anbieter wie Anthropic und Google cachen wiederholte System-Präfixe, sodass Sie den Coaching-Kontext nur einmal pro Sitzung bezahlen und nicht einmal pro Batch.
Format der Coaching-Datei
Erstellen Sie eine JSON-Datei pro Locale in .champollion/coaching/:
{
"grammar_rules": [
"Plains Cree is polysynthetic — a single word can express what English needs a full sentence for",
"Animate/inanimate noun distinction affects verb conjugation",
"Use SRO (Standard Roman Orthography) unless script converter handles conversion",
"Verb stems are modified by prefixes and suffixes to indicate person, number, tense, and evidentiality"
],
"dictionary": {
"home": "kīwēwin",
"settings": "isi-nākatohkēwin",
"search": "nānātawāpahtam",
"welcome": "tānisi",
"submit": "ispīhci",
"cancel": "pōni"
},
"style_notes": "Use formal register. Preserve English technical terms in parentheses when no Cree equivalent exists. Avoid loanwords when a descriptive Cree expression exists."
}
Felder
| Feld | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
grammar_rules | string[] | Nein | Array von Grammatikregeln, die in den System-Prompt eingefügt werden. Jede Regel sollte eine prägnante, umsetzbare Anweisung sein, der das LLM folgen kann. |
dictionary | object | Nein | Schlüssel-Wert-Zuordnung von englischem Begriff → Begriff in der Zielsprache. Wird für domänenspezifisches Vokabular verwendet, das das LLM nicht kennen würde. |
style_notes | string | Nein | Freiform-Stilanweisungen (Register, Tonfall, Formalitätskonventionen). |
Alle Felder sind optional — Sie können mit lediglich einem Wörterbuch beginnen und Grammatikregeln hinzufügen, während Sie verfeinern.
Fallback-Verhalten
Wenn ein Paar für llm-coached konfiguriert ist, aber keine Coaching-Datei für dieses Locale existiert, greift champollion auf die Standardmethode llm zurück mit einer Konsolenwarnung:
[INFO] No coaching data for "crk" at .champollion/coaching/crk.json
Falling back to standard LLM method. Create coaching data for better results.
Das bedeutet, dass Sie "defaultMethod": "llm-coached" bedenkenlos global festlegen können — Sprachen mit Coaching-Daten verwenden diese, und der Rest erhält ohne Fehler eine Standard-LLM-Übersetzung.
Wann Coaching verwendet werden sollte
| Szenario | Empfohlene Methode |
|---|---|
| Tier-1-Sprachen (Französisch, Spanisch, Deutsch) | llm oder google-translate — LLMs kennen diese bereits gut |
| Tier-2-Sprachen (Koreanisch, Türkisch, Thailändisch) | llm mit einem Register — LLMs bewältigen diese mit Stilhinweisen angemessen |
| Tier-3-Sprachen (Plains Cree, Yoruba, Quechua) | llm-coached — LLMs benötigen Grammatikregeln und Wörterbücher |
| Konstruierte Sprachen (Klingonisch, Sindarin, Kryptonisch) | llm-coached — LLMs verfügen über einige Trainingsdaten, benötigen jedoch Korrekturen |
Erstellung guter Coaching-Daten
Grammatikregeln
Schreiben Sie Regeln als Anweisungen, nicht als Beschreibungen. Das LLM folgt Anweisungen besser, als es linguistische Theorie interpretiert.
// ❌ Descriptive (the LLM learns nothing actionable)
"Plains Cree has animate and inanimate noun classes"
// ✅ Instructive (the LLM knows what to do)
"When translating nouns, check whether the Cree equivalent is animate (NA) or inanimate (NI) — this affects which verb conjugation to use"
Wörterbücher
Konzentrieren Sie sich auf domänenspezifische Begriffe, die das LLM falsch übersetzen oder erfinden würde. Befassen Sie sich nicht mit gängigen Wörtern, die das LLM bereits beherrscht — konzentrieren Sie sich auf die Begriffe, die für die Benutzeroberfläche Ihrer Anwendung spezifisch sind.
Stilhinweise
Seien Sie präzise bei Register, Formalität und Konventionen:
"style_notes": "Use formal register (vous-form in French). Preserve brand names untranslated. UI labels should be imperative mood ('Save', not 'Saves'). Maximum 40 characters for button text."
Testen von gecoachten Übersetzungen
Verwenden Sie das MT Eval Harness, um Ihre gecoachten Übersetzungen anhand eines Referenzkorpus zu benchmarken:
# Install the harness
pip install mt-eval-harness
# Run coached translations against your test corpus
mt-eval run --corpus data/crk-corpus.json --model google/gemini-2.5-pro
# Score the results
mt-eval test eval/logs/run_*.json
Dies liefert Ihnen chrF++-, BLEU- und Exact-Match-Werte. Erstellen Sie mehrere Versionen von Coaching-Dateien und vergleichen Sie diese — objektive Metriken übertreffen subjektive Begutachtung.
Siehe auch
- Übersetzungsmethoden — die Methode llm-coached
- Eine ressourcenarme Sprache unterstützen — Coaching in der Praxis
- Plugin-Spezifikation — Verpacken von Coaching-Daten in einem Plugin
- Quality Gate — wie gecoachte Übersetzungen validiert werden
- Konfiguration — Coaching-Konfiguration pro Paar