Przejdź do nawigacji

Podpowiedzi kluczowych terminów

Ten przewodnik pokazuje, jak używać podpowiedzi kluczowych terminów z API Speech to Text.

Przewodnik krok po kroku · Zakłada, że ukończyłeś szybki start Speech to Text .

Omówienie

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

Podpowiedzi kluczowych terminów to funkcja, która pozwala wyróżniać słowa lub frazy, aby zwiększyć szansę, że model je zapisze. Jest to przydatne przy transkrypcji konkretnych słów lub zdań rzadko występujących w audio, takich jak nazwy produktów, imiona czy inne określone terminy. Kluczowe terminy są skuteczniejsze niż faworyzowane słowa kluczowe lub słowniki użytkownika oferowane przez inne modele, ponieważ model korzysta z kontekstu, by zdecydować, czy zapisać 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 też zawierać maksymalnie 5 słów.

Na przykład jeśli nazwa twojej firmy nie jest popularnym wyrażeniem albo ma nietypową pisownię czy wymowę, możesz użyć kluczowych terminów, aby model poprawnie ją zapisał. Posłuchaj poniższego audio:

Bez podpowiedzi kluczowych terminów model może zapisać to jako:

I work at eleven labs.

W tym przypadku używa niewłaściwego zapisu nazwy firmy. Dzięki podpowiedziom kluczowych terminów możesz zapewnić poprawną pisownię i styl:

I work at ElevenLabs.

Kontekst

Model potrafi wykorzystać kontekst, aby określić, czy termin powinien zostać zapisany. Po podaniu kluczowego terminu „ElevenLabs” powyższe audio zostanie transkrybowane zgodnie z oczekiwaniami, ale model nadal poprawnie przetranskrybuje poniższy przykład na podstawie kontekstu:

Co daje następującą transkrypcję:

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

Transkrypcja batch

Podpowiedzi kluczowych terminów są 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)

Przesyłanie strumieniowe w czasie rzeczywistym

Podpowiedzi kluczowych terminów są też dostępne w API WebSocket 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 API WebSocket 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