Skip to navigation

Keyterm-prompting

In deze handleiding lees je hoe je keyterm-prompting gebruikt met de Speech to Text API.

Stapsgewijze handleiding · Hierbij wordt ervan uitgegaan dat je de korte introductie voor Speech to Text hebt voltooid.

Overzicht

Keyterm prompting is beschikbaar met Scribe v2, Scribe v2 Medical (batch) en Scribe v2 Realtime, en brengt extra kosten met zich mee. Bekijk de API-prijspagina voor gedetailleerde prijsinformatie.

Keyterm prompting is een functie waarmee je woorden of zinnen kunt uitlichten om het model te sturen deze te transcriberen. Dit is handig voor het transcriberen van specifieke woorden of zinnen die niet vaak in de audio voorkomen, zoals productnamen, namen of andere specifieke termen. Keyterms zijn krachtiger dan bevooroordeelde keywords of aangepaste woordenlijsten die andere modellen bieden, omdat ze context gebruiken om te bepalen of die term moet worden getranscribeerd.

Batch (Scribe v2 / Scribe v2 Medical)Realtime (Scribe v2 Realtime)
Maximaal aantal keyterms100050
Maximaal aantal tekens per keyterm5020

Als je bedrijfsnaam bijvoorbeeld geen veelgebruikte term is of een unieke spelling of uitspraak heeft, kun je keyterms gebruiken om ervoor te zorgen dat het model deze correct transcribeert. Neem de volgende audio:

Zonder keyterm prompting kan het model het bovenstaande als volgt transcriberen:

I work at eleven labs.

Hierbij wordt de verkeerde stijl voor de bedrijfsnaam gebruikt. Met keyterm prompting kun je ervoor zorgen dat het model het bovenstaande met de juiste spelling en stijl transcribeert:

I work at ElevenLabs.

Context

Het model kan context gebruiken om te bepalen of een term moet worden getranscribeerd. Wanneer je de keyterm “ElevenLabs” opgeeft, wordt de bovenstaande audio naar verwachting getranscribeerd, maar het model kan op basis van de context nog steeds het volgende correct transcriberen:

Dit levert het volgende transcript op:

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

Batchtranscriptie

Keyterm prompting is geïntegreerd in de batch-Speech to Text-API door de parameter keyterms door te geven aan de methode convert.

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)

Realtime streaming

Keyterm prompting is ook beschikbaar voor de realtime Speech to Text WebSocket-API. Geef de parameter keyterms door tijdens het verbinden.

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

Wanneer je de WebSocket-API rechtstreeks gebruikt, geef je keyterms door als queryparameters:

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

Volgende stappen