JavaScript SDK
Scribe: transkrypcja mowy na tekst w czasie rzeczywistym w JavaScript
Przegląd Scribe i jego możliwości znajdziesz w omówieniu funkcji Speech to Text . Przewodniki krok po kroku znajdziesz w sekcji streaming po stronie klienta.
Instalacja
Użyj umiejętności ElevenLabs Speech to Text, aby transkrybować audio z pomocą asystenta AI do programowania:
Z tej biblioteki możesz korzystać w każdym projekcie opartym na JavaScript. Jeśli używasz React,
rozważ użycie hooka useScribe, który zapewnia
wbudowane zarządzanie stanem i obsługę cyklu życia.
Użycie
Oto minimalny działający przykład, który łączy się z Scribe i zapisuje wyniki transkrypcji w logach:
Uzyskiwanie tokenu
Scribe wymaga tokenu jednorazowego do uwierzytelniania. Utwórz endpoint API na swoim serwerze:
Twój klucz API ElevenLabs jest poufny. Nigdy nie udostępniaj go klientowi. Zawsze generuj token na serwerze.
Opcje połączenia
Scribe.connect() przyjmuje opcje mikrofonu albo ręczne opcje audio. Oba warianty mają wspólny zestaw opcji podstawowych.
Opcje podstawowe
Opcje mikrofonu
Przekaż obiekt microphone, aby przesyłać audio bezpośrednio z mikrofonu użytkownika. Połączenie automatycznie obsługuje getUserMedia i kodowanie audio.
Ręczne opcje audio
Przekaż audioFormat i sampleRate, aby ręcznie wysyłać dane audio przez connection.send().
Enum AudioFormat
Tryb mikrofonu
Przesyłaj audio bezpośrednio z mikrofonu użytkownika:
Ręczny tryb audio (transkrypcja pliku)
Transkrybuj nagrane wcześniej pliki audio, ręcznie wysyłając dane audio:
RealtimeConnection
Scribe.connect() zwraca instancję RealtimeConnection z poniższymi metodami.
on(event, listener)
Zarejestruj nasłuchiwanie zdarzenia. Dostępne typy zdarzeń znajdziesz w sekcji Zdarzenia.
off(event, listener)
Usuń wcześniej zarejestrowane nasłuchiwanie zdarzenia.
send(data)
Wyślij dane audio do Scribe (tylko w ręcznym trybie audio).
Pole previousText można wysłać tylko w pierwszym fragmencie audio sesji. Wysłanie go w
kolejnych fragmentach powoduje błąd.
commit()
Ręcznie zatwierdź bieżącą transkrypcję. Jest to potrzebne tylko przy użyciu CommitStrategy.MANUAL.
close()
Zamknij połączenie WebSocket i zwolnij zasoby (strumień mikrofonu, kontekst audio).
Zdarzenia
Rejestruj nasłuchiwanie zdarzeń przez connection.on(event, listener). Wszystkie zdarzenia są dostępne jako stałe w enumie RealtimeEvents.
Zdarzenia transkrypcji
Typ WordsItem zawiera informacje o czasie na poziomie słów:
Zdarzenia połączenia
Zdarzenia błędów
Wszystkie zdarzenia błędów otrzymują { error: string }.
Strategie zatwierdzania
Określ, kiedy transkrypcje są zatwierdzane:
Więcej informacji znajdziesz w sekcji Transkrypcje i strategie zatwierdzania.
Pełny przykład
Oto pełny przykład, który transkrybuje audio z mikrofonu przy użyciu strategii zatwierdzania opartej na VAD: