ai 7.0.0-beta.3 → 7.0.0-beta.32
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.
- package/CHANGELOG.md +230 -20
- package/README.md +6 -16
- package/dist/index.d.mts +1075 -773
- package/dist/index.d.ts +1075 -773
- package/dist/index.js +2498 -1993
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +2347 -1836
- package/dist/index.mjs.map +1 -1
- package/dist/internal/index.d.mts +12 -23
- package/dist/internal/index.d.ts +12 -23
- package/dist/internal/index.js +36 -3
- package/dist/internal/index.js.map +1 -1
- package/dist/internal/index.mjs +36 -3
- package/dist/internal/index.mjs.map +1 -1
- package/docs/02-foundations/02-providers-and-models.mdx +4 -2
- package/docs/02-foundations/06-provider-options.mdx +8 -0
- package/docs/03-agents/05-configuring-call-options.mdx +1 -1
- package/docs/03-ai-sdk-core/15-tools-and-tool-calling.mdx +6 -2
- package/docs/03-ai-sdk-core/16-mcp-tools.mdx +6 -0
- package/docs/03-ai-sdk-core/25-settings.mdx +18 -0
- package/docs/03-ai-sdk-core/26-reasoning.mdx +190 -0
- package/docs/03-ai-sdk-core/30-embeddings.mdx +25 -34
- package/docs/03-ai-sdk-core/35-image-generation.mdx +1 -2
- package/docs/03-ai-sdk-core/40-middleware.mdx +13 -13
- package/docs/03-ai-sdk-core/55-testing.mdx +10 -10
- package/docs/03-ai-sdk-core/65-event-listeners.mdx +216 -13
- package/docs/03-ai-sdk-core/index.mdx +6 -0
- package/docs/04-ai-sdk-ui/02-chatbot.mdx +7 -0
- package/docs/04-ai-sdk-ui/03-chatbot-message-persistence.mdx +0 -1
- package/docs/04-ai-sdk-ui/50-stream-protocol.mdx +26 -0
- package/docs/06-advanced/04-caching.mdx +10 -10
- package/docs/07-reference/01-ai-sdk-core/01-generate-text.mdx +80 -10
- package/docs/07-reference/01-ai-sdk-core/02-stream-text.mdx +104 -8
- package/docs/07-reference/01-ai-sdk-core/05-embed.mdx +135 -0
- package/docs/07-reference/01-ai-sdk-core/06-embed-many.mdx +139 -0
- package/docs/07-reference/01-ai-sdk-core/10-generate-image.mdx +1 -1
- package/docs/07-reference/01-ai-sdk-core/11-transcribe.mdx +1 -1
- package/docs/07-reference/01-ai-sdk-core/12-generate-speech.mdx +1 -1
- package/docs/07-reference/01-ai-sdk-core/13-generate-video.mdx +1 -1
- package/docs/07-reference/01-ai-sdk-core/16-tool-loop-agent.mdx +1 -1
- package/docs/07-reference/01-ai-sdk-core/20-tool.mdx +1 -1
- package/docs/07-reference/01-ai-sdk-core/23-create-mcp-client.mdx +7 -0
- package/docs/07-reference/01-ai-sdk-core/30-model-message.mdx +23 -3
- package/docs/07-reference/01-ai-sdk-core/31-ui-message.mdx +18 -0
- package/docs/07-reference/01-ai-sdk-core/60-wrap-language-model.mdx +4 -4
- package/docs/07-reference/01-ai-sdk-core/61-wrap-image-model.mdx +4 -4
- package/docs/07-reference/01-ai-sdk-core/65-language-model-v2-middleware.mdx +9 -9
- package/docs/07-reference/01-ai-sdk-core/66-extract-reasoning-middleware.mdx +1 -1
- package/docs/07-reference/01-ai-sdk-core/68-default-settings-middleware.mdx +1 -1
- package/docs/08-migration-guides/23-migration-guide-7-0.mdx +95 -0
- package/docs/09-troubleshooting/30-model-is-not-assignable-to-type.mdx +1 -1
- package/package.json +14 -11
- package/src/agent/agent.ts +1 -1
- package/src/agent/create-agent-ui-stream-response.ts +1 -1
- package/src/agent/create-agent-ui-stream.ts +1 -1
- package/src/agent/pipe-agent-ui-stream-to-response.ts +1 -1
- package/src/agent/tool-loop-agent-settings.ts +10 -2
- package/src/agent/tool-loop-agent.ts +1 -2
- package/src/embed/embed-events.ts +109 -0
- package/src/embed/embed-many.ts +99 -1
- package/src/embed/embed.ts +78 -1
- package/src/embed/index.ts +1 -0
- package/src/error/invalid-stream-part-error.ts +3 -3
- package/src/generate-object/generate-object.ts +2 -5
- package/src/generate-object/stream-object.ts +7 -8
- package/src/generate-text/content-part.ts +8 -2
- package/src/generate-text/{callback-events.ts → core-events.ts} +82 -24
- package/src/generate-text/create-execute-tools-transformation.ts +158 -0
- package/src/generate-text/create-stream-text-part-transform.ts +240 -0
- package/src/generate-text/execute-tool-call.ts +89 -96
- package/src/generate-text/generate-text-result.ts +2 -2
- package/src/generate-text/generate-text.ts +581 -697
- package/src/generate-text/index.ts +2 -2
- package/src/generate-text/invoke-tool-callbacks-from-stream.ts +81 -0
- package/src/generate-text/reasoning-output.ts +79 -0
- package/src/generate-text/reasoning.ts +5 -3
- package/src/generate-text/step-result.ts +33 -13
- package/src/generate-text/stream-text-result.ts +168 -95
- package/src/generate-text/stream-text.ts +706 -843
- package/src/generate-text/to-response-messages.ts +15 -0
- package/src/prompt/call-settings.ts +34 -13
- package/src/prompt/content-part.ts +21 -0
- package/src/prompt/convert-to-language-model-prompt.ts +22 -0
- package/src/prompt/message.ts +4 -0
- package/src/prompt/prepare-call-settings.ts +2 -0
- package/src/registry/provider-registry.ts +1 -2
- package/src/telemetry/get-base-telemetry-attributes.ts +5 -13
- package/src/telemetry/get-global-telemetry-integration.ts +44 -19
- package/src/telemetry/open-telemetry-integration.ts +537 -0
- package/src/telemetry/telemetry-integration-registry.ts +5 -0
- package/src/telemetry/telemetry-integration.ts +77 -1
- package/src/telemetry/telemetry-settings.ts +4 -2
- package/src/ui/convert-to-model-messages.ts +29 -2
- package/src/ui/direct-chat-transport.ts +1 -2
- package/src/ui/http-chat-transport.ts +8 -19
- package/src/ui/index.ts +4 -0
- package/src/ui/process-ui-message-stream.ts +73 -8
- package/src/ui/ui-messages.ts +66 -0
- package/src/ui/validate-ui-messages.ts +15 -0
- package/src/ui-message-stream/ui-message-chunks.ts +26 -0
- package/src/generate-text/run-tools-transformation.ts +0 -442
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,215 @@
|
|
|
1
1
|
# ai
|
|
2
2
|
|
|
3
|
+
## 7.0.0-beta.32
|
|
4
|
+
|
|
5
|
+
### Major Changes
|
|
6
|
+
|
|
7
|
+
- 4b46062: refactoring(ai): extract tool callback invocation into separate function and forward chunks before callback invocation
|
|
8
|
+
|
|
9
|
+
### Patch Changes
|
|
10
|
+
|
|
11
|
+
- Updated dependencies [165b97a]
|
|
12
|
+
- @ai-sdk/gateway@4.0.0-beta.18
|
|
13
|
+
|
|
14
|
+
## 7.0.0-beta.31
|
|
15
|
+
|
|
16
|
+
### Patch Changes
|
|
17
|
+
|
|
18
|
+
- e79e644: chore(ai/core): remove `timeout` from `CallSettings` as it was effectively unused there
|
|
19
|
+
|
|
20
|
+
## 7.0.0-beta.30
|
|
21
|
+
|
|
22
|
+
### Patch Changes
|
|
23
|
+
|
|
24
|
+
- f5a6f89: README updates
|
|
25
|
+
|
|
26
|
+
## 7.0.0-beta.29
|
|
27
|
+
|
|
28
|
+
### Patch Changes
|
|
29
|
+
|
|
30
|
+
- 877bf12: fix(ai): flatten model attributes for telemetry
|
|
31
|
+
|
|
32
|
+
## 7.0.0-beta.28
|
|
33
|
+
|
|
34
|
+
### Major Changes
|
|
35
|
+
|
|
36
|
+
- b9cf502: refactoring(ai): delay tool execution in stream text until model call is finished
|
|
37
|
+
|
|
38
|
+
## 7.0.0-beta.27
|
|
39
|
+
|
|
40
|
+
### Patch Changes
|
|
41
|
+
|
|
42
|
+
- 3887c70: feat(provider): add new top-level reasoning parameter to spec and support it in `generateText` and `streamText`
|
|
43
|
+
- Updated dependencies [3887c70]
|
|
44
|
+
- @ai-sdk/provider-utils@5.0.0-beta.6
|
|
45
|
+
- @ai-sdk/provider@4.0.0-beta.4
|
|
46
|
+
- @ai-sdk/gateway@4.0.0-beta.17
|
|
47
|
+
|
|
48
|
+
## 7.0.0-beta.26
|
|
49
|
+
|
|
50
|
+
### Patch Changes
|
|
51
|
+
|
|
52
|
+
- f0b0b20: feat(ai): add per-tool timeout overrides via toolTimeouts
|
|
53
|
+
|
|
54
|
+
## 7.0.0-beta.25
|
|
55
|
+
|
|
56
|
+
### Patch Changes
|
|
57
|
+
|
|
58
|
+
- ff9ce30: feat(ai): introduce experimental callbacks for embed function
|
|
59
|
+
|
|
60
|
+
## 7.0.0-beta.24
|
|
61
|
+
|
|
62
|
+
### Major Changes
|
|
63
|
+
|
|
64
|
+
- 776b617: feat(provider): adding new 'custom' content type
|
|
65
|
+
|
|
66
|
+
### Patch Changes
|
|
67
|
+
|
|
68
|
+
- Updated dependencies [776b617]
|
|
69
|
+
- @ai-sdk/provider-utils@5.0.0-beta.5
|
|
70
|
+
- @ai-sdk/provider@4.0.0-beta.3
|
|
71
|
+
- @ai-sdk/gateway@4.0.0-beta.16
|
|
72
|
+
|
|
73
|
+
## 7.0.0-beta.23
|
|
74
|
+
|
|
75
|
+
### Patch Changes
|
|
76
|
+
|
|
77
|
+
- 80d4dde: fix(ai): include tool input on tool result for provider executed dynamic tools
|
|
78
|
+
- Updated dependencies [61753c3]
|
|
79
|
+
- @ai-sdk/provider-utils@5.0.0-beta.4
|
|
80
|
+
- @ai-sdk/gateway@4.0.0-beta.15
|
|
81
|
+
|
|
82
|
+
## 7.0.0-beta.22
|
|
83
|
+
|
|
84
|
+
### Patch Changes
|
|
85
|
+
|
|
86
|
+
- Updated dependencies [ead9144]
|
|
87
|
+
- @ai-sdk/gateway@4.0.0-beta.14
|
|
88
|
+
|
|
89
|
+
## 7.0.0-beta.21
|
|
90
|
+
|
|
91
|
+
### Patch Changes
|
|
92
|
+
|
|
93
|
+
- 34fd051: feat(ai): add toolMs to timeout configuration
|
|
94
|
+
|
|
95
|
+
## 7.0.0-beta.20
|
|
96
|
+
|
|
97
|
+
### Patch Changes
|
|
98
|
+
|
|
99
|
+
- Updated dependencies [2095655]
|
|
100
|
+
- @ai-sdk/gateway@4.0.0-beta.13
|
|
101
|
+
|
|
102
|
+
## 7.0.0-beta.19
|
|
103
|
+
|
|
104
|
+
### Patch Changes
|
|
105
|
+
|
|
106
|
+
- Updated dependencies [f7d4f01]
|
|
107
|
+
- @ai-sdk/provider-utils@5.0.0-beta.3
|
|
108
|
+
- @ai-sdk/provider@4.0.0-beta.2
|
|
109
|
+
- @ai-sdk/gateway@4.0.0-beta.12
|
|
110
|
+
|
|
111
|
+
## 7.0.0-beta.18
|
|
112
|
+
|
|
113
|
+
### Patch Changes
|
|
114
|
+
|
|
115
|
+
- Updated dependencies [5c2a5a2]
|
|
116
|
+
- @ai-sdk/provider@4.0.0-beta.1
|
|
117
|
+
- @ai-sdk/gateway@4.0.0-beta.11
|
|
118
|
+
- @ai-sdk/provider-utils@5.0.0-beta.2
|
|
119
|
+
|
|
120
|
+
## 7.0.0-beta.17
|
|
121
|
+
|
|
122
|
+
### Patch Changes
|
|
123
|
+
|
|
124
|
+
- Updated dependencies [4d6ab9a]
|
|
125
|
+
- @ai-sdk/gateway@4.0.0-beta.10
|
|
126
|
+
|
|
127
|
+
## 7.0.0-beta.16
|
|
128
|
+
|
|
129
|
+
### Major Changes
|
|
130
|
+
|
|
131
|
+
- 5b8c58f: feat(ai): decouple otel from core functions
|
|
132
|
+
|
|
133
|
+
## 7.0.0-beta.15
|
|
134
|
+
|
|
135
|
+
### Patch Changes
|
|
136
|
+
|
|
137
|
+
- Updated dependencies [980f777]
|
|
138
|
+
- Updated dependencies [7185ba2]
|
|
139
|
+
- @ai-sdk/gateway@4.0.0-beta.9
|
|
140
|
+
|
|
141
|
+
## 7.0.0-beta.14
|
|
142
|
+
|
|
143
|
+
### Patch Changes
|
|
144
|
+
|
|
145
|
+
- Updated dependencies [4adc485]
|
|
146
|
+
- @ai-sdk/gateway@4.0.0-beta.8
|
|
147
|
+
|
|
148
|
+
## 7.0.0-beta.13
|
|
149
|
+
|
|
150
|
+
### Patch Changes
|
|
151
|
+
|
|
152
|
+
- c26ca8d: Remove custom User-Agent header from HttpChatTransport to fix CORS preflight failures in Safari and Firefox
|
|
153
|
+
|
|
154
|
+
## 7.0.0-beta.12
|
|
155
|
+
|
|
156
|
+
### Patch Changes
|
|
157
|
+
|
|
158
|
+
- Updated dependencies [e046ea3]
|
|
159
|
+
- @ai-sdk/gateway@4.0.0-beta.7
|
|
160
|
+
|
|
161
|
+
## 7.0.0-beta.11
|
|
162
|
+
|
|
163
|
+
### Patch Changes
|
|
164
|
+
|
|
165
|
+
- Updated dependencies [82288b0]
|
|
166
|
+
- @ai-sdk/gateway@4.0.0-beta.6
|
|
167
|
+
|
|
168
|
+
## 7.0.0-beta.10
|
|
169
|
+
|
|
170
|
+
### Patch Changes
|
|
171
|
+
|
|
172
|
+
- Updated dependencies [aa5a583]
|
|
173
|
+
- @ai-sdk/gateway@4.0.0-beta.5
|
|
174
|
+
|
|
175
|
+
## 7.0.0-beta.9
|
|
176
|
+
|
|
177
|
+
### Patch Changes
|
|
178
|
+
|
|
179
|
+
- 1fe058b: fix(anthropic): preserve the error code returned by model
|
|
180
|
+
|
|
181
|
+
## 7.0.0-beta.8
|
|
182
|
+
|
|
183
|
+
### Patch Changes
|
|
184
|
+
|
|
185
|
+
- Updated dependencies [f32d84a]
|
|
186
|
+
- @ai-sdk/gateway@4.0.0-beta.4
|
|
187
|
+
|
|
188
|
+
## 7.0.0-beta.7
|
|
189
|
+
|
|
190
|
+
### Patch Changes
|
|
191
|
+
|
|
192
|
+
- 210ed3d: feat(ai): pass result provider metadata across the stream
|
|
193
|
+
|
|
194
|
+
## 7.0.0-beta.6
|
|
195
|
+
|
|
196
|
+
### Patch Changes
|
|
197
|
+
|
|
198
|
+
- Updated dependencies [c949e25]
|
|
199
|
+
- @ai-sdk/gateway@4.0.0-beta.3
|
|
200
|
+
|
|
201
|
+
## 7.0.0-beta.5
|
|
202
|
+
|
|
203
|
+
### Patch Changes
|
|
204
|
+
|
|
205
|
+
- ebd4da2: feat(ai): add missing usage attributes
|
|
206
|
+
|
|
207
|
+
## 7.0.0-beta.4
|
|
208
|
+
|
|
209
|
+
### Patch Changes
|
|
210
|
+
|
|
211
|
+
- 5ceed7d: fix(ai): doStream should reflect transformed values
|
|
212
|
+
|
|
3
213
|
## 7.0.0-beta.3
|
|
4
214
|
|
|
5
215
|
### Patch Changes
|
|
@@ -894,13 +1104,13 @@
|
|
|
894
1104
|
Before
|
|
895
1105
|
|
|
896
1106
|
```ts
|
|
897
|
-
model.textEmbeddingModel(
|
|
1107
|
+
model.textEmbeddingModel("my-model-id");
|
|
898
1108
|
```
|
|
899
1109
|
|
|
900
1110
|
After
|
|
901
1111
|
|
|
902
1112
|
```ts
|
|
903
|
-
model.embeddingModel(
|
|
1113
|
+
model.embeddingModel("my-model-id");
|
|
904
1114
|
```
|
|
905
1115
|
|
|
906
1116
|
- b67d224: Fixes an issue where `providerMetadata` and `providerExecuted` were lost when tool input validation failed
|
|
@@ -923,15 +1133,15 @@
|
|
|
923
1133
|
This change replaces
|
|
924
1134
|
|
|
925
1135
|
```ts
|
|
926
|
-
import { experimental_createMCPClient } from
|
|
927
|
-
import { Experimental_StdioMCPTransport } from
|
|
1136
|
+
import { experimental_createMCPClient } from "ai";
|
|
1137
|
+
import { Experimental_StdioMCPTransport } from "ai/mcp-stdio";
|
|
928
1138
|
```
|
|
929
1139
|
|
|
930
1140
|
with
|
|
931
1141
|
|
|
932
1142
|
```ts
|
|
933
|
-
import { experimental_createMCPClient } from
|
|
934
|
-
import { Experimental_StdioMCPTransport } from
|
|
1143
|
+
import { experimental_createMCPClient } from "@ai-sdk/mcp";
|
|
1144
|
+
import { Experimental_StdioMCPTransport } from "@ai-sdk/mcp/mcp-stdio";
|
|
935
1145
|
```
|
|
936
1146
|
|
|
937
1147
|
- 90e5bdd: chore(ai): restructure agent files
|
|
@@ -1451,13 +1661,13 @@
|
|
|
1451
1661
|
Before
|
|
1452
1662
|
|
|
1453
1663
|
```ts
|
|
1454
|
-
model.textEmbeddingModel(
|
|
1664
|
+
model.textEmbeddingModel("my-model-id");
|
|
1455
1665
|
```
|
|
1456
1666
|
|
|
1457
1667
|
After
|
|
1458
1668
|
|
|
1459
1669
|
```ts
|
|
1460
|
-
model.embeddingModel(
|
|
1670
|
+
model.embeddingModel("my-model-id");
|
|
1461
1671
|
```
|
|
1462
1672
|
|
|
1463
1673
|
- Updated dependencies [8d9e8ad]
|
|
@@ -1804,15 +2014,15 @@
|
|
|
1804
2014
|
This change replaces
|
|
1805
2015
|
|
|
1806
2016
|
```ts
|
|
1807
|
-
import { experimental_createMCPClient } from
|
|
1808
|
-
import { Experimental_StdioMCPTransport } from
|
|
2017
|
+
import { experimental_createMCPClient } from "ai";
|
|
2018
|
+
import { Experimental_StdioMCPTransport } from "ai/mcp-stdio";
|
|
1809
2019
|
```
|
|
1810
2020
|
|
|
1811
2021
|
with
|
|
1812
2022
|
|
|
1813
2023
|
```ts
|
|
1814
|
-
import { experimental_createMCPClient } from
|
|
1815
|
-
import { Experimental_StdioMCPTransport } from
|
|
2024
|
+
import { experimental_createMCPClient } from "@ai-sdk/mcp";
|
|
2025
|
+
import { Experimental_StdioMCPTransport } from "@ai-sdk/mcp/mcp-stdio";
|
|
1816
2026
|
```
|
|
1817
2027
|
|
|
1818
2028
|
## 6.0.0-beta.71
|
|
@@ -2731,7 +2941,7 @@
|
|
|
2731
2941
|
|
|
2732
2942
|
```js
|
|
2733
2943
|
await generateImage({
|
|
2734
|
-
model: luma.image(
|
|
2944
|
+
model: luma.image("photon-flash-1", {
|
|
2735
2945
|
maxImagesPerCall: 5,
|
|
2736
2946
|
pollIntervalMillis: 500,
|
|
2737
2947
|
}),
|
|
@@ -2744,7 +2954,7 @@
|
|
|
2744
2954
|
|
|
2745
2955
|
```js
|
|
2746
2956
|
await generateImage({
|
|
2747
|
-
model: luma.image(
|
|
2957
|
+
model: luma.image("photon-flash-1"),
|
|
2748
2958
|
prompt,
|
|
2749
2959
|
n: 10,
|
|
2750
2960
|
maxImagesPerCall: 5,
|
|
@@ -2944,10 +3154,10 @@
|
|
|
2944
3154
|
The `experimental_generateImage` method from the `ai` package now returnes revised prompts for OpenAI's image models.
|
|
2945
3155
|
|
|
2946
3156
|
```js
|
|
2947
|
-
const prompt =
|
|
3157
|
+
const prompt = "Santa Claus driving a Cadillac";
|
|
2948
3158
|
|
|
2949
3159
|
const { providerMetadata } = await experimental_generateImage({
|
|
2950
|
-
model: openai.image(
|
|
3160
|
+
model: openai.image("dall-e-3"),
|
|
2951
3161
|
prompt,
|
|
2952
3162
|
});
|
|
2953
3163
|
|
|
@@ -3610,7 +3820,7 @@
|
|
|
3610
3820
|
|
|
3611
3821
|
```js
|
|
3612
3822
|
await generateImage({
|
|
3613
|
-
model: luma.image(
|
|
3823
|
+
model: luma.image("photon-flash-1", {
|
|
3614
3824
|
maxImagesPerCall: 5,
|
|
3615
3825
|
pollIntervalMillis: 500,
|
|
3616
3826
|
}),
|
|
@@ -3623,7 +3833,7 @@
|
|
|
3623
3833
|
|
|
3624
3834
|
```js
|
|
3625
3835
|
await generateImage({
|
|
3626
|
-
model: luma.image(
|
|
3836
|
+
model: luma.image("photon-flash-1"),
|
|
3627
3837
|
prompt,
|
|
3628
3838
|
n: 10,
|
|
3629
3839
|
maxImagesPerCall: 5,
|
|
@@ -3721,10 +3931,10 @@
|
|
|
3721
3931
|
The `experimental_generateImage` method from the `ai` package now returnes revised prompts for OpenAI's image models.
|
|
3722
3932
|
|
|
3723
3933
|
```js
|
|
3724
|
-
const prompt =
|
|
3934
|
+
const prompt = "Santa Claus driving a Cadillac";
|
|
3725
3935
|
|
|
3726
3936
|
const { providerMetadata } = await experimental_generateImage({
|
|
3727
|
-
model: openai.image(
|
|
3937
|
+
model: openai.image("dall-e-3"),
|
|
3728
3938
|
prompt,
|
|
3729
3939
|
});
|
|
3730
3940
|
|
package/README.md
CHANGED
|
@@ -30,7 +30,7 @@ By default, the AI SDK uses the [Vercel AI Gateway](https://vercel.com/docs/ai-g
|
|
|
30
30
|
|
|
31
31
|
```ts
|
|
32
32
|
const result = await generateText({
|
|
33
|
-
model: 'anthropic/claude-opus-4.
|
|
33
|
+
model: 'anthropic/claude-opus-4.6', // or 'openai/gpt-5.4', 'google/gemini-3-flash', etc.
|
|
34
34
|
prompt: 'Hello!',
|
|
35
35
|
});
|
|
36
36
|
```
|
|
@@ -45,7 +45,7 @@ npm install @ai-sdk/openai @ai-sdk/anthropic @ai-sdk/google
|
|
|
45
45
|
import { anthropic } from '@ai-sdk/anthropic';
|
|
46
46
|
|
|
47
47
|
const result = await generateText({
|
|
48
|
-
model: anthropic('claude-opus-4-
|
|
48
|
+
model: anthropic('claude-opus-4-6'), // or openai('gpt-5.4'), google('gemini-3-flash'), etc.
|
|
49
49
|
prompt: 'Hello!',
|
|
50
50
|
});
|
|
51
51
|
```
|
|
@@ -58,17 +58,7 @@ const result = await generateText({
|
|
|
58
58
|
import { generateText } from 'ai';
|
|
59
59
|
|
|
60
60
|
const { text } = await generateText({
|
|
61
|
-
model: 'openai/gpt-5', // use Vercel AI Gateway
|
|
62
|
-
prompt: 'What is an agent?',
|
|
63
|
-
});
|
|
64
|
-
```
|
|
65
|
-
|
|
66
|
-
```ts
|
|
67
|
-
import { generateText } from 'ai';
|
|
68
|
-
import { openai } from '@ai-sdk/openai';
|
|
69
|
-
|
|
70
|
-
const { text } = await generateText({
|
|
71
|
-
model: openai('gpt-5'), // use OpenAI Responses API
|
|
61
|
+
model: 'openai/gpt-5.4', // use Vercel AI Gateway
|
|
72
62
|
prompt: 'What is an agent?',
|
|
73
63
|
});
|
|
74
64
|
```
|
|
@@ -80,7 +70,7 @@ import { generateText, Output } from 'ai';
|
|
|
80
70
|
import { z } from 'zod';
|
|
81
71
|
|
|
82
72
|
const { output } = await generateText({
|
|
83
|
-
model: 'openai/gpt-5',
|
|
73
|
+
model: 'openai/gpt-5.4',
|
|
84
74
|
output: Output.object({
|
|
85
75
|
schema: z.object({
|
|
86
76
|
recipe: z.object({
|
|
@@ -102,7 +92,7 @@ const { output } = await generateText({
|
|
|
102
92
|
import { ToolLoopAgent } from 'ai';
|
|
103
93
|
|
|
104
94
|
const sandboxAgent = new ToolLoopAgent({
|
|
105
|
-
model: 'openai/gpt-5',
|
|
95
|
+
model: 'openai/gpt-5.4',
|
|
106
96
|
system: 'You are an agent with access to a shell environment.',
|
|
107
97
|
tools: {
|
|
108
98
|
shell: openai.tools.localShell({
|
|
@@ -134,7 +124,7 @@ import { openai } from '@ai-sdk/openai';
|
|
|
134
124
|
import { ToolLoopAgent, InferAgentUIMessage } from 'ai';
|
|
135
125
|
|
|
136
126
|
export const imageGenerationAgent = new ToolLoopAgent({
|
|
137
|
-
model: openai
|
|
127
|
+
model: 'openai/gpt-5.4',
|
|
138
128
|
tools: {
|
|
139
129
|
generateImage: openai.tools.imageGeneration({
|
|
140
130
|
partialImages: 3,
|