@depup/ai-sdk__google 3.0.62-depup.0 → 4.0.22-depup.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (72) hide show
  1. package/CHANGELOG.md +886 -46
  2. package/README.md +2 -2
  3. package/changes.json +1 -1
  4. package/dist/index.d.ts +297 -53
  5. package/dist/index.js +5231 -792
  6. package/dist/index.js.map +1 -1
  7. package/dist/internal/index.d.ts +128 -25
  8. package/dist/internal/index.js +4176 -591
  9. package/dist/internal/index.js.map +1 -1
  10. package/docs/{15-google-generative-ai.mdx → 15-google.mdx} +852 -111
  11. package/package.json +16 -16
  12. package/src/{convert-google-generative-ai-usage.ts → convert-google-usage.ts} +9 -8
  13. package/src/convert-json-schema-to-openapi-schema.ts +1 -1
  14. package/src/convert-to-google-messages.ts +666 -0
  15. package/src/{google-generative-ai-embedding-options.ts → google-embedding-model-options.ts} +9 -2
  16. package/src/{google-generative-ai-embedding-model.ts → google-embedding-model.ts} +32 -19
  17. package/src/google-error.ts +1 -1
  18. package/src/google-files.ts +224 -0
  19. package/src/google-image-model-options.ts +35 -0
  20. package/src/{google-generative-ai-image-model.ts → google-image-model.ts} +116 -65
  21. package/src/{google-generative-ai-image-settings.ts → google-image-settings.ts} +2 -2
  22. package/src/google-json-accumulator.ts +46 -11
  23. package/src/{google-generative-ai-options.ts → google-language-model-options.ts} +76 -5
  24. package/src/{google-generative-ai-language-model.ts → google-language-model.ts} +514 -303
  25. package/src/google-prepare-tools.ts +15 -11
  26. package/src/google-prompt.ts +86 -0
  27. package/src/google-provider.ts +196 -53
  28. package/src/google-speech-api.ts +36 -0
  29. package/src/google-speech-model-options.ts +48 -0
  30. package/src/google-speech-model.ts +311 -0
  31. package/src/google-video-model-options.ts +41 -0
  32. package/src/{google-generative-ai-video-model.ts → google-video-model.ts} +149 -96
  33. package/src/{google-generative-ai-video-settings.ts → google-video-settings.ts} +2 -1
  34. package/src/index.ts +44 -9
  35. package/src/interactions/build-google-interactions-stream-transform.ts +860 -0
  36. package/src/interactions/cancel-google-interaction.ts +60 -0
  37. package/src/interactions/convert-google-interactions-usage.ts +69 -0
  38. package/src/interactions/convert-to-google-interactions-input.ts +559 -0
  39. package/src/interactions/extract-google-interactions-sources.ts +252 -0
  40. package/src/interactions/google-interactions-agent.ts +15 -0
  41. package/src/interactions/google-interactions-api.ts +554 -0
  42. package/src/interactions/google-interactions-language-model-options.ts +264 -0
  43. package/src/interactions/google-interactions-language-model.ts +767 -0
  44. package/src/interactions/google-interactions-prompt.ts +582 -0
  45. package/src/interactions/google-interactions-provider-metadata.ts +31 -0
  46. package/src/interactions/map-google-interactions-finish-reason.ts +31 -0
  47. package/src/interactions/parse-google-interactions-outputs.ts +273 -0
  48. package/src/interactions/poll-google-interactions.ts +130 -0
  49. package/src/interactions/prepare-google-interactions-tools.ts +245 -0
  50. package/src/interactions/stream-google-interactions.ts +243 -0
  51. package/src/interactions/synthesize-google-interactions-agent-stream.ts +185 -0
  52. package/src/internal/index.ts +9 -2
  53. package/src/{map-google-generative-ai-finish-reason.ts → map-google-finish-reason.ts} +3 -3
  54. package/src/realtime/google-realtime-event-mapper.ts +445 -0
  55. package/src/realtime/google-realtime-model-options.ts +23 -0
  56. package/src/realtime/google-realtime-model.ts +160 -0
  57. package/src/realtime/index.ts +6 -0
  58. package/src/tool/code-execution.ts +2 -2
  59. package/src/tool/enterprise-web-search.ts +9 -3
  60. package/src/tool/file-search.ts +31 -35
  61. package/src/tool/google-maps.ts +3 -2
  62. package/src/tool/google-search.ts +24 -27
  63. package/src/tool/url-context.ts +4 -2
  64. package/src/tool/vertex-rag-store.ts +9 -6
  65. package/dist/index.d.mts +0 -419
  66. package/dist/index.mjs +0 -3129
  67. package/dist/index.mjs.map +0 -1
  68. package/dist/internal/index.d.mts +0 -319
  69. package/dist/internal/index.mjs +0 -2318
  70. package/dist/internal/index.mjs.map +0 -1
  71. package/src/convert-to-google-generative-ai-messages.ts +0 -457
  72. package/src/google-generative-ai-prompt.ts +0 -74
package/CHANGELOG.md CHANGED
@@ -1,131 +1,972 @@
1
1
  # @ai-sdk/google
2
2
 
3
- ## 3.0.62
3
+ ## 4.0.22
4
4
 
5
5
  ### Patch Changes
6
6
 
7
- - 46a3584: fix(google-vertex): don't send streamFunctionCallArguments for unary API calls and change default to false
7
+ - 66b7151: fix(provider/google): preserve Gemini Live lifecycle events
8
+ - 5e5453c: Avoid missing thought-signature warnings and skip-validator injection for valid unsigned Gemini 3 parallel function calls in the same model response.
8
9
 
9
- ## 3.0.61
10
+ ## 4.0.21
10
11
 
11
12
  ### Patch Changes
12
13
 
13
- - 03a04f6: feat(google-vertex): add support for streaming tool arguments input
14
+ - 7c16f21: feat(google): add `gemini-3.6-flash` and `gemini-3.5-flash-lite` models
14
15
 
15
- ## 3.0.60
16
+ ## 4.0.20
16
17
 
17
18
  ### Patch Changes
18
19
 
19
- - d42076d: Add AI Gateway hint to provider READMEs
20
+ - Updated dependencies [02ffdcb]
21
+ - Updated dependencies [76cb673]
22
+ - @ai-sdk/provider-utils@5.0.12
20
23
 
21
- ## 3.0.59
24
+ ## 4.0.19
22
25
 
23
26
  ### Patch Changes
24
27
 
25
- - 6247886: chore(provider-utils,google): fix grammar errors in error and warning messages
26
- - Updated dependencies [6247886]
27
- - @ai-sdk/provider-utils@4.0.23
28
+ - a70b027: fix(provider/google): associate multiple code execution results with their tool call
29
+ - a3ce307: fix(provider/google): surface Gemini `responseId` as `response-metadata` (stream) and `response.id` (generate)
28
30
 
