Hoppa till navigering

Promptning med nyckeltermer

Den här guiden visar hur du använder promptning med nyckeltermer med Speech to Text API.

Guide · Förutsätter att du har slutfört snabbstarten för Speech to Text .

Översikt

Nyckeltermsstyrning är tillgängligt med Scribe v2, Scribe v2 Medical (batch) och Scribe v2 Realtime och medför en extra kostnad. Se prissidan för API:t för detaljerad prisinformation.

Nyckeltermsstyrning är en funktion som låter dig markera ord eller fraser för att styra modellen mot att transkribera dem. Det är användbart för att transkribera specifika ord eller meningar som inte är vanliga i ljudet, exempelvis produktnamn, namn eller andra specifika termer. Nyckeltermer är kraftfullare än vinklade nyckelord eller anpassade vokabulärer som andra modeller erbjuder, eftersom funktionen använder sammanhanget för att avgöra om termen ska transkriberas eller inte.

Batch (Scribe v2 / Scribe v2 Medical)Realtid (Scribe v2 Realtime)
Maximalt antal nyckeltermer100050
Maximalt antal tecken per nyckelterm5020

Om ditt företagsnamn till exempel inte är en vanlig fras eller har en unik stavning eller ett unikt uttal kan du använda nyckeltermer för att säkerställa att modellen transkriberar korrekt. Ta följande ljud:

Utan nyckeltermsstyrning kan modellen transkribera ovanstående så här:

I work at eleven labs.

Det använder fel stil för företagsnamnet. Med nyckeltermsstyrning kan du säkerställa att modellen transkriberar ovanstående med rätt stavning och stil:

I work at ElevenLabs.

Sammanhang

Modellen kan använda sammanhanget för att avgöra om en term ska transkriberas eller inte. När du anger nyckeltermen “ElevenLabs” transkriberas ovanstående ljud som förväntat, men modellen kan fortfarande transkribera följande korrekt utifrån sammanhanget:

Vilket ger följande transkribering:

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

Batchtranskribering

Nyckeltermsstyrning är integrerad i batch-API:t för Speech to Text genom att skicka parametern keyterms till metoden 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)

Realtidsstreaming

Nyckeltermsstyrning är också tillgängligt för WebSocket API:t för Speech to Text i realtid. Skicka parametern keyterms när du ansluter.

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

När du använder WebSocket API:t direkt skickar du nyckeltermer som frågeparametrar:

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

Nästa steg