Weiter zum Inhalt

Voxtral TTS: Ein Leitfaden mit Praxisbeispielen

Erfahre, wie Mistrals erstes Text-to-Speech-Modell funktioniert, wie es sich gegenüber Alternativen schlägt und wie du mit dem Python-SDK per Schritt-für-Schritt-Code Sprache generierst.
Aktualisiert 12. Mai 2026  · 9 Min. lesen

Bis März 2026 hatte Mistral nur die halbe Voice-Pipeline gebaut. Die Voxtral Transcribe-Modelle erledigten Speech-to-Text, aber der Weg zurück fehlte. Wenn deine Anwendung sprechen sollte, brauchtest du einen anderen Anbieter – meist ElevenLabs für ausdrucksstarkes Voice Cloning, OpenAIs TTS-1 für eine minimale Integration oder Google Clouds Neural2, wenn du ohnehin in diesem Ökosystem warst.

Voxtral TTS schließt diese Lücke. Es ist Mistrals erstes Text-to-Speech-Modell, ein System mit 4,1 Milliarden Parametern, das aus einem kurzen Audio-Referenzclip Sprache in neun Sprachen generiert. Die Modellgewichte sind auf Hugging Face verfügbar, und die Cloud-API ist live für $0,016 pro 1.000 Zeichen, mit offenen Gewichten für Self-Hosting.

Ein Hinweis zur Namensgebung: Die Voxtral-Modelle vom Juli 2025 sind Speech-to-Text-Modelle. Voxtral TTS, veröffentlicht am 26. März 2026, geht den umgekehrten Weg.

Was ist Voxtral TTS?

Voxtral TTS ist ein Text-to-Speech-Modell, das geschriebenen Text in gesprochene Audios in neun Sprachen umwandelt: Englisch, Französisch, Deutsch, Spanisch, Niederländisch, Portugiesisch, Italienisch, Hindi und Arabisch. Du kannst eine von 20 voreingestellten Stimmen nutzen oder einen Referenzclip angeben, um die Stimme einer bestimmten Person zu klonen. Für das Klonen werden 5 bis 25 Sekunden empfohlen, das Modell akzeptiert aber auch Clips ab 3 Sekunden.

Mistrals Hauptargument ist ein kleiner Footprint bei gleichzeitiger Qualität auf Spitzenniveau. Die Standard-BF16-Gewichte auf Hugging Face sind rund 8 GB groß, und Self-Hosting erfordert eine GPU mit mindestens 16 GB VRAM, um die Inferenz-Overheads abzudecken. Im Paper wird erwähnt, dass quantisierte Varianten die Gewichte auf etwa 3 GB reduzieren können, diese sind jedoch nicht der Standard-Release. Pierre Stock, VP Science bei Mistral, sagte VentureBeat, das Modell könne sogar auf einem Smartphone laufen; das hängt aber von der Quantisierung ab und ließ sich von mir nicht unabhängig verifizieren.

Das Modell unterstützt außerdem, was Mistral „Voice-as-an-instruction“ nennt. Anstatt SSML-Tags oder explizite Emotionslabels zu verwenden, leitet Voxtral TTS Tonfall, Rhythmus und emotionale Gestaltung direkt aus deinem Referenzclip ab. Gibst du ein Beispiel mit aufgeregter Sprechweise, spiegelt die generierte Sprache diese Darbietung tendenziell wider. Das ist ein anderer Ansatz als bei ElevenLabs, wo explizite Emotionstags die Generierung steuern.

Architekturüberblick

Voxtral TTS ist ein Transformer-basiertes, autoregressives Flow-Matching-Modell auf Basis von Ministral 3B. Es besteht aus drei Komponenten: einem Transformer-Decoder-Backbone mit 3,4B Parametern, der aus Text- und Spracheingaben semantische Tokens vorhersagt; einem akustischen Flow-Matching-Transformer mit 390M Parametern, der diese Tokens in Audiorepräsentationen umwandelt; und einem 300M-Parameter-Neural-Audio-Codec, den Mistral von Grund auf neu entwickelt hat und der mit 12,5 Hz bei 80-Millisekunden-Frames arbeitet. Der Codec hält die Audiorepräsentation effizient: Er arbeitet in einem stark komprimierten latenten Raum, wodurch das vollständige 4,1B-Modell hochwertige Audios generieren kann, während die BF16-Gewichte bei rund 8 GB bleiben.

