Skip to content
··9 Min. Lesezeit

Ich habe DIALØGUE in 48 Stunden 5 Sprachen hinzugefügt

Ich habe Planungsdokumente erstellt, die Claude Code lehrten, wie man lokalisiert – nicht nur übersetzt – und dann zugeschaut, wie es in 5 Sprachen parallel ausgeführt wurde und wörtliche Phrasen in natürlich klingende Texte verwandelte.

Vor ein paar Tagen fragte ein Nutzer, ob DIALØGUE Spanisch unterstützt.

Nein, tat es nicht.

48 Stunden später unterstützt es fünf Sprachen – Spanisch, Vietnamesisch, Japanisch, Koreanisch und Mandarin-Chinesisch. Keine übersetzten UI-Buttons. Vollständige native Lokalisierung. Podcasts, die so klingen, als wären sie für jeden Markt gemacht.

Fünf Sprachen in 48 Stunden klingt, als hätte ich ein Team eingestellt oder Nächte durchgearbeitet. Das habe ich nicht.

Ich habe Claude Code eine übergeordnete Richtung gegeben. Es schrieb die Planungsdokumente und führte sie dann aus – oft mit parallelen Agenten, die gleichzeitig an verschiedenen Dateien arbeiteten.

---

Das Geheimnis: Einmal planen, schnell ausführen

Hier ist der interessante Teil: Ich habe die Planungsdokumente nicht selbst geschrieben. Claude Code tat es – mit meiner Anleitung.

Ich beschrieb, was ich wollte: „Erstelle einen Lokalisierungsstil-Leitfaden, der erklärt, wie man natürlich übersetzt, nicht wörtlich. Füge Beispiele für Spanisch, Vietnamesisch, Japanisch, Koreanisch und Chinesisch hinzu. Decke Formalitätsniveaus und kulturellen Kontext ab."

Claude Code erstellte einen 1.000+ Zeilen umfassenden Stil-Leitfaden, eine umfassende Checkliste und ein Backend-Pipeline-Playbook. Dann folgte es seinen eigenen Plänen, um die Arbeit auszuführen.

1. Der Stil-Leitfaden

Kein Übersetzungsglossar – ein Philosophiedokument. Es erklärt, wie man lokalisiert, mit Vorher-/Nachher-Beispielen für jede Sprache.

Beispieleintrag für Spanisch:

| Englisch | Wörtlich (Falsch) | Natürlich (Richtig) |

|---------|-----------------|-----------------|

| „Ideas, Produced" | „Ideas, Producidas" | „De la Idea, al Podcast" |

| „Researched, Not Recycled" | „Investigado, No Reciclado" | „Contenido Original, Sin Copiar" |

| „You Direct" | „Tú Diriges" | „Tú Decides" |

Die wörtlichen Übersetzungen sind grammatikalisch korrekt, klingen aber wie Google Translate. Die natürlichen Versionen erfassen die Absicht – das sind Texte, die ein spanischsprachiger Marketer tatsächlich schreiben würde.

Der Leitfaden deckt Formalitätsniveaus ab (Japanisch verwendet です/ます-Form, Koreanisch verwendet 합쇼체), kulturellen Kontext und häufige Fehler. Wenn Claude Code übersetzt, folgt es automatisch diesen Prinzipien – denen, die es selbst geschrieben hat.

2. Die Lokalisierungs-Checkliste

Eine umfassende Checkliste aller Dateien, die für eine neue Sprache geändert werden müssen:

Erforderlich (muss vorhanden sein):

- Frontend: messages/\{locale\}.json (~2.200 Keys)

- Backend: locales/\{locale\}.json (~82 Keys)

- Language Utils: 3 Funktionen in language\_utils.py

- Speech Generation: 1 Funktion in gemini\_voice\_instructions.py

- Voice Preview: 7 lokalisierte Sätze

- Content Moderation: Keywords + Prompts

- Smoke Tests: Zur Testmatrix hinzufügen

Optional (verbesserte Qualität):

- Host/Zielgruppenprofile pro Stil

- Lokalisierte Prompt-Vorlagen

- Sprach-spezifische Stimmenanweisungen

