Wie man lange Dokumente mit einem lokalen LLM übersetzt: Chunks und Prüfungen
Wir haben 3.179 Wörter mit einem lokalen LLM in LM Studio auf drei Arten übersetzt, und jede verbarg einen stillen Fehler. Die Chunk-Größe, die Einstellungen und die Prüfungen, die sie aufdecken.

Menschen übersetzen Dokumente mit einem lokalen LLM aus einem Grund: Die Datei darf ihren Rechner nicht verlassen. Ein lokales Modell kann die Aufgabe erledigen, aber es liefert Ihnen reinen Text, keine übersetzte Datei, und seine schlimmsten Fehler sind leise. In unserem Test kam eine einzelne Anfrage für einen 3.179-Wörter-Auszug mit der richtigen Anzahl von Absätzen und einem sauberen Abschlusssignal zurück, doch ein Absatz hatte mehr als ein Drittel seines Inhalts verloren und Sätze hinzugewonnen, die nicht in der Quelle stehen.
Kurze Antwort: Teilen Sie den Text an Absatzgrenzen in Chunks von etwa 600 Wörtern auf, fügen Sie ein Glossar mit Namen und wiederkehrenden Begriffen in die Systemanweisung ein, schalten Sie den Denkmodus des Modells aus und vergleichen Sie jeden Chunk Absatz für Absatz mit seiner Quelle, bevor Sie ihm vertrauen. Jede der drei Arten, wie wir den Test durchgeführt haben, versagte irgendwo, und kein Fehler erzeugte eine Fehlermeldung. Rechnen Sie damit, dass ein mittelgroßes Modell auf einem Laptop für ein ganzes Buch Stunden braucht, und planen Sie ein, die Formatierung selbst wiederherzustellen.
Alles unten stammt aus einem Lauf am 23. Oktober 2026: Qwen 3.6 27B (Q4_K_M GGUF) in LM Studio 0.4.8 auf einem Apple M4 Max mit 64 GB Arbeitsspeicher, der den Anfang von Kafkas Die Verwandlung vom Deutschen ins Englische übersetzt. Das Testskript, die Ergebnisse und rohe Fehlerbeispiele stehen kostenlos zum Download bereit, damit Sie es mit Ihrem eigenen Modell wiederholen können.
Wann ein lokales LLM das richtige Werkzeug ist
Führen Sie die Übersetzung lokal aus, wenn die Regeln des Dokuments – nicht die Bequemlichkeit – die Entscheidung bestimmen:
- ein Kundenvertrag, eine Forschungsvereinbarung oder eine Arbeitgeberrichtlinie verbietet das Hochladen der Datei zu einem externen Dienst;
- der Text ist persönlich oder vertraulich und Sie können die sensiblen Teile nicht vorher entfernen; oder
- Sie müssen viele Dateien ohne Kosten pro Dokument verarbeiten und besitzen bereits geeignete Hardware.
Wenn nichts davon zutrifft, ist ein lokales Modell normalerweise der langsamere Weg zu einem schlechteren Ergebnis. Sie verzichten auf drei Dinge, die ein Dokumentübersetzungsdienst bietet: eine übersetzte Datei im Originalformat, ein Modell, das größer ist, als Ihre Maschine aufnehmen kann, und einen Workflow, der auf Konsistenz über ein ganzes Buch hinweg ausgelegt ist. Bevor Sie sich für einen der beiden Wege entscheiden, arbeiten Sie die Checkliste zum Datenschutz bei der Dokumentübersetzung durch. Sie behandelt die Berechtigung zur Verarbeitung der Datei, minimale Arbeitskopien und was ein Dienst mit Uploads macht.
„Lokal“ braucht ebenfalls eine präzise Bedeutung. Das Modell läuft auf Ihrem Computer, und in unserem Test gingen die Anfragen nur an localhost. Das sagt Ihnen nicht, was die App um das Modell herum protokolliert, aktualisiert oder meldet. Wenn Ihre Regeln einen Nachweis verlangen, dass nichts das Gerät verlässt, prüfen Sie die eigenen Einstellungen und Richtlinien der Laufzeitumgebung oder führen Sie sie auf einer Maschine ohne Netzwerkzugriff aus.
Was wir getestet haben
Wir haben die ersten 19 Absätze von Die Verwandlung (3.179 deutsche Wörter) aus der gemeinfreien Project-Gutenberg-Ausgabe übersetzt. Literarisches Deutsch ist ein fairer Stresstest: Die Absätze sind lang, die Sätze verschachtelt, und dieselben Figuren und Berufsbezeichnungen kehren wieder.
Alle drei Läufe verwendeten dasselbe Modell und dieselben Einstellungen: Temperatur 0,2, maximal 12.000 Ausgabe-Token und ein Kontextfenster von 16.384 Token. Die Anweisung verlangte einen englischen Absatz pro deutschem Absatz und sonst nichts.
| Lauf | Was wir gesendet haben | Ausgegebene Absätze (Quelle: 19) | Ausgegebene Wörter | Zeit |
|---|---|---|---|---|
| A. Gechunkt | 6 Chunks von etwa 600 Wörtern, nur Anweisung | 19 | 3,319 | 10,4 Min. |
| B. Gechunkt + Glossar + Kontext | Dieselben Chunks, ein Glossar mit 7 Begriffen und der vorherige Quellabsatz, markiert mit „NICHT übersetzen“ | 20 | 3,446 | 10,5 Min. |
| C. Eine Anfrage | Alle 19 Absätze auf einmal | 19 | 3,309 | 9,5 Min. |
Jeder Durchlauf endete mit einem normalen Stoppsignal, und jeder Durchlauf enthielt einen anderen stillen Fehler. Durchlauf C ließ Text weg und erfand welchen. Durchlauf B übersetzte Text, der übersprungen werden sollte. Durchlauf A, der sauberste, gab einer Figur in seinem letzten Chunk die falsche Rolle.
Fehler 1: Eine große Anfrage ließ einen Teil eines Absatzes weg
Durchlauf C endete normal und gab genau 19 Absätze zurück. Eine Prüfung der Absatzanzahl hätte ihn bestanden. Absatz 6 kam jedoch mit 214 Wörtern für eine Quelle mit 260 Wörtern zurück.
In der Quelle blickt Gregor auf die Uhr, stellt fest, dass er seinen Zug verpasst hat, und erwägt dann, sich krankzumelden: Sein Chef würde mit dem Arzt der Krankenkasse erscheinen, der alle für gesund, aber arbeitsscheu hält, und Gregor gibt zu, dass er sich eigentlich wohlfühlt, abgesehen von Schläfrigkeit und einem ungewöhnlichen Appetit. Durchlauf C übersetzte den ersten Teil und ließ dann die gesamte Passage zur Krankmeldung weg, 98 der 260 deutschen Wörter des Absatzes. An ihre Stelle schrieb er, Gregor „wäre auf der Stelle entlassen worden“, der Bürodiener neige dazu, „alles, was ihm gemeldet wird, als Gelegenheit zu betrachten, sich selbst in Szene zu setzen“, und dieser Gedanke „entlockte ihm ein Lächeln“. Nichts davon steht im Deutschen.
Der Chunk-Durchlauf übersetzte denselben Absatz vollständig, mit 267 Wörtern.
Eine Stichprobe beweist nicht, dass lange Anfragen immer scheitern. Sie zeigt aber, worauf man achten muss: Eine lange einzelne Anfrage kann Text still komprimieren oder erfinden und dabei strukturell vollständig aussehen. Ein Leser ohne Deutschkenntnisse hätte keinen Grund, das zu bemerken.
Fehler 2: Das Modell übersetzte den „Kontext“, der übersprungen werden sollte
Ein gängiger Tipp ist, mit jedem Chunk den vorherigen Absatz mitzuschicken, damit das Modell den Faden behält. In Durchlauf B fügten wir ihn der Nachricht unter der Bezeichnung „Kontext (bereits übersetzt, NICHT übersetzen)“ hinzu.
In Chunk 4 übersetzte das Modell ihn trotzdem. Der Chunk gab vier Absätze für drei Quellabsätze zurück, und der erste war eine zweite Übersetzung des letzten Absatzes von Chunk 3. Zusammengefügt hätte das Buch diesen Absatz zweimal enthalten, jedes Mal anders formuliert.
Die praktische Regel: Wenn du Kontext mitschickst, halte ihn aus dem Text heraus, den das Modell übersetzen soll, halte ihn kurz und prüfe die Absatzanzahl jedes Chunks. Wenn du nicht prüfen kannst, lass ihn weg.
Fehler 3: Ein allein gesendeter Chunk gab einer Figur die falsche Rolle
Durchlauf A schickte jeden Chunk ohne Glossar und ohne Kontext. Für die ersten fünf Chunks funktionierte das gut: Prokurist wurde an allen 16 Stellen, an denen es vorkam, zu „chief clerk“. Der sechste Chunk war ein einzelner Absatz, in dem der Prokurist Gregor durch die Tür hindurch ausschimpft. Für sich allein betrachtet, übersetzte das Modell der Prokurist als „the traveling salesman“, was Gregors eigener Beruf ist. Die Absatzanzahl stimmte und das Längenverhältnis betrug 1,00, sodass keine der beiden strukturellen Prüfungen etwas bemerkte.
In Durchlauf B, der das Glossar in der Systemanweisung und den vorherigen Absatz als Kontext hatte, verwendete derselbe Absatz korrekt „chief clerk“. Dieser Test kann nicht sagen, welche der beiden Maßnahmen das bewirkt hat. Da der Kontext auch Fehler 2 verursachte, ist das Glossar der sicherere Ort, um Namen und Rollen von Chunk zu Chunk mitzuführen: Es ist kurz, es steht in der Anweisung, und man kann es mechanisch prüfen.
Der Workflow, der sich bewährt hat
1. Zuerst reinen Text aus der Datei holen
Ein lokales LLM übersetzt Text, keine Dateien. Konvertiere das Dokument, bevor du beginnst:
- DOCX oder EPUB: Exportiere als reinen Text oder Markdown mit einem Absatz pro Block und behalte Überschriften als separate Zeilen bei.
- PDF mit Textebene: Extrahiere den Text und repariere dann umbrochene Zeilen und Trennungen. Unser Leitfaden zum Beheben von OCR-Zeilenumbrüchen und Trennungen behandelt dieselbe Bereinigung. Ein Konverter wie Docling kann Markdown aus PDFs und Office-Dateien erzeugen.
- Gescanntes PDF: Führe zuerst OCR aus. Wenn du unsicher bist, ob ein PDF brauchbaren Text enthält, siehe PDF-Textextraktion vs. OCR.
Behalte die Absatzstruktur bei. Jede spätere Prüfung hängt von einer Eins-zu-eins-Übereinstimmung zwischen Quell- und übersetzten Absätzen ab.
2. Schalte den Denkmodus aus und bestätige das
Viele aktuelle offene Modelle denken nach, bevor sie antworten. Bei der Übersetzung kostet das Zeit und Ausgabe-Token. In unserem Setup verbrauchte eine Testanfrage mit 200 Token 199 Token für das Nachdenken und lieferte eine leere Antwort.
Wir haben drei gängige Schalter ausprobiert. Das Hinzufügen von /no_think zum Prompt bewirkte nichts, und chat_template_kwargs mit enable_thinking: false bewirkte nichts. Das Senden von "reasoning_effort": "none" in der Anfrage schaltete das Nachdenken aus: Die Antwort meldete 0 Reasoning-Token und lieferte die Übersetzung direkt zurück. Dieser Parameter ist nicht auf der Chat-Completions-Seite von LM Studio aufgeführt, behandle ihn also als ein Verhalten, das wir in Version 0.4.8 mit diesem Modell beobachtet haben. Prüfe die Anzahl der reasoning_tokens in deinen eigenen Antworten, statt einem Schalter zu vertrauen.
3. Dimensioniere das Kontextfenster vor den Chunks
Das Kontextfenster muss die Anweisung, den Chunk und die vollständige Übersetzung aufnehmen. In unseren Chunk-Läufen verbrauchte ein deutscher Chunk mit 500 bis 670 Wörtern etwa 800 bis 1.500 Eingabe-Token, je nach Glossar und Kontext, und 640 bis 870 Ausgabe-Token, sodass ein paar Tausend Token ausreichen. Die einzelne Anfrage mit 3.179 Wörtern benötigte 4.953 Eingabe-Token und 3.930 Ausgabe-Token.
Ollama legt seine Standard-Kontextlänge anhand des verfügbaren Speichers fest: 4k Token unter 24 GiB VRAM, 32k von 24 bis 48 GiB und 256k ab 48 GiB, laut seiner Dokumentation zur Kontextlänge, abgerufen am 23. Oktober 2026. Du kannst sie mit OLLAMA_CONTEXT_LENGTH erhöhen. In LM Studio stellst du die Kontextlänge beim Laden des Modells ein. Wenn ein Chunk plus seine Übersetzung nicht hineinpasst, kann die Ausgabe abgeschnitten werden.
4. Unterteile an Absatzgrenzen, etwa 600 Wörter
Teile niemals innerhalb eines Absatzes oder Satzes. Unsere Chunks zielten auf 700 Wörter ab und endeten an der nächsten Absatzgrenze, was sechs Chunks mit 243 bis 667 Wörtern ergab. Kleinere Chunks kosten wenig: Lauf A dauerte 10,4 Minuten gegenüber 9,5 Minuten für die einzelne Anfrage, und ein fehlgeschlagener Chunk lässt sich günstig erneut ausführen.
Halte die Anweisung kurz und für jeden Chunk identisch. Unsere lautete: ins Englische übersetzen, genau einen Ausgabeabsatz pro Eingabeabsatz durch eine Leerzeile getrennt beibehalten und nur die Übersetzung ausgeben. Füge derselben Anweisung ein Glossar hinzu: eine Zeile pro Name, Titel oder wiederkehrendem Begriff, in der Form Prokurist = chief clerk. Unser Leitfaden zum Erstellen eines Übersetzungsglossars behandelt, was aufgenommen werden sollte. Kurze Chunks verlieren die umgebende Geschichte, und das Glossar ist es, was sie trägt.
5. Prüfe jeden Chunk, bevor du sie zusammenfügst
Führe drei Prüfungen an jedem Chunk durch:
- Absatzanzahl. Die Ausgabe muss dieselbe Anzahl von Absätzen wie die Eingabe haben. Dies deckte Fehler 2 auf.
- Längenverhältnis pro Absatz. Vergleiche die Wortanzahl jedes übersetzten Absatzes mit seiner Quelle. Dies deckte Fehler 1 auf, den die Absatzanzahl übersehen hatte.
- Glossarbegriffe pro Absatz. Wo ein Quellbegriff vorkommt, sollte seine erforderliche Übersetzung gleich oft erscheinen. Dies deckte Fehler 3 auf, den beide anderen Prüfungen übersahen. Flektierende Sprachen erfordern hier etwas Urteilsvermögen, da ein deutscher oder russischer Begriff seine Form ändert.
Für deutsche zu englische Prosa blieben die Absätze von Lauf A zwischen 0,98 und 1,17 Wörtern Ausgabe pro Wort Eingabe. Der beschädigte Absatz von Lauf C lag bei 0,82. Lege deinen eigenen Bereich fest, indem du ein paar Absätze prüfst, denen du in deinem Sprachpaar vertraust; die Standardwerte in unserem Skript sind ein Ausgangspunkt, kein Standard.
Ein markierter Absatz ist die Stelle, an der du zuerst lesen solltest, kein Beweis für einen Fehler. Lies dann die Übersetzung selbst, besonders Namen, Zahlen, Verneinungen und alles, worauf ein Leser reagieren würde. Die Checkliste zur Qualitätssicherung von Buchübersetzungen behandelt diese Überprüfung.
6. Baue das Dokument neu zusammen
Das Modell gibt Text zurück. Überschriften, Fußnoten, Tabellen, Bilder, Seitenlayout und Stile müssen von Hand oder mit einem Konvertierungswerkzeug wiederhergestellt werden. Bei einem kurzen Bericht ist das geringfügig. Bei einem Buch mit Fußnoten und Tabellen kann es länger dauern als die Übersetzung.
Wie lange ein ganzes Buch dauert
Unser Chunk-Lauf übersetzte 3.179 Wörter in 10,4 Minuten, etwa 300 Wörter pro Minute auf dieser Maschine. Bei dieser Rate würde ein Roman mit 90.000 Wörtern ungefähr fünf Stunden Generierung dauern, bevor Prüfungen und erneute Läufe hinzukommen. Das ist einfache Arithmetik aus einem Lauf, kein Benchmark. Die Geschwindigkeit ändert sich mit der Modellgröße, der Quantisierung, der Hardware, dem Sprachpaar und damit, wie viel die Maschine sonst noch tut.
Die Modelldatei war 17,5 GB auf der Festplatte groß, und der Kontext-Cache sowie Laufzeitpuffer benötigen zusätzlich Speicher, sodass eine Maschine deutlich mehr freien Speicher benötigt als die Dateigröße. Ein kleineres Modell läuft schneller und mit weniger Speicher, meist zu Lasten der Qualität. Teste es an einer repräsentativen Stichprobe, bevor du ein ganzes Buch in Angriff nimmst. Unser Leitfaden zum besten LLM für Übersetzungen erklärt, wie du diese Stichprobe erstellst und Modelle fair vergleichst.
Lokales LLM oder Dokumentenübersetzungsdienst
| Frage | Lokales LLM | Dokumentübersetzungsdienst |
|---|---|---|
| Kann die Datei Ihren Rechner verlassen? | Nicht erforderlich | Erforderlich |
| Was zurückkommt | Reiner Text, den Sie selbst zusammensetzen | Eine übersetzte Datei |
| Modellgröße | Begrenzt durch Ihren Arbeitsspeicher | Begrenzt durch den Anbieter |
| Konsistenz über ein ganzes Buch | Ihre Aufgabe: Glossar, Aufteilung, Prüfungen | In manchen Diensten integriert |
| Kosten pro Dokument | Ihre Hardware und Zeit | Preis pro Dokument oder pro Wort |
Wenn Ihre Vorgaben das Hochladen der Datei erlauben, nimmt ein Dokumentdienst den größten Teil der oben genannten Arbeit ab. BookTranslator übersetzt vollständige PDF-, EPUB- und DOCX-Dateien und liefert eine übersetzte Datei zurück; laut FAQ werden hochgeladene Dateien und Übersetzungsergebnisse nicht zum Trainieren von KI-Modellen verwendet. Es ist ein Cloud-Dienst und daher keine Option, wenn die Datei auf Ihrem Rechner bleiben muss. Wenn Sie zwischen dem Selbstbetrieb von Modellen und einem kostenpflichtigen Dienst abwägen, zeigt was LLM-Übersetzung tatsächlich kostet, wie Sie die Token-Seite budgetieren.
Testdateien herunterladen
Alle Dateien befinden sich im Ordner /files/blog/translate-with-local-llm/:
local_llm_translation_test.py: der vollständige Test gegen die lokale API von LM Studio mit allen drei Durchläufen. Richten Sie ihn auf ein anderes Modell oder einen anderen Ausgangstext, um den Test zu wiederholen.check_translation.py: vergleicht einen Ausgangstext und eine Übersetzung Absatz für Absatz und meldet Abweichungen in der Absatzanzahl, Längenverhältnisse außerhalb des Bereichs und fehlende Glossarbegriffe (mit--term "Prokurist=chief clerk"). Es funktioniert mit Ausgaben beliebiger Tools.results.csv: jede Anfrage mit Absatzanzahl, Wortanzahl, Tokenanzahl und Zeit.failure-examples.txt: der deutsche Ausgangstext und die rohe Modellausgabe für alle drei Fehlschläge.
Führe check_translation.py mit deinen Glossarbegriffen für jede lange Übersetzung aus, bevor du dich auf sie verlässt. Es dauert nur Sekunden, und es hat alle drei Fehler in diesem Test markiert. Es kann dir nicht sagen, ob ein flüssiger Satz falsch ist, daher sind die markierten Absätze der Ausgangspunkt für deine Prüfung, nicht ihr Ende.
Verwandte Beiträge





