Zur Navigation springen

Keyterm-Prompting

In diesem Leitfaden erfahren Sie, wie Sie Keyterm-Prompting mit der Speech-to-Text-API verwenden.

Anleitung · Setzt voraus, dass Sie den Speech-to-Text- Schnellstart abgeschlossen haben.

Überblick

Keyterm-Prompting ist mit Scribe v2, Scribe v2 Medical (Batch) und Scribe v2 Realtime verfügbar und verursacht zusätzliche Kosten. Detaillierte Preisinformationen finden Sie auf der API-Preisseite.

Keyterm-Prompting ist eine Funktion, mit der Sie Wörter oder Ausdrücke hervorheben können, damit das Modell diese bevorzugt transkribiert. Das ist hilfreich für bestimmte Wörter oder Sätze, die im Audio nicht häufig vorkommen, etwa Produktnamen, Namen oder andere spezifische Begriffe. Keyterms sind leistungsfähiger als gewichtete Keywords oder benutzerdefinierte Vokabulare anderer Modelle, da sie den Kontext nutzen, um zu entscheiden, ob ein Begriff transkribiert werden soll.

Batch (Scribe v2 / Scribe v2 Medical)Echtzeit (Scribe v2 Realtime)
Max. Keyterms100050
Max. Zeichen pro Keyterm5020

Bei der Batch-Transkription kann jeder Keyterm zudem aus höchstens 5 Wörtern bestehen.

Wenn Ihr Firmenname beispielsweise keine gängige Formulierung ist oder eine einzigartige Schreibweise oder Aussprache hat, können Sie Keyterms verwenden, damit das Modell ihn korrekt transkribiert. Sehen Sie sich folgendes Audio an:

Ohne Keyterm-Prompting könnte das Modell den obigen Inhalt wie folgt transkribieren:

I work at eleven labs.

Dabei wird der falsche Stil für den Firmennamen verwendet. Mit Keyterm-Prompting können Sie sicherstellen, dass das Modell den obigen Inhalt mit der richtigen Schreibweise und dem richtigen Stil transkribiert:

I work at ElevenLabs.

Kontext

Das Modell kann anhand des Kontexts bestimmen, ob ein Begriff transkribiert werden soll. Wenn Sie den Keyterm „ElevenLabs“ angeben, wird das obige Audio wie erwartet transkribiert. Dennoch kann das Modell anhand des Kontexts auch Folgendes korrekt transkribieren:

Daraus ergibt sich folgende Transkription:

I've worked at many labs. In fact I've worked at eleven labs.

Batch-Transkription

Keyterm-Prompting wird in die Batch-Speech-to-Text-API integriert, indem Sie den Parameter keyterms an die Methode convert übergeben.

import os
from dotenv import load_dotenv
from io import BytesIO
import requests
from elevenlabs.client import ElevenLabs
load_dotenv()
elevenlabs = ElevenLabs(
api_key=os.getenv("ELEVENLABS_API_KEY"),
)
audio_url = (
"https://storage.googleapis.com/eleven-public-cdn/documentation_assets/audio/stt-keyterm-prompting.mp3"
)
response = requests.get(audio_url)
audio_data = BytesIO(response.content)
transcription = elevenlabs.speech_to_text.convert(
file=audio_data,
model_id="scribe_v2", # Model to use
# Keyterms to prompt the model with.
# Up to 1000 keyterms can be provided, with a maximum length of 50 characters each
keyterms=["ElevenLabs"],
)
print(transcription)

Echtzeit-Streaming

Keyterm-Prompting ist auch für die Echtzeit-Speech-to-Text-WebSocket-API verfügbar. Übergeben Sie beim Herstellen der Verbindung den Parameter keyterms.

connection = await elevenlabs.speech_to_text.realtime.connect(RealtimeUrlOptions(
model_id="scribe_v2_realtime",
keyterms=["ElevenLabs"],
))

Wenn Sie die WebSocket-API direkt verwenden, übergeben Sie Keyterms als Abfrageparameter:

wss://api.elevenlabs.io/v1/speech-to-text/realtime?model_id=scribe_v2_realtime&keyterms=ElevenLabs&keyterms=AnotherTerm

Nächste Schritte