Diagramm mit den drei Komponenten der Voxtral-TTS-Architektur: Transformer-Decoder-Backbone, Flow-Matching-Akustiktransformer und Neural-Audio-Codec, die Text- und Stimmeingaben in Audioausgabe verarbeiten

Architekturüberblick von Voxtral TTS. Quelle: Mistral AI.

Diese dreistufige Pipeline ermöglicht auch das Voice Cloning: Der Codec erfasst Sprechereigenschaften im latenten Raum, die Backbone und Akustiktransformer anschließend nutzen, um diese Stimme für neuen Text zu reproduzieren.

Zero-shot-Voice-Cloning

Beim Voice Cloning lieferst du einen kurzen Referenzclip, und das Modell generiert Sprache, die Akzent, Intonation und Rhythmus der Sprecherin bzw. des Sprechers erfasst – inklusive natürlicher Pausen und Sprechtempo.

Überrascht hat mich im Paper die cross-linguale Fähigkeit. Gibst du eine französische Stimmreferenz und tippst deinen Prompt auf Deutsch, erzeugt das Modell tendenziell deutsches Audio, das der französischen Stimme ähnelt und viele ihrer stimmlichen Merkmale und den Akzent übernimmt. Das wurde nicht explizit trainiert. Es ist emergentes Verhalten – nützlich etwa für Speech-to-Speech-Übersetzung, wenn die Originalstimme über Sprachen hinweg erhalten bleiben soll.

Ein praktisches Detail: Individuelles Voice Cloning erfordert die Mistral-API. Das Open-Weights-Release ist auf dieselben 20 Preset-Stimmen beschränkt. Wenn du eine bestimmte Stimme in der Self-Hosted-Version klonen willst, brauchst du den Voice-Creation-Endpunkt der API.

Voxtral-TTS-Benchmarks

Alle Benchmark-Daten hier stammen aus Mistrals internen Auswertungen. Das Modell ist noch so neu, dass zum Zeitpunkt des Schreibens keine unabhängigen Drittanbieter-Benchmarks veröffentlicht wurden. Das Artificial Analysis Speech Arena Leaderboard, ein unabhängiges TTS-Ranking, hat Voxtral TTS noch nicht gelistet.

Mistral nutzte Präferenztests mit Menschen statt automatisierter Metriken wie Mean Opinion Score (MOS) und argumentiert im Research Paper, dass automatisierte Scores Natürlichkeit über Sprachen und Kulturen hinweg nicht zuverlässig erfassen. Die Tests waren Blindhörvergleiche mit muttersprachlichen Annotatorinnen und Annotatoren in allen neun unterstützten Sprachen.

In Tests mit den jeweiligen Flaggschiff-Stimmen der Modelle wurde Voxtral TTS in 58,3% der Vergleiche bevorzugt. In Zero-Shot-Voice-Cloning-Tests, bei denen beide Modelle denselben kurzen Referenzclip und denselben Text bekamen, stieg die Rate auf 68,4%. Am größten war der Vorsprung bei Hindi (etwa 80% Präferenz) und Spanisch (etwa 88%). Niederländisch war eine Schwachstelle mit 49,4% – dort lag ElevenLabs Flash v2.5 knapp vorn.

Balkendiagramm von Mistral AI mit den Siegquoten von Voxtral TTS gegenüber ElevenLabs Flash v2.5 in Präferenztests zu Flaggschiff-Stimmen und Voice Cloning

Ergebnisse der Präferenztests aus Mistrals Auswertungen. Quelle: Mistral AI.