29
- ## 3.0.58
31
+ ## 4.0.18
30
32
 
31
33
  ### Patch Changes
32
34
 
33
- - f20ba77: feat(provider/google): preserve per-modality token details in usage data
35
+ - Updated dependencies [cd06458]
36
+ - @ai-sdk/provider-utils@5.0.11
34
37
 
35
- ## 3.0.57
38
+ ## 4.0.17
36
39
 
37
40
  ### Patch Changes
38
41
 
39
- - 0f2b2f1: fix(provider/google): fix Gemini service tier enum after upstream update
42
+ - 5b4a299: fix(provider/google): forward Vertex-only imageConfig options (personGeneration, prominentPeople, imageOutputOptions)
40
43
 
41
- ## 3.0.56
44
+ ## 4.0.16
42
45
 
43
46
  ### Patch Changes
44
47
 
45
- - Updated dependencies [0469aed]
46
- - @ai-sdk/provider-utils@4.0.22
48
+ - 662ddfc: Allow google.interactions agent requests to include supported tools, including file_search.
47
49
 
48
- ## 3.0.55
50
+ ## 4.0.15
49
51
 
50
52
  ### Patch Changes
51
53
 
52
- - bdde9d4: feat(provider/google): support combining built-in tools with function calling on Gemini 3
54
+ - Updated dependencies [31c7be8]
55
+ - @ai-sdk/provider-utils@5.0.10
53
56
 
54
- ## 3.0.54
57
+ ## 4.0.14
55
58
 
56
59
  ### Patch Changes
57
60
 
58
- - 4e22c2c: feat(provider/google): add support for service tier parameter
61
+ - 4be62c1: fix(provider-utils): validate provider-response URLs in `getFromApi`
59
62
 
