Python-Tutorial zur Spracherkennung: Von der Audiodatei zum Transkript
- Verfasst von
- Jack Limebear
- Veröffentlicht
- Zuletzt aktualisiert
AnhörenArtikel anhören
Spracherkennung in eine Python-App zu integrieren, war früher umständlich. Python-Entwickler mussten den Transkriptionsprozess selbst programmieren – von der Audiovorverarbeitung über die Merkmalsextraktion bis zur Modellintegration. Zudem hatten Engineering-Teams mit Audioverarbeitung auf niedriger Ebene, unzureichender Transkriptionsqualität und Verzögerungen zwischen gesprochenen Wörtern und Live-Untertiteln zu kämpfen.
Fortschritte bei Audiomodellen und SDKs für Spracherkennung ändern das.
In diesem Python-Tutorial zur Spracherkennung erfahren Sie, wie Sie die Audiomodelle von ElevenLabs für Speech to Text in Ihr Python-Projekt integrieren, um transkriptionsfähige Apps für den kommerziellen Einsatz zu entwickeln.
Zusammenfassung
- Kommerzielle Speech-to-Text-Modelle bieten Funktionen wie Sprecherdiarisierung, Zeitstempel auf Wortebene und Keyterm-Prompting, die einfachen Modellen zur Spracherkennung fehlen.
- ElevenAPI erweitert Ihren Python-Code mit Scribe v2 und Scribe v2 Realtime um Funktionen zur Spracherkennung.
- Entwickler können ElevenLabs Skills auf einer KI-Coding-Plattform installieren, um auf Basis der offiziellen API-Dokumentation präzisen Python-Code zu erzeugen.
- Sie können die ElevenLabs API kostenlos testen, bevor Sie für die kommerzielle Entwicklung ein kostenpflichtiges Abonnement abschließen.

Das behandelt dieses Python-Tutorial zur Spracherkennung
Dieses Tutorial behandelt Voraussetzungen, API-Integration und erweiterte Transkriptionsfunktionen. Damit entwickeln Sie eine Python-App zur Spracherkennung für Enterprise-Anwendungsfälle.
Die Spracherkennung hat sich in den letzten Jahren stark weiterentwickelt. Große Sprachmodelle und neuronale Deep-Learning-Netzwerke haben verändert, wie Python-Entwickler Transkriptions-SDKs einsetzen. Viele Tutorials zeigen zwar, wie Sie einfache Transkriptions-Apps entwickeln, aber nur wenige behandeln die Funktionen, die ein kommerziell einsetzbares Produkt benötigt.
Dieses Tutorial schließt diese Lücke.
Viele Enterprise-Lösungen für Transkription benötigen beispielsweise diese Funktionen:
- Sprecherdiarisierung: Die Fähigkeit, einzelne Sprecher im Transkript zu identifizieren und zu trennen.
- Zeitstempel: Die präzise Kennzeichnung jedes Worts mit den relativen Stunden, Minuten und Sekunden, in denen es gesprochen wird.
- Mehrsprachige Unterstützung: Erfasst Sprache in verschiedenen Sprachen innerhalb einer einzelnen Aufnahme oder eines Livestreams bei niedrigen Wortfehlerraten.
- Keyterm-Prompting: Zuordnung spezieller Wörter wie Marken, Produktnamen und Fachbegriffe, um fehlerhafte Transkriptionen zu vermeiden.
- Transkription mit geringer Latenz: Speech-to-Text-Antworten in Millisekunden für Echtzeit-Transkriptions-Apps.
Hinweis: Dieses Tutorial geht über die Erstellung einfacher persönlicher Skripte für Hobby- oder Privatprojekte hinaus. Es enthält keine Anwendungslogik, die auf der Integration der Speech-to-Text-API aufbaut, da diese je nach Unternehmen unterschiedlich ist.

