SDK React
useScribe: transkrypcja mowy na tekst w czasie rzeczywistym w React
Przegląd Scribe i jego możliwości znajdziesz w opisie Speech to Text overview. Instrukcje użycia krok po kroku znajdziesz w Client-side streaming.
Instalacja
Użyj umiejętności ElevenLabs speech-to-text, aby transkrybować audio z pomocą asystenta AI do kodowania:
@elevenlabs/react ponownie eksportuje wszystko z @elevenlabs/client, więc nie musisz instalować
obu pakietów.
Użycie
Oto minimalny działający przykład, który łączy się z Scribe i wyświetla transkrypcję w czasie rzeczywistym:
Pobieranie tokenu
Scribe wymaga jednorazowego tokenu do uwierzytelniania. Utwórz endpoint API na serwerze:
Twój klucz API ElevenLabs jest poufny. Nigdy nie udostępniaj go klientowi. Zawsze generuj token na serwerze.
Opcje hooka
Skonfiguruj hook za pomocą domyślnych opcji i callbacków:
Opcje połączenia
Opcje VAD
Te opcje określają, kiedy transkrypcje są automatycznie zatwierdzane przy strategii zatwierdzania VAD.
Opcje audio
Obiekt microphone przyjmuje:
Opcje działania
Callbacki
Wszystkie callbacki zdarzeń są opcjonalne i możesz podać je jako opcje hooka:
- onConnect - obsługa wywoływana po nawiązaniu połączenia WebSocket.
- onDisconnect - obsługa wywoływana po zamknięciu połączenia WebSocket.
- onSessionStarted - obsługa wywoływana po rozpoczęciu sesji Scribe.
- onPartialTranscript - obsługa wywoływana z tymczasowymi wynikami transkrypcji. Otrzymuje
{ text: string }. - onCommittedTranscript - obsługa wywoływana z zatwierdzonymi wynikami transkrypcji. Otrzymuje
{ text: string }. - onCommittedTranscriptWithTimestamps - obsługa wywoływana z zatwierdzonymi wynikami transkrypcji, w tym czasem na poziomie słów. Otrzymuje
{ text: string; words?: { start: number; end: number }[] }. - onError - ogólna obsługa wszystkich błędów. Otrzymuje
Error | Event. - onAuthError - obsługa wywoływana przy błędach uwierzytelniania. Otrzymuje
{ error: string }.
Callbacki błędów
Ogólny callback onError uruchamia się przy wszystkich błędach. Dostępne są też konkretne callbacki błędów do bardziej szczegółowej obsługi. Wszystkie otrzymują { error: string }.
Tryb mikrofonowy
Przesyłaj audio bezpośrednio z mikrofonu użytkownika:
Ręczny tryb audio (transkrypcja plików)
Transkrybuj wcześniej nagrane pliki audio:
Zwracane wartości
Stan
- status - bieżący stan połączenia:
"disconnected","connecting","connected","transcribing"lub"error". - isConnected - wartość logiczna wskazująca, czy połączono.
- isTranscribing - wartość logiczna wskazująca, czy transkrypcja jest aktywna.
- partialTranscript - bieżący częściowy (tymczasowy) ciąg transkrypcji.
- committedTranscripts - tablica obiektów
TranscriptSegment(zobacz niżej). - error - bieżący komunikat błędu lub
null.
Każdy zatwierdzony segment transkrypcji ma następującą strukturę:
Metody
connect(options?)
Połącz z Scribe. Opcje podane tutaj zastępują domyślne opcje hooka:
disconnect()
Rozłącz i zwolnij zasoby:
sendAudio(audioBase64, options?)
Wyślij dane audio (tylko tryb ręczny):
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ę:
clearTranscripts()
Usuń wszystkie transkrypcje ze stanu:
getConnection()
Pobierz bazową instancję połączenia:
Strategie zatwierdzania
Określ, kiedy transkrypcje są zatwierdzane:
Więcej informacji znajdziesz w Transcripts and commit strategies.
Pełny przykład
Oto pełny przykład komponentu React, który używa hooka useScribe ze strategią zatwierdzania opartą na VAD: