Vercel AI SDK
Użyj dostawcy ElevenLabs w Vercel AI SDK, aby transkrybować mowę z plików audio i wideo.
Przewodnik krok po kroku · Zakłada, że masz już za sobą krótki przewodnik po Speech to Text i skonfigurowany projekt Vercel.
Dostawca ElevenLabs
Dostawca ElevenLabs obsługuje API transkrypcji ElevenLabs.
Konfiguracja
Dostawca ElevenLabs jest dostępny w module @ai-sdk/elevenlabs. Możesz go zainstalować przez npm:
Instancja dostawcy
Możesz zaimportować domyślną instancję dostawcy elevenlabs z @ai-sdk/elevenlabs:
Jeśli potrzebujesz własnej konfiguracji, możesz zaimportować createElevenLabs z @ai-sdk/elevenlabs i utworzyć instancję dostawcy z własnymi ustawieniami:
Do dostosowania instancji dostawcy ElevenLabs możesz użyć tych opcjonalnych ustawień:
-
apiKey string
Klucz API wysyłany w nagłówku
Authorization. Domyślnie używana jest zmienna środowiskowaELEVENLABS_API_KEY. -
headers Record<string,string>
Własne nagłówki do uwzględnienia w żądaniach.
-
fetch (input: RequestInfo, init?: RequestInit) => Promise<Response>
Własna implementacja fetch. Domyślnie używana jest globalna funkcja
fetch. Możesz użyć jej jako middleware do przechwytywania żądań lub zapewnić własną implementację fetch, na przykład do testów.
Modele transkrypcji
Możesz tworzyć modele wywołujące API transkrypcji ElevenLabs
za pomocą metody fabrycznej .transcription().
Pierwszym argumentem jest identyfikator modelu, np. scribe_v3.
Możesz też przekazać dodatkowe opcje specyficzne dla dostawcy przez argument providerOptions. Na przykład podanie języka wejściowego w formacie ISO-639-1 (np. en) może czasem poprawić jakość transkrypcji, jeśli znasz go wcześniej.
Dostępne są następujące opcje dostawcy:
-
languageCode string
Kod języka ISO-639-1 lub ISO-639-3 odpowiadający językowi pliku audio. Może czasem poprawić jakość transkrypcji, jeśli znasz go wcześniej. Domyślnie
null, wtedy język jest wykrywany automatycznie. -
tagAudioEvents boolean
Określa, czy oznaczać w transkrypcji zdarzenia audio, takie jak (śmiech), (kroki) itp. Domyślnie
true. -
numSpeakers integer
Maksymalna liczba osób mówiących w przesłanym pliku. Może pomóc przewidzieć, kto mówi w danym momencie. Maksymalna liczba mówców, którą można przewidzieć, to 32. Domyślnie
null, wtedy liczba mówców jest ustawiana na maksymalną wartość obsługiwaną przez model. -
timestampsGranularity enum
Szczegółowość znaczników czasu w transkrypcji. Domyślnie
'word'. Dozwolone wartości:'none','word','character'. -
diarize boolean
Określa, czy oznaczać, który mówca aktualnie mówi w przesłanym pliku. Domyślnie
true. -
fileFormat enum
Format wejściowego audio. Domyślnie
'other'. Dozwolone wartości:'pcm_s16le_16','other'. Dla'pcm_s16le_16'wejściowe audio musi być 16-bitowym PCM z częstotliwością próbkowania 16 kHz, jednym kanałem (mono) i kolejnością bajtów little-endian. Opóźnienie będzie mniejsze niż przy przekazywaniu zakodowanego przebiegu audio.