Diese Checkliste stellt sicher, dass nichts vergessen wird. Claude Code arbeitet sie systematisch durch.

3. Das Backend-Playbook

Dokumentiert genau, wie die Podcast-Generierung mit Sprache umgeht:

- Wie die Outline-Generierung Gemini 3 Flash mit Sprach-Anweisungen verwendet

- Wie die Dialog-Generierung Claude Sonnet 4.5 mit kulturellem Kontext verwendet

- Wie die Sprach-Generierung Gemini TTS mit sprachspezifischer Anleitung verwendet

Mit diesen drei Dokumenten wird das Hinzufügen einer neuen Sprache mechanisch. Claude Code liest die Checkliste, folgt dem Stil-Leitfaden und aktualisiert Dateien gemäß dem Playbook.

---

Das Problem mit „einfach übersetzen"

Ich muss zugeben, mein erster Instinkt war, alles durch eine Übersetzungs-API zu laufen und es dabei zu belassen. „Create Podcast" wird zu „Crear Podcast" und alle machen weiter, oder?

Dieser Ansatz produziert Müll. Ich lernte das auf die harte Tour, als ich zwischen Vietnamesisch und Englisch aufwuchs – wörtliche Übersetzung tötet die Seele des Gesagten.

Übersetzung bewahrt Wörter, Lokalisierung bewahrt Bedeutung. Der Stil-Leitfaden kodiert diesen Unterschied.

| Sprache | Wörtliche Übersetzung | Native Lokalisierung |

|----------|--------------------|--------------------|

| Vietnamesisch | „Ý tưởng, Được Sản Xuất" | „Từ Ý Tưởng → Đến Podcast" |

| Japanisch | „アイデア、制作された" | „アイデアを、カタチに" (Ideen in Form) |

| Koreanisch | „아이디어, 제작됨" | „아이디어를, 현실로" (Ideen in die Realität) |

| Spanisch | „Ideas, Producidas" | „De la Idea, al Podcast" |

| Chinesisch | „想法,已制作" | „从想法,到播客" |

Jede Sprache erforderte dieses Maß an Aufmerksamkeit. Jeder Button, jede Fehlermeldung, jeder Marketing-Text.

Und das ist nur die UI. Die eigentliche Podcast-Generierung ist schwieriger.

---

Podcasts brauchen native Moderatoren

Hier ist etwas, das ich nicht erwartet hatte: Moderatornamen sind wichtig. Sehr wichtig.

In der englischen Version heißen die Standard-Moderatoren Alex und Maya. Generisch, einprägsam, funktioniert gut.

Aber wenn du einen vietnamesischen Podcast generierst und die Moderatoren noch Alex und Maya heißen? Das klingt seltsam. Als Vietnamese kann ich dir sagen – es klingt wie eine schlechte Synchronisation einer amerikanischen Sendung :D

Also bekam jede Sprache native Moderatornamen:

| Sprache | Moderator 1 | Moderator 2 |

|----------|--------|--------|

| Englisch | Alex | Maya |

| Vietnamesisch | Minh | Lan |

| Japanisch | 太郎 (Tarō) | 花子 (Hanako) |

| Koreanisch | 민준 (Minjun) | 수진 (Sujin) |

| Spanisch | Carlos | María |

| Chinesisch | 明辉 | 雅琴 |

Aber Namen allein reichen nicht aus. Die KI muss den kulturellen Kontext verstehen.

Ein Tech-Podcast in Japan hat andere Gesprächsnormen als einer in den USA. Das Formalitätsniveau, die Art, wie Meinungsverschiedenheiten ausgedrückt werden, der Rhythmus des Hin und Hers – alles ist anders.

Also erstellte ich sprachspezifische KI-Prompt-Anweisungen. Die vietnamesischen Anweisungen spezifizieren „bạn" (informelles, aber respektvolles „du"). Die japanischen Anweisungen spezifizieren die です/ます-Form (höflich, aber freundlich). Die koreanischen Anweisungen spezifizieren 합쇼체 (formal höflich).

Das ist die Art von Dingen, die man nicht automatisieren kann. Aus meinen Jahren, in denen ich in asiatisch-pazifischen Märkten gearbeitet habe, kenne ich diese Kommunikationsmuster intuitiv – der Trick war, dieses kulturelle Wissen in Prompts zu kodieren, denen eine KI folgen konnte. Aber einmal kodiert, wendet Claude Code sie konsistent über Tausende von Strings an.