Mistral führte außerdem separate Emotion-Steering-Tests durch – diesmal im Vergleich zu ElevenLabs v3 und Gemini 2.5 Flash TTS statt Flash v2.5. Gegen ElevenLabs v3 lagen beide Modelle bei expliziter Steuerung ungefähr gleichauf; bei impliziter Steuerung hatte Voxtral einen kleinen Vorteil. Gegen Gemini 2.5 Flash TTS lag Gemini mit rund 65% vorne und war damit in diesem Vergleich besser. Diese Zahlen stammen – wie alle in diesem Abschnitt – aus Mistrals eigenem Paper.

Bei der Latenz berichtet Mistral 70 Millisekunden auf einer einzelnen NVIDIA H200. Die End-to-End-Time-to-First-Audio über die API liegt bei etwa 0,8 Sekunden mit PCM und ungefähr 1,5 bis 2 Sekunden mit MP3.

Voxtral TTS testen: Praxisbeispiele

Ich habe mich auf drei Szenarien konzentriert. Erstens, ob eine Preset-Stimme für allgemeine Narration taugt – insbesondere dort, wo TTS-Systeme typischerweise unnatürlich wirken. Zweitens, wie gut Voice Cloning eine reale Stimme aus einem kurzen Clip einfängt und wie stark die Cliplänge wirklich zählt. Drittens, wie stark das Ausgabeformat die Latenz in der Praxis beeinflusst.

Einrichtung

Installiere zuerst das offizielle Python-SDK und setze deinen API-Schlüssel. Du brauchst ein Mistral-Konto mit aktivierter Abrechnung.

pip install mistralai

Setze deinen API-Schlüssel als Umgebungsvariable:

export MISTRAL_API_KEY="your-api-key-here"

Beispiel 1: Einfache Spracherzeugung

Die Preset-Stimmen decken amerikanisches Englisch, britisches Englisch und französische Dialekte ab und sind ein solider Startpunkt für allgemeine Narration, bei der die Sprecheridentität egal ist.

Mistral Studio Playground für Voxtral TTS. Bild: Autor.

Hier ist die einfachste Variante mit einer Preset-Stimme:

import base64
import os
from pathlib import Path
from mistralai.client import Mistral

client = Mistral(api_key=os.getenv("MISTRAL_API_KEY"))

# Generate speech from text
response = client.audio.speech.complete(
    model="voxtral-mini-tts-2603",
    input="Welcome to Voxtral TTS. This is a basic speech generation test.",
    voice_id="your-voice-id",  # Use a voice ID from your account
    response_format="mp3",
)

# Save the audio file
Path("basic_output.mp3").write_bytes(base64.b64decode(response.audio_data))
print("Saved to basic_output.mp3")

Ein paar Hinweise. Die Methode heißt .complete(), nicht .create() – anders als du es vielleicht von OpenAIs TTS-API erwartest. Die Antwort enthält base64-kodiertes Audio in response.audio_data, das du vor dem Speichern dekodieren musst.

Als Erstes habe ich den Satzschluss-Rhythmus geprüft. Viele TTS-Modelle fallen am Punkt mechanisch ab – eine flache Kadenz, die sofort künstlich wirkt. Das war hier stabil. Überraschend waren die Kommapausen mitten im Satz: Günstigere Systeme setzen dort oft harte Stopps, hier blieb das Tempo flüssig. Die Aussprache war durchgehend korrekt, auch beim Wort „Voxtral“, wo ich Stolpern erwartet hätte.

Beispiel 2: Eigene Stimme erstellen

Wenn die Sprecheridentität zählt, kannst du über die API aus einem kurzen Referenzclip ein wiederverwendbares Stimmprofil erstellen.

import base64
import os
from pathlib import Path
from mistralai.client import Mistral

client = Mistral(api_key=os.getenv("MISTRAL_API_KEY"))

# Encode your reference audio as base64
sample_audio_b64 = base64.b64encode(
    Path("reference_voice.mp3").read_bytes()
).decode()

# Create a reusable voice profile
voice = client.audio.voices.create(
    name="my-custom-voice",
    sample_audio=sample_audio_b64,
    sample_filename="reference_voice.mp3",
    languages=["en"],
    gender="male",
)

