fix(deps): update dependency @ai-sdk/openai to v4#127
Open
renovate[bot] wants to merge 1 commit into
Open
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
2.0.89→4.0.4Release Notes
vercel/ai (@ai-sdk/openai)
v4.0.4Compare Source
Patch Changes
0274f34]v4.0.3Compare Source
Patch Changes
1ead90c: Return a helpful error when the Responses stream parser receives Chat Completions chunks.v4.0.2Compare Source
Patch Changes
6a436e3]v4.0.1Compare Source
Patch Changes
9507724: feat(openai): add support for web_search_call.results include optionv4.0.0Compare Source
Major Changes
34bd95d: feat(ai): add support for uploading provider skills using the provider references abstractionef992f8: Remove CommonJS exports from all packages. All packages are now ESM-only ("type": "module"). Consumers usingrequire()must switch to ESMimportsyntax.c29a26f: feat(provider): add support for provider references and uploading files as supported per provider3887c70: feat(provider): add new top-level reasoning parameter to spec and support it ingenerateTextandstreamText61753c3: ###@ai-sdk/openai: remove redundantnameargument fromopenai.tools.customTool()openai.tools.customTool()no longer accepts anamefield. the tool name is now derived from the sdk tool key (the object key in thetoolsobject).migration: remove the
nameproperty fromcustomTool()calls. the object key is now used as the tool name sent to the openai api.before:
after:
@ai-sdk/provider-utils:createToolNameMapping()no longer accepts theresolveProviderToolNameparameterbefore: tool name can be set dynamically
after: tool name is static based on
toolskeys8359612: Start v7 pre-release04e9009: chore: make provider implementations code patterns more consistent, including renaming certain exported symbolsFor all externally exported symbols that were renamed, the old names continue to work via deprecated aliases.
Patch Changes
29e6ac6: feat: add allowedTools provider option for OpenAI Responses38fc777: Add AI Gateway hint to provider READMEsa71d345: fix(provider/openai): drop reasoning parts without encrypted content when store: false7afaece: feat(provider/openai): add GPT-5.4 model support365da1a: Addgpt-5.4-mini,gpt-5.4-mini-2026-03-17,gpt-5.4-nano, andgpt-5.4-nano-2026-03-17models.1772a63: Default OpenAI Responses reasoning summaries to detailed when reasoning effort is enabled.83f9d04: feat(openai): upgrade v3 specs to v445b3d76: fix(security): prevent streaming tool calls from finalizing on parsable partial JSONStreaming tool call arguments were finalized using
isParsableJson()as a heuristic for completion. If partial accumulated JSON happened to be valid JSON before all chunks arrived, the tool call would be executed with incomplete arguments. Tool call finalization now only occurs inflush()after the stream is fully consumed.bf837fe: feat(provider/gateway): add speech and transcription model supportd6c79e3: feat(openai): add GPT-5.5 chat model IDse776fc7: feat(provider/azure):web search tool in the Azure OpenAI Responses API.817a1a6: fix(openai): support file-url parts in tool output content1f509d4: fix(ai): force template check on 'kind' param0c4ac8a: fix(openai): default undefined tool-call input to empty object before serializing tool arguments9f0e36c: trigger release for all packages after provenance setup58a2ad7: fix: more precise default message for tool execution denial6a5800e: feat(openai): add namespaces for tool definitionsae7f932: fix(openai): throw retryable errors for OpenAI stream failures before output starts2c4767d: feat(openai): add orchestration token usage details to Responses API usagebada0f3: feat(openai): preservenamespaceon function_call output itemscd3de8b: feat(openai): forwardweb_search_call.action.queriesfrom Responses API94eba1b: fix(openai): round-tripnamespaceon function_call input itemsWhen
tool_searchdispatches a deferred tool, the resultingfunction_callcarries anamespacefield identifying which deferred-tool group the model picked.#14789preserved this on the read side (providerMetadata.openai.namespace), but the write side still serializedfunction_callinput items withoutnamespace. Multi-step / multi-turn conversations then failed withMissing namespace for function_call '<name>'. ... Round-trip the model's function_call item with its namespace field included.convert-to-openai-responses-input.tsnow readsnamespacefromproviderOptions.openai.namespace(orproviderMetadata.openai.namespace) ontool-callparts and includes it on the serializedfunction_callitem, mirroring howitemIdis round-tripped.7bbc194: feat(provider/openai): forward imageDetail providerOptions on tool-result image content156cdf0: feat(openai): add new tool search toolf7295cb: revert incorrect fix #131729ea40e0: chore(provider/openai): add type for image model options for type-safe processing7fc6bd6: Raise minimum supported Node.js version to 22. Supported versions: 22, 24, and 26.f807e45: Extract sharedStreamingToolCallTrackerclass into@ai-sdk/provider-utilsto deduplicate streaming tool call handling across OpenAI-compatible providers. Also adds missinggenerateId()fallback fortoolCallIdin Alibaba'sdoGeneratepath and ensures all providers finalize unfinished tool calls during stream flush.d9a1e9a: feat(openai): add server side compaction for openai0c4c275: trigger initial canary releaseac18f89: feat(provider/openai): addgpt-5.3-chat-latest6fd51c0: fix(provider): preserve error type prefix in getErrorMessagecd9c311: fix(openai, openai-compatible): only send null content for assistant messages with tool callse6376c2: fix(openai): preserve raw finish reason for failed responses stream eventsHandle
response.failedchunks in Responses API streaming sofinishReason.rawis preserved fromincomplete_details.reason(e.g.max_output_tokens), and map failed-without-reason cases to unifiederrorinstead ofother.ce769dd: feat(provider): add experimental Realtime API support for voice conversationsAdds first-class support for realtime (speech-to-speech) APIs:
Experimental_RealtimeModelV4spec in@ai-sdk/providerwith normalized event types and factoryopenai.experimental_realtime()/google.experimental_realtime()/xai.experimental_realtime()work in both server and browser.getToken()static method on each provider for server-side ephemeral token creationexperimental_getRealtimeToolDefinitionshelper for provider session tool definitionsexperimental_useRealtimehook in@ai-sdk/reactreturningUIMessage[](aligned withuseChat), withonToolCallandaddToolOutputfor client-driven tool executioninputAudioTranscriptionsession config for showing transcribed user audio messages when supported by the providere311194: feat(ai): allow passing provider instance touploadFileanduploadSkillas shorthand9bd6512: feat(provider): change file part data property to be tagged with a type and remove the image part type258c093: chore: ensure consistent import handling and avoid import duplicates or cycles685cec7: feat(openai): add opt-in pass-through for unsupported file media types61bcdb5: fix(provider/openai): send client-executed tool calls as full function_call items in the Responses API so they pair with their function_call_output by call_id5463d0d: feat(provider): align tool result output content file part types with top-level message file part typesb8396f0: trigger initial beta releasebfb756d: patch - send content: null instead of empty string for tool-only assistant messages90e2d8a: chore: fix unused vars not being flagged by our lint tooling17b5597: fix(openai): skip passing reasoning items when using previous response idb3976a2: Add workflow serialization support to all provider models.@ai-sdk/provider-utils: NewserializeModel()helper that extracts only serializable properties from a model instance, filtering out functions and objects containing functions. Third-party provider authors can use this to add workflow support to their own models.All providers:
headersis now optional in provider config types. This is non-breaking — existing code that passesheaderscontinues to work. Custom provider implementations that construct model configs manually can now omitheaders, which is useful when models are deserialized from a workflow step boundary where auth is provided separately.All provider model classes now include
WORKFLOW_SERIALIZEandWORKFLOW_DESERIALIZEstatic methods, enabling them to cross workflow step boundaries without serialization errors.ff5eba1: feat: rollimage-*tool output types into their equivalentfile-*typesf9acbc0: feat(provider/openai): add gpt-image-2 model supportv3.0.79Compare Source
Patch Changes
fa850e6]v3.0.78Compare Source
Patch Changes
64a701d: Return a helpful error when the Responses stream parser receives Chat Completions chunks.v3.0.77Compare Source
Patch Changes
b30e43a]v3.0.76Compare Source
Patch Changes
2ee1700: feat(openai): add support for web_search_call.results include optionf19334d]v3.0.75Compare Source
Patch Changes
1b40ac7: Publish all packages under the@ai-v6dist tag.1b40ac7]v3.0.74Compare Source
Patch Changes
466544d: feat(openai): add orchestration token usage details to Responses API usagev3.0.73Compare Source
Patch Changes
1274c07: fix(provider/openai): send client-executed tool calls as full function_call items in the Responses API so they pair with their function_call_output by call_idv3.0.72Compare Source
Patch Changes
779f5cd]v3.0.71Patch Changes
bfa5864]f42aa79]v3.0.69Compare Source
Patch Changes
9a55f6d: feat(openai): add namespaces for tool definitionsv3.0.68Compare Source
Patch Changes
c65c952: fix(openai): round-tripnamespaceon function_call input itemsWhen
tool_searchdispatches a deferred tool, the resultingfunction_callcarries anamespacefield identifying which deferred-tool group the model picked.#14789preserved this on the read side (providerMetadata.openai.namespace), but the write side still serializedfunction_callinput items withoutnamespace. Multi-step / multi-turn conversations then failed withMissing namespace for function_call '<name>'. ... Round-trip the model's function_call item with its namespace field included.convert-to-openai-responses-input.tsnow readsnamespacefromproviderOptions.openai.namespace(orproviderMetadata.openai.namespace) ontool-callparts and includes it on the serializedfunction_callitem, mirroring howitemIdis round-tripped.v3.0.67Compare Source
Patch Changes
c679fec: feat(provider/azure):web search tool in the Azure OpenAI Responses API.v3.0.66Compare Source
Patch Changes
c82ab42: feat(openai): forwardweb_search_call.action.queriesfrom Responses APIv3.0.65Compare Source
Patch Changes
eb52378: fix(openai): skip passing reasoning items when using previous response idv3.0.64Compare Source
Patch Changes
b7ed8bd: feat(openai): add opt-in pass-through for unsupported file media typesv3.0.63Compare Source
Patch Changes
f591416]v3.0.62Compare Source
Patch Changes
65edcca: feat: add allowedTools provider option for OpenAI Responsesv3.0.61Compare Source
Patch Changes
b93f9b4: feat(provider/openai): forward imageDetail providerOptions on tool-result image contentv3.0.60Compare Source
Patch Changes
6dcd8e6: feat(openai): add GPT-5.5 chat model IDsv3.0.59Compare Source
Patch Changes
38966ab: fix(openai, openai-compatible): only send null content for assistant messages with tool callsv3.0.58Compare Source
Patch Changes
2370948: feat(openai): preservenamespaceon function_call output itemsv3.0.57Compare Source
Patch Changes
d33e7cc: chore(provider/openai): add type for image model options for type-safe processingv3.0.55Compare Source
Patch Changes
a727da4: chore: ensure consistent import handling and avoid import duplicates or cyclesa727da4]v3.0.54Compare Source
Patch Changes
a7f3c72: trigger release for all packages after provenance setup408a2ad: patch - send content: null instead of empty string for tool-only assistant messagesc71ad14: feat(provider/openai): add gpt-image-2 model supporta7f3c72]v3.0.53Compare Source
Patch Changes
953385d: fix(openai): default undefined tool-call input to empty object before serializing tool argumentsv3.0.52Compare Source
Patch Changes
d42076d: Add AI Gateway hint to provider READMEsv3.0.51Compare Source
Patch Changes
6247886]v3.0.50Compare Source
Patch Changes
0469aed]v3.0.49Compare Source
Patch Changes
bc01093: fix(openai): support file-url parts in tool output contentv3.0.48Compare Source
Patch Changes
9c548de: Addgpt-5.4-mini,gpt-5.4-mini-2026-03-17,gpt-5.4-nano, andgpt-5.4-nano-2026-03-17models.bcb04df: fix(openai): preserve raw finish reason for failed responses stream eventsHandle
response.failedchunks in Responses API streaming sofinishReason.rawis preserved fromincomplete_details.reason(e.g.max_output_tokens), and map failed-without-reason cases to unifiederrorinstead ofother.v3.0.47Compare Source
Patch Changes
055cd68: fix: publish v6 to latest npm dist tag055cd68]v3.0.46Compare Source
Patch Changes
75fc0e7: feat(openai): add new tool search toolv3.0.45Compare Source
Patch Changes
023088c: feat(provider/openai): addgpt-5.3-chat-latestv3.0.44Compare Source
Patch Changes
f4a734a: fix(provider/openai): drop reasoning parts without encrypted content when store: falsev3.0.43Compare Source
Patch Changes
64ac0fd]v3.0.42Compare Source
Patch Changes
2589004: feat(provider/openai): add GPT-5.4 model supportv3.0.41Compare Source
Patch Changes
ad4cfc2]v3.0.40Compare Source
Patch Changes
824b295]v3.0.39Compare Source
Patch Changes
08336f1]v3.0.38Compare Source
Patch Changes
64a8fae: chore: remove obsolete model IDs for Anthropic, Google, OpenAI, xAIv3.0.37Compare Source
Patch Changes
58bc42d: feat(provider/openai): support custom tools with alias mapping58bc42d]v3.0.36Compare Source
Patch Changes
53bdfa5: fix(openai): allow null/undefined type in streaming tool call deltasAzure AI Foundry and Mistral deployed on Azure omit the
typefield instreaming tool_calls deltas. The chat stream parser now accepts a missing
typefield (treating it as"function") instead of throwingInvalidResponseDataError: Expected 'function' type.Fixes #12770
v3.0.35Compare Source
Patch Changes
5e18272: fix(openai): include reasoning parts without itemId when encrypted_content is presentWhen
providerOptions.openai.itemIdis absent on a reasoning content part,the converter now uses
encrypted_contentas a fallback instead of silentlyskipping the part with a warning. The OpenAI Responses API accepts reasoning
items without an
idwhenencrypted_contentis supplied, enablingmulti-turn reasoning even when item IDs are stripped from provider options.
Also makes the
idfield optional on theOpenAIResponsesReasoningtype toreflect that the API does not require it.
Fixes #12853
v3.0.34Compare Source
Patch Changes
66a374c: Supportphaseparameter on Responses API message items. Thephasefield ('commentary'or'final_answer') is returned by models likegpt-5.3-codexon assistant message output items and must be preserved when sending follow-up requests. The phase value is available inproviderMetadata.openai.phaseon text parts and is automatically included on assistant messages sent back to the API.v3.0.33Compare Source
Patch Changes
624e651: Added missing model IDs to OpenAIChatModelId, OpenAIResponsesModelId, OpenAIImageModelId, OpenAISpeechModelId, OpenAITranscriptionModelId, and OpenAICompletionModelId types for better autocomplete support.v3.0.32Compare Source
Patch Changes
0c9395b: feat(provider/openai): addgpt-5.3-codexv3.0.31Compare Source
Patch Changes
d5f7312: fix(openai): change web search tool action to be optionalv3.0.30Compare Source
Patch Changes
ff12133: feat(provider/openai): support native skills and hosted shellv3.0.29Compare Source
Patch Changes
e2ee705: feat: differentiate text vs image input tokensv3.0.28Compare Source
Patch Changes
4024a3a]v3.0.27Compare Source
Patch Changes
99fbed8: feat: normalize provider specific model options type names and ensure they are exportedv3.0.26Compare Source
Patch Changes
7168375]v3.0.25Compare Source
Patch Changes
53f6731]v3.0.24Compare Source
Patch Changes
96936e5]v3.0.23Compare Source
Patch Changes
2810850]v3.0.22Compare Source
Patch Changes
1524271: chore: add skill information to README filesv3.0.21Compare Source
Patch Changes
2c70b90: chore: update provider docsv3.0.20Compare Source
Patch Changes
462ad00]v3.0.19Compare Source
Patch Changes
04c89b1: Provide Responses API providerMetadata types at the message / reasoning level.OpenaiResponsesProviderMetadataOpenaiResponsesReasoningProviderMetadataAzureResponsesProviderMetadataAzureResponsesReasoningProviderMetadatav3.0.18Compare Source
Patch Changes
4de5a1d: chore: excluded tests from src folder in npm package4de5a1d]v3.0.17Compare Source
Patch Changes
4218f86: fix(openai): preserve tool id for apply patch toolv3.0.16Compare Source
Patch Changes
2b8369d: chore: add docs to package distv3.0.15Compare Source
Patch Changes
8dc54db: chore: add src folders to package bundlev3.0.14Compare Source
Patch Changes
d21d016: feat(openai): add o4-mini model to OpenAIChatModelId typev3.0.13Compare Source
Patch Changes
000fa96: fix(openai): filter duplicate items when passing conversationIDv3.0.12Compare Source
Patch Changes
5c090e7]v3.0.11Compare Source
Patch Changes
46f46e4]v3.0.10Compare Source
Patch Changes
1b11dcb]v3.0.9Compare Source
Patch Changes
34d1c8a]v3.0.8Compare Source
Patch Changes
330bd92: Fix Responsescode_interpreterannotations and add typed providerMetadatacode_interpreterannotation types with the official spec.doGenerateanddoStreamstay in sync.OpenaiResponsesTextProviderMetadataOpenaiResponsesSourceDocumentProviderMetadataAzureResponsesTextProviderMetadataAzureResponsesSourceDocumentProviderMetadatav3.0.7Compare Source
Patch Changes
89202fb: fix(openai/azure): passing response_format correctlyv3.0.6Compare Source
Patch Changes
dc87517: Fix handling ofimage-urltool result content type in OpenAI Responses API conversionv3.0.5Compare Source
Patch Changes
d937c8f]v3.0.4Compare Source
Patch Changes
ad4cfc2]v3.0.3Compare Source
Patch Changes
08336f1]v3.0.2Compare Source
Patch Changes
e2ee705: feat: differentiate text vs image input tokensv3.0.1Compare Source
Patch Changes
04c89b1: Provide Responses API providerMetadata types at the message / reasoning level.OpenaiResponsesProviderMetadataOpenaiResponsesReasoningProviderMetadataAzureResponsesProviderMetadataAzureResponsesReasoningProviderMetadatav3.0.0Compare Source
Major Changes
dee8b05: ai SDK 6 betaMinor Changes
78928cb: release: start 5.1 betaPatch Changes
0c3b58b: fix(provider): add specificationVersion to ProviderV34920119: fix the "incomplete_details" key from nullable to nullish for openai compatibility0adc679: feat(provider): shared spec v392c6241: feat(openai): additional settings for file search tool88fc415: feat(openai): add the new provider 'apply_patch' tool817e601: fix(openai); fix url_citation schema in chat apidae2185: fix(openai): extract meta data from first chunk that contains any046aa3b: feat(provider): speech model v3 specf1277fe: feat(provider/openai): send assistant text and tool call parts as reference ids when store: true8d9e8ad: chore(provider): remove generics from EmbeddingModelV3Before
After
60f4775: fix: remove code for unsuported o1-mini and o1-preview models9a51b92: support OPENAI_BASE_URL envd64ece9: enables image_generation capabilities in the Azure provider through the Responses API.2625a04: feat(openai); update spec for mcp approval2e86082: feat(provider/openai):OpenAIChatLanguageModelOptionstype0877683: feat(provider/openai): support conversations apid0f1baf: feat(openai): Add support for 'promptCacheRetention: 24h' for gpt5.1 series831b6cc: feat(openai): adding provider mcp tool for openai95f65c2: chore: use import * from zod/v4edc5548: feat(provider/openai): automatically add reasoning.encrypted_content include when store = false954c356: feat(openai): allow custom names for provider-defined tools544d4e8: chore(specification): rename v3 provider defined tool to provider tool77f2b20: enables code_interpreter and file_search capabilities in the Azure provider through the Responses API0c4822d: feat:EmbeddingModelV373d9883: chore(openai): enable strict json by defaultd2039d7: feat(provider/openai): add GPT 5.1 Codex Max to OpenAI Responses model IDs list88edc28: feat (provider/openai): include more image generation response metadatae8109d3: feat: tool execution approvaled329cb: feat:Provider-V33bd2689: feat: extended token usage1cad0ab: feat: add provider version to user-agent headere85fa2f: feat(openai): add sources in web-search actions423ba08: Set the annotations from the Responses API to doStream401f561: fix(provider/openai): fix web search tool input types4122d2a: feat(provider/openai): add gpt-5-codex model id0153bfa: fix(openai): fix parameter exclusion logic8dac895: feat:LanguageModelV3[
304222e]Configuration
📅 Schedule: (in timezone Asia/Singapore)
* 0-3 1 * *)🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.