Vercel AI SDK
Use o provedor da ElevenLabs no Vercel AI SDK para transcrever fala de arquivos de áudio e vídeo.
Guia prático · Pressupõe que você concluiu o guia de início rápido do Speech to Text e configurou um projeto na Vercel.
Provedor da ElevenLabs
O provedor da ElevenLabs oferece suporte à API de transcrição da ElevenLabs.
Configuração
O provedor da ElevenLabs está disponível no módulo @ai-sdk/elevenlabs. Você pode instalá-lo com npm:
Instância do provedor
Você pode importar a instância padrão do provedor, elevenlabs, de @ai-sdk/elevenlabs:
Se precisar de uma configuração personalizada, você pode importar createElevenLabs de @ai-sdk/elevenlabs e criar uma instância do provedor com suas configurações:
Você pode usar as seguintes configurações opcionais para personalizar a instância do provedor da ElevenLabs:
-
apiKey string
Chave de API enviada usando o cabeçalho
Authorization. Por padrão, usa a variável de ambienteELEVENLABS_API_KEY. -
headers Record<string,string>
Cabeçalhos personalizados para incluir nas solicitações.
-
fetch (input: RequestInfo, init?: RequestInit) => Promise<Response>
Implementação personalizada de fetch. Por padrão, usa a função global
fetch. Você pode usá-la como middleware para interceptar solicitações ou para fornecer uma implementação personalizada de fetch, por exemplo, para testes.
Modelos de transcrição
Você pode criar modelos que chamam a API de transcrição da ElevenLabs
usando o método de fábrica .transcription().
O primeiro argumento é o ID do modelo, por exemplo, scribe_v2.
Você também pode passar opções adicionais específicas do provedor usando o argumento providerOptions. Por exemplo, informar o idioma de entrada no formato ISO-639-1 (por exemplo, en) pode, às vezes, melhorar o desempenho da transcrição se ele for conhecido previamente.
As seguintes opções do provedor estão disponíveis:
-
languageCode string
Um código de idioma ISO-639-1 ou ISO-639-3 correspondente ao idioma do arquivo de áudio. Às vezes, pode melhorar o desempenho da transcrição se for conhecido previamente. O padrão é
null; nesse caso, o idioma é previsto automaticamente. -
tagAudioEvents boolean
Define se eventos de áudio como (risadas), (passos) etc. devem ser marcados na transcrição. O padrão é
true. -
numSpeakers integer
A quantidade máxima de falantes no arquivo enviado. Pode ajudar a prever quem fala em cada momento. O número máximo de falantes que pode ser previsto é 32. O padrão é
null; nesse caso, a quantidade de falantes é definida como o valor máximo compatível com o modelo. -
timestampsGranularity enum
A granularidade dos timestamps na transcrição. O padrão é
'word'. Valores permitidos:'none','word','character'. -
diarize boolean
Define se deve ser anotado qual falante está falando no momento no arquivo enviado. O padrão é
true. -
fileFormat enum
O formato do áudio de entrada. O padrão é
'other'. Valores permitidos:'pcm_s16le_16','other'. Para'pcm_s16le_16', o áudio de entrada deve ser PCM de 16 bits com taxa de amostragem de 16 kHz, canal único (mono) e ordem de bytes little-endian. A latência será menor do que ao enviar uma forma de onda codificada.