{"record":{"id":"1448820cd747a21a","repo":"vercel/ai","slug":"model-this-modelid-does-not-support-streaming-144882","errorCode":null,"errorMessage":"Model '${this.modelId}' does not support streaming transcription. Use a live model such as 'gemini-3.5-transcribe-live'.","messagePattern":"Model '(.+?)' does not support streaming transcription\\. Use a live model such as 'gemini-3\\.5-transcribe-live'\\.","errorType":"validation","errorClass":"InvalidArgumentError","httpStatus":null,"severity":"error","filePath":"packages/google/src/transcription/google-transcription-model.ts","lineNumber":242,"sourceCode":"        body: rawResponse,\n      },\n      ...(response.usage != null\n        ? {\n            providerMetadata: {\n              google: { usage: response.usage as JSONObject },\n            },\n          }\n        : {}),\n    };\n  }\n\n  async doStream(\n    options: TranscriptionModelV4StreamOptions,\n  ): Promise<\n    Awaited<ReturnType<NonNullable<TranscriptionModelV4['doStream']>>>\n  > {\n    if (!isLiveTranscriptionModelId(this.modelId)) {\n      throw new InvalidArgumentError({\n        argument: 'modelId',\n        message:\n          `Model '${this.modelId}' does not support streaming transcription. ` +\n          `Use a live model such as 'gemini-3.5-transcribe-live'.`,\n      });\n    }\n\n    const currentDate = this.config._internal?.currentDate?.() ?? new Date();\n    const warnings: SharedV4Warning[] = [];\n    const googleOptions = await this.parseOptions(options.providerOptions);\n\n    validateLiveInputAudioFormat(options.inputAudioFormat);\n\n    const headers = combineHeaders(\n      this.config.headers ? await resolve(this.config.headers) : undefined,\n      options.headers,\n    );\n    // last case-variant wins: combineHeaders keeps case-distinct keys and","sourceCodeStart":224,"sourceCodeEnd":260,"githubUrl":"https://github.com/vercel/ai/blob/69428b1f8b037e4d118fb4853428d5c4e620493c/packages/google/src/transcription/google-transcription-model.ts#L224-L260","documentation":"The mirror of error 368: doStream only works for live transcription model ids (isLiveTranscriptionModelId). If the configured modelId is a unary transcription model (e.g. 'gemini-3.5-transcribe'), streaming transcription is unsupported and it throws an InvalidArgumentError directing you to a live model. Unary models process a complete audio input in one request and have no streaming session.","triggerScenarios":"Calling experimental_streamTranscribe (doStream) on a non-live model id such as 'gemini-3.5-transcribe' or any id not ending in '-live'.","commonSituations":"Wanting incremental transcripts while configured with a batch transcription model; dynamic model selection defaulting to a non-live id; docs examples mixing the two model families.","solutions":["Switch to a live model id such as 'gemini-3.5-transcribe-live' for streaming.","If incremental results are not required, use transcribe (doGenerate) with the unary model instead.","Gate the call path on isLiveTranscriptionModelId(model.modelId) before streaming."],"exampleFix":"// before\nconst model = google.transcription('gemini-3.5-transcribe');\nawait experimental_streamTranscribe({ model, audio });\n// after\nconst model = google.transcription('gemini-3.5-transcribe-live');\nawait experimental_streamTranscribe({ model, audio });","handlingStrategy":"validation","validationCode":"if (!isLiveTranscriptionModelId(modelId)) {\n  throw new Error(`${modelId} is unary; use transcribe() or switch to gemini-3.5-transcribe-live for streaming`);\n}","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Use live ('-live') model ids whenever you call experimental_streamTranscribe.","If streaming is not required, use transcribe() with a unary model instead.","Centralize model selection so streaming and unary calls cannot receive the wrong family."],"tags":["google","transcription","wrong-api","model-capability"],"backgroundTag":"model-capability-mismatch","analyzedSha":"69428b1f8b037e4d118fb4853428d5c4e620493c","analyzedAt":"2026-08-30T12:32:21.016Z","schemaVersion":2},"datasetVersion":"2026-08-30T13:17:10.514Z"}