So funktioniert Scribe v2 Realtime

Wie Scribe v2 Realtime eine Transkription mit niedriger Latenz für Live-Übersetzungen und Sprach-Anwendungen ermöglicht

Scribe v2 Realtime

Scribe v2 Realtime ist ein extrem schnelles Speech to Text-Modell, das für Live-Transkriptionen eingesetzt werden kann. Die Kombination aus Geschwindigkeit und Qualität ermöglicht Anwendungsfälle, die bisher nicht möglich waren.

Zum Beispiel konnten wir mit Scribe v2 Realtime und der Chrome Translator API diesen Echtzeit-Sprachübersetzer entwickeln.

Live transcription on the left and committed transcripts on the right in a list

Wenn Sie eine Schritt-für-Schritt-Anleitung zu diesem Demo möchten, finden Sie diese hier. In diesem Leitfaden geht es um das grundlegende Verständnis von Scribe v2 Realtime und wie es funktioniert.

Das Modell

ElevenLabs bietet zwei Modelle zur Transkription von Audio an: Scribe v2 und Scribe v2 Realtime.

Optimized For
Scribe v2
Accuracy
Scribe v2 Realtime
Ultra low latency
Use Case
Scribe v2
Batch transcription, subtitling, and captioning at scale.
Scribe v2 Realtime
Voice agents, meeting notetakers, and other live applications.

Scribe v2 eignet sich gut für asynchrone Transkriptionen, während Scribe v2 Realtime verwendet wird, wenn die Transkription live erfolgen muss.

Für eine Live-Sprachübersetzungsanwendung ist Scribe v2 Realtime die passende Wahl.

Die API

Um dieses Modell zu nutzen, verwenden Sie die Speech to Text API. Es sind zwei Schritte erforderlich, um zu starten:

  1. Scribe-Instanz initialisieren
  2. Mit der API verbinden

Je nachdem, wo Sie die API aufrufen, müssen Sie sie unterschiedlich initialisieren. Bei einem serverseitigen Aufruf können Sie direkt mit dem API-Schlüssel initialisieren und diese Instanz dann für die Verbindung zu Scribe v2 Realtime nutzen.

Aber einen API-Schlüssel auf der Client-Seite offenzulegen, ist ein großes Sicherheitsrisiko. Wenn Sie also clientseitig streamen, müssen Sie mit einem Einmal-Token initialisieren.

Dieses Token muss serverseitig generiert werden, um den API-Schlüssel zu schützen.

Da wir eine React-Anwendung bauen, nutzen wir das Token-Verfahren. Dieses Token wird während der Verbindungsphase übergeben, sodass das Erstellen einer Scribe-Instanz sehr einfach ist.

1import { useScribe } from "@elevenlabs/react";
2
3function MyComponent() {
4 const scribe = useScribe({
5 modelId: "scribe_v2_realtime",
6 });
7
8 //...
9}

Verbindung zu Scribe v2 Realtime herstellen

Nach der passenden Initialisierung können Sie sich mit Scribe v2 Realtime verbinden. Für das React-Sprachübersetzungsprojekt haben wir clientseitiges Streaming genutzt und daher jedes Mal ein Einmal-Token vom Backend benötigt. Dieses Token muss bei jeder Verbindung zur API generiert und übergeben werden.

1const handleStart = async () => {
2 const token = await fetchTokenFromServer();
3
4 await scribe.connect({
5 token,
6 microphone: {
7 echoCancellation: true,
8 noiseSuppression: true,
9 },
10 });
11};


Commit-Strategie

Bei der Arbeit mit Scribe v2 Realtime gibt es zwei Arten von Transkripten: vorläufige und bestätigte.

Die vorläufigen Transkripte sind die „Live-Transkripte“. Diese Transkription erfolgt über Websocket und wird während des Sprechens zurückgegeben. Wenn Sie also sagen „Die Katze ist ...“, sehen Sie diese Wörter in Echtzeit.

Die andere Art ist das bestätigte Transkript. Transkriptionen werden in Segmenten verarbeitet. Wann und wie Sie Ihre Transkripte bestätigen, bestimmt die Segmentierung. Dafür müssen Sie eine Commit-Strategie festlegen.

Es gibt zwei Optionen für Commit-Strategien. Die erste ist manuell – Sie entscheiden selbst, wann Transkripte bestätigt werden. Am besten geschieht das während Sprechpausen oder an logischen Punkten, etwa bei Sprecherwechsel.

Die andere Option ist, Scribe v2 Realtime die Segmentierung automatisch mit Voice Activity Detection (VAD) überlassen. Dabei werden Sprach- und Pausensegmente erkannt. Wird ein Pausenschwellenwert erreicht, bestätigt die Engine das Segment automatisch.

Warum brauchen Sie überhaupt eine Commit-Strategie?

Während Sie sprechen, transkribiert Scribe v2 Realtime jedes Wort. Wenn Sie zum Beispiel „I scream...“ sagen, kann das als „Ice cream...“ erkannt werden. Mit dem vollständigen Kontext des Segments „I scream every time I see a spider in the bathroom“ ist das Ergebnis jedoch genauer.

Die vorläufigen Transkripte können also in Echtzeit angezeigt werden, während die bestätigten Transkripte eine genauere Wiedergabe des Gesprächsverlaufs bieten.

Transkripte anzeigen

Sobald Sie mit Scribe v2 Realtime verbunden sind, läuft die Transkription. Sie greifen über die Eigenschaften partialTranscript und committedTranscripts auf die Transkripte zu.

1<div>
2 <button onClick={handleStart} disabled={scribe.isConnected}>
3 Start Recording
4 </button>
5 <button onClick={scribe.disconnect} disabled={!scribe.isConnected}>
6 Stop
7 </button>
8
9 {scribe.partialTranscript && <p>Live: {scribe.partialTranscript}</p>}
10
11 <div>
12 {scribe.committedTranscripts.map((t) => (
13 <p key={t.id}>{t.text}</p>
14 ))}
15 </div>
16</div>

Das partialTranscript ist das Echtzeit-Transkript des aktuellen Segments. Das committedTranscript ist der Gesprächsverlauf – eine Liste der bestätigten Segmente während der Verbindung zu Scribe v2 Realtime.

Mit KI übersetzen

Das ist alles, was Sie brauchen, um Echtzeit-Transkripte Ihrer Gespräche zu erhalten. Sie können die Anwendung jetzt mit einer passenden Oberfläche erweitern oder weitere Funktionen wie Live-Übersetzung hinzufügen.

Um den Echtzeit-Sprachübersetzer aus dem Demo zu erstellen, übergeben Sie die Transkripte an die Chrome KI Translator API und zeigen das Ergebnis in Echtzeit an.

Jetzt starten

Danke fürs Lesen! Registrieren Sie sich bei ElevenLabs und entwickeln Sie Ihre Anwendungen!

Entdecken Sie Artikel des ElevenLabs-Teams

ElevenLabs

AI-Audioinhalte in höchster Qualität generieren

Kostenlos registrieren

Haben Sie bereits ein Konto? Anmelden