Minor Changes
-
00fe856: feat(deepgram): transcription option fixes + speech voice/language composition, usage metadata, speed passthrough, and error parsing
Transcription:
keyterm,paragraphs,intents,sentiment, andreplacewere
accepted inproviderOptions.deepgrambut silently dropped from the
/v1/listenrequest. They are now sent as query parameters. Also widens
the provider callable signature from'nova-3'to any transcription
model ID.- Behavior change:
diarizeno longer defaults totrue. Speaker
diarization is a paid Deepgram add-on, and the provider previously sent
diarize=trueon every pre-recorded request unless explicitly opted
out. It is now only sent when explicitly set in
providerOptions.deepgram. Users who relied on the old default must
passproviderOptions: { deepgram: { diarize: true } }.
Speech:
- Bare voice family IDs (
aura-2,aura) compose the upstream model ID
from thegenerateSpeechvoiceandlanguageoptions
(<family>-<voice>-<language>, language defaults toen) and require
voice; full voice IDs (e.g.aura-2-helena-en) keep passing through
unchanged. TheDeepgramSpeechModelIdunion is trimmed to the family
IDs plus the string escape hatch. providerMetadata.deepgramcarriesmodelName,modelUuid,
additionalModelUuids,charCount(the billed character count),
breaksApplied,pronunciationsApplied,pronunciationWarnings(when
present), andrequestIdfrom the/v1/speakresponse headers.- The
speedoption is passed through to Deepgram'sspeedparameter
(accepted range 0.7–1.5) instead of being ignored with a warning. - API errors now parse Deepgram's
{ "err_code", "err_msg", "request_id" }
error shape, soAPICallError.messagecarries the real cause instead of
the HTTP reason phrase. The legacy{ "error": { "message", "code" } }
schema was dropped: no endpoint returns it.