60
- ## 3.0.53
63
+ `getFromApi` now has a `validateUrl` flag. It is optional so existing callers keep compiling (omitting it behaves like `false`, i.e. no validation), but all AI SDK provider packages set it explicitly at every call site so each one makes a visible trust decision. When `true`, the URL is routed through `fetchWithValidatedRedirects` — the same guard used by `downloadBlob` — which rejects private/loopback/link-local targets, re-validates every redirect hop, strips proxy/metadata/cookie request headers, and drops all caller headers except the user-agent on cross-origin redirects (custom API-key headers must not follow a redirect off-origin any more than `Authorization` may); blocked URLs throw `DownloadError`. It is enabled at the image/video/audio download and polling call sites where the URL comes from a provider response body; URLs built from developer-configured endpoints pass `validateUrl: false` and are unaffected.
64
+
65
+ A new optional `credentialedOrigin` withholds caller headers unless the URL is same-origin with it, so the API key is not sent to a response-supplied host on a different origin.
66
+
67
+ A new optional `trustedOrigin` exempts URLs (and redirect hops) that are same-origin with the developer-configured provider endpoint from target validation, so self-hosted and localhost deployments whose response URLs point back at the configured host keep working; all other hops are still validated.
68
+
69
+ Also closes range gaps in `validateDownloadUrl` (IPv4 `224.0.0.0/4` multicast and the TEST-NET documentation ranges `192.0.2.0/24`, `198.51.100.0/24`, `203.0.113.0/24`; IPv6 documentation ranges `2001:db8::/32` and `3fff::/20`), and follows only the fetch-spec redirect status codes (301/302/303/307/308) — a `Location` header on any other status is not followed. This guard performs string/literal checks only and does not resolve DNS; hostnames that resolve to private addresses and DNS rebinding remain out of scope and must be constrained at the network layer (or by injecting a Node `fetch` that pins the resolved IP at connect time) for server deployments handling untrusted URLs. See `contributing/secure-url-handling.md`.
70
+
71
+ - Updated dependencies [4be62c1]
72
+ - Updated dependencies [7805e4a]
73
+ - Updated dependencies [cd12954]
74
+ - @ai-sdk/provider-utils@5.0.9
75
+
76
+ ## 4.0.13
77
+
78
+ ### Patch Changes
79
+
80
+ - Updated dependencies [e193290]
81
+ - @ai-sdk/provider-utils@5.0.8
82
+
83
+ ## 4.0.12
84
+
85
+ ### Patch Changes
86
+
87
+ - e40118c: Forward text file references as documents when using the Google Interactions API.
88
+
89
+ ## 4.0.11
90
+
91
+ ### Patch Changes
92
+
93
+ - 17d66c5: Fix Google tool result conversion to send file data as inline data instead of JSON text on the legacy tool-result path.
94
+ - 96d40bc: Expand standalone Google `threshold` provider options into safety settings.
95
+ - 0f93c57: feat (video): support video (not just image) reference inputs in `inputReferences` for reference-to-video generation
96
+ - Updated dependencies [0f93c57]
97
+ - @ai-sdk/provider@4.0.3
98
+ - @ai-sdk/provider-utils@5.0.7
99
+
100
+ ## 4.0.10
101
+
102
+ ### Patch Changes
103
+
104
+ - Updated dependencies [ac306ed]
105
+ - @ai-sdk/provider-utils@5.0.6
106
+
107
+ ## 4.0.9
108
+
109
+ ### Patch Changes
110
+
111
+ - 7401c2c: Pass documented Gemini external HTTPS file URLs through without downloading them.
112
+
113
+ ## 4.0.8
114
+
115
+ ### Patch Changes
116
+
117
+ - 5c5c0f5: Add experimental streaming transcription support for transcription models, including OpenAI `gpt-realtime-whisper` and xAI WebSocket STT.
118
+ - Updated dependencies [5c5c0f5]
119
+ - @ai-sdk/provider@4.0.2
120
+ - @ai-sdk/provider-utils@5.0.5
121
+
122
+ ## 4.0.7
123
+
124
+ ### Patch Changes
125
+
126
+ - c6f5e62: Prevent prototype pollution when synchronously parsing provider JSON inputs and expose `secureJsonParse` from provider-utils.
127
+ - bd8d172: Fix Google embedding batch size to respect the Gemini API limit of 100 requests per batch.
128
+ - Updated dependencies [c6f5e62]
129
+ - @ai-sdk/provider-utils@5.0.4
130
+
131
+ ## 4.0.6
132
+
133
+ ### Patch Changes
134
+
135
+ - d20f0dc: Add `vertex.interactions()` for the Gemini Interactions API on Vertex AI. Targets the location-scoped `.../locations/{region}/interactions` resource using the existing Vertex OAuth credentials, enabling multimodal-output models such as `gemini-omni-flash-preview` (video output) through Vertex. The `GoogleInteractionsLanguageModel` is now exported from `@ai-sdk/google/internal` for provider reuse.
136
+
137
+ ## 4.0.5
138
+
139
+ ### Patch Changes
140
+
141
+ - Updated dependencies [8c616f0]
142
+ - @ai-sdk/provider-utils@5.0.3
143
+
144
+ ## 4.0.4
145
+
146
+ ### Patch Changes
147
+
148
+ - dc1eb8d: Support Gemini Interactions video output. Parse video output blocks from the Google Interactions API into file parts (buffered and streaming), and surface the per-modality output token breakdown via `providerMetadata.google.outputTokensByModality`.
149
+
150
+ ## 4.0.3
151
+
152
+ ### Patch Changes
153
+
154
+ - 0274f34: feat (video): add first-class `frameImages` and `inputReferences` call options for video generation
155
+ - Updated dependencies [0274f34]
156
+ - @ai-sdk/provider@4.0.1
157
+ - @ai-sdk/provider-utils@5.0.2
158
+
159
+ ## 4.0.2
160
+
161
+ ### Patch Changes
162
+
163
+ - Updated dependencies [6a436e3]
164
+ - @ai-sdk/provider-utils@5.0.1
165
+
166
+ ## 4.0.1
167
+
168
+ ### Patch Changes
169
+
170
+ - ba6d510: chore: fix deprecated use of zod `.passthrough()`
171
+
172
+ ## 4.0.0
173
+
174
+ ### Major Changes
175
+
176
+ - a3757d7: chore(provider/google): remove useless GenerativeAI affix from types and classes for consistency
177
+ - f7d4f01: feat(provider): add support for `reasoning-file` type for files that are part of reasoning
178
+ - ef992f8: Remove CommonJS exports from all packages. All packages are now ESM-only (`"type": "module"`). Consumers using `require()` must switch to ESM `import` syntax.
179
+ - c29a26f: feat(provider): add support for provider references and uploading files as supported per provider
180
+ - 3887c70: feat(provider): add new top-level reasoning parameter to spec and support it in `generateText` and `streamText`
181
+ - 8359612: Start v7 pre-release
182
+ - 04e9009: chore: make provider implementations code patterns more consistent, including renaming certain exported symbols
183
+
184
+ For all externally exported symbols that were renamed, the old names continue to work via deprecated aliases.
185
+
186
+ ### Patch Changes
187
+
188
+ - 7f04802: feat(provider/google): add support for managed agents in the Interactions API
189
+ - 38fc777: Add AI Gateway hint to provider READMEs
190
+ - b71c0d7: feat(provider/google): support Google search grounding when using `generateImage` with Gemini
191
+ - 6190649: chore(provider/google): remove obsolete Google image model
192
+ - 55db546: fix(provider/google): fix Gemini service tier enum after upstream update
193
+ - 9a0a618: fix(google): fix `serviceTier` to be correctly formatted for Vertex API
194
+ - 00a0f36: feat(google, google-vertex): added `gemini-embedding-2`, `deep-research-max-preview-04-2026` and `deep-research-preview-04-2026`
195
+ - 9715ec7: feat(provider/google): add support for service tier parameter
196
+ - 41da50c: fix(provider/google): support `functionCall.id` when returned by Gemini API and provide matching `functionResponse.id`
197
+ - add4326: fix(provider/google): correct JSDoc for multimodal embedding content option
198
+ - a8d70b6: fix(google): auto-inject `skip_thought_signature_validator` for Gemini 3 tool-call replays without a signature
199
+ - 947cdab: Add Google realtime Live Translation provider options for `gemini-3.5-live-translate-preview`.
200
+ - 4e825f3: feat(google): update Interactions API implementation to cater for upstream breaking changes coming May 26
201
+ - b563707: feat(provider/google): add Gemini text-to-speech (speech) model support
202
+ - a05109d: feat(provider/google): preserve per-modality token details in usage data
203
+ - cfca634: fix(google): emit Vertex no-args streaming tool calls and preserve thoughtSignature
204
+
205
+ Vertex emits a no-args function call as a single chunk shaped `{ functionCall: { name: 'X' } }` with no `args`, no `partialArgs`, and no `willContinue`. The streaming parser had no branch for this shape, so the call was dropped along with any `thoughtSignature` it carried. For Gemini 3 thinking models this caused the next multi-turn step to 400 with `missing thought_signature`. The unary (`doGenerate`) path had the same drop.
206
+
207
+ Both paths now emit the call as a complete tool call with `'{}'` input and propagate `thoughtSignature` provider metadata.
208
+
209
+ Fixes #14847.
210
+
211
+ - c9c4661: fix(provider/google): preserve groundingMetadata and urlContextMetadata when they arrive in a stream chunk before the finishReason chunk
212
+ - 045d2e8: fix(google): read `serviceTier` from `usageMetadata.serviceTier` in both generate and stream paths
213
+
214
+ The previous implementation read `serviceTier` from the `x-gemini-service-tier`
215
+ response header, which is only populated on non-streaming responses. Gemini
216
+ streaming includes the value in `usageMetadata.serviceTier` on every chunk, so
217
+ `providerMetadata.google.serviceTier` was always `null` for streams. Read from
218
+ `usageMetadata` for both paths instead.
219
+
220
+ - 19b95f9: fix(google): use VALIDATED function calling mode when any tool has strict:true
221
+ - 2ce3c65: feat(provider/google-vertex): add Gemini text-to-speech (speech) model support
222
+ - 5878b40: fix(google): prevent prototype pollution when streaming tool args
223
+ - 46d1149: chore(provider-utils,google): fix grammar errors in error and warning messages
224
+ - 6a26901: feat(google): add `fileData` support to embedding model
225
+ - 01fa606: feat(provider/google): support combining built-in tools with function calling on Gemini 3
226
+ - 5036db8: feat(google-vertex): add support for streaming tool arguments input
227
+ - 9f0e36c: trigger release for all packages after provenance setup
228
+ - a2609df: fix(google): fix streaming tool call args
229
+ - ab43029: feat(provider/google): support multimodal content parts in embedding provider options
230
+ - 82288b0: feat(provider/google): add `gemini-embedding-2-preview` and fix multimodal embedding support with `embedMany`
231
+ - b04e23e: feat(provider/google): add support for the Gemini Interactions API
232
+ - 58a2ad7: fix: more precise default message for tool execution denial
233
+ - e59176c: chore(google): update v3 specs to v4
234
+ - ebbb0f2: fix(provider/google): fix lack of image consistency when using Interactions API in stateless mode
235
+ - aeda373: fix: only send provider credentials to same-origin response-supplied URLs
236
+
237
+ Several provider clients followed a URL taken from the provider's API response (a polling/status URL or a final media URL such as `polling_url`, `urls.get`, `result_url`, `result.sample`, or `video.uri`) and reused the authenticated headers — or appended `?key=<API_KEY>` — on that request. Because the host of the response-supplied URL was never validated, the long-lived API key was sent to whatever host the response named (a CDN in the benign case, or an attacker-chosen host if the provider response was tampered with), allowing credential exfiltration.
238
+
239
+ A new `isSameOrigin` helper is added to `@ai-sdk/provider-utils`, and the affected fetches in `@ai-sdk/black-forest-labs`, `@ai-sdk/fireworks`, `@ai-sdk/replicate`, `@ai-sdk/gladia`, `@ai-sdk/fal`, and `@ai-sdk/google` now attach credentials only when the followed URL is same-origin with the provider's configured API origin. Requests to a foreign origin are made without the credential.
240
+
241
+ - 7fc6bd6: Raise minimum supported Node.js version to 22. Supported versions: 22, 24, and 26.
242
+ - 0c4c275: trigger initial canary release
243
+ - bdb9ea1: chore(google): remove now obsolete Interactions API `Api-Revision` header
244
+ - db394ab: feat(provider/google): support cancelling long-running Interactions API agents via AbortSignal, and process their intermittent stream
245
+ - ce769dd: feat(provider): add experimental Realtime API support for voice conversations
246
+
247
+ Adds first-class support for realtime (speech-to-speech) APIs:
248
+
249
+ - `Experimental_RealtimeModelV4` spec in `@ai-sdk/provider` with normalized event types and factory
250
+ - OpenAI, Google, and xAI realtime provider implementations
251
+ - `openai.experimental_realtime()` / `google.experimental_realtime()` / `xai.experimental_realtime()` work in both server and browser
252
+ - `.getToken()` static method on each provider for server-side ephemeral token creation
253
+ - `experimental_getRealtimeToolDefinitions` helper for provider session tool definitions
254
+ - `experimental_useRealtime` hook in `@ai-sdk/react` returning `UIMessage[]` (aligned with `useChat`), with `onToolCall` and `addToolOutput` for client-driven tool execution
255
+ - `inputAudioTranscription` session config for showing transcribed user audio messages when supported by the provider
256
+
257
+ - 5b7e7c2: fix(google-vertex): don't send streamFunctionCallArguments for unary API calls and change default to false
258
+ - 2edd14e: fix(provider/google): correctly mark reasoning files as such and fix related multi-turn errors
259
+ - 9bd6512: feat(provider): change file part data property to be tagged with a type and remove the image part type
260
+ - 258c093: chore: ensure consistent import handling and avoid import duplicates or cycles
261
+ - 546cefe: feat(provider/google): add `gemini-3.5-flash`
262
+ - 5463d0d: feat(provider): align tool result output content file part types with top-level message file part types
263
+ - 55f0938: chore(provider/google): update available models
264
+ - b8396f0: trigger initial beta release
265
+ - 84f36e0: fix(google): omit passing includeServerSideToolInvocations for Vertex tool_config
266
+ - 90e2d8a: chore: fix unused vars not being flagged by our lint tooling
267
+ - 4dac142: feat(google): add new finishMessage field in providerMetadata
268
+ - aeea161: feat(google): read `serviceTier` from `x-gemini-service-tier` response header in Gemini API and use PayGo for Vertex
269
+ - 18c1970: feat(provider/google): Add multimodal tool-result support for Google function responses.
270
+
271
+ Tool results with `output.type = 'content'` now map media parts into
272
+ `functionResponse.parts` for Google models, including `image-data`,
273
+ `file-data`, and base64 `data:` URLs in URL-style content parts.
274
+ Remote HTTP(S) URLs in URL-style tool-result parts are not supported.
275
+
276
+ - b3976a2: Add workflow serialization support to all provider models.
277
+
278
+ **`@ai-sdk/provider-utils`:** New `serializeModel()` 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.
279
+
280
+ **All providers:** `headers` is now optional in provider config types. This is non-breaking — existing code that passes `headers` continues to work. Custom provider implementations that construct model configs manually can now omit `headers`, which is useful when models are deserialized from a workflow step boundary where auth is provided separately.
281
+
282
+ All provider model classes now include `WORKFLOW_SERIALIZE` and `WORKFLOW_DESERIALIZE` static methods, enabling them to cross workflow step boundaries without serialization errors.
283
+
284
+ - ff5eba1: feat: roll `image-*` tool output types into their equivalent `file-*` types
285
+
286
+ ## 4.0.0-beta.85
287
+
288
+ ### Patch Changes
289
+
290
+ - Updated dependencies [0416e3e]
291
+ - @ai-sdk/provider@4.0.0-beta.20
292
+ - @ai-sdk/provider-utils@5.0.0-beta.50
293
+
294
+ ## 4.0.0-beta.84
295
+
296
+ ### Patch Changes
297
+
298
+ - 947cdab: Add Google realtime Live Translation provider options for `gemini-3.5-live-translate-preview`.
299
+
300
+ ## 4.0.0-beta.83
301
+
302
+ ### Patch Changes
303
+
304
+ - bdb9ea1: chore(google): remove now obsolete Interactions API `Api-Revision` header
305
+
306
+ ## 4.0.0-beta.82
307
+
308
+ ### Patch Changes
309
+
310
+ - b8396f0: trigger initial beta release
311
+ - Updated dependencies [b8396f0]
312
+ - @ai-sdk/provider-utils@5.0.0-beta.49
313
+ - @ai-sdk/provider@4.0.0-beta.19
314
+
315
+ ## 4.0.0-canary.81
316
+
317
+ ### Patch Changes
318
+
319
+ - 5878b40: fix(google): prevent prototype pollution when streaming tool args
320
+ - aeda373: fix: only send provider credentials to same-origin response-supplied URLs
321
+
322
+ Several provider clients followed a URL taken from the provider's API response (a polling/status URL or a final media URL such as `polling_url`, `urls.get`, `result_url`, `result.sample`, or `video.uri`) and reused the authenticated headers — or appended `?key=<API_KEY>` — on that request. Because the host of the response-supplied URL was never validated, the long-lived API key was sent to whatever host the response named (a CDN in the benign case, or an attacker-chosen host if the provider response was tampered with), allowing credential exfiltration.
323
+
324
+ A new `isSameOrigin` helper is added to `@ai-sdk/provider-utils`, and the affected fetches in `@ai-sdk/black-forest-labs`, `@ai-sdk/fireworks`, `@ai-sdk/replicate`, `@ai-sdk/gladia`, `@ai-sdk/fal`, and `@ai-sdk/google` now attach credentials only when the followed URL is same-origin with the provider's configured API origin. Requests to a foreign origin are made without the credential.
325
+
326
+ - Updated dependencies [aeda373]
327
+ - Updated dependencies [375fdd7]
328
+ - Updated dependencies [b4507d5]
329
+ - @ai-sdk/provider-utils@5.0.0-canary.48
330
+
331
+ ## 4.0.0-canary.80
332
+
333
+ ### Patch Changes
334
+
335
+ - Updated dependencies [bae5e2b]
336
+ - @ai-sdk/provider-utils@5.0.0-canary.47
337
+
338
+ ## 4.0.0-canary.79
339
+
340
+ ### Patch Changes
341
+
342
+ - ce769dd: feat(provider): add experimental Realtime API support for voice conversations
343
+
344
+ Adds first-class support for realtime (speech-to-speech) APIs:
345
+
346
+ - `Experimental_RealtimeModelV4` spec in `@ai-sdk/provider` with normalized event types and factory
347
+ - OpenAI, Google, and xAI realtime provider implementations
348
+ - `openai.experimental_realtime()` / `google.experimental_realtime()` / `xai.experimental_realtime()` work in both server and browser
349
+ - `.getToken()` static method on each provider for server-side ephemeral token creation
350
+ - `experimental_getRealtimeToolDefinitions` helper for provider session tool definitions
351
+ - `experimental_useRealtime` hook in `@ai-sdk/react` returning `UIMessage[]` (aligned with `useChat`), with `onToolCall` and `addToolOutput` for client-driven tool execution
352
+ - `inputAudioTranscription` session config for showing transcribed user audio messages when supported by the provider
353
+
354
+ - Updated dependencies [ce769dd]
355
+ - @ai-sdk/provider@4.0.0-canary.18
356
+ - @ai-sdk/provider-utils@5.0.0-canary.46
357
+
358
+ ## 4.0.0-canary.78
359
+
360
+ ### Patch Changes
361
+
362
+ - 2ce3c65: feat(provider/google-vertex): add Gemini text-to-speech (speech) model support
363
+
364
+ ## 4.0.0-canary.77
365
+
366
+ ### Patch Changes
367
+
368
+ - Updated dependencies [ee798eb]
369
+ - Updated dependencies [daf6637]
370
+ - @ai-sdk/provider-utils@5.0.0-canary.45
371
+
372
+ ## 4.0.0-canary.76
373
+
374
+ ### Patch Changes
375
+
376
+ - b563707: feat(provider/google): add Gemini text-to-speech (speech) model support
377
+
378
+ ## 4.0.0-canary.75
379
+
380
+ ### Patch Changes
381
+
382
+ - 00a0f36: feat(google, google-vertex): added `gemini-embedding-2`, `deep-research-max-preview-04-2026` and `deep-research-preview-04-2026`
383
+
384
+ ## 4.0.0-canary.74
385
+
386
+ ### Patch Changes
387
+
388
+ - a8d70b6: fix(google): auto-inject `skip_thought_signature_validator` for Gemini 3 tool-call replays without a signature
389
+
390
+ ## 4.0.0-canary.73
391
+
392
+ ### Patch Changes
393
+
394
+ - Updated dependencies [6c93e36]
395
+ - Updated dependencies [f617ac2]
396
+ - @ai-sdk/provider-utils@5.0.0-canary.44
397
+
398
+ ## 4.0.0-canary.72
399
+
400
+ ### Patch Changes
401
+
402
+ - b71c0d7: feat(provider/google): support Google search grounding when using `generateImage` with Gemini
403
+
404
+ ## 4.0.0-canary.71
405
+
406
+ ### Patch Changes
407
+
408
+ - 045d2e8: fix(google): read `serviceTier` from `usageMetadata.serviceTier` in both generate and stream paths
409
+
410
+ The previous implementation read `serviceTier` from the `x-gemini-service-tier`
411
+ response header, which is only populated on non-streaming responses. Gemini
412
+ streaming includes the value in `usageMetadata.serviceTier` on every chunk, so
413
+ `providerMetadata.google.serviceTier` was always `null` for streams. Read from
414
+ `usageMetadata` for both paths instead.
415
+
416
+ ## 4.0.0-canary.70
417
+
418
+ ### Patch Changes
419
+
420
+ - aeea161: feat(google): read `serviceTier` from `x-gemini-service-tier` response header in Gemini API and use PayGo for Vertex
421
+
422
+ ## 4.0.0-canary.69
423
+
424
+ ### Patch Changes
425
+
426
+ - 7f04802: feat(provider/google): add support for managed agents in the Interactions API
427
+
428
+ ## 4.0.0-canary.68
429
+
430
+ ### Patch Changes
431
+
432
+ - a2609df: fix(google): fix streaming tool call args
433
+ - 546cefe: feat(provider/google): add `gemini-3.5-flash`
434
+
435
+ ## 4.0.0-canary.67
436
+
437
+ ### Patch Changes
438
+
439
+ - 7fc6bd6: Raise minimum supported Node.js version to 22. Supported versions: 22, 24, and 26.
440
+ - Updated dependencies [7fc6bd6]
441
+ - @ai-sdk/provider-utils@5.0.0-canary.43
442
+ - @ai-sdk/provider@4.0.0-canary.17
443
+
444
+ ## 4.0.0-canary.66
445
+
446
+ ### Patch Changes
447
+
448
+ - Updated dependencies [a6617c5]
449
+ - @ai-sdk/provider-utils@5.0.0-canary.42
450
+
451
+ ## 4.0.0-canary.65
452
+
453
+ ### Patch Changes
454
+
455
+ - 4e825f3: feat(google): update Interactions API implementation to cater for upstream breaking changes coming May 26
456
+
457
+ ## 4.0.0-canary.64
458
+
459
+ ### Patch Changes
460
+
461
+ - 41da50c: fix(provider/google): support `functionCall.id` when returned by Gemini API and provide matching `functionResponse.id`
462
+
463
+ ## 4.0.0-canary.63
464
+
465
+ ### Patch Changes
466
+
467
+ - Updated dependencies [28dfa06]
468
+ - Updated dependencies [e93fa91]
469
+ - @ai-sdk/provider-utils@5.0.0-canary.41
470
+
471
+ ## 4.0.0-canary.62
472
+
473
+ ### Patch Changes
474
+
475
+ - Updated dependencies [a7de9c9]
476
+ - @ai-sdk/provider-utils@5.0.0-canary.40
477
+
478
+ ## 4.0.0-canary.61
479
+
480
+ ### Patch Changes
481
+
482
+ - Updated dependencies [105f95b]
483
+ - @ai-sdk/provider-utils@5.0.0-canary.39
484
+
485
+ ## 4.0.0-canary.60
486
+
487
+ ### Patch Changes
488
+
489
+ - 6a26901: feat(google): add `fileData` support to embedding model
490
+
491
+ ## 4.0.0-canary.59
492
+
493
+ ### Patch Changes
494
+
495
+ - db394ab: feat(provider/google): support cancelling long-running Interactions API agents via AbortSignal, and process their intermittent stream
496
+ - Updated dependencies [ca446f8]
497
+ - @ai-sdk/provider-utils@5.0.0-canary.38
498
+
499
+ ## 4.0.0-canary.58
500
+
501
+ ### Patch Changes
502
+
503
+ - Updated dependencies [d848405]
504
+ - @ai-sdk/provider-utils@5.0.0-canary.37
505
+
506
+ ## 4.0.0-canary.57
507
+
508
+ ### Patch Changes
509
+
510
+ - Updated dependencies [ca39020]
511
+ - @ai-sdk/provider-utils@5.0.0-canary.36
512
+
513
+ ## 4.0.0-canary.56
514
+
515
+ ### Patch Changes
516
+
517
+ - Updated dependencies [f634bac]
518
+ - @ai-sdk/provider-utils@5.0.0-canary.35
519
+
520
+ ## 4.0.0-canary.55
521
+
522
+ ### Patch Changes
523
+
524
+ - ebbb0f2: fix(provider/google): fix lack of image consistency when using Interactions API in stateless mode
525
+ - Updated dependencies [69254e0]
526
+ - Updated dependencies [3015fc3]
527
+ - @ai-sdk/provider-utils@5.0.0-canary.34
528
+
529
+ ## 4.0.0-canary.54
530
+
531
+ ### Patch Changes
532
+
533
+ - b04e23e: feat(provider/google): add support for the Gemini Interactions API
534
+
535
+ ## 4.0.0-canary.53
536
+
537
+ ### Patch Changes
538
+
539
+ - Updated dependencies [2427d88]
540
+ - @ai-sdk/provider-utils@5.0.0-canary.33
541
+
542
+ ## 4.0.0-canary.52
543
+
544
+ ### Patch Changes
545
+
546
+ - cfca634: fix(google): emit Vertex no-args streaming tool calls and preserve thoughtSignature
547
+
548
+ Vertex emits a no-args function call as a single chunk shaped `{ functionCall: { name: 'X' } }` with no `args`, no `partialArgs`, and no `willContinue`. The streaming parser had no branch for this shape, so the call was dropped along with any `thoughtSignature` it carried. For Gemini 3 thinking models this caused the next multi-turn step to 400 with `missing thought_signature`. The unary (`doGenerate`) path had the same drop.
549
+
550
+ Both paths now emit the call as a complete tool call with `'{}'` input and propagate `thoughtSignature` provider metadata.
551
+
552
+ Fixes #14847.
553
+
554
+ ## 4.0.0-canary.51
555
+
556
+ ### Patch Changes
557
+
558
+ - 5463d0d: feat(provider): align tool result output content file part types with top-level message file part types
559
+ - Updated dependencies [5463d0d]
560
+ - @ai-sdk/provider-utils@5.0.0-canary.32
561
+ - @ai-sdk/provider@4.0.0-canary.16
562
+
563
+ ## 4.0.0-canary.50
564
+
565
+ ### Patch Changes
566
+
567
+ - 0c4c275: trigger initial canary release
568
+ - Updated dependencies [0c4c275]
569
+ - @ai-sdk/provider-utils@5.0.0-canary.31
570
+ - @ai-sdk/provider@4.0.0-canary.15
571
+
572
+ ## 4.0.0-beta.49
573
+
574
+ ### Major Changes
575
+
576
+ - 04e9009: chore: make provider implementations code patterns more consistent, including renaming certain exported symbols
577
+
578
+ For all externally exported symbols that were renamed, the old names continue to work via deprecated aliases.
579
+
580
+ ### Patch Changes
581
+
582
+ - Updated dependencies [08d2129]
583
+ - @ai-sdk/provider-utils@5.0.0-beta.30
584
+
585
+ ## 4.0.0-beta.48
586
+
587
+ ### Patch Changes
588
+
589
+ - 9bd6512: feat(provider): change file part data property to be tagged with a type and remove the image part type
590
+ - 258c093: chore: ensure consistent import handling and avoid import duplicates or cycles
591
+ - Updated dependencies [9bd6512]
592
+ - Updated dependencies [258c093]
593
+ - Updated dependencies [b6783da]
594
+ - @ai-sdk/provider-utils@5.0.0-beta.29
595
+ - @ai-sdk/provider@4.0.0-beta.14
596
+
597
+ ## 4.0.0-beta.47
598
+
599
+ ### Patch Changes
600
+
601
+ - 9f0e36c: trigger release for all packages after provenance setup
602
+ - Updated dependencies [9f0e36c]
603
+ - @ai-sdk/provider@4.0.0-beta.13
604
+ - @ai-sdk/provider-utils@5.0.0-beta.28
605
+
606
+ ## 4.0.0-beta.46
607
+
608
+ ### Patch Changes
609
+
610
+ - 58a2ad7: fix: more precise default message for tool execution denial
611
+ - 84f36e0: fix(google): omit passing includeServerSideToolInvocations for Vertex tool_config
612
+ - Updated dependencies [785fe16]
613
+ - Updated dependencies [67df0a0]
614
+ - Updated dependencies [befb78c]
615
+ - Updated dependencies [0458559]
616
+ - Updated dependencies [5852c0a]
617
+ - Updated dependencies [fc92055]
618
+ - @ai-sdk/provider-utils@5.0.0-beta.27
619
+
620
+ ## 4.0.0-beta.45
621
+
622
+ ### Major Changes
623
+
624
+ - a3757d7: chore(provider/google): remove useless GenerativeAI affix from types and classes for consistency
625
+
626
+ ### Patch Changes
627
+
628
+ - Updated dependencies [2e98477]
629
+ - @ai-sdk/provider-utils@5.0.0-beta.26
630
+
631
+ ## 4.0.0-beta.44
61
632
 
