@ai-sdk/deepseek 1.0.0-canary.8 → 1.0.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.
- package/CHANGELOG.md +496 -0
- package/README.md +2 -2
- package/dist/index.js +13 -14
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +5 -6
- package/dist/index.mjs.map +1 -1
- package/package.json +9 -7
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,501 @@
|
|
|
1
1
|
# @ai-sdk/deepseek
|
|
2
2
|
|
|
3
|
+
## 1.0.0
|
|
4
|
+
|
|
5
|
+
### Major Changes
|
|
6
|
+
|
|
7
|
+
- d5f588f: AI SDK 5
|
|
8
|
+
|
|
9
|
+
### Patch Changes
|
|
10
|
+
|
|
11
|
+
- fa49207: feat(providers/openai-compatible): convert to providerOptions
|
|
12
|
+
- e2aceaf: feat: add raw chunk support
|
|
13
|
+
- d1a034f: feature: using Zod 4 for internal stuff
|
|
14
|
+
- 205077b: fix: improve Zod compatibility
|
|
15
|
+
- Updated dependencies [a571d6e]
|
|
16
|
+
- Updated dependencies [742b7be]
|
|
17
|
+
- Updated dependencies [e7fcc86]
|
|
18
|
+
- Updated dependencies [7cddb72]
|
|
19
|
+
- Updated dependencies [ccce59b]
|
|
20
|
+
- Updated dependencies [e2b9e4b]
|
|
21
|
+
- Updated dependencies [95857aa]
|
|
22
|
+
- Updated dependencies [45c1ea2]
|
|
23
|
+
- Updated dependencies [6f6bb89]
|
|
24
|
+
- Updated dependencies [060370c]
|
|
25
|
+
- Updated dependencies [dc714f3]
|
|
26
|
+
- Updated dependencies [b5da06a]
|
|
27
|
+
- Updated dependencies [d1a1aa1]
|
|
28
|
+
- Updated dependencies [63f9e9b]
|
|
29
|
+
- Updated dependencies [5d142ab]
|
|
30
|
+
- Updated dependencies [d5f588f]
|
|
31
|
+
- Updated dependencies [e025824]
|
|
32
|
+
- Updated dependencies [0571b98]
|
|
33
|
+
- Updated dependencies [6db02c9]
|
|
34
|
+
- Updated dependencies [b6b43c7]
|
|
35
|
+
- Updated dependencies [4fef487]
|
|
36
|
+
- Updated dependencies [48d257a]
|
|
37
|
+
- Updated dependencies [0c0c0b3]
|
|
38
|
+
- Updated dependencies [0d2c085]
|
|
39
|
+
- Updated dependencies [fa49207]
|
|
40
|
+
- Updated dependencies [40acf9b]
|
|
41
|
+
- Updated dependencies [cf8280e]
|
|
42
|
+
- Updated dependencies [9222aeb]
|
|
43
|
+
- Updated dependencies [b9a6121]
|
|
44
|
+
- Updated dependencies [e2aceaf]
|
|
45
|
+
- Updated dependencies [411e483]
|
|
46
|
+
- Updated dependencies [8ba77a7]
|
|
47
|
+
- Updated dependencies [db72adc]
|
|
48
|
+
- Updated dependencies [7b3ae3f]
|
|
49
|
+
- Updated dependencies [a166433]
|
|
50
|
+
- Updated dependencies [26735b5]
|
|
51
|
+
- Updated dependencies [443d8ec]
|
|
52
|
+
- Updated dependencies [42e32b0]
|
|
53
|
+
- Updated dependencies [a8c8bd5]
|
|
54
|
+
- Updated dependencies [abf9a79]
|
|
55
|
+
- Updated dependencies [14c9410]
|
|
56
|
+
- Updated dependencies [e86be6f]
|
|
57
|
+
- Updated dependencies [9bf7291]
|
|
58
|
+
- Updated dependencies [2e13791]
|
|
59
|
+
- Updated dependencies [7b069ed]
|
|
60
|
+
- Updated dependencies [9f95b35]
|
|
61
|
+
- Updated dependencies [66962ed]
|
|
62
|
+
- Updated dependencies [0d06df6]
|
|
63
|
+
- Updated dependencies [472524a]
|
|
64
|
+
- Updated dependencies [dd3ff01]
|
|
65
|
+
- Updated dependencies [d9209ca]
|
|
66
|
+
- Updated dependencies [d9c98f4]
|
|
67
|
+
- Updated dependencies [05d2819]
|
|
68
|
+
- Updated dependencies [9301f86]
|
|
69
|
+
- Updated dependencies [0a87932]
|
|
70
|
+
- Updated dependencies [737f1e2]
|
|
71
|
+
- Updated dependencies [c4a2fec]
|
|
72
|
+
- Updated dependencies [957b739]
|
|
73
|
+
- Updated dependencies [79457bd]
|
|
74
|
+
- Updated dependencies [a3f768e]
|
|
75
|
+
- Updated dependencies [7435eb5]
|
|
76
|
+
- Updated dependencies [8aa9e20]
|
|
77
|
+
- Updated dependencies [4617fab]
|
|
78
|
+
- Updated dependencies [516be5b]
|
|
79
|
+
- Updated dependencies [ac34802]
|
|
80
|
+
- Updated dependencies [0054544]
|
|
81
|
+
- Updated dependencies [cb68df0]
|
|
82
|
+
- Updated dependencies [ad80501]
|
|
83
|
+
- Updated dependencies [68ecf2f]
|
|
84
|
+
- Updated dependencies [9e9c809]
|
|
85
|
+
- Updated dependencies [32831c6]
|
|
86
|
+
- Updated dependencies [6dc848c]
|
|
87
|
+
- Updated dependencies [6b98118]
|
|
88
|
+
- Updated dependencies [d0f9495]
|
|
89
|
+
- Updated dependencies [63d791d]
|
|
90
|
+
- Updated dependencies [87b828f]
|
|
91
|
+
- Updated dependencies [3f2f00c]
|
|
92
|
+
- Updated dependencies [bfdca8d]
|
|
93
|
+
- Updated dependencies [0ff02bb]
|
|
94
|
+
- Updated dependencies [7979f7f]
|
|
95
|
+
- Updated dependencies [39a4fab]
|
|
96
|
+
- Updated dependencies [44f4aba]
|
|
97
|
+
- Updated dependencies [9bd5ab5]
|
|
98
|
+
- Updated dependencies [57edfcb]
|
|
99
|
+
- Updated dependencies [faf8446]
|
|
100
|
+
- Updated dependencies [7ea4132]
|
|
101
|
+
- Updated dependencies [d1a034f]
|
|
102
|
+
- Updated dependencies [5c56081]
|
|
103
|
+
- Updated dependencies [fd65bc6]
|
|
104
|
+
- Updated dependencies [023ba40]
|
|
105
|
+
- Updated dependencies [ea7a7c9]
|
|
106
|
+
- Updated dependencies [1b101e1]
|
|
107
|
+
- Updated dependencies [26535e0]
|
|
108
|
+
- Updated dependencies [e030615]
|
|
109
|
+
- Updated dependencies [5e57fae]
|
|
110
|
+
- Updated dependencies [393138b]
|
|
111
|
+
- Updated dependencies [c57e248]
|
|
112
|
+
- Updated dependencies [88a8ee5]
|
|
113
|
+
- Updated dependencies [41fa418]
|
|
114
|
+
- Updated dependencies [205077b]
|
|
115
|
+
- Updated dependencies [71f938d]
|
|
116
|
+
- Updated dependencies [3795467]
|
|
117
|
+
- Updated dependencies [28a5ed5]
|
|
118
|
+
- Updated dependencies [7182d14]
|
|
119
|
+
- Updated dependencies [c1e6647]
|
|
120
|
+
- Updated dependencies [1766ede]
|
|
121
|
+
- Updated dependencies [811dff3]
|
|
122
|
+
- Updated dependencies [f10304b]
|
|
123
|
+
- Updated dependencies [dd5fd43]
|
|
124
|
+
- Updated dependencies [33f4a6a]
|
|
125
|
+
- Updated dependencies [383cbfa]
|
|
126
|
+
- Updated dependencies [27deb4d]
|
|
127
|
+
- Updated dependencies [c4df419]
|
|
128
|
+
- Updated dependencies [281bb1c]
|
|
129
|
+
- @ai-sdk/provider-utils@3.0.0
|
|
130
|
+
- @ai-sdk/provider@2.0.0
|
|
131
|
+
- @ai-sdk/openai-compatible@1.0.0
|
|
132
|
+
|
|
133
|
+
## 1.0.0-beta.13
|
|
134
|
+
|
|
135
|
+
### Patch Changes
|
|
136
|
+
|
|
137
|
+
- Updated dependencies [88a8ee5]
|
|
138
|
+
- @ai-sdk/provider-utils@3.0.0-beta.10
|
|
139
|
+
- @ai-sdk/openai-compatible@1.0.0-beta.13
|
|
140
|
+
|
|
141
|
+
## 1.0.0-beta.12
|
|
142
|
+
|
|
143
|
+
### Patch Changes
|
|
144
|
+
|
|
145
|
+
- Updated dependencies [27deb4d]
|
|
146
|
+
- @ai-sdk/provider@2.0.0-beta.2
|
|
147
|
+
- @ai-sdk/openai-compatible@1.0.0-beta.12
|
|
148
|
+
- @ai-sdk/provider-utils@3.0.0-beta.9
|
|
149
|
+
|
|
150
|
+
## 1.0.0-beta.11
|
|
151
|
+
|
|
152
|
+
### Patch Changes
|
|
153
|
+
|
|
154
|
+
- Updated dependencies [dd5fd43]
|
|
155
|
+
- @ai-sdk/provider-utils@3.0.0-beta.8
|
|
156
|
+
- @ai-sdk/openai-compatible@1.0.0-beta.11
|
|
157
|
+
|
|
158
|
+
## 1.0.0-beta.10
|
|
159
|
+
|
|
160
|
+
### Patch Changes
|
|
161
|
+
|
|
162
|
+
- Updated dependencies [e7fcc86]
|
|
163
|
+
- @ai-sdk/provider-utils@3.0.0-beta.7
|
|
164
|
+
- @ai-sdk/openai-compatible@1.0.0-beta.10
|
|
165
|
+
|
|
166
|
+
## 1.0.0-beta.9
|
|
167
|
+
|
|
168
|
+
### Patch Changes
|
|
169
|
+
|
|
170
|
+
- Updated dependencies [737f1e2]
|
|
171
|
+
- Updated dependencies [ac34802]
|
|
172
|
+
- @ai-sdk/openai-compatible@1.0.0-beta.9
|
|
173
|
+
- @ai-sdk/provider-utils@3.0.0-beta.6
|
|
174
|
+
|
|
175
|
+
## 1.0.0-beta.8
|
|
176
|
+
|
|
177
|
+
### Patch Changes
|
|
178
|
+
|
|
179
|
+
- Updated dependencies [57edfcb]
|
|
180
|
+
- Updated dependencies [383cbfa]
|
|
181
|
+
- @ai-sdk/provider-utils@3.0.0-beta.5
|
|
182
|
+
- @ai-sdk/openai-compatible@1.0.0-beta.8
|
|
183
|
+
|
|
184
|
+
## 1.0.0-beta.7
|
|
185
|
+
|
|
186
|
+
### Patch Changes
|
|
187
|
+
|
|
188
|
+
- 205077b: fix: improve Zod compatibility
|
|
189
|
+
- Updated dependencies [205077b]
|
|
190
|
+
- @ai-sdk/openai-compatible@1.0.0-beta.7
|
|
191
|
+
- @ai-sdk/provider-utils@3.0.0-beta.4
|
|
192
|
+
|
|
193
|
+
## 1.0.0-beta.6
|
|
194
|
+
|
|
195
|
+
### Patch Changes
|
|
196
|
+
|
|
197
|
+
- Updated dependencies [281bb1c]
|
|
198
|
+
- @ai-sdk/openai-compatible@1.0.0-beta.6
|
|
199
|
+
|
|
200
|
+
## 1.0.0-beta.5
|
|
201
|
+
|
|
202
|
+
### Patch Changes
|
|
203
|
+
|
|
204
|
+
- Updated dependencies [05d2819]
|
|
205
|
+
- @ai-sdk/provider-utils@3.0.0-beta.3
|
|
206
|
+
- @ai-sdk/openai-compatible@1.0.0-beta.5
|
|
207
|
+
|
|
208
|
+
## 1.0.0-beta.4
|
|
209
|
+
|
|
210
|
+
### Patch Changes
|
|
211
|
+
|
|
212
|
+
- Updated dependencies [1b101e1]
|
|
213
|
+
- @ai-sdk/openai-compatible@1.0.0-beta.4
|
|
214
|
+
|
|
215
|
+
## 1.0.0-beta.3
|
|
216
|
+
|
|
217
|
+
### Patch Changes
|
|
218
|
+
|
|
219
|
+
- Updated dependencies [7b069ed]
|
|
220
|
+
- @ai-sdk/openai-compatible@1.0.0-beta.3
|
|
221
|
+
|
|
222
|
+
## 1.0.0-beta.2
|
|
223
|
+
|
|
224
|
+
### Patch Changes
|
|
225
|
+
|
|
226
|
+
- d1a034f: feature: using Zod 4 for internal stuff
|
|
227
|
+
- Updated dependencies [0571b98]
|
|
228
|
+
- Updated dependencies [39a4fab]
|
|
229
|
+
- Updated dependencies [d1a034f]
|
|
230
|
+
- @ai-sdk/provider-utils@3.0.0-beta.2
|
|
231
|
+
- @ai-sdk/openai-compatible@1.0.0-beta.2
|
|
232
|
+
|
|
233
|
+
## 1.0.0-beta.1
|
|
234
|
+
|
|
235
|
+
### Patch Changes
|
|
236
|
+
|
|
237
|
+
- Updated dependencies [742b7be]
|
|
238
|
+
- Updated dependencies [7cddb72]
|
|
239
|
+
- Updated dependencies [ccce59b]
|
|
240
|
+
- Updated dependencies [e2b9e4b]
|
|
241
|
+
- Updated dependencies [45c1ea2]
|
|
242
|
+
- Updated dependencies [e025824]
|
|
243
|
+
- Updated dependencies [0d06df6]
|
|
244
|
+
- Updated dependencies [472524a]
|
|
245
|
+
- Updated dependencies [dd3ff01]
|
|
246
|
+
- Updated dependencies [7435eb5]
|
|
247
|
+
- Updated dependencies [cb68df0]
|
|
248
|
+
- Updated dependencies [bfdca8d]
|
|
249
|
+
- Updated dependencies [44f4aba]
|
|
250
|
+
- Updated dependencies [023ba40]
|
|
251
|
+
- Updated dependencies [5e57fae]
|
|
252
|
+
- Updated dependencies [71f938d]
|
|
253
|
+
- Updated dependencies [28a5ed5]
|
|
254
|
+
- @ai-sdk/provider@2.0.0-beta.1
|
|
255
|
+
- @ai-sdk/provider-utils@3.0.0-beta.1
|
|
256
|
+
- @ai-sdk/openai-compatible@1.0.0-beta.1
|
|
257
|
+
|
|
258
|
+
## 1.0.0-alpha.15
|
|
259
|
+
|
|
260
|
+
### Patch Changes
|
|
261
|
+
|
|
262
|
+
- Updated dependencies [48d257a]
|
|
263
|
+
- Updated dependencies [8ba77a7]
|
|
264
|
+
- @ai-sdk/provider@2.0.0-alpha.15
|
|
265
|
+
- @ai-sdk/provider-utils@3.0.0-alpha.15
|
|
266
|
+
- @ai-sdk/openai-compatible@1.0.0-alpha.15
|
|
267
|
+
|
|
268
|
+
## 1.0.0-alpha.14
|
|
269
|
+
|
|
270
|
+
### Patch Changes
|
|
271
|
+
|
|
272
|
+
- Updated dependencies [b5da06a]
|
|
273
|
+
- Updated dependencies [63f9e9b]
|
|
274
|
+
- Updated dependencies [2e13791]
|
|
275
|
+
- @ai-sdk/provider@2.0.0-alpha.14
|
|
276
|
+
- @ai-sdk/openai-compatible@1.0.0-alpha.14
|
|
277
|
+
- @ai-sdk/provider-utils@3.0.0-alpha.14
|
|
278
|
+
|
|
279
|
+
## 1.0.0-alpha.13
|
|
280
|
+
|
|
281
|
+
### Patch Changes
|
|
282
|
+
|
|
283
|
+
- Updated dependencies [68ecf2f]
|
|
284
|
+
- @ai-sdk/provider@2.0.0-alpha.13
|
|
285
|
+
- @ai-sdk/openai-compatible@1.0.0-alpha.13
|
|
286
|
+
- @ai-sdk/provider-utils@3.0.0-alpha.13
|
|
287
|
+
|
|
288
|
+
## 1.0.0-alpha.12
|
|
289
|
+
|
|
290
|
+
### Patch Changes
|
|
291
|
+
|
|
292
|
+
- e2aceaf: feat: add raw chunk support
|
|
293
|
+
- Updated dependencies [e2aceaf]
|
|
294
|
+
- @ai-sdk/openai-compatible@1.0.0-alpha.12
|
|
295
|
+
- @ai-sdk/provider@2.0.0-alpha.12
|
|
296
|
+
- @ai-sdk/provider-utils@3.0.0-alpha.12
|
|
297
|
+
|
|
298
|
+
## 1.0.0-alpha.11
|
|
299
|
+
|
|
300
|
+
### Patch Changes
|
|
301
|
+
|
|
302
|
+
- Updated dependencies [c1e6647]
|
|
303
|
+
- @ai-sdk/provider@2.0.0-alpha.11
|
|
304
|
+
- @ai-sdk/openai-compatible@1.0.0-alpha.11
|
|
305
|
+
- @ai-sdk/provider-utils@3.0.0-alpha.11
|
|
306
|
+
|
|
307
|
+
## 1.0.0-alpha.10
|
|
308
|
+
|
|
309
|
+
### Patch Changes
|
|
310
|
+
|
|
311
|
+
- Updated dependencies [c4df419]
|
|
312
|
+
- @ai-sdk/provider@2.0.0-alpha.10
|
|
313
|
+
- @ai-sdk/openai-compatible@1.0.0-alpha.10
|
|
314
|
+
- @ai-sdk/provider-utils@3.0.0-alpha.10
|
|
315
|
+
|
|
316
|
+
## 1.0.0-alpha.9
|
|
317
|
+
|
|
318
|
+
### Patch Changes
|
|
319
|
+
|
|
320
|
+
- Updated dependencies [811dff3]
|
|
321
|
+
- @ai-sdk/provider@2.0.0-alpha.9
|
|
322
|
+
- @ai-sdk/openai-compatible@1.0.0-alpha.9
|
|
323
|
+
- @ai-sdk/provider-utils@3.0.0-alpha.9
|
|
324
|
+
|
|
325
|
+
## 1.0.0-alpha.8
|
|
326
|
+
|
|
327
|
+
### Patch Changes
|
|
328
|
+
|
|
329
|
+
- Updated dependencies [4fef487]
|
|
330
|
+
- Updated dependencies [9222aeb]
|
|
331
|
+
- @ai-sdk/provider-utils@3.0.0-alpha.8
|
|
332
|
+
- @ai-sdk/provider@2.0.0-alpha.8
|
|
333
|
+
- @ai-sdk/openai-compatible@1.0.0-alpha.8
|
|
334
|
+
|
|
335
|
+
## 1.0.0-alpha.7
|
|
336
|
+
|
|
337
|
+
### Patch Changes
|
|
338
|
+
|
|
339
|
+
- Updated dependencies [5c56081]
|
|
340
|
+
- @ai-sdk/provider@2.0.0-alpha.7
|
|
341
|
+
- @ai-sdk/openai-compatible@1.0.0-alpha.7
|
|
342
|
+
- @ai-sdk/provider-utils@3.0.0-alpha.7
|
|
343
|
+
|
|
344
|
+
## 1.0.0-alpha.6
|
|
345
|
+
|
|
346
|
+
### Patch Changes
|
|
347
|
+
|
|
348
|
+
- Updated dependencies [0d2c085]
|
|
349
|
+
- @ai-sdk/provider@2.0.0-alpha.6
|
|
350
|
+
- @ai-sdk/openai-compatible@1.0.0-alpha.6
|
|
351
|
+
- @ai-sdk/provider-utils@3.0.0-alpha.6
|
|
352
|
+
|
|
353
|
+
## 1.0.0-alpha.4
|
|
354
|
+
|
|
355
|
+
### Patch Changes
|
|
356
|
+
|
|
357
|
+
- Updated dependencies [dc714f3]
|
|
358
|
+
- @ai-sdk/provider@2.0.0-alpha.4
|
|
359
|
+
- @ai-sdk/openai-compatible@1.0.0-alpha.4
|
|
360
|
+
- @ai-sdk/provider-utils@3.0.0-alpha.4
|
|
361
|
+
|
|
362
|
+
## 1.0.0-alpha.3
|
|
363
|
+
|
|
364
|
+
### Patch Changes
|
|
365
|
+
|
|
366
|
+
- Updated dependencies [6b98118]
|
|
367
|
+
- @ai-sdk/provider@2.0.0-alpha.3
|
|
368
|
+
- @ai-sdk/openai-compatible@1.0.0-alpha.3
|
|
369
|
+
- @ai-sdk/provider-utils@3.0.0-alpha.3
|
|
370
|
+
|
|
371
|
+
## 1.0.0-alpha.2
|
|
372
|
+
|
|
373
|
+
### Patch Changes
|
|
374
|
+
|
|
375
|
+
- Updated dependencies [26535e0]
|
|
376
|
+
- @ai-sdk/provider@2.0.0-alpha.2
|
|
377
|
+
- @ai-sdk/openai-compatible@1.0.0-alpha.2
|
|
378
|
+
- @ai-sdk/provider-utils@3.0.0-alpha.2
|
|
379
|
+
|
|
380
|
+
## 1.0.0-alpha.1
|
|
381
|
+
|
|
382
|
+
### Patch Changes
|
|
383
|
+
|
|
384
|
+
- Updated dependencies [3f2f00c]
|
|
385
|
+
- @ai-sdk/provider@2.0.0-alpha.1
|
|
386
|
+
- @ai-sdk/openai-compatible@1.0.0-alpha.1
|
|
387
|
+
- @ai-sdk/provider-utils@3.0.0-alpha.1
|
|
388
|
+
|
|
389
|
+
## 1.0.0-canary.19
|
|
390
|
+
|
|
391
|
+
### Patch Changes
|
|
392
|
+
|
|
393
|
+
- Updated dependencies [faf8446]
|
|
394
|
+
- @ai-sdk/provider-utils@3.0.0-canary.19
|
|
395
|
+
- @ai-sdk/openai-compatible@1.0.0-canary.19
|
|
396
|
+
|
|
397
|
+
## 1.0.0-canary.18
|
|
398
|
+
|
|
399
|
+
### Patch Changes
|
|
400
|
+
|
|
401
|
+
- Updated dependencies [40acf9b]
|
|
402
|
+
- @ai-sdk/provider-utils@3.0.0-canary.18
|
|
403
|
+
- @ai-sdk/openai-compatible@1.0.0-canary.18
|
|
404
|
+
|
|
405
|
+
## 1.0.0-canary.17
|
|
406
|
+
|
|
407
|
+
### Patch Changes
|
|
408
|
+
|
|
409
|
+
- Updated dependencies [516be5b]
|
|
410
|
+
- Updated dependencies [ea7a7c9]
|
|
411
|
+
- @ai-sdk/openai-compatible@1.0.0-canary.17
|
|
412
|
+
- @ai-sdk/provider-utils@3.0.0-canary.17
|
|
413
|
+
|
|
414
|
+
## 1.0.0-canary.16
|
|
415
|
+
|
|
416
|
+
### Patch Changes
|
|
417
|
+
|
|
418
|
+
- Updated dependencies [87b828f]
|
|
419
|
+
- @ai-sdk/provider-utils@3.0.0-canary.16
|
|
420
|
+
- @ai-sdk/openai-compatible@1.0.0-canary.16
|
|
421
|
+
|
|
422
|
+
## 1.0.0-canary.15
|
|
423
|
+
|
|
424
|
+
### Patch Changes
|
|
425
|
+
|
|
426
|
+
- Updated dependencies [a571d6e]
|
|
427
|
+
- Updated dependencies [a8c8bd5]
|
|
428
|
+
- Updated dependencies [7979f7f]
|
|
429
|
+
- Updated dependencies [41fa418]
|
|
430
|
+
- @ai-sdk/provider-utils@3.0.0-canary.15
|
|
431
|
+
- @ai-sdk/provider@2.0.0-canary.14
|
|
432
|
+
- @ai-sdk/openai-compatible@1.0.0-canary.15
|
|
433
|
+
|
|
434
|
+
## 1.0.0-canary.14
|
|
435
|
+
|
|
436
|
+
### Patch Changes
|
|
437
|
+
|
|
438
|
+
- Updated dependencies [957b739]
|
|
439
|
+
- Updated dependencies [9bd5ab5]
|
|
440
|
+
- @ai-sdk/provider-utils@3.0.0-canary.14
|
|
441
|
+
- @ai-sdk/provider@2.0.0-canary.13
|
|
442
|
+
- @ai-sdk/openai-compatible@1.0.0-canary.14
|
|
443
|
+
|
|
444
|
+
## 1.0.0-canary.13
|
|
445
|
+
|
|
446
|
+
### Patch Changes
|
|
447
|
+
|
|
448
|
+
- Updated dependencies [7b3ae3f]
|
|
449
|
+
- Updated dependencies [d9209ca]
|
|
450
|
+
- Updated dependencies [0ff02bb]
|
|
451
|
+
- @ai-sdk/provider@2.0.0-canary.12
|
|
452
|
+
- @ai-sdk/openai-compatible@1.0.0-canary.13
|
|
453
|
+
- @ai-sdk/provider-utils@3.0.0-canary.13
|
|
454
|
+
|
|
455
|
+
## 1.0.0-canary.12
|
|
456
|
+
|
|
457
|
+
### Patch Changes
|
|
458
|
+
|
|
459
|
+
- Updated dependencies [9bf7291]
|
|
460
|
+
- Updated dependencies [4617fab]
|
|
461
|
+
- Updated dependencies [e030615]
|
|
462
|
+
- @ai-sdk/provider@2.0.0-canary.11
|
|
463
|
+
- @ai-sdk/openai-compatible@1.0.0-canary.12
|
|
464
|
+
- @ai-sdk/provider-utils@3.0.0-canary.12
|
|
465
|
+
|
|
466
|
+
## 1.0.0-canary.11
|
|
467
|
+
|
|
468
|
+
### Patch Changes
|
|
469
|
+
|
|
470
|
+
- Updated dependencies [db72adc]
|
|
471
|
+
- Updated dependencies [42e32b0]
|
|
472
|
+
- Updated dependencies [66962ed]
|
|
473
|
+
- Updated dependencies [9301f86]
|
|
474
|
+
- Updated dependencies [a3f768e]
|
|
475
|
+
- @ai-sdk/openai-compatible@1.0.0-canary.11
|
|
476
|
+
- @ai-sdk/provider-utils@3.0.0-canary.11
|
|
477
|
+
- @ai-sdk/provider@2.0.0-canary.10
|
|
478
|
+
|
|
479
|
+
## 1.0.0-canary.10
|
|
480
|
+
|
|
481
|
+
### Patch Changes
|
|
482
|
+
|
|
483
|
+
- Updated dependencies [cf8280e]
|
|
484
|
+
- Updated dependencies [e86be6f]
|
|
485
|
+
- @ai-sdk/openai-compatible@1.0.0-canary.10
|
|
486
|
+
- @ai-sdk/provider@2.0.0-canary.9
|
|
487
|
+
- @ai-sdk/provider-utils@3.0.0-canary.10
|
|
488
|
+
|
|
489
|
+
## 1.0.0-canary.9
|
|
490
|
+
|
|
491
|
+
### Patch Changes
|
|
492
|
+
|
|
493
|
+
- Updated dependencies [95857aa]
|
|
494
|
+
- Updated dependencies [7ea4132]
|
|
495
|
+
- @ai-sdk/provider@2.0.0-canary.8
|
|
496
|
+
- @ai-sdk/openai-compatible@1.0.0-canary.9
|
|
497
|
+
- @ai-sdk/provider-utils@3.0.0-canary.9
|
|
498
|
+
|
|
3
499
|
## 1.0.0-canary.8
|
|
4
500
|
|
|
5
501
|
### Patch Changes
|
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# AI SDK - DeepSeek Provider
|
|
2
2
|
|
|
3
|
-
The **[DeepSeek provider](https://sdk.
|
|
3
|
+
The **[DeepSeek provider](https://ai-sdk.dev/providers/ai-sdk-providers/deepseek)** for the [AI SDK](https://ai-sdk.dev/docs) contains language model support for the [DeepSeek](https://www.deepseek.com) platform.
|
|
4
4
|
|
|
5
5
|
## Setup
|
|
6
6
|
|
|
@@ -32,4 +32,4 @@ const { text } = await generateText({
|
|
|
32
32
|
|
|
33
33
|
## Documentation
|
|
34
34
|
|
|
35
|
-
Please check out the **[DeepSeek provider](https://sdk.
|
|
35
|
+
Please check out the **[DeepSeek provider](https://ai-sdk.dev/providers/ai-sdk-providers/deepseek)** for more information.
|
package/dist/index.js
CHANGED
|
@@ -32,7 +32,7 @@ var import_provider_utils2 = require("@ai-sdk/provider-utils");
|
|
|
32
32
|
|
|
33
33
|
// src/deepseek-metadata-extractor.ts
|
|
34
34
|
var import_provider_utils = require("@ai-sdk/provider-utils");
|
|
35
|
-
var
|
|
35
|
+
var import_v4 = require("zod/v4");
|
|
36
36
|
var buildDeepseekMetadata = (usage) => {
|
|
37
37
|
var _a, _b;
|
|
38
38
|
return usage == null ? void 0 : {
|
|
@@ -43,8 +43,8 @@ var buildDeepseekMetadata = (usage) => {
|
|
|
43
43
|
};
|
|
44
44
|
};
|
|
45
45
|
var deepSeekMetadataExtractor = {
|
|
46
|
-
extractMetadata: ({ parsedBody }) => {
|
|
47
|
-
const parsed = (0, import_provider_utils.safeValidateTypes)({
|
|
46
|
+
extractMetadata: async ({ parsedBody }) => {
|
|
47
|
+
const parsed = await (0, import_provider_utils.safeValidateTypes)({
|
|
48
48
|
value: parsedBody,
|
|
49
49
|
schema: deepSeekResponseSchema
|
|
50
50
|
});
|
|
@@ -53,9 +53,9 @@ var deepSeekMetadataExtractor = {
|
|
|
53
53
|
createStreamExtractor: () => {
|
|
54
54
|
let usage;
|
|
55
55
|
return {
|
|
56
|
-
processChunk: (chunk) => {
|
|
56
|
+
processChunk: async (chunk) => {
|
|
57
57
|
var _a, _b;
|
|
58
|
-
const parsed = (0, import_provider_utils.safeValidateTypes)({
|
|
58
|
+
const parsed = await (0, import_provider_utils.safeValidateTypes)({
|
|
59
59
|
value: chunk,
|
|
60
60
|
schema: deepSeekStreamChunkSchema
|
|
61
61
|
});
|
|
@@ -67,17 +67,17 @@ var deepSeekMetadataExtractor = {
|
|
|
67
67
|
};
|
|
68
68
|
}
|
|
69
69
|
};
|
|
70
|
-
var deepSeekUsageSchema =
|
|
71
|
-
prompt_cache_hit_tokens:
|
|
72
|
-
prompt_cache_miss_tokens:
|
|
70
|
+
var deepSeekUsageSchema = import_v4.z.object({
|
|
71
|
+
prompt_cache_hit_tokens: import_v4.z.number().nullish(),
|
|
72
|
+
prompt_cache_miss_tokens: import_v4.z.number().nullish()
|
|
73
73
|
});
|
|
74
|
-
var deepSeekResponseSchema =
|
|
74
|
+
var deepSeekResponseSchema = import_v4.z.object({
|
|
75
75
|
usage: deepSeekUsageSchema.nullish()
|
|
76
76
|
});
|
|
77
|
-
var deepSeekStreamChunkSchema =
|
|
78
|
-
choices:
|
|
79
|
-
|
|
80
|
-
finish_reason:
|
|
77
|
+
var deepSeekStreamChunkSchema = import_v4.z.object({
|
|
78
|
+
choices: import_v4.z.array(
|
|
79
|
+
import_v4.z.object({
|
|
80
|
+
finish_reason: import_v4.z.string().nullish()
|
|
81
81
|
})
|
|
82
82
|
).nullish(),
|
|
83
83
|
usage: deepSeekUsageSchema.nullish()
|
|
@@ -103,7 +103,6 @@ function createDeepSeek(options = {}) {
|
|
|
103
103
|
url: ({ path }) => `${baseURL}${path}`,
|
|
104
104
|
headers: getHeaders,
|
|
105
105
|
fetch: options.fetch,
|
|
106
|
-
defaultObjectGenerationMode: "json",
|
|
107
106
|
metadataExtractor: deepSeekMetadataExtractor
|
|
108
107
|
});
|
|
109
108
|
};
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts","../src/deepseek-provider.ts","../src/deepseek-metadata-extractor.ts"],"sourcesContent":["export { createDeepSeek, deepseek } from './deepseek-provider';\nexport type {\n DeepSeekProvider,\n DeepSeekProviderSettings,\n} from './deepseek-provider';\nexport type { OpenAICompatibleErrorData as DeepSeekErrorData } from '@ai-sdk/openai-compatible';\n","import { OpenAICompatibleChatLanguageModel } from '@ai-sdk/openai-compatible';\nimport {\n LanguageModelV2,\n NoSuchModelError,\n ProviderV2,\n} from '@ai-sdk/provider';\nimport {\n FetchFunction,\n loadApiKey,\n withoutTrailingSlash,\n} from '@ai-sdk/provider-utils';\nimport { DeepSeekChatModelId } from './deepseek-chat-
|
|
1
|
+
{"version":3,"sources":["../src/index.ts","../src/deepseek-provider.ts","../src/deepseek-metadata-extractor.ts"],"sourcesContent":["export { createDeepSeek, deepseek } from './deepseek-provider';\nexport type {\n DeepSeekProvider,\n DeepSeekProviderSettings,\n} from './deepseek-provider';\nexport type { OpenAICompatibleErrorData as DeepSeekErrorData } from '@ai-sdk/openai-compatible';\n","import { OpenAICompatibleChatLanguageModel } from '@ai-sdk/openai-compatible';\nimport {\n LanguageModelV2,\n NoSuchModelError,\n ProviderV2,\n} from '@ai-sdk/provider';\nimport {\n FetchFunction,\n loadApiKey,\n withoutTrailingSlash,\n} from '@ai-sdk/provider-utils';\nimport { DeepSeekChatModelId } from './deepseek-chat-options';\nimport { deepSeekMetadataExtractor } from './deepseek-metadata-extractor';\n\nexport interface DeepSeekProviderSettings {\n /**\nDeepSeek API key.\n*/\n apiKey?: string;\n /**\nBase URL for the API calls.\n*/\n baseURL?: string;\n /**\nCustom headers to include in the requests.\n*/\n headers?: Record<string, string>;\n /**\nCustom fetch implementation. You can use it as a middleware to intercept requests,\nor to provide a custom fetch implementation for e.g. testing.\n*/\n fetch?: FetchFunction;\n}\n\nexport interface DeepSeekProvider extends ProviderV2 {\n /**\nCreates a DeepSeek model for text generation.\n*/\n (modelId: DeepSeekChatModelId): LanguageModelV2;\n\n /**\nCreates a DeepSeek model for text generation.\n*/\n languageModel(modelId: DeepSeekChatModelId): LanguageModelV2;\n\n /**\nCreates a DeepSeek chat model for text generation.\n*/\n chat(modelId: DeepSeekChatModelId): LanguageModelV2;\n}\n\nexport function createDeepSeek(\n options: DeepSeekProviderSettings = {},\n): DeepSeekProvider {\n const baseURL = withoutTrailingSlash(\n options.baseURL ?? 'https://api.deepseek.com/v1',\n );\n const getHeaders = () => ({\n Authorization: `Bearer ${loadApiKey({\n apiKey: options.apiKey,\n environmentVariableName: 'DEEPSEEK_API_KEY',\n description: 'DeepSeek API key',\n })}`,\n ...options.headers,\n });\n\n const createLanguageModel = (modelId: DeepSeekChatModelId) => {\n return new OpenAICompatibleChatLanguageModel(modelId, {\n provider: `deepseek.chat`,\n url: ({ path }) => `${baseURL}${path}`,\n headers: getHeaders,\n fetch: options.fetch,\n metadataExtractor: deepSeekMetadataExtractor,\n });\n };\n\n const provider = (modelId: DeepSeekChatModelId) =>\n createLanguageModel(modelId);\n\n provider.languageModel = createLanguageModel;\n provider.chat = createLanguageModel;\n\n provider.textEmbeddingModel = (modelId: string) => {\n throw new NoSuchModelError({ modelId, modelType: 'textEmbeddingModel' });\n };\n provider.imageModel = (modelId: string) => {\n throw new NoSuchModelError({ modelId, modelType: 'imageModel' });\n };\n\n return provider;\n}\n\nexport const deepseek = createDeepSeek();\n","import { MetadataExtractor } from '@ai-sdk/openai-compatible';\nimport { safeValidateTypes } from '@ai-sdk/provider-utils';\nimport { z } from 'zod/v4';\n\nconst buildDeepseekMetadata = (\n usage: z.infer<typeof deepSeekUsageSchema> | undefined,\n) => {\n return usage == null\n ? undefined\n : {\n deepseek: {\n promptCacheHitTokens: usage.prompt_cache_hit_tokens ?? NaN,\n promptCacheMissTokens: usage.prompt_cache_miss_tokens ?? NaN,\n },\n };\n};\n\nexport const deepSeekMetadataExtractor: MetadataExtractor = {\n extractMetadata: async ({ parsedBody }: { parsedBody: unknown }) => {\n const parsed = await safeValidateTypes({\n value: parsedBody,\n schema: deepSeekResponseSchema,\n });\n\n return !parsed.success || parsed.value.usage == null\n ? undefined\n : buildDeepseekMetadata(parsed.value.usage);\n },\n\n createStreamExtractor: () => {\n let usage: z.infer<typeof deepSeekUsageSchema> | undefined;\n\n return {\n processChunk: async (chunk: unknown) => {\n const parsed = await safeValidateTypes({\n value: chunk,\n schema: deepSeekStreamChunkSchema,\n });\n\n if (\n parsed.success &&\n parsed.value.choices?.[0]?.finish_reason === 'stop' &&\n parsed.value.usage\n ) {\n usage = parsed.value.usage;\n }\n },\n buildMetadata: () => buildDeepseekMetadata(usage),\n };\n },\n};\n\nconst deepSeekUsageSchema = z.object({\n prompt_cache_hit_tokens: z.number().nullish(),\n prompt_cache_miss_tokens: z.number().nullish(),\n});\n\nconst deepSeekResponseSchema = z.object({\n usage: deepSeekUsageSchema.nullish(),\n});\n\nconst deepSeekStreamChunkSchema = z.object({\n choices: z\n .array(\n z.object({\n finish_reason: z.string().nullish(),\n }),\n )\n .nullish(),\n usage: deepSeekUsageSchema.nullish(),\n});\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,+BAAkD;AAClD,sBAIO;AACP,IAAAA,yBAIO;;;ACTP,4BAAkC;AAClC,gBAAkB;AAElB,IAAM,wBAAwB,CAC5B,UACG;AANL;AAOE,SAAO,SAAS,OACZ,SACA;AAAA,IACE,UAAU;AAAA,MACR,uBAAsB,WAAM,4BAAN,YAAiC;AAAA,MACvD,wBAAuB,WAAM,6BAAN,YAAkC;AAAA,IAC3D;AAAA,EACF;AACN;AAEO,IAAM,4BAA+C;AAAA,EAC1D,iBAAiB,OAAO,EAAE,WAAW,MAA+B;AAClE,UAAM,SAAS,UAAM,yCAAkB;AAAA,MACrC,OAAO;AAAA,MACP,QAAQ;AAAA,IACV,CAAC;AAED,WAAO,CAAC,OAAO,WAAW,OAAO,MAAM,SAAS,OAC5C,SACA,sBAAsB,OAAO,MAAM,KAAK;AAAA,EAC9C;AAAA,EAEA,uBAAuB,MAAM;AAC3B,QAAI;AAEJ,WAAO;AAAA,MACL,cAAc,OAAO,UAAmB;AAjC9C;AAkCQ,cAAM,SAAS,UAAM,yCAAkB;AAAA,UACrC,OAAO;AAAA,UACP,QAAQ;AAAA,QACV,CAAC;AAED,YACE,OAAO,aACP,kBAAO,MAAM,YAAb,mBAAuB,OAAvB,mBAA2B,mBAAkB,UAC7C,OAAO,MAAM,OACb;AACA,kBAAQ,OAAO,MAAM;AAAA,QACvB;AAAA,MACF;AAAA,MACA,eAAe,MAAM,sBAAsB,KAAK;AAAA,IAClD;AAAA,EACF;AACF;AAEA,IAAM,sBAAsB,YAAE,OAAO;AAAA,EACnC,yBAAyB,YAAE,OAAO,EAAE,QAAQ;AAAA,EAC5C,0BAA0B,YAAE,OAAO,EAAE,QAAQ;AAC/C,CAAC;AAED,IAAM,yBAAyB,YAAE,OAAO;AAAA,EACtC,OAAO,oBAAoB,QAAQ;AACrC,CAAC;AAED,IAAM,4BAA4B,YAAE,OAAO;AAAA,EACzC,SAAS,YACN;AAAA,IACC,YAAE,OAAO;AAAA,MACP,eAAe,YAAE,OAAO,EAAE,QAAQ;AAAA,IACpC,CAAC;AAAA,EACH,EACC,QAAQ;AAAA,EACX,OAAO,oBAAoB,QAAQ;AACrC,CAAC;;;ADnBM,SAAS,eACd,UAAoC,CAAC,GACnB;AArDpB;AAsDE,QAAM,cAAU;AAAA,KACd,aAAQ,YAAR,YAAmB;AAAA,EACrB;AACA,QAAM,aAAa,OAAO;AAAA,IACxB,eAAe,cAAU,mCAAW;AAAA,MAClC,QAAQ,QAAQ;AAAA,MAChB,yBAAyB;AAAA,MACzB,aAAa;AAAA,IACf,CAAC,CAAC;AAAA,IACF,GAAG,QAAQ;AAAA,EACb;AAEA,QAAM,sBAAsB,CAAC,YAAiC;AAC5D,WAAO,IAAI,2DAAkC,SAAS;AAAA,MACpD,UAAU;AAAA,MACV,KAAK,CAAC,EAAE,KAAK,MAAM,GAAG,OAAO,GAAG,IAAI;AAAA,MACpC,SAAS;AAAA,MACT,OAAO,QAAQ;AAAA,MACf,mBAAmB;AAAA,IACrB,CAAC;AAAA,EACH;AAEA,QAAM,WAAW,CAAC,YAChB,oBAAoB,OAAO;AAE7B,WAAS,gBAAgB;AACzB,WAAS,OAAO;AAEhB,WAAS,qBAAqB,CAAC,YAAoB;AACjD,UAAM,IAAI,iCAAiB,EAAE,SAAS,WAAW,qBAAqB,CAAC;AAAA,EACzE;AACA,WAAS,aAAa,CAAC,YAAoB;AACzC,UAAM,IAAI,iCAAiB,EAAE,SAAS,WAAW,aAAa,CAAC;AAAA,EACjE;AAEA,SAAO;AACT;AAEO,IAAM,WAAW,eAAe;","names":["import_provider_utils"]}
|
package/dist/index.mjs
CHANGED
|
@@ -10,7 +10,7 @@ import {
|
|
|
10
10
|
|
|
11
11
|
// src/deepseek-metadata-extractor.ts
|
|
12
12
|
import { safeValidateTypes } from "@ai-sdk/provider-utils";
|
|
13
|
-
import { z } from "zod";
|
|
13
|
+
import { z } from "zod/v4";
|
|
14
14
|
var buildDeepseekMetadata = (usage) => {
|
|
15
15
|
var _a, _b;
|
|
16
16
|
return usage == null ? void 0 : {
|
|
@@ -21,8 +21,8 @@ var buildDeepseekMetadata = (usage) => {
|
|
|
21
21
|
};
|
|
22
22
|
};
|
|
23
23
|
var deepSeekMetadataExtractor = {
|
|
24
|
-
extractMetadata: ({ parsedBody }) => {
|
|
25
|
-
const parsed = safeValidateTypes({
|
|
24
|
+
extractMetadata: async ({ parsedBody }) => {
|
|
25
|
+
const parsed = await safeValidateTypes({
|
|
26
26
|
value: parsedBody,
|
|
27
27
|
schema: deepSeekResponseSchema
|
|
28
28
|
});
|
|
@@ -31,9 +31,9 @@ var deepSeekMetadataExtractor = {
|
|
|
31
31
|
createStreamExtractor: () => {
|
|
32
32
|
let usage;
|
|
33
33
|
return {
|
|
34
|
-
processChunk: (chunk) => {
|
|
34
|
+
processChunk: async (chunk) => {
|
|
35
35
|
var _a, _b;
|
|
36
|
-
const parsed = safeValidateTypes({
|
|
36
|
+
const parsed = await safeValidateTypes({
|
|
37
37
|
value: chunk,
|
|
38
38
|
schema: deepSeekStreamChunkSchema
|
|
39
39
|
});
|
|
@@ -81,7 +81,6 @@ function createDeepSeek(options = {}) {
|
|
|
81
81
|
url: ({ path }) => `${baseURL}${path}`,
|
|
82
82
|
headers: getHeaders,
|
|
83
83
|
fetch: options.fetch,
|
|
84
|
-
defaultObjectGenerationMode: "json",
|
|
85
84
|
metadataExtractor: deepSeekMetadataExtractor
|
|
86
85
|
});
|
|
87
86
|
};
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/deepseek-provider.ts","../src/deepseek-metadata-extractor.ts"],"sourcesContent":["import { OpenAICompatibleChatLanguageModel } from '@ai-sdk/openai-compatible';\nimport {\n LanguageModelV2,\n NoSuchModelError,\n ProviderV2,\n} from '@ai-sdk/provider';\nimport {\n FetchFunction,\n loadApiKey,\n withoutTrailingSlash,\n} from '@ai-sdk/provider-utils';\nimport { DeepSeekChatModelId } from './deepseek-chat-
|
|
1
|
+
{"version":3,"sources":["../src/deepseek-provider.ts","../src/deepseek-metadata-extractor.ts"],"sourcesContent":["import { OpenAICompatibleChatLanguageModel } from '@ai-sdk/openai-compatible';\nimport {\n LanguageModelV2,\n NoSuchModelError,\n ProviderV2,\n} from '@ai-sdk/provider';\nimport {\n FetchFunction,\n loadApiKey,\n withoutTrailingSlash,\n} from '@ai-sdk/provider-utils';\nimport { DeepSeekChatModelId } from './deepseek-chat-options';\nimport { deepSeekMetadataExtractor } from './deepseek-metadata-extractor';\n\nexport interface DeepSeekProviderSettings {\n /**\nDeepSeek API key.\n*/\n apiKey?: string;\n /**\nBase URL for the API calls.\n*/\n baseURL?: string;\n /**\nCustom headers to include in the requests.\n*/\n headers?: Record<string, string>;\n /**\nCustom fetch implementation. You can use it as a middleware to intercept requests,\nor to provide a custom fetch implementation for e.g. testing.\n*/\n fetch?: FetchFunction;\n}\n\nexport interface DeepSeekProvider extends ProviderV2 {\n /**\nCreates a DeepSeek model for text generation.\n*/\n (modelId: DeepSeekChatModelId): LanguageModelV2;\n\n /**\nCreates a DeepSeek model for text generation.\n*/\n languageModel(modelId: DeepSeekChatModelId): LanguageModelV2;\n\n /**\nCreates a DeepSeek chat model for text generation.\n*/\n chat(modelId: DeepSeekChatModelId): LanguageModelV2;\n}\n\nexport function createDeepSeek(\n options: DeepSeekProviderSettings = {},\n): DeepSeekProvider {\n const baseURL = withoutTrailingSlash(\n options.baseURL ?? 'https://api.deepseek.com/v1',\n );\n const getHeaders = () => ({\n Authorization: `Bearer ${loadApiKey({\n apiKey: options.apiKey,\n environmentVariableName: 'DEEPSEEK_API_KEY',\n description: 'DeepSeek API key',\n })}`,\n ...options.headers,\n });\n\n const createLanguageModel = (modelId: DeepSeekChatModelId) => {\n return new OpenAICompatibleChatLanguageModel(modelId, {\n provider: `deepseek.chat`,\n url: ({ path }) => `${baseURL}${path}`,\n headers: getHeaders,\n fetch: options.fetch,\n metadataExtractor: deepSeekMetadataExtractor,\n });\n };\n\n const provider = (modelId: DeepSeekChatModelId) =>\n createLanguageModel(modelId);\n\n provider.languageModel = createLanguageModel;\n provider.chat = createLanguageModel;\n\n provider.textEmbeddingModel = (modelId: string) => {\n throw new NoSuchModelError({ modelId, modelType: 'textEmbeddingModel' });\n };\n provider.imageModel = (modelId: string) => {\n throw new NoSuchModelError({ modelId, modelType: 'imageModel' });\n };\n\n return provider;\n}\n\nexport const deepseek = createDeepSeek();\n","import { MetadataExtractor } from '@ai-sdk/openai-compatible';\nimport { safeValidateTypes } from '@ai-sdk/provider-utils';\nimport { z } from 'zod/v4';\n\nconst buildDeepseekMetadata = (\n usage: z.infer<typeof deepSeekUsageSchema> | undefined,\n) => {\n return usage == null\n ? undefined\n : {\n deepseek: {\n promptCacheHitTokens: usage.prompt_cache_hit_tokens ?? NaN,\n promptCacheMissTokens: usage.prompt_cache_miss_tokens ?? NaN,\n },\n };\n};\n\nexport const deepSeekMetadataExtractor: MetadataExtractor = {\n extractMetadata: async ({ parsedBody }: { parsedBody: unknown }) => {\n const parsed = await safeValidateTypes({\n value: parsedBody,\n schema: deepSeekResponseSchema,\n });\n\n return !parsed.success || parsed.value.usage == null\n ? undefined\n : buildDeepseekMetadata(parsed.value.usage);\n },\n\n createStreamExtractor: () => {\n let usage: z.infer<typeof deepSeekUsageSchema> | undefined;\n\n return {\n processChunk: async (chunk: unknown) => {\n const parsed = await safeValidateTypes({\n value: chunk,\n schema: deepSeekStreamChunkSchema,\n });\n\n if (\n parsed.success &&\n parsed.value.choices?.[0]?.finish_reason === 'stop' &&\n parsed.value.usage\n ) {\n usage = parsed.value.usage;\n }\n },\n buildMetadata: () => buildDeepseekMetadata(usage),\n };\n },\n};\n\nconst deepSeekUsageSchema = z.object({\n prompt_cache_hit_tokens: z.number().nullish(),\n prompt_cache_miss_tokens: z.number().nullish(),\n});\n\nconst deepSeekResponseSchema = z.object({\n usage: deepSeekUsageSchema.nullish(),\n});\n\nconst deepSeekStreamChunkSchema = z.object({\n choices: z\n .array(\n z.object({\n finish_reason: z.string().nullish(),\n }),\n )\n .nullish(),\n usage: deepSeekUsageSchema.nullish(),\n});\n"],"mappings":";AAAA,SAAS,yCAAyC;AAClD;AAAA,EAEE;AAAA,OAEK;AACP;AAAA,EAEE;AAAA,EACA;AAAA,OACK;;;ACTP,SAAS,yBAAyB;AAClC,SAAS,SAAS;AAElB,IAAM,wBAAwB,CAC5B,UACG;AANL;AAOE,SAAO,SAAS,OACZ,SACA;AAAA,IACE,UAAU;AAAA,MACR,uBAAsB,WAAM,4BAAN,YAAiC;AAAA,MACvD,wBAAuB,WAAM,6BAAN,YAAkC;AAAA,IAC3D;AAAA,EACF;AACN;AAEO,IAAM,4BAA+C;AAAA,EAC1D,iBAAiB,OAAO,EAAE,WAAW,MAA+B;AAClE,UAAM,SAAS,MAAM,kBAAkB;AAAA,MACrC,OAAO;AAAA,MACP,QAAQ;AAAA,IACV,CAAC;AAED,WAAO,CAAC,OAAO,WAAW,OAAO,MAAM,SAAS,OAC5C,SACA,sBAAsB,OAAO,MAAM,KAAK;AAAA,EAC9C;AAAA,EAEA,uBAAuB,MAAM;AAC3B,QAAI;AAEJ,WAAO;AAAA,MACL,cAAc,OAAO,UAAmB;AAjC9C;AAkCQ,cAAM,SAAS,MAAM,kBAAkB;AAAA,UACrC,OAAO;AAAA,UACP,QAAQ;AAAA,QACV,CAAC;AAED,YACE,OAAO,aACP,kBAAO,MAAM,YAAb,mBAAuB,OAAvB,mBAA2B,mBAAkB,UAC7C,OAAO,MAAM,OACb;AACA,kBAAQ,OAAO,MAAM;AAAA,QACvB;AAAA,MACF;AAAA,MACA,eAAe,MAAM,sBAAsB,KAAK;AAAA,IAClD;AAAA,EACF;AACF;AAEA,IAAM,sBAAsB,EAAE,OAAO;AAAA,EACnC,yBAAyB,EAAE,OAAO,EAAE,QAAQ;AAAA,EAC5C,0BAA0B,EAAE,OAAO,EAAE,QAAQ;AAC/C,CAAC;AAED,IAAM,yBAAyB,EAAE,OAAO;AAAA,EACtC,OAAO,oBAAoB,QAAQ;AACrC,CAAC;AAED,IAAM,4BAA4B,EAAE,OAAO;AAAA,EACzC,SAAS,EACN;AAAA,IACC,EAAE,OAAO;AAAA,MACP,eAAe,EAAE,OAAO,EAAE,QAAQ;AAAA,IACpC,CAAC;AAAA,EACH,EACC,QAAQ;AAAA,EACX,OAAO,oBAAoB,QAAQ;AACrC,CAAC;;;ADnBM,SAAS,eACd,UAAoC,CAAC,GACnB;AArDpB;AAsDE,QAAM,UAAU;AAAA,KACd,aAAQ,YAAR,YAAmB;AAAA,EACrB;AACA,QAAM,aAAa,OAAO;AAAA,IACxB,eAAe,UAAU,WAAW;AAAA,MAClC,QAAQ,QAAQ;AAAA,MAChB,yBAAyB;AAAA,MACzB,aAAa;AAAA,IACf,CAAC,CAAC;AAAA,IACF,GAAG,QAAQ;AAAA,EACb;AAEA,QAAM,sBAAsB,CAAC,YAAiC;AAC5D,WAAO,IAAI,kCAAkC,SAAS;AAAA,MACpD,UAAU;AAAA,MACV,KAAK,CAAC,EAAE,KAAK,MAAM,GAAG,OAAO,GAAG,IAAI;AAAA,MACpC,SAAS;AAAA,MACT,OAAO,QAAQ;AAAA,MACf,mBAAmB;AAAA,IACrB,CAAC;AAAA,EACH;AAEA,QAAM,WAAW,CAAC,YAChB,oBAAoB,OAAO;AAE7B,WAAS,gBAAgB;AACzB,WAAS,OAAO;AAEhB,WAAS,qBAAqB,CAAC,YAAoB;AACjD,UAAM,IAAI,iBAAiB,EAAE,SAAS,WAAW,qBAAqB,CAAC;AAAA,EACzE;AACA,WAAS,aAAa,CAAC,YAAoB;AACzC,UAAM,IAAI,iBAAiB,EAAE,SAAS,WAAW,aAAa,CAAC;AAAA,EACjE;AAEA,SAAO;AACT;AAEO,IAAM,WAAW,eAAe;","names":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ai-sdk/deepseek",
|
|
3
|
-
"version": "1.0.0
|
|
3
|
+
"version": "1.0.0",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -19,19 +19,19 @@
|
|
|
19
19
|
}
|
|
20
20
|
},
|
|
21
21
|
"dependencies": {
|
|
22
|
-
"@ai-sdk/openai-compatible": "1.0.0
|
|
23
|
-
"@ai-sdk/provider": "2.0.0
|
|
24
|
-
"@ai-sdk/provider-utils": "3.0.0
|
|
22
|
+
"@ai-sdk/openai-compatible": "1.0.0",
|
|
23
|
+
"@ai-sdk/provider": "2.0.0",
|
|
24
|
+
"@ai-sdk/provider-utils": "3.0.0"
|
|
25
25
|
},
|
|
26
26
|
"devDependencies": {
|
|
27
27
|
"@types/node": "20.17.24",
|
|
28
28
|
"tsup": "^8",
|
|
29
29
|
"typescript": "5.8.3",
|
|
30
|
-
"zod": "3.
|
|
30
|
+
"zod": "3.25.76",
|
|
31
31
|
"@vercel/ai-tsconfig": "0.0.0"
|
|
32
32
|
},
|
|
33
33
|
"peerDependencies": {
|
|
34
|
-
"zod": "^3.
|
|
34
|
+
"zod": "^3.25.76 || ^4"
|
|
35
35
|
},
|
|
36
36
|
"engines": {
|
|
37
37
|
"node": ">=18"
|
|
@@ -39,7 +39,7 @@
|
|
|
39
39
|
"publishConfig": {
|
|
40
40
|
"access": "public"
|
|
41
41
|
},
|
|
42
|
-
"homepage": "https://sdk.
|
|
42
|
+
"homepage": "https://ai-sdk.dev/docs",
|
|
43
43
|
"repository": {
|
|
44
44
|
"type": "git",
|
|
45
45
|
"url": "git+https://github.com/vercel/ai.git"
|
|
@@ -58,6 +58,8 @@
|
|
|
58
58
|
"type-check": "tsc --build",
|
|
59
59
|
"prettier-check": "prettier --check \"./**/*.ts*\"",
|
|
60
60
|
"test": "pnpm test:node && pnpm test:edge",
|
|
61
|
+
"test:update": "pnpm test:node -u",
|
|
62
|
+
"test:watch": "vitest --config vitest.node.config.js",
|
|
61
63
|
"test:edge": "vitest --config vitest.edge.config.js --run",
|
|
62
64
|
"test:node": "vitest --config vitest.node.config.js --run"
|
|
63
65
|
}
|