---

Die KI-Modellauswahl, die wirklich funktioniert

Hier wird es aus technischer Perspektive interessant.

DIALØGUE verwendet drei verschiedene KI-Modelle für drei verschiedene Aufgaben. Nicht weil ich Komplexität wollte, sondern weil jedes Modell für seine spezifische Aufgabe wirklich besser ist.

Aufgabe 1: Recherche & Outline → Gemini 3 Flash

Wenn ein Nutzer ein Thema eingibt, ist der erste Schritt die Recherche. Die KI muss:

1. Im Web nach aktuellen Informationen suchen

2. Erkenntnisse in eine strukturierte Outline zusammenfassen

3. Quellen ordentlich zitieren

Das erfordert Grounding (Echtzeit-Web-Suche) UND strukturierten Output (JSON-Schema-Konformität).

Hier ist das Problem: Die meisten Modelle können nicht beides gleichzeitig. Gemini 2.5 Flash unterstützt Grounding. Es unterstützt strukturierten Output. Aber nicht zusammen. Du musst dich entscheiden.

Gemini 3 Flash Preview ist das einzige Modell, das ich gefunden habe, das beide Features gleichzeitig unterstützt. Also übernimmt es die Outline-Generierung.

```python
GEMINI_MODEL = "gemini-3-flash-preview"

# Schlüsselfähigkeit:
GEMINI_MODEL_CONFIGS = \{
    "gemini-3-flash-preview": {
        "supports_grounding": True,
        "supports_structured_output": True,
        "supports_grounding_with_structured_output": True,  # Das ist der Schlüssel
    \}
}
```

Die Outline kommt in etwa 60 Sekunden mit echten Quellen, ordentlich strukturiert zurück.

Aufgabe 2: Dialog-Generierung → Claude Sonnet 4.5

Sobald der Nutzer die Outline genehmigt, schreibt die KI das vollständige Skript – jedes Wort, das beide Moderatoren sagen werden.

Das ist kreatives Schreiben. Es braucht Persönlichkeit, natürlichen Rhythmus, das Gefühl eines echten Gesprächs.

Ich habe das mit mehreren Modellen getestet. Claudes Dialog klingt konsistent menschlicher. Das Hin und Her fühlt sich authentisch an. Die Moderatoren unterbrechen sich natürlich gegenseitig. Sie bauen aufeinander auf.

Es ist subjektiv, aber nach dem Generieren von Hunderten von Test-Podcasts ist der Unterschied spürbar. Claude Sonnet 4.5 übernimmt die Dialog-Generierung.

```python
ANTHROPIC_MODEL = "claude-sonnet-4-5-20250929"
```

Aufgabe 3: Audio-Generierung → Gemini 2.5 Flash TTS

Schließlich muss das Skript zu Audio werden. Zwei Stimmen, ordentliches Tempo, emotionaler Ausdruck.

Gemini 2.5 Flash TTS bietet 30 verschiedene Stimmen mit Multi-Speaker-Unterstützung. Du kannst Charon (informativ, männlich) und Kore (bestimmt, weiblich) in derselben Audiodatei haben, die natürlich zwischen Sprechern wechseln.

Die Qualität ist gut genug, dass Nutzer oft fragen, ob es echte Sprecher sind.

```python
# Multi-Speaker-Synthese mit Gemini TTS
response = client.models.generate_content(
    model="gemini-2.5-flash-preview-tts",
    contents=transcript,
    config=types.GenerateContentConfig(
        response_modalities=["AUDIO"],
        speech_config=types.SpeechConfig(
            multi_speaker_voice_config=types.MultiSpeakerVoiceConfig(
                speaker_voice_configs=speaker_configs
            )
        )
    )
)
```

Die Pipeline

Der vollständige Ablauf ist also:

```
Nutzereingabe
    ↓
[Gemini 3 Flash] Recherche + Strukturierte Outline (~60 Sek.)
    ↓
Nutzerüberprüfung & Feedback
    ↓
[Claude Sonnet 4.5] Vollständiges Dialog-Skript (~2-3 Min.)
    ↓
Nutzerüberprüfung & Bearbeitung
    ↓
[Gemini 2.5 Flash TTS] Multi-Speaker-Audio (~3-5 Min.)
    ↓
Fertiger Podcast
```

Jedes Modell tut, was es am besten kann. Die gesamte Generierungszeit beträgt etwa 8–10 Minuten für einen 15–30-minütigen Podcast.

---

Ein Feature, das mich überraschte

Nutzer fragten nach etwas, das ich nicht in Betracht gezogen hatte: Podcasts in einer anderen Sprache als ihrer UI generieren.

Ein vietnamesischer Nutzer könnte problemlos in Vietnamesisch durch die App navigieren, aber einen englischen Podcast für ein internationales Publikum erstellen wollen. Oder ein spanischsprachiger Marketer möchte vielleicht Inhalte auf Japanisch testen.

Also habe ich eine Podcast-Sprachauswahl hinzugefügt. Deine UI kann auf Englisch sein, während du einen Podcast auf Mandarin generierst. Die Moderatoren werden chinesische Namen haben (明辉 und 雅琴), der Dialog folgt chinesischen Gesprächsmustern und das Audio verwendet passende Stimmen.

Es ist ein kleines Feature, aber es erweitert dramatisch, was Nutzer tun können.

---

Parallele Agenten: Der Kraftmultiplikator

Die echte Geschwindigkeit kam von parallelen Agenten. Die Checkliste notiert das explizit:

> „Parallele Agenten für Backend-Dateien ausführen – Backend-Dateien sind kleiner und können parallel verarbeitet werden (language_utils.py, content_moderation.py, gemini_voice_instructions.py, locales/{locale}.json)."

Wenn ich sagte „Koreanische Unterstützung hinzufügen", würde Claude Code mehrere Agenten starten:

- Ein Agent aktualisiert die Frontend-Übersetzungsdatei

- Ein anderer fügt koreanische Fälle zu language\_utils.py hinzu

- Ein weiterer aktualisiert gemini\_voice\_instructions.py

- Noch ein anderer fügt Koreanisch zu content\_moderation.py hinzu

Alle gleichzeitig laufend. Wenn sie fertig waren, fügte Claude Code die Änderungen zusammen und führte Tests durch.

Deshalb unterscheidet die Checkliste „Erforderliche" Dateien von „Optionalen" – damit Claude Code weiß, was zu parallelisieren ist und was warten kann.

Für die Frontend-Übersetzungsdatei (~2.200 Keys) spezifiziert die Checkliste eine Chunking-Strategie:

- Chunk 1: common, nav, bottomNav (~110 Keys)

- Chunk 2: homepage, auth (~180 Keys)

- Chunk 3: dashboard, create (~330 Keys)

- Und so weiter...

Das verhindert Token-Limit-Probleme und lässt Claude Code Namespace für Namespace übersetzen, jedes gegen den Stil-Leitfaden prüfen.

Der Umfang:

- 5 Sprachen hinzugefügt

- ~2.500 Übersetzungs-Strings insgesamt pro Sprache

- 10+ KI-Prompt-Vorlagen pro Sprache

- 1 Demo-Podcast pro Sprache generiert

- Mehrere parallele Agenten pro Sprache

Die wichtigste Erkenntnis: Ich habe keinen Code geschrieben. Ich habe keine Pläne geschrieben. Ich habe Richtungen gegeben, Output überprüft und Claude Code den Rest erledigen lassen – oft parallel. Es begeistert mich immer noch ein wenig :P

---

Was als Nächstes kommt

Die sechs Sprachen decken etwa 2 Milliarden potenzielle Nutzer ab. Das ist sinnvolle Reichweite.

Aber ich denke schon darüber nach, was fehlt (der Marketer in mir hört nie auf):

1. Arabisch – Support für von rechts nach links ist komplex

2. Hindi – Riesiger Markt, andere Schrift

3. Portugiesisch – Brasilien ist ein riesiger Podcast-Markt

4. Französisch – Europäische Expansion

5. Tagalog – Starke philippinische Creator-Community