print(f"Created voice with ID: {voice.id}")

# Generate speech using the cloned voice
response = client.audio.speech.complete(
    model="voxtral-mini-tts-2603",
    input="This sentence was generated using a cloned voice from just a few seconds of reference audio.",
    voice_id=voice.id,
    response_format="mp3",
)

Path("cloned_output.mp3").write_bytes(base64.b64decode(response.audio_data))
print("Saved to cloned_output.mp3")

Terminalausgabe, die die erfolgreiche Erstellung eines benutzerdefinierten Stimmprofils und die Generierung von geklonter Sprache mit dem Voxtral-TTS-Python-SDK zeigt

Terminalausgabe aus dem Voice-Cloning-Skript. Bild: Autor.

Mein erster Versuch nutzte einen Clip von etwa drei Sekunden. Das Ergebnis klang plausibel, aber generisch: der richtige Stimmumfang, doch ohne die spezifischen Färbungen, die eine Stimme erkennbar machen. Es hätte jede Person sein können. Mit einem Acht-Sekunden-Clip war der Unterschied deutlich: Das geklonte Ergebnis erfasste Akzent, Rhythmus und das leichte Anheben am Ende von Fragen, das der kürzere Clip komplett geglättet hatte.

Die geklonte Stimme klang nicht identisch, lag aber klar in derselben Lage mit ähnlichem Tempo. Aus meinen Tests ist ein Bereich von 8 bis 15 Sekunden ein gutes Mittel zwischen Aufwand und Qualität.

Beispiel 3: Formate im Latenzvergleich

Das Ausgabeformat beeinflusst, wie schnell der erste Audio-Chunk ankommt. Ich habe zwei Formate getestet.

import os
import time
from mistralai.client import Mistral

client = Mistral(api_key=os.getenv("MISTRAL_API_KEY"))

text = "This is a latency test comparing PCM and MP3 output formats from Voxtral TTS."
voice_id = "your-voice-id"


def time_to_first_chunk(response_format):
    start = time.time()
    stream = client.audio.speech.complete(
        model="voxtral-mini-tts-2603",
        input=text,
        voice_id=voice_id,
        response_format=response_format,
        stream=True,
    )
    for _ in stream:
        return time.time() - start  # return on first chunk


pcm_time = time_to_first_chunk("pcm")
mp3_time = time_to_first_chunk("mp3")

print(f"PCM latency: {pcm_time:.2f}s")
print(f"MP3 latency: {mp3_time:.2f}s")

Terminalausgabe von example_3_latency.py mit PCM-Latenz von 0,86 Sekunden und MP3-Latenz von 1,57 Sekunden, ein Unterschied von 0,71 Sekunden

Latenzvergleich der zwei Ausgabeformate. Bild: Autor.

Ich habe zuerst MP3 getestet, weil das für die meisten Audio-Workflows der Standard ist. Das Ergebnis war mit rund 1,5 bis 2 Sekunden funktional, für einen Voice Agent aber eine spürbare Pause, bevor Audio startet. Mistral nennt für MP3 bis zu 3 Sekunden; das habe ich nicht gesehen, aber die Netzwerklage variiert. PCM lag bei etwa 0,6 bis 0,9 Sekunden und deckt sich mit Mistrals ~0,8-Sekunden-Angabe.

Der Trade-off: PCM ist rohes, unkomprimiertes Audio, also muss deine Anwendung es vor der Standardwiedergabe verarbeiten oder konvertieren. Wenn du in eine Datei speicherst oder einen Standardplayer fütterst, ist MP3 einfacher. Wenn du den Audiostack direkt kontrollierst, etwa in einer Voice-Agent-Pipeline, ist PCM in Sachen Latenz die praktikablere Wahl.

Die API unterstützt fünf Ausgabeformate: MP3, WAV, PCM (raw float32), FLAC und Opus. Das Modell generiert bis zu zwei Minuten Audio in einem Durchlauf. Für längere Inhalte kümmert sich die API automatisch darum – Mistral nennt das „Smart Interleaving“: Der Text wird in Abschnitte geteilt, jeweils synthetisiert und ohne hörbare Lücken zusammengefügt.