Voraussetzungen für die Python-Integration zur Spracherkennung
Dieses Tutorial basiert auf ElevenAPI, einer produktionsreifen API von ElevenLabs, die die Interaktion mit Sprachmodellen in Ihrem Code vereinfacht. Mit ElevenAPI erhalten Sie Zugriff auf Scribe v2 und Scribe v2 Realtime, unsere führenden Sprachmodelle für Batch- und Live-Transkription.
Statt direkt auf die Speech-to-Text-Modelle von ElevenLabs zuzugreifen, übergeben Sie Audioaufnahmen, Livestreams und Argumente über API-Aufrufe. Das Audiomodell wandelt die Audiodaten dann in Text um. Nach Abschluss erhalten Sie die Transkripte im Code oder über einen Webhook.
Folgen Sie zur Vorbereitung diesen Schritten.
- Bei ElevenLabs registrieren.
- Erstellen Sie Ihren API-Schlüssel.
- Nehmen Sie ein Gespräch auf und laden Sie es in einen öffentlich zugänglichen Speicher hoch.
Wenn Sie bereit sind, fahren Sie mit dem nächsten Abschnitt fort.
Umgebung einrichten
Bevor Sie ElevenLabs-Modelle integrieren, richten Sie Ihre Python-Umgebung ein und sichern Sie Ihren ElevenLabs API-Schlüssel. Wie alle API-Schlüssel sollten Sie ihn als Umgebungsvariable (verwaltetes Secret) in der Datei .env speichern.
Bei einem API-Aufruf übergeben Sie die Umgebungsvariable. So verhindern Sie, dass der API-Schlüssel bei API-Anfragen über ein öffentliches Netzwerk versehentlich offengelegt wird.
Führen Sie anschließend einen Bash-Befehl aus, um elevenlabs, das ElevenLabs SDK, in Ihrer Python-Umgebung zu installieren. Mit dem SDK können Sie auf verschiedene Sprachmodelle zugreifen. In diesem Fall wählen Sie zwischen Scribe v2 und Scribe v2 Realtime.
Sie müssen außerdem python-dotenv installieren. Damit kann Ihr Python-Code auf Umgebungsvariablen zugreifen, die in der Datei .env gespeichert sind.
Ihr erstes Transkriptionsskript schreiben
Nach dem Einrichten der Python-Umgebung können Sie die Audiodatei mit ElevenLabs Scribe v2 transkribieren.
ElevenLabs Scribe v2 ist ein führendes Modell zur Spracherkennung, mit dem Sie Audiodateien im großen Maßstab transkribieren können. Es erkennt Phoneme auch bei starken Hintergrundgeräuschen mit hoher Genauigkeit. Um Audio zu transkribieren, senden Sie die Aufnahme über die ElevenLabs API an das Modell und rufen das fertige Transkript ab.
Unten finden Sie ein Python-Codebeispiel, das eine Audiodatei in ein Transkript mit Zeitstempeln und Sprecherdiarisierung umwandelt.
Der Code lädt die erforderlichen Bibliotheken mit den benötigten Funktionen. Außerdem lädt er die von Ihnen deklarierten Umgebungsvariablen in die Programmumgebung.
Anschließend erstellt er einen ElevenLabs-Client mit dem in der Umgebungsvariable gespeicherten API-Schlüssel. Danach lädt er die Audiodatei herunter und wandelt sie in Binärdaten um.
Sobald Sie die Rohdaten des Audios haben, senden Sie sie zusammen mit mehreren Parametern an die ElevenLabs API.
- model_id gibt das Speech-to-Text-Modell an, das Sie verwenden möchten. Da Sie eine Audiodatei übergeben, ist Scribe v2 die beste Option.
- tag_audio_events ermöglicht es Ihnen, nichtsprachliche Segmente wie Lachen, Schritte und andere Hintergrundgeräusche zu markieren.
- language_code steht für die Sprache der Gespräche in der Aufnahmedatei. Bei None erkennt das Modell die Sprache automatisch.
- diarize gibt an ob das Modell verschiedene Sprecher anhand ihrer Stimmmerkmale erkennen und trennen soll.
Führen Sie den Code abschließend aus. Das transkribierte Audio wird im Terminal angezeigt.

