---
title: 'Next.js-Sites mit Gemini übersetzen, ohne die Produktion zu gefährden'
description: >-
  Erfahren Sie, wie Sie MDX-Inhalte mit der Gemini Batch-API zum halben Preis
  maschinell übersetzen. Validieren Sie jede Antwort, bevor sie gespeichert
  wird, und zahlen Sie nur für das, was sich wirklich geändert hat.
publishedAt: '2026-07-08'
updatedAt: '2026-07-08'
noindex: false
canonicalPath: /de/blog/translate-nextjs-site-gemini-batch-api
---
Maschinelle Übersetzung ist heute so günstig, dass Sie eine komplette Website für weniger als den Preis eines Kaffees in zehn Sprachen übersetzen können. Das Problem war nie das Modell selbst. Die eigentliche Herausforderung ist das Drumherum: man muss wissen, was übersetzt werden muss, Fehler des Modells abfangen, bevor sie in Produktion gehen, und vermeiden, 500 Seiten neu übersetzen zu lassen, nur weil man einen Tippfehler korrigiert hat.

Dieser Beitrag zeigt, wie Scribe diese Probleme löst. Als durchgehendes Beispiel dient diese Website (zehn Sprachen, jede Seite übersetzt).

## Nur das übersetzen, was sich geändert hat

Für jedes übersetzbare Dokument wird ein Hash-Wert der relevanten Inhalte erstellt. Dazu gehören die markierten Frontmatter-Felder und der MDX-Body. Jede gespeicherte Übersetzung merkt sich den Hash, auf dem sie basiert. Die Arbeitsliste für einen Übersetzungsdurchlauf besteht dann einfach aus jedem Paar von Dokument und Sprache, bei dem die Hashes nicht übereinstimmen oder noch keine Übersetzung vorliegt.

Das bringt zwei entscheidende Vorteile mit sich:

- Die Korrektur eines Tippfehlers in einer Datei markiert genau ein Dokument in jeder Sprache als veraltet.
- Führt man `scribe translate` zweimal direkt hintereinander aus, passiert beim zweiten Mal absolut nichts.

Bevor Kosten entstehen, gibt `scribe translate --dry-run` die Arbeitsliste aus. Dabei werden die geschätzten Token und die Kosten pro Element angezeigt. Wenn wir beispielsweise am selben Tag veröffentlichte Releases in unserem Changelog zusammenfassen, zeigte dies 18 ausstehende Elemente für geschätzte 0,07 $ an, bevor wir die Änderung endgültig übernahmen.

## Halber Preis durch die Batch-API

Standardmäßig laufen Übersetzungen über die Gemini Batch-API. Dort werden Eingabe- und Ausgabe-Token nur mit 50 % des regulären Preises abgerechnet. Alle Anfragen werden im Voraus geplant und übermittelt, danach wird der Status gemeinsam abgefragt. Jobs werden im Moment der Übermittlung in der SQLite-Datenbank gespeichert. Sie können also während der Statusabfrage abbrechen und `scribe translate` später erneut ausführen, um genau dort weiterzumachen, wo Sie aufgehört haben.

Die Prompts sind außerdem so aufgebaut, dass der englische Inhalt für alle Zielsprachen ein identisches Präfix bildet. Wenn eine Seite in neun Sprachen übersetzt wird, reduziert das implizite Context Caching von Gemini die Kosten für die wiederholten Eingabe-Token. Die spezifische Anweisung für die jeweilige Sprache steht am Ende des Prompts, wo sie das gemeinsame Präfix nicht unterbricht.

## Validieren vor dem Speichern, nicht nach dem Deployment

Das Modell liefert gelegentlich fehlerhafte Ergebnisse. Das kann ungültiges MDX, ein halluziniertes Feld oder ein abgeschnittener String sein. Die Regel, die uns davor schützt, ist einfach: Nichts gelangt unvalidiert in den Speicher.

Jede Antwort wird als MDX geparst und erneut mit dem Zod-Schema des Dokuments abgeglichen. Schlägt eine Antwort fehl, betrifft das nur dieses eine Element und nicht die gesamte Website. Am Ende des Durchlaufs werden fehlgeschlagene Elemente einmalig neu versucht. Dabei werden die Validierungsfehler an das Modell zurückgemeldet, was die meisten Probleme löst. Alles, was zweimal fehlschlägt, wird gemeldet und bleibt unübersetzt. Ihr Build liefert in der Zwischenzeit für diese Sprache weiterhin Englisch aus.

## Übersetzung statt wörtlicher Übertragung

Eine wörtliche Übersetzung liest sich wie eine Bedienungsanleitung. Der integrierte Prompt von Scribe rahmt die Aufgabe stattdessen als kreative Adaption (Transcreation) ein. Das Modell schreibt wie ein muttersprachlicher Werbetexter, der die lokalisierte Ausgabe des Textes erstellt. Es überträgt die Intention jedes Satzes, anstatt die Syntax der Quelle zu spiegeln. Wortspiele und Redewendungen werden nachgebildet statt wörtlich übersetzt, und es kommen landestypische typografische Konventionen zum Einsatz.

Sie können dies über `translate.context` (worum es auf der Website geht, Markenbegriffe, die auf Englisch bleiben sollen) und `translate.rules` (Vorgaben zum Hausstil) in Ihrer Konfiguration weiter steuern. Die vollständige Liste der Optionen finden Sie im [Übersetzungsleitfaden](/docs/translation).

## Was das in der Praxis kostet

Diese Website besteht aus einer Landingpage, einem Dokumentationsbereich, einem Changelog und neuerdings einem Blog. Alles wird in neun nicht-englische Sprachen übersetzt. Eine komplette Neuübersetzung von Grund auf kostet nur wenige Dollar. Die inkrementellen Durchläufe, die nach normalen Bearbeitungen folgen, kosten nur Cents. Der teure Teil an mehrsprachigen Websites waren nie die Token, sondern der Koordinationsaufwand. Veraltungsprüfungen auf Basis von Hashes machen diese Koordination überflüssig.

Beginnen Sie mit dem [Leitfaden für den Einstieg](/docs/getting-started) und führen Sie dann Ihre erste Übersetzung durch, während Sie die [CLI-Referenz](/docs/cli) griffbereit haben.
