@ai-sdk/provider-utils
5.0.65 · 21 Oct 2026Apache-2.028.5M / weekRepositoryHomepagenpmAtom feed
241 stable releases, newest first, by release line. Notes are quoted as the maintainers published them.
5.0.64
20 Oct 20260c2a9de: Add
maxOutputTokensandreasoningto experimental decision calls and forward them to language-model-backed decisions. Language-model adapters keep reasoning disabled when omitted. Native decision providers warn when either setting is unsupported.200c47f: Avoid retaining oversized backing buffers when reading response bodies, reducing memory usage for responses delivered in small chunks on runtimes such as Deno.
Patch Changes
0c2a9de: Add
maxOutputTokensandreasoningto experimental decision calls and forward them to language-model-backed decisions. Language-model adapters keep reasoning disabled when omitted. Native decision providers warn when either setting is unsupported.200c47f: Avoid retaining oversized backing buffers when reading response bodies, reducing memory usage for responses delivered in small chunks on runtimes such as Deno.
5.0.63
19 Oct 2026Only updates a dependency:@ai-sdk/provider 4.0.30
5.0.62
16 Oct 20260957554: Add
boxdecision question type with image bounds for TypeSafe AI.
Patch Changes
0957554: Add
boxdecision question type with image bounds for TypeSafe AI.
5.0.61
15 Oct 2026Only updates a dependency:@ai-sdk/provider 4.0.28
5.0.59
12 Oct 20265.0.58
8 Oct 2026Only updates a dependency:@ai-sdk/provider 4.0.26
5.0.57
8 Oct 20269184a35: Add ordered text, file, and JSON parts to experimental decision state. Support image input in OpenAI Decisions and language model adapters. Gateway retains its existing string and JSON request format and rejects files, as does TypeSafe AI.
Arrays passed directly as state now contain decision state parts. Wrap JSON arrays in an object or a json part.
Normalize all public state forms into an array of parts before calling decision providers. Providers receive text and JSON objects as text and json parts.
Serialize decision file bytes as base64 in OpenTelemetry state attributes. Model-call spans record normalized state parts, while outer spans retain public state inputs.
Preserve native JSON state in TypeSafe AI when state contains one JSON part. Label shared state in language-model decision prompts.
Patch Changes
9184a35: Add ordered text, file, and JSON parts to experimental decision state. Support image input in OpenAI Decisions and language model adapters. Gateway retains its existing string and JSON request format and rejects files, as does TypeSafe AI.
Arrays passed directly as state now contain decision state parts. Wrap JSON arrays in an object or a json part.
Normalize all public state forms into an array of parts before calling decision providers. Providers receive text and JSON objects as text and json parts.
Serialize decision file bytes as base64 in OpenTelemetry state attributes. Model-call spans record normalized state parts, while outer spans retain public state inputs.
Preserve native JSON state in TypeSafe AI when state contains one JSON part. Label shared state in language-model decision prompts.
5.0.56
7 Oct 2026Only updates a dependency:@ai-sdk/provider 4.0.24
5.0.55
6 Oct 2026fc1e19e: fix: limit jsonl rows to 64mb during batch result downloads
5094ebd: fix(provider-utils): preserve parallel tool calls when stream labels are missing or reused
268225c: feat(provider): add a portable
maxreasoning level with native provider mappings, compatibility coercions, and budget-based fallback support.Compatibility notes:
Release classification: This remains a patch changeset under the repository's explicit release policy, which uses patch releases for both fixes and features. The TypeScript source-compatibility caveat for exhaustive consumers is disclosed above. Maintainers can override this classification with a
majorlabel if they decide to align the provider-spec addition with a future AI SDK major release.
Patch Changes
fc1e19e: fix: limit jsonl rows to 64mb during batch result downloads
5094ebd: fix(provider-utils): preserve parallel tool calls when stream labels are missing or reused
268225c: feat(provider): add a portable
maxreasoning level with native provider mappings, compatibility coercions, and budget-based fallback support.Compatibility notes:
TypeScript source compatibility: Adding
maxwidensLanguageModelV4CallOptions['reasoning']and the derivedReasoningLeveltype. Third-party providers and consumers with exhaustive switches orRecord<ReasoningLevel, ...>mappings must handlemaxbefore upgrading. Ordinary calls using existing reasoning levels remain accepted.Amazon Bedrock: Existing Nova 2 calls using portable
reasoning: 'xhigh'now sendmaxReasoningEffort: 'high'instead of the unsupported'max', and return a compatibility warning. Anthropic and OpenAI Bedrock effort mappings retain their existingxhighbehavior. Partial Bedrock reasoning configurations continue to preserve explicit values and derive missing fields; explicit effort/budget overrides and disabled thinking no longer emit warnings for portable mappings that are not sent.Fireworks: Existing portable
minimalandxhighcalls keep their request mappings tolowandhigh, respectively, and now return compatibility warnings in generation and streaming results. Portablemaxmaps tohighwith the same warning behavior.
Release classification: This remains a patch changeset under the repository's explicit release policy, which uses patch releases for both fixes and features. The TypeScript source-compatibility caveat for exhaustive consumers is disclosed above. Maintainers can override this classification with a
majorlabel if they decide to align the provider-spec addition with a future AI SDK major release.0af2f7c: chore: upgrade to TypeScript 6
5.0.53
30 Sep 20265.0.47
23 Sep 2026fe07867: Fix Google
embedManycalls with more than 100 values by keeping per-value multimodal content aligned across automatic batches, including text-only entries. Validate content length before sending requests and validate each batch's provider options after middleware transforms them.a4b0940: fix(ai): execute manually approved tool inputs produced by schema transforms
Preserve approved inputs during revalidation and reject histories whose reconstructed schema output differs, including signed approvals with missing original input. Validate transformed UI tool inputs against the reconstructed output before returning them as static tool parts.
771e74b: chore: enable dead code lint rules
5.0.46
23 Sep 2026Only updates a dependency:@ai-sdk/provider 4.0.18
5.0.44
18 Sep 20260455398: fix(provider-utils): make lazy Undici import visible to deployment tracers
5.0.43
16 Sep 2026215b25e: Default language-model evaluation adapters to
reasoning: 'none', using each provider's existing reasoning mapping. Explicit reasoning settings inproviderOptionscontinue to override the default.d4d96bf: Add experimental Choice, Score, and Boolean evaluations through
openai.evaluationModel()and a shared structured language-model evaluation adapter in@ai-sdk/provider-utils/experimental-evaluation. Preserve exact labels and metadata, validate score bounds, and return prompted Boolean P(true) estimates validated to be in [0, 1]. Boolean estimates are not guaranteed to be calibrated; application code chooses thresholds.3456e2c: feat(ai): support tool search with direct tool calling
Patch Changes
215b25e: Default language-model evaluation adapters to
reasoning: 'none', using each provider's existing reasoning mapping. Explicit reasoning settings inproviderOptionscontinue to override the default.d4d96bf: Add experimental Choice, Score, and Boolean evaluations through
openai.evaluationModel()and a shared structured language-model evaluation adapter in@ai-sdk/provider-utils/experimental-evaluation. Preserve exact labels and metadata, validate score bounds, and return prompted Boolean P(true) estimates validated to be in [0, 1]. Boolean estimates are not guaranteed to be calibrated; application code chooses thresholds.3456e2c: feat(ai): support tool search with direct tool calling
c4e76de: feat(ai): add native tool search tool
5.0.42
16 Sep 202691c2128: feat(ai): add mid conversation tool discovery/updates for code-mode
2cd80b3: Keep default Node.js downloads protected by DNS validation and connection pinning when frameworks or instrumentation wrap global fetch before or after the SDK loads.
2fa5e0e: fix(provider-utils): avoid crashing when DOMException is not a global constructor
Patch Changes
91c2128: feat(ai): add mid conversation tool discovery/updates for code-mode
2cd80b3: Keep default Node.js downloads protected by DNS validation and connection pinning when frameworks or instrumentation wrap global fetch before or after the SDK loads.
2fa5e0e: fix(provider-utils): avoid crashing when DOMException is not a global constructor
5.0.41
15 Sep 2026Only updates a dependency:@ai-sdk/provider 4.0.15
5.0.40
11 Sep 20265.0.38 – 5.0.392 releases that only update dependencies@ai-sdk/provider 4.0.13Show each
- 5.0.399 Sep 2026@ai-sdk/provider 4.0.13
- 5.0.389 Sep 2026@ai-sdk/provider 4.0.12
5.0.37
8 Sep 20265.0.35
1 Sep 20265190b67: feat(provider): extend the FilesV4 interface with optional
getFileMetadata,downloadFile(streaming), anddeleteFileoperations, plusabortSignal/headerscall options and a{ type: 'stream' }upload data variant; upload results now exposebyteSize,createdAt, andexpiresAt(also surfaced by the coreuploadFile()helper, which now forwardsabortSignal/headers); addpostMultipartStreamToApi(streaming multipart uploads with deterministic part ordering and failure-path stream teardown),deleteFromApi, andcreateBinaryStreamResponseHandlerto provider-utils
Patch Changes
5190b67: feat(provider): extend the FilesV4 interface with optional
getFileMetadata,downloadFile(streaming), anddeleteFileoperations, plusabortSignal/headerscall options and a{ type: 'stream' }upload data variant; upload results now exposebyteSize,createdAt, andexpiresAt(also surfaced by the coreuploadFile()helper, which now forwardsabortSignal/headers); addpostMultipartStreamToApi(streaming multipart uploads with deterministic part ordering and failure-path stream teardown),deleteFromApi, andcreateBinaryStreamResponseHandlerto provider-utils
5.0.34
30 Aug 2026Only updates a dependency:@ai-sdk/provider 4.0.9
5.0.32
26 Aug 20263e125ba: Allow manual tool approval statuses to include a reason and preserve it across core, model, and UI approval requests. OPA
requires-approvaldecisions now surface their reason to human approvers. UI request chunks serialize the optionalreason, while UI messages retain it asapproval.requestReasonseparately from an approver's responsereason.
5.0.30
25 Aug 2026Only updates a dependency:@ai-sdk/provider 4.0.8
5.0.23
6 Aug 2026Only updates a dependency:@ai-sdk/provider 4.0.6
5.0.19
3 Aug 2026Only updates a dependency:@ai-sdk/provider 4.0.5
5.0.15
29 Jul 20265.0.14
28 Jul 20260c464d9: feat(provider-utils): add a typed serialization error
c49380c: feat: add experimental streaming speech translation models (
openai.translation('gpt-realtime-translate')over the OpenAI Realtime translations WebSocket andgoogle.translation('gemini-3.5-live-translate-preview')over the Gemini Live API).connectToWebSocketin@ai-sdk/provider-utilsnow passes close code and reason toonClose(additive, optional parameter).