Streaming-Spracherkennung in Python
Das obige Beispiel behandelt die Batch-Transkription, die sich für vorab aufgezeichnete Dateien eignet. ElevenLabs bietet jedoch auch APIs, mit denen Sie Streaming-Spracherkennung entwickeln können. Anders als bei der Batch-Verarbeitung erfolgt die Spracherkennung hier in Echtzeit, sodass Transkripte während des Gesprächs entstehen.
Dazu verbinden Sie Ihren Python-Code über die WebSocket API mit dem Modell Scribe v2 Realtime.
Scribe v2 Realtime bietet eine Streaming-orientierte Architektur mit einer Transkriptionslatenz von unter 150 ms. Sie verwenden Scribe v2 Realtime für Anwendungen wie Meeting-Agents, Barrierefreiheits-Tools und sprachgesteuerte Automatisierung. Das Modell gibt während der Verarbeitung des Audiostreams ein Teiltranskript zurück. Das endgültige Transkript gibt es erst zurück, wenn der Code ein Audiosegment automatisch oder manuell festschreibt.
Je nach Audioquelle und Anwendungstyp integrieren Sie die Spracherkennung mit der ElevenLabs API server- oder clientseitig.
- Clientseitiges Streaming ermöglicht Streaming direkt vom Mikrofon oder über manuell segmentierte Audiostreams.
- Serverseitiges Streaming leitet Audiodaten von einer URL oder einer Audioquelle an das Sprachmodell weiter.
Sowohl client- als auch serverseitiges Streaming ermöglichen einen asynchronen Workflow. Statt die API fortlaufend abzufragen, verwenden Sie WebSockets zur Verarbeitung der Ergebnisse. In Ihrem Code müssen Sie Handler erstellen, die Teiltranskripte und fertige Transkripte empfangen.

Weiterführend: Diarisierung, Zeitstempel und benutzerdefiniertes Vokabular
Neben automatischer Spracherkennung unterstützen die Speech-to-Text-Modelle von ElevenLabs Diarisierung, Zeitstempel und benutzerdefiniertes Vokabular.
- Diarisierung: Nur die Batch-Transkription unterstützt Sprecherdiarisierung. Aktivieren Sie die Diarisierung, indem Sie das Argument diarize festlegen. Die Mehrkanaltranskription, ein Modus innerhalb der Batch-Transkription, unterstützt jedoch keine Diarisierung.
- Zeitstempel: Bei der Batch-Transkription können Sie zwischen Zeitstempeln auf Wort- oder Zeichenebene wählen. Legen Sie dazu bei Verwendung der Methode convert den Parameter timestamps_granularity fest.
- Benutzerdefiniertes Vokabular: Sowohl Echtzeit- als auch Batch-Transkription unterstützen Keyterm-Prompting. Diese Funktion lenkt das Modell darauf, bestimmte Keyterms aus einer von Ihnen bereitgestellten Liste zu transkribieren. Scribe v2 Realtime unterstützt bis zu 50 Keyterms, Scribe v2 bis zu 1.000 Keyterms.
Den ElevenLabs Skill in KI-Coding-Assistenten verwenden
KI-Coding-Assistenten beschleunigen die Entwicklung. Wenn Sie Tools wie Claude Code, Cursor, Codex oder ähnliche KI-Coding-Tools verwenden, können Sie ElevenLabs Skills in Ihrer Coding-Umgebung hinzufügen.
Sie müssen dafür nur diesen Befehl im Terminal Ihrer Plattform ausführen:
Der KI-Coding-Agent lädt den Speech-to-Text-Skill aus dem GitHub-Repository von ElevenLabs herunter und installiert ihn im lokalen Skill-Verzeichnis. So können Sie Python-Code für Spracherkennung anhand der offiziellen Dokumentation von ElevenLabs automatisch erzeugen, statt die gesamte API-Integration von Grund auf zu schreiben.
Nach der Installation können Sie Python-Code für Spracherkennung erzeugen, indem Sie seine Funktion einfach umgangssprachlich beschreiben. Auf Basis dieser Beschreibung erzeugt der Coding-Assistent automatisch Code mit dem Speech-to-Text-Skill, dem richtigen Modell und den passenden Parametern.
Wenn Sie beispielsweise in Codex „Erstelle ein Python-Codebeispiel für Spracherkennung, das mit Diarisierung und Zeitstempeln auf Wortebene transkribiert“ eingeben, erhalten Sie ein ähnliches Beispiel wie unten.

Mit ElevenAPI für Spracherkennung starten
ElevenAPI ermöglicht Ihnen den Zugriff auf fortschrittliche Speech-to-Text-Modelle, um Apps zur Spracherkennung in Python zu entwickeln.
Mit ElevenAPI vermeiden Sie es, Integrationscode von Grund auf zu schreiben, was Produktinnovationen verzögert. Stattdessen verwenden Sie SDKs, die Speech-to-Text-Dienste mit kommerziellen Funktionen wie Keyterm-Prompting, Diarisierung und Zeitstempeln bereitstellen.
Holen Sie sich jetzt Ihren ElevenLabs API-Schlüssel und lesen Sie unsere offizielle Dokumentation, um zu erfahren, wie die API funktioniert.