Ich habe außerdem eine kleine Streamlit-App gebaut, die alle drei Beispiele in einer Oberfläche kombiniert. Hier ist ein kurzer Überblick, wie sie funktioniert:

Den gesamten Code aus diesem Tutorial findest du in diesem GitHub-Repository.

Voxtral-TTS-Preise

Voxtral TTS kostet $16 pro eine Million Zeichen über die Cloud-API. Es gibt eine kostenlose Stufe zum Testen, und die offenen Gewichte auf Hugging Face sind für nicht-kommerzielle Nutzung unter CC BY-NC 4.0 frei.

So sieht der Vergleich zu den wichtigsten Alternativen Anfang 2026 aus.

Anbieter

Modell

Preis pro 1 Mio. Zeichen

Offene Gewichte

Mistral

Voxtral TTS

$16

Ja (nicht kommerziell)

OpenAI

TTS-1

$15

Nein

OpenAI

TTS-1-HD

$30

Nein

Google Cloud

Neural2

$16

Nein

Google Cloud

Chirp 3 HD

$30

Nein

Amazon Polly

Neural

$16

Nein

Azure Speech

Neural TTS

$15–16

Nein

Deepgram

Aura-2

$30

Nein

ElevenLabs

Flash v2.5

~$25–110 (je nach Plan)

Nein

Voxtral TTS liegt preislich auf dem Niveau der mittleren Cloud-Anbieter, nicht der Budget-Kategorie. Mistral nennt es „einen Bruchteil von allem anderen am Markt“, was vor allem im Vergleich zu ElevenLabs zutrifft. Gegenüber OpenAI TTS-1, Google Neural2 und Amazon Polly ist der Preis im Wesentlichen gleich.

Das Alleinstellungsmerkmal sind die offenen Gewichte: Kein anderer Anbieter in der Tabelle bietet selbst hostbare Gewichte. Für nicht-kommerzielle Projekte heißt das: kostenlose lokale Bereitstellung über vLLM-Omni. Für Unternehmen bietet Mistral On-Premise-Optionen über die Forge-Plattform.

Der Kompromiss ist die Sprachabdeckung. Neun Sprachen gegenüber 70+ bei ElevenLabs. Wenn dein Use Case über die unterstützte Liste hinausgeht, ist diese Lücke relevant.

Fazit

In diesem Tutorial haben wir drei API-Beispiele umgesetzt: einfache Spracherzeugung, Voice Cloning und Latenz je Ausgabeformat. Aber da geht noch viel mehr.

Ob du einen Voice Agent baust, ein mehrsprachiges Vertonungstool oder eine Lösung, bei der Audiodaten in deiner eigenen Infrastruktur bleiben müssen – Voxtral TTS ist eine praktische Option für die Evaluierung. Vor dem Go-live gilt: Die Benchmarks sind selbst berichtet, die CC BY-NC-Lizenz schränkt kommerzielles Self-Hosting ein, und Self-Hosting setzt derzeit vLLM-Omni voraus. Die Mistral-Dokumentation und das Research Paper sind gute Startpunkte.


Khalid Abdelaty's photo
Author
Khalid Abdelaty
LinkedIn

Ich bin Dateningenieur und Community-Builder und arbeite mit Datenpipelines, Cloud- und KI-Tools. Außerdem schreibe ich praktische, super nützliche Tutorials für DataCamp und angehende Entwickler.

FAQs

Benötigt Voxtral TTS GPUs?

Für die Cloud-API nicht. GPU-Anforderungen gibt es nur, wenn du die offenen Gewichte selbst hostest. Die Standard-BF16-Gewichte sind etwa 8 GB groß und benötigen für die Inferenz mindestens 16 GB VRAM. Im Paper wird eine quantisierte Version um 3 GB erwähnt, die aber nicht der Standard-Release auf Hugging Face ist.