Jede erfordert das gleiche Maß an Sorgfalt. Native Lokalisierung, keine Übersetzung. Kulturelle Prompts, keine kopierten Vorlagen. (Das war nur möglich, weil ich gerade die gesamte App in 14 Tagen neu aufgebaut hatte mit einer sauberen Architektur.)

Die gute Nachricht: Die Planungsdokumente sind wiederverwendbar. Das Hinzufügen der nächsten Sprache sollte noch schneller sein. Und die Lokalisierung überträgt sich auf die native iOS-App, die ich jetzt baue – alle 7 Sprachen, dasselbe Supabase-Backend.

---

Selbst ausprobieren

Ich bin wirklich stolz darauf, wie das geworden ist – besonders die vietnamesische Lokalisierung. Einen Podcast zu hören, der so klingt, als wäre er für ein vietnamesisches Publikum gemacht, nicht an es übersetzt, hat mich auf eine Weise getroffen, die ich nicht erwartet hatte.

DIALØGUE unterstützt jetzt:

- Englisch – The original

- Vietnamesisch – Từ Ý Tưởng → Đến Podcast

- Japanisch – アイデアを、カタチに

- Koreanisch – 아이디어를, 현실로

- Spanisch – De la Idea, al Podcast

- Chinesisch – 从想法,到播客

Erstelle einen Podcast in deiner Sprache →

Die UI folgt deiner gewählten Präferenz. Und denk daran – du kannst Podcasts in jeder dieser Sprachen generieren, unabhängig von deiner UI-Einstellung.

Neue Nutzer erhalten 2 kostenlose Podcasts zum Testen.

---

Die Erkenntnisse

Wenn ich zurückblicke, hat mich am meisten überrascht, wie sehr mein Werbehintergrund wichtig war. Jahre der Anpassung von Kampagnen in asiatischen Märkten haben mir beigebracht, dass Lokalisierung nie nur Wörter betrifft – es geht um kulturelle Intuition. Ich hatte nicht erwartet, dass das die wertvollste Fähigkeit sein würde, die ich in ein KI-Coding-Projekt einbringe.

Für Entwickler, die KI-Coding-Assistenten nutzen:

1. Leite an, schreibe nicht. Ich habe die Planungsdokumente nicht geschrieben – ich beschrieb, was ich wollte, und Claude Code erstellte sie. Dann folgte es seinen eigenen Plänen. Das fühlte sich zunächst seltsam an, wie delegieren an jemanden, der auch sein eigenes Briefing schreibt. Aber es funktioniert.

2. Struktur ermöglicht Skalierung. Stil-Leitfäden, Checklisten, Playbooks – diese sind nicht mehr nur für Menschen. Ich denke, das ist der größte Unlock: Strukturiere deine Anforderungen so, dass ein KI-Agent sie systematisch ausführen kann. (Meine Jahre des Schreibens von Marketing-Briefings haben sich auf unerwartete Weise ausgezahlt.)

3. Passe das Modell an die Aufgabe an. Ich könnte falsch liegen, aber ich glaube, kein einzelnes Modell ist derzeit in allem am besten. Für DIALØGUE:

- Gemini 3 Flash für geerdete, strukturierte Recherche

- Claude Sonnet 4.5 für natürlichen Dialog

- Gemini 2.5 Flash TTS für Multi-Speaker-Audio

4. Lokalisiere, übersetze nicht. Deine Nutzer merken den Unterschied. Ich kann das nicht genug betonen – als jemand, der in drei Ländern gelebt und in einem Dutzend Märkten gearbeitet hat, habe ich gesehen, was faule Übersetzung mit einem Produkt macht. Kodiere kulturelles Wissen in deine Prompts und lass die KI es konsistent anwenden.

Das war's von mir dazu. Wenn du etwas Mehrsprachiges baust – oder auch nur darüber nachdenkst – würde ich gern hören, wie du Lokalisierung angehst. Nutzt du KI dafür? Gehst du den traditionellen Agenturweg? Stimmst du zu, dass kultureller Kontext der schwierige Teil ist, nicht die Übersetzung selbst? Lass es mich wissen.

Viele Grüße,

Chandler

Weiterlesen

Mein Weg
Vernetzen
Sprache
Einstellungen