62
633
  ### Patch Changes
63
634
 
64
- - 2e5adff: chore(provider/google): remove obsolete Google image model
635
+ - Updated dependencies [eea8d98]
636
+ - @ai-sdk/provider-utils@5.0.0-beta.25
65
637
 
66
- ## 3.0.52
638
+ ## 4.0.0-beta.43
67
639
 
68
640
  ### Patch Changes
69
641
 
70
- - 055cd68: fix: publish v6 to latest npm dist tag
71
- - 47114a3: feat(provider/google): Add multimodal tool-result support for Google function responses.
642
+ - Updated dependencies [f807e45]
643
+ - @ai-sdk/provider-utils@5.0.0-beta.24
644
+
645
+ ## 4.0.0-beta.42
646
+
647
+ ### Patch Changes
648
+
649
+ - Updated dependencies [350ea38]
650
+ - @ai-sdk/provider-utils@5.0.0-beta.23
651
+
652
+ ## 4.0.0-beta.41
653
+
654
+ ### Patch Changes
655
+
656
+ - Updated dependencies [083947b]
657
+ - @ai-sdk/provider-utils@5.0.0-beta.22
658
+
659
+ ## 4.0.0-beta.40
660
+
661
+ ### Patch Changes
662
+
663
+ - 55f0938: chore(provider/google): update available models
664
+
665
+ ## 4.0.0-beta.39
666
+
667
+ ### Patch Changes
668
+
669
+ - Updated dependencies [add1126]
670
+ - @ai-sdk/provider-utils@5.0.0-beta.21
671
+
672
+ ## 4.0.0-beta.38
673
+
674
+ ### Patch Changes
675
+
676
+ - b3976a2: Add workflow serialization support to all provider models.
677
+
678
+ **`@ai-sdk/provider-utils`:** New `serializeModel()` 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.
679
+
680
+ **All providers:** `headers` is now optional in provider config types. This is non-breaking — existing code that passes `headers` continues to work. Custom provider implementations that construct model configs manually can now omit `headers`, which is useful when models are deserialized from a workflow step boundary where auth is provided separately.
681
+
682
+ All provider model classes now include `WORKFLOW_SERIALIZE` and `WORKFLOW_DESERIALIZE` static methods, enabling them to cross workflow step boundaries without serialization errors.
683
+
684
+ - ff5eba1: feat: roll `image-*` tool output types into their equivalent `file-*` types
685
+ - Updated dependencies [b3976a2]
686
+ - Updated dependencies [ff5eba1]
687
+ - @ai-sdk/provider-utils@5.0.0-beta.20
688
+ - @ai-sdk/provider@4.0.0-beta.12
689
+
690
+ ## 4.0.0-beta.37
691
+
692
+ ### Major Changes
693
+
694
+ - ef992f8: Remove CommonJS exports from all packages. All packages are now ESM-only (`"type": "module"`). Consumers using `require()` must switch to ESM `import` syntax.
695
+
696
+ ### Patch Changes
697
+
698
+ - Updated dependencies [ef992f8]
699
+ - @ai-sdk/provider@4.0.0-beta.11
700
+ - @ai-sdk/provider-utils@5.0.0-beta.19
701
+
702
+ ## 4.0.0-beta.36
703
+
704
+ ### Patch Changes
705
+
706
+ - 9a0a618: fix(google): fix `serviceTier` to be correctly formatted for Vertex API
707
+
708
+ ## 4.0.0-beta.35
709
+
710
+ ### Patch Changes
711
+
712
+ - 90e2d8a: chore: fix unused vars not being flagged by our lint tooling
713
+ - Updated dependencies [90e2d8a]
714
+ - @ai-sdk/provider-utils@5.0.0-beta.18
715
+
716
+ ## 4.0.0-beta.34
717
+
718
+ ### Patch Changes
719
+
720
+ - 5b7e7c2: fix(google-vertex): don't send streamFunctionCallArguments for unary API calls and change default to false
721
+
722
+ ## 4.0.0-beta.33
723
+
724
+ ### Patch Changes
725
+
726
+ - Updated dependencies [3ae1786]
727
+ - @ai-sdk/provider-utils@5.0.0-beta.17
728
+
729
+ ## 4.0.0-beta.32
730
+
731
+ ### Patch Changes
732
+
733
+ - 5036db8: feat(google-vertex): add support for streaming tool arguments input
734
+
735
+ ## 4.0.0-beta.31
736
+
737
+ ### Patch Changes
738
+
739
+ - Updated dependencies [176466a]
740
+ - @ai-sdk/provider@4.0.0-beta.10
741
+ - @ai-sdk/provider-utils@5.0.0-beta.16
742
+
743
+ ## 4.0.0-beta.30
744
+
745
+ ### Patch Changes
746
+
747
+ - Updated dependencies [e311194]
748
+ - @ai-sdk/provider@4.0.0-beta.9
749
+ - @ai-sdk/provider-utils@5.0.0-beta.15
750
+
751
+ ## 4.0.0-beta.29
752
+
753
+ ### Patch Changes
754
+
755
+ - Updated dependencies [34bd95d]
756
+ - Updated dependencies [008271d]
757
+ - @ai-sdk/provider@4.0.0-beta.8
758
+ - @ai-sdk/provider-utils@5.0.0-beta.14
759
+
760
+ ## 4.0.0-beta.28
761
+
762
+ ### Patch Changes
763
+
764
+ - Updated dependencies [b0c2869]
765
+ - Updated dependencies [7e26e81]
766
+ - @ai-sdk/provider-utils@5.0.0-beta.13
767
+
768
+ ## 4.0.0-beta.27
769
+
770
+ ### Patch Changes
771
+
772
+ - 46d1149: chore(provider-utils,google): fix grammar errors in error and warning messages
773
+ - Updated dependencies [46d1149]
774
+ - @ai-sdk/provider-utils@5.0.0-beta.12
775
+
776
+ ## 4.0.0-beta.26
777
+
778
+ ### Patch Changes
779
+
780
+ - a05109d: feat(provider/google): preserve per-modality token details in usage data
781
+
782
+ ## 4.0.0-beta.25
783
+
784
+ ### Patch Changes
785
+
786
+ - Updated dependencies [6fd51c0]
787
+ - @ai-sdk/provider-utils@5.0.0-beta.11
788
+ - @ai-sdk/provider@4.0.0-beta.7
789
+
790
+ ## 4.0.0-beta.24
791
+
792
+ ### Patch Changes
793
+
794
+ - 55db546: fix(provider/google): fix Gemini service tier enum after upstream update
795
+
796
+ ## 4.0.0-beta.23
797
+
798
+ ### Patch Changes
799
+
800
+ - c29a26f: feat(provider): add support for provider references and uploading files as supported per provider
801
+ - Updated dependencies [c29a26f]
802
+ - @ai-sdk/provider-utils@5.0.0-beta.10
803
+ - @ai-sdk/provider@4.0.0-beta.6
804
+
805
+ ## 4.0.0-beta.22
806
+
807
+ ### Patch Changes
808
+
809
+ - 38fc777: Add AI Gateway hint to provider READMEs
810
+
811
+ ## 4.0.0-beta.21
812
+
813
+ ### Patch Changes
814
+
815
+ - Updated dependencies [2e17091]
816
+ - @ai-sdk/provider-utils@5.0.0-beta.9
817
+
818
+ ## 4.0.0-beta.20
819
+
820
+ ### Patch Changes
821
+
822
+ - Updated dependencies [986c6fd]
823
+ - Updated dependencies [493295c]
824
+ - @ai-sdk/provider-utils@5.0.0-beta.8
825
+
826
+ ## 4.0.0-beta.19
827
+
828
+ ### Patch Changes
829
+
830
+ - 01fa606: feat(provider/google): support combining built-in tools with function calling on Gemini 3
831
+
832
+ ## 4.0.0-beta.18
833
+
834
+ ### Patch Changes
835
+
836
+ - 9715ec7: feat(provider/google): add support for service tier parameter
837
+
838
+ ## 4.0.0-beta.17
839
+
840
+ ### Patch Changes
841
+
842
+ - Updated dependencies [1f509d4]
843
+ - @ai-sdk/provider-utils@5.0.0-beta.7
844
+ - @ai-sdk/provider@4.0.0-beta.5
845
+
846
+ ## 4.0.0-beta.16
847
+
848
+ ### Patch Changes
849
+
850
+ - 6190649: chore(provider/google): remove obsolete Google image model
851
+
852
+ ## 4.0.0-beta.15
853
+
854
+ ### Patch Changes
855
+
856
+ - 18c1970: feat(provider/google): Add multimodal tool-result support for Google function responses.
72
857
 
