SDK de React
useScribe: transcripción de voz a texto en tiempo real en React
Para obtener una visión general de Scribe y sus capacidades, consulta la visión general de Voz a Texto . Para ver guías de uso paso a paso, consulta la transmisión del lado del cliente.
Instalación
Usa la skill de voz a texto de ElevenLabs para transcribir audio desde tu asistente de programación con IA:
@elevenlabs/react vuelve a exportar todo desde @elevenlabs/client, así que no necesitas instalar
ambos paquetes.
Uso
Aquí tienes un ejemplo funcional mínimo que se conecta a Scribe y muestra la transcripción en tiempo real:
Obtener un token
Scribe requiere un token de un solo uso para la autenticación. Crea una ruta de API en tu servidor:
Tu clave de API de ElevenLabs es confidencial. No la expongas nunca al cliente. Genera siempre el token en el servidor.
Opciones del hook
Configura el hook con opciones y callbacks predeterminados:
Opciones de conexión
Opciones de VAD
Estas opciones controlan cuándo se confirman automáticamente las transcripciones al usar la estrategia de confirmación VAD.
Opciones de audio
El objeto microphone acepta:
Opciones de comportamiento
Callbacks
Todos los callbacks de eventos son opcionales y se pueden proporcionar como opciones del hook:
- onConnect - controlador que se llama cuando se establece la conexión WebSocket.
- onDisconnect - controlador que se llama cuando se cierra la conexión WebSocket.
- onSessionStarted - controlador que se llama cuando se inicia la sesión de Scribe.
- onPartialTranscript - controlador que se llama con resultados de transcripción provisionales. Recibe
{ text: string }. - onCommittedTranscript - controlador que se llama con resultados de transcripción finalizados. Recibe
{ text: string }. - onCommittedTranscriptWithTimestamps - controlador que se llama con resultados de transcripción finalizados, incluido el tiempo a nivel de palabra. Recibe
{ text: string; words?: { start: number; end: number }[] }. - onError - controlador de errores genérico para todos los errores. Recibe
Error | Event. - onAuthError - controlador que se llama cuando se producen errores de autenticación. Recibe
{ error: string }.
Callbacks de error
El callback genérico onError se activa para todos los errores. También hay callbacks de error específicos disponibles para una gestión más detallada. Todos los callbacks de error específicos reciben { error: string }.
Modo micrófono
Transmite audio directamente desde el micrófono del usuario:
Modo de audio manual (transcripción de archivos)
Transcribe archivos de audio pregrabados:
Valores devueltos
Estado
- status - estado actual de la conexión:
"disconnected","connecting","connected","transcribing"o"error". - isConnected - valor booleano que indica si está conectado.
- isTranscribing - valor booleano que indica si está transcribiendo activamente.
- partialTranscript - cadena de la transcripción parcial (provisional) actual.
- committedTranscripts - matriz de objetos
TranscriptSegment(consulta más abajo). - error - mensaje de error actual o
null.
Cada segmento de transcripción confirmado tiene la siguiente estructura:
Métodos
connect(options?)
Conéctate a Scribe. Las opciones proporcionadas aquí reemplazan los valores predeterminados del hook:
disconnect()
Desconecta y libera recursos:
sendAudio(audioBase64, options?)
Envía datos de audio (solo modo manual):
El campo previousText solo se puede enviar en el primer fragmento de audio de una sesión. Enviarlo en
fragmentos posteriores provoca un error.
commit()
Confirma manualmente la transcripción actual:
clearTranscripts()
Borra todas las transcripciones del estado:
getConnection()
Obtén la instancia de conexión subyacente:
Estrategias de confirmación
Controla cuándo se confirman las transcripciones:
Para obtener más información, consulta Transcripciones y estrategias de confirmación.
Ejemplo completo
Aquí tienes un ejemplo completo de un componente de React que utiliza el hook useScribe con una estrategia de confirmación basada en VAD: