Vercel AI SDK
Użyj providera ElevenLabs w Vercel AI SDK, aby transkrybować mowę z plików audio i wideo.
Poradnik · Zakłada, że masz za sobą szybki start ze Speech to Text i skonfigurowany projekt Vercel.
Provider ElevenLabs
Provider ElevenLabs obsługuje API transkrypcji ElevenLabs.
Konfiguracja
Provider ElevenLabs jest dostępny w module @ai-sdk/elevenlabs. Możesz go zainstalować przez npm:
Instancja providera
Możesz zaimportować domyślną instancję providera elevenlabs z @ai-sdk/elevenlabs:
Jeśli potrzebujesz własnej konfiguracji, możesz zaimportować createElevenLabs z @ai-sdk/elevenlabs i utworzyć instancję providera z wybranymi ustawieniami:
Aby dostosować instancję providera 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żywa globalnej funkcji
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().
Pierwszy argument to identyfikator modelu, np. scribe_v2.
Możesz też przekazać dodatkowe opcje specyficzne dla providera 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 z góry.
Dostępne są następujące opcje providera:
-
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 z góry. Domyślnie:
null, wtedy język jest wykrywany automatycznie. -
tagAudioEvents boolean
Określa, czy w transkrypcji oznaczać zdarzenia audio, takie jak (śmiech), (kroki) itp. Domyślnie:
true. -
numSpeakers integer
Maksymalna liczba mówców w przesłanym pliku. Może pomóc przewidzieć, kto mówi w danym momencie. Maksymalna liczba wykrywanych mówców 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 o częstotliwości próbkowania 16 kHz, z jednym kanałem (mono) i kolejnością bajtów little-endian. Opóźnienie będzie mniejsze niż przy przesyłaniu zakodowanego przebiegu.