73
858
  Tool results with `output.type = 'content'` now map media parts into
74
859
  `functionResponse.parts` for Google models, including `image-data`,
75
860
  `file-data`, and base64 `data:` URLs in URL-style content parts.
76
861
  Remote HTTP(S) URLs in URL-style tool-result parts are not supported.
77
862
 
78
- - Updated dependencies [055cd68]
79
- - @ai-sdk/provider-utils@4.0.21
863
+ ## 4.0.0-beta.14
864
+
865
+ ### Patch Changes
866
+
867
+ - 3887c70: feat(provider): add new top-level reasoning parameter to spec and support it in `generateText` and `streamText`
868
+ - Updated dependencies [3887c70]
869
+ - @ai-sdk/provider-utils@5.0.0-beta.6
870
+ - @ai-sdk/provider@4.0.0-beta.4
871
+
872
+ ## 4.0.0-beta.13
873
+
874
+ ### Patch Changes
875
+
876
+ - Updated dependencies [776b617]
877
+ - @ai-sdk/provider-utils@5.0.0-beta.5
878
+ - @ai-sdk/provider@4.0.0-beta.3
879
+
880
+ ## 4.0.0-beta.12
881
+
882
+ ### Patch Changes
883
+
884
+ - Updated dependencies [61753c3]
885
+ - @ai-sdk/provider-utils@5.0.0-beta.4
886
+
887
+ ## 4.0.0-beta.11
888
+
889
+ ### Patch Changes
890
+
891
+ - f7d4f01: feat(provider): add support for `reasoning-file` type for files that are part of reasoning
892
+ - Updated dependencies [f7d4f01]
893
+ - @ai-sdk/provider-utils@5.0.0-beta.3
894
+ - @ai-sdk/provider@4.0.0-beta.2
895
+
896
+ ## 4.0.0-beta.10
897
+
898
+ ### Patch Changes
899
+
900
+ - Updated dependencies [5c2a5a2]
901
+ - @ai-sdk/provider@4.0.0-beta.1
902
+ - @ai-sdk/provider-utils@5.0.0-beta.2
80
903
 
