Zurück zum Blog

Wie ich diesen Blog mit KI übersetze

2025-08-217 Minuten Lesezeit

Ich bin gebürtige Spanierin. Ich lebe in den Vereinigten Staaten, daher benutze ich jeden Tag Englisch. Ich schreibe meine Beiträge auf Englisch zum Üben und um mehr Leute zu erreichen.

Google Analytics hat mir etwas Wichtiges gezeigt. Mehr als die Hälfte meiner Besucher kommt aus Ländern, in denen Englisch nicht die Hauptsprache ist. Das sagte mir, dass ich Wert liegen lasse. Also beschloss ich, den Blog mit KI zu übersetzen.

Worauf ich mich konzentriere

  • Klarheit: Ich achte darauf, dass die Bedeutung klar ist, statt wörtlich zu übersetzen.
  • Struktur erhalten: Ich lasse Übersetzungen nicht HTML, Code oder URLs verändern.
  • Stabile URLs: Jede Sprache hat einen festen Slug, damit Links nicht kaputtgehen.
  • Geschwindigkeit: Ein Befehl übersetzt alles.

Mein Setup

  • Inhaltsformat: Jeder Beitrag ist eine JSON-Datei mit title, date, excerpt, content, readTime, tags, categories, translatedSlugs und slug.
  • Framework: Next.js und next-intl für sprachabhängiges Routing.
  • Modell: Ich rufe die Gemini API von Google aus scripts/translate-es-gemini.ts auf. Sie verwendet standardmäßig REST und hat ein Fallback-Modell. Der Prompt ist streng: übersetze nur Werte, berühre kein HTML oder URLs.
  • Ein Befehl: scripts/translate-all-languages.ts führt Übersetzungen für alle Locales durch, synchronisiert Slug-Zuordnungen und validiert die Vollständigkeit.
  • Sprachwechsler: Er verwendet translatedSlugs, um Leser zur richtigen URL für jede Sprache zu leiten.

Mein Workflow

  1. Ich schreibe den Beitrag auf Englisch als app/[locale]/blog/posts/<slug>/index.json. Das Feld content ist HTML. Codeblöcke sind mit Backticks umschlossen.
  2. Ich übersetze mit einem Befehl. Das Modell übersetzt title, excerpt, content und readTime. Metadaten wie date, tags und categories bleiben gleich.
  3. Ich halte die Slugs synchron mit einer translatedSlugs-Map in jeder Datei, Englisch und Übersetzungen.
  4. Ich validiere, dass jede Sprache existiert und die Slug-Map vollständig ist.

Warum KI für mich funktioniert

  • Folgt Anweisungen: Der Prompt schützt HTML, Code und Links.
  • Schnell und gut: Ein schnelles Modell mit automatischem Fallback.
  • Konsistenter Ton: Niedrige Temperatur hält den Stil über Sprachen hinweg stabil.

Sicherheitsvorkehrungen

  • HTML-sichere Übersetzung: Ich sende nur die Werte von JSON-Schlüsseln, keine Tags oder Attribute.
  • Slug-Disziplin: translatedSlugs enthält den Slug für en, es, fr, de, ru, nl, it und zh.
  • Validierung: Ein Befehl prüft, ob jede Sprachdatei existiert und die Slug-Map vollständig ist.
  • Höflich zur API: Ich füge eine kleine Verzögerung zwischen den Aufrufen ein.

Übersetzungen und SEO

  • Leser helfen: Leute vertrauen Inhalten in ihrer Sprache. Sie bleiben länger und teilen mehr.
  • URLs sind wichtig: Ein übersetzter Slug kann die Wörter enthalten, nach denen Leute in dieser Sprache suchen.
  • Eine Seite pro Sprache: Verlinken Sie Sprachversionen mit hreflang, um Duplikate zu vermeiden.
  • Sitemaps: Fügen Sie alle Locales hinzu, damit Suchmaschinen sie finden können.
  • Stabilität: Übersetzen Sie Slugs, aber halten Sie sie stabil. Häufige URL-Änderungen können schaden.

Die Befehle, die ich ausführe

# Einen Beitrag in alle Sprachen übersetzen
npm run translate-all translate mein-neuer-beitrag

# Validieren, dass alle Sprachdateien und Slug-Maps existieren
npm run translate-all validate mein-neuer-beitrag

# Erneut ausführen und Übersetzungen überschreiben, nachdem Englisch bearbeitet wurde
npm run translate-all translate mein-neuer-beitrag --force

Das ist alles. Einer zum Übersetzen, einer zum Validieren. Der Wechsler funktioniert, weil jede JSON-Datei den sprachspezifischen Slug auflistet.

Tipps, wenn Sie das ausprobieren

  • Schreiben Sie einfach. Kurze Sätze lassen sich gut übersetzen.
  • Umschließen Sie Codeblöcke mit Backticks und Inline-Code mit <code>.
  • Vermeiden Sie Wortspiele, wenn Sie den Zieltext nicht überprüfen werden.
  • Verwenden Sie semantisches HTML. Überschriften und Listen helfen Lesern und Modellen.

FAQ

Bearbeite ich Übersetzungen?

Manchmal, besonders Titel und Einleitungen. Ich möchte einen schnellen Ausgangspunkt, dann poliere ich dort, wo es wichtig ist.

Datenschutz?

Inhalte werden an die Gemini API gesendet. Ich sende keine Geheimnisse. API-Schlüssel befinden sich in .env.local (GOOGLE_API_KEY oder GEMINI_API_KEY).

Modelle?

Ich verwende ein schnelles Gemini-Modell und weiche automatisch auf ein Fallback aus, wenn es nicht verfügbar ist. Sie können dies mit GEMINI_MODEL überschreiben.

Fazit

KI ersetzt nicht Ihre Stimme. Sie beseitigt die Fleißarbeit. Halten Sie Ihre Quelle sauber, automatisieren Sie die wiederholbaren Teile, validieren Sie und veröffentlichen Sie.