Przejdź do nawigacji

Podpowiadanie kluczowych terminów

Ten przewodnik pokazuje, jak korzystać z podpowiadania kluczowych terminów w API Speech to Text.

Przewodnik krok po kroku · Zakłada, że masz za sobą szybki start Speech to Text .

Przegląd

Podpowiadanie kluczowych terminów jest dostępne w Scribe v2, Scribe v2 Medical (batch) i Scribe v2 Realtime oraz jest dodatkowo płatne. Szczegółowe informacje znajdziesz na stronie cen API.

Podpowiadanie kluczowych terminów pozwala wyróżniać słowa lub frazy, aby zwiększyć szansę, że model je transkrybuje. To przydatne przy transkrypcji rzadko występujących w nagraniu słów lub zdań, takich jak nazwy produktów, imiona czy inne konkretne terminy. Kluczowe terminy są skuteczniejsze niż stronnicze słowa kluczowe lub własne słowniki oferowane przez inne modele, ponieważ model korzysta z kontekstu, aby zdecydować, czy transkrybować dany termin.

Batch (Scribe v2 / Scribe v2 Medical)Realtime (Scribe v2 Realtime)
Maks. liczba kluczowych terminów100050
Maks. liczba znaków na termin5020

W transkrypcji batch każdy kluczowy termin może zawierać maksymalnie 5 słów.

Na przykład jeśli nazwa twojej firmy nie jest popularną frazą albo ma nietypową pisownię lub wymowę, możesz użyć kluczowych terminów, aby model poprawnie ją transkrybował. Posłuchaj tego nagrania:

Bez podpowiadania kluczowych terminów model może transkrybować je tak:

I work at eleven labs.

Używa to niewłaściwego stylu nazwy firmy. Dzięki podpowiadaniu kluczowych terminów możesz dopilnować, aby model transkrybował nagranie z poprawną pisownią i stylem:

I work at ElevenLabs.

Kontekst

Model może używać kontekstu, aby zdecydować, czy dany termin powinien zostać transkrybowany. Po podaniu kluczowego terminu „ElevenLabs” powyższe nagranie jest transkrybowane zgodnie z oczekiwaniami, ale model nadal poprawnie transkrybuje poniższy przykład na podstawie kontekstu:

Wynikiem jest następująca transkrypcja:

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

Transkrypcja batch

Podpowiadanie kluczowych terminów jest zintegrowane z API Speech to Text w trybie batch — przekaż parametr keyterms do metody 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)

Strumieniowanie w czasie rzeczywistym

Podpowiadanie kluczowych terminów jest też dostępne w WebSocket API Speech to Text w czasie rzeczywistym. Przekaż parametr keyterms podczas łączenia.

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

Gdy używasz WebSocket API bezpośrednio, przekaż kluczowe terminy jako parametry zapytania:

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

Kolejne kroki