81
- ## 3.0.51
904
+ ## 4.0.0-beta.9
82
905
 
83
906
  ### Patch Changes
84
907
 
85
- - 8901054: feat(google): add new finishMessage field in providerMetadata
908
+ - e59176c: chore(google): update v3 specs to v4
86
909
 
87
- ## 3.0.50
910
+ ## 4.0.0-beta.8
88
911
 
89
912
  ### Patch Changes
90
913
 
91
- - 5ffb1ad: feat(provider/google): add `gemini-embedding-2-preview` and fix multimodal embedding support with `embedMany`
914
+ - 4dac142: feat(google): add new finishMessage field in providerMetadata
92
915
 
93
- ## 3.0.49
916
+ ## 4.0.0-beta.7
94
917
 
95
918
  ### Patch Changes
96
919
 
97
- - 85f4bb4: fix(provider/google): correct JSDoc for multimodal embedding content option
920
+ - 82288b0: feat(provider/google): add `gemini-embedding-2-preview` and fix multimodal embedding support with `embedMany`
98
921
 
99
- ## 3.0.48
922
+ ## 4.0.0-beta.6
100
923
 
101
924
  ### Patch Changes
102
925
 
103
- - 35c46d1: feat(provider/google): support multimodal content parts in embedding provider options
926
+ - add4326: fix(provider/google): correct JSDoc for multimodal embedding content option
104
927
 