Kann ich die offenen Gewichte kommerziell nutzen?

Die Gewichte stehen unter CC BY-NC 4.0, also nur für nicht-kommerzielle Nutzung. Die Cloud-API hat diese Einschränkung nicht. Für kommerzielle On-Premise-Bereitstellungen bietet Mistral Enterprise-Lizenzen. Beachte, dass die Speech-to-Text-Modelle die großzügigere Apache-2.0-Lizenz haben – das ist eine andere Situation.

Wie geht Voxtral TTS mit nicht unterstützten Sprachen um?

Es gibt keinen Fehler. Laut Berichten führt nicht unterstützter Spracheingang eher zu schlechterer Ausgabe – ohne Warnung. Prüfe die Sprache bei dir, bevor du die Anfrage sendest.

Kann ich Voxtral TTS für Echtzeit-Voice-Agents nutzen?

Ja. Die Time-to-First-Audio liegt bei etwa 0,8 Sekunden mit PCM und 1,5 bis 2 Sekunden mit MP3 – basierend auf Mistrals Angaben und meinen Tests. Das ist für Voice Agents brauchbar, wobei PCM die bessere Wahl ist, wenn Reaktionsgeschwindigkeit zählt.

Variiert die Qualität beim Voice Cloning je nach Sprache?

Ja. Laut Mistrals eigenen Auswertungen lieferten Hindi und Spanisch die stärksten Ergebnisse, während Niederländisch die Schwachstelle war. Diese Daten sind selbst berichtet – also als Richtungshinweis verstehen –, aber relevant, wenn du für eine bestimmte Sprache baust.

Themen

Lerne KI mit DataCamp

Kurs

Künstliche Intelligenz verstehen

2 Std.
394.5K
Dieser Einführungskurs stellt grundlegende KI-Konzepte vor, zum Beispiel maschinelles Lernen, Deep Learning, NLP, generative KI und mehr.
Details anzeigenRight Arrow
Kurs starten
Mehr anzeigenRight Arrow
Verwandt

Tutorial

Python Switch Case Statement: Ein Leitfaden für Anfänger

Erforsche Pythons match-case: eine Anleitung zu seiner Syntax, Anwendungen in Data Science und ML sowie eine vergleichende Analyse mit dem traditionellen switch-case.
Matt Crabtree's photo

Matt Crabtree

Tutorial

Python JSON-Daten: Ein Leitfaden mit Beispielen

Lerne, wie man mit JSON in Python arbeitet, einschließlich Serialisierung, Deserialisierung, Formatierung, Leistungsoptimierung, Umgang mit APIs und Verständnis der Einschränkungen und Alternativen von JSON.
Moez Ali's photo

Moez Ali

Tutorial

Python-Listenfunktionen und -Methoden – Tutorial und Beispiele

Lerne die Funktionen und Methoden von Python-Listen kennen. Schau dir jetzt die Code-Beispiele für list() und andere Python-Funktionen und -Methoden an!
Abid Ali Awan's photo

Abid Ali Awan

Tutorial

Python-Tutorial zum Verknüpfen von Zeichenfolgen

Lerne verschiedene Methoden zum Verknüpfen von Zeichenfolgen in Python kennen, mit Beispielen, die jede Technik zeigen.
DataCamp Team's photo

DataCamp Team

Tutorial

Python-Lambda-Funktionen: Ein Leitfaden für Anfänger

Lerne mehr über Python-Lambda-Funktionen, wozu sie gut sind und wann man sie benutzt. Enthält praktische Beispiele und bewährte Methoden für eine effektive Umsetzung.
Mark Pedigo's photo

Mark Pedigo

Tutorial

Wie man Listen in Python aufteilt: Einfache Beispiele und fortgeschrittene Methoden

Lerne, wie du Python-Listen mit Techniken wie Slicing, List Comprehensions und itertools aufteilen kannst. Finde heraus, wann du welche Methode für die beste Datenverarbeitung nutzen solltest.
Allan Ouko's photo

Allan Ouko

Mehr anzeigenMehr anzeigen