105
- ## 3.0.47
928
+ ## 4.0.0-beta.5
106
929
 
107
930
  ### Patch Changes
108
931
 
109
- - 9d46b93: fix(provider/google): correctly mark reasoning files as such and fix related multi-turn errors
932
+ - ab43029: feat(provider/google): support multimodal content parts in embedding provider options
110
933
 
111
- ## 3.0.46
934
+ ## 4.0.0-beta.4
112
935
 
113
936
  ### Patch Changes
114
937
 
115
- - Updated dependencies [64ac0fd]
116
- - @ai-sdk/provider-utils@4.0.20
938
+ - 2edd14e: fix(provider/google): correctly mark reasoning files as such and fix related multi-turn errors
117
939
 
118
- ## 3.0.45
940
+ ## 4.0.0-beta.3
119
941
 
120
942
  ### Patch Changes
121
943
 
122
- - e2a59ef: fix(provider/google): preserve groundingMetadata and urlContextMetadata when they arrive in a stream chunk before the finishReason chunk
944
+ - Updated dependencies [531251e]
945
+ - @ai-sdk/provider-utils@5.0.0-beta.1
123
946
 
124
- ## 3.0.44
947
+ ## 4.0.0-beta.2
125
948
 
126
949
  ### Patch Changes
127
950
 
128
- - 45d71c3: fix(google): use VALIDATED function calling mode when any tool has strict:true
951
+ - c9c4661: fix(provider/google): preserve groundingMetadata and urlContextMetadata when they arrive in a stream chunk before the finishReason chunk
952
+
953
+ ## 4.0.0-beta.1
954
+
955
+ ### Patch Changes
956
+
957
+ - 19b95f9: fix(google): use VALIDATED function calling mode when any tool has strict:true
958
+
959
+ ## 4.0.0-beta.0
960
+
961
+ ### Major Changes
962
+
963
+ - 8359612: Start v7 pre-release
964
+
965
+ ### Patch Changes
966
+
967
+ - Updated dependencies [8359612]
968
+ - @ai-sdk/provider@4.0.0-beta.0
969
+ - @ai-sdk/provider-utils@5.0.0-beta.0
129
970
 
130
971
  ## 3.0.43
131
972
 
@@ -1457,7 +2298,6 @@
1457
2298
  ### Patch Changes
1458
2299
 
1459
2300
  - 2e06f14: feat (provider/google): Change to provider defined tools
1460
-
1461
2301
  - Change the google search tool to be a provider defined tool
1462
2302
  - Added new URL context tool as a provider defined tool
1463
2303