@ai-sdk/fireworks 0.2.14 → 1.0.0-alpha.10
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 +307 -35
- package/dist/index.d.mts +36 -27
- package/dist/index.d.ts +36 -27
- package/dist/index.js +15 -20
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +21 -27
- package/dist/index.mjs.map +1 -1
- package/package.json +13 -11
package/CHANGELOG.md
CHANGED
|
@@ -1,75 +1,347 @@
|
|
|
1
1
|
# @ai-sdk/fireworks
|
|
2
2
|
|
|
3
|
-
## 0.
|
|
3
|
+
## 1.0.0-alpha.10
|
|
4
4
|
|
|
5
5
|
### Patch Changes
|
|
6
6
|
|
|
7
|
-
- Updated dependencies [
|
|
8
|
-
- @ai-sdk/provider
|
|
9
|
-
- @ai-sdk/openai-compatible@0.
|
|
7
|
+
- Updated dependencies [c4df419]
|
|
8
|
+
- @ai-sdk/provider@2.0.0-alpha.10
|
|
9
|
+
- @ai-sdk/openai-compatible@1.0.0-alpha.10
|
|
10
|
+
- @ai-sdk/provider-utils@3.0.0-alpha.10
|
|
10
11
|
|
|
11
|
-
## 0.
|
|
12
|
+
## 1.0.0-alpha.9
|
|
12
13
|
|
|
13
14
|
### Patch Changes
|
|
14
15
|
|
|
15
|
-
- Updated dependencies [
|
|
16
|
-
- @ai-sdk/
|
|
16
|
+
- Updated dependencies [811dff3]
|
|
17
|
+
- @ai-sdk/provider@2.0.0-alpha.9
|
|
18
|
+
- @ai-sdk/openai-compatible@1.0.0-alpha.9
|
|
19
|
+
- @ai-sdk/provider-utils@3.0.0-alpha.9
|
|
17
20
|
|
|
18
|
-
## 0.
|
|
21
|
+
## 1.0.0-alpha.8
|
|
19
22
|
|
|
20
23
|
### Patch Changes
|
|
21
24
|
|
|
22
|
-
- Updated dependencies [
|
|
23
|
-
|
|
25
|
+
- Updated dependencies [4fef487]
|
|
26
|
+
- Updated dependencies [9222aeb]
|
|
27
|
+
- @ai-sdk/provider-utils@3.0.0-alpha.8
|
|
28
|
+
- @ai-sdk/provider@2.0.0-alpha.8
|
|
29
|
+
- @ai-sdk/openai-compatible@1.0.0-alpha.8
|
|
24
30
|
|
|
25
|
-
## 0.
|
|
31
|
+
## 1.0.0-alpha.7
|
|
26
32
|
|
|
27
33
|
### Patch Changes
|
|
28
34
|
|
|
29
|
-
- Updated dependencies [
|
|
30
|
-
- @ai-sdk/
|
|
35
|
+
- Updated dependencies [5c56081]
|
|
36
|
+
- @ai-sdk/provider@2.0.0-alpha.7
|
|
37
|
+
- @ai-sdk/openai-compatible@1.0.0-alpha.7
|
|
38
|
+
- @ai-sdk/provider-utils@3.0.0-alpha.7
|
|
31
39
|
|
|
32
|
-
## 0.
|
|
40
|
+
## 1.0.0-alpha.6
|
|
33
41
|
|
|
34
42
|
### Patch Changes
|
|
35
43
|
|
|
36
|
-
- Updated dependencies [
|
|
37
|
-
- @ai-sdk/provider@
|
|
38
|
-
- @ai-sdk/openai-compatible@0.
|
|
39
|
-
- @ai-sdk/provider-utils@
|
|
44
|
+
- Updated dependencies [0d2c085]
|
|
45
|
+
- @ai-sdk/provider@2.0.0-alpha.6
|
|
46
|
+
- @ai-sdk/openai-compatible@1.0.0-alpha.6
|
|
47
|
+
- @ai-sdk/provider-utils@3.0.0-alpha.6
|
|
40
48
|
|
|
41
|
-
## 0.
|
|
49
|
+
## 1.0.0-alpha.4
|
|
42
50
|
|
|
43
51
|
### Patch Changes
|
|
44
52
|
|
|
45
|
-
- Updated dependencies [
|
|
46
|
-
- @ai-sdk/
|
|
53
|
+
- Updated dependencies [dc714f3]
|
|
54
|
+
- @ai-sdk/provider@2.0.0-alpha.4
|
|
55
|
+
- @ai-sdk/openai-compatible@1.0.0-alpha.4
|
|
56
|
+
- @ai-sdk/provider-utils@3.0.0-alpha.4
|
|
47
57
|
|
|
48
|
-
## 0.
|
|
58
|
+
## 1.0.0-alpha.3
|
|
49
59
|
|
|
50
60
|
### Patch Changes
|
|
51
61
|
|
|
52
|
-
- Updated dependencies [
|
|
53
|
-
- @ai-sdk/provider@
|
|
54
|
-
- @ai-sdk/openai-compatible@0.
|
|
55
|
-
- @ai-sdk/provider-utils@
|
|
62
|
+
- Updated dependencies [6b98118]
|
|
63
|
+
- @ai-sdk/provider@2.0.0-alpha.3
|
|
64
|
+
- @ai-sdk/openai-compatible@1.0.0-alpha.3
|
|
65
|
+
- @ai-sdk/provider-utils@3.0.0-alpha.3
|
|
56
66
|
|
|
57
|
-
## 0.2
|
|
67
|
+
## 1.0.0-alpha.2
|
|
58
68
|
|
|
59
69
|
### Patch Changes
|
|
60
70
|
|
|
61
|
-
- Updated dependencies [
|
|
62
|
-
- @ai-sdk/provider
|
|
63
|
-
- @ai-sdk/
|
|
64
|
-
- @ai-sdk/
|
|
71
|
+
- Updated dependencies [26535e0]
|
|
72
|
+
- @ai-sdk/provider@2.0.0-alpha.2
|
|
73
|
+
- @ai-sdk/openai-compatible@1.0.0-alpha.2
|
|
74
|
+
- @ai-sdk/provider-utils@3.0.0-alpha.2
|
|
65
75
|
|
|
66
|
-
## 0.
|
|
76
|
+
## 1.0.0-alpha.1
|
|
67
77
|
|
|
68
78
|
### Patch Changes
|
|
69
79
|
|
|
70
|
-
- Updated dependencies [
|
|
71
|
-
- @ai-sdk/provider
|
|
72
|
-
- @ai-sdk/openai-compatible@0.
|
|
80
|
+
- Updated dependencies [3f2f00c]
|
|
81
|
+
- @ai-sdk/provider@2.0.0-alpha.1
|
|
82
|
+
- @ai-sdk/openai-compatible@1.0.0-alpha.1
|
|
83
|
+
- @ai-sdk/provider-utils@3.0.0-alpha.1
|
|
84
|
+
|
|
85
|
+
## 1.0.0-canary.19
|
|
86
|
+
|
|
87
|
+
### Patch Changes
|
|
88
|
+
|
|
89
|
+
- Updated dependencies [faf8446]
|
|
90
|
+
- @ai-sdk/provider-utils@3.0.0-canary.19
|
|
91
|
+
- @ai-sdk/openai-compatible@1.0.0-canary.19
|
|
92
|
+
|
|
93
|
+
## 1.0.0-canary.18
|
|
94
|
+
|
|
95
|
+
### Patch Changes
|
|
96
|
+
|
|
97
|
+
- Updated dependencies [40acf9b]
|
|
98
|
+
- @ai-sdk/provider-utils@3.0.0-canary.18
|
|
99
|
+
- @ai-sdk/openai-compatible@1.0.0-canary.18
|
|
100
|
+
|
|
101
|
+
## 1.0.0-canary.17
|
|
102
|
+
|
|
103
|
+
### Major Changes
|
|
104
|
+
|
|
105
|
+
- 516be5b: ### Move Image Model Settings into generate options
|
|
106
|
+
|
|
107
|
+
Image Models no longer have settings. Instead, `maxImagesPerCall` can be passed directly to `generateImage()`. All other image settings can be passed to `providerOptions[provider]`.
|
|
108
|
+
|
|
109
|
+
Before
|
|
110
|
+
|
|
111
|
+
```js
|
|
112
|
+
await generateImage({
|
|
113
|
+
model: luma.image('photon-flash-1', {
|
|
114
|
+
maxImagesPerCall: 5,
|
|
115
|
+
pollIntervalMillis: 500,
|
|
116
|
+
}),
|
|
117
|
+
prompt,
|
|
118
|
+
n: 10,
|
|
119
|
+
});
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
After
|
|
123
|
+
|
|
124
|
+
```js
|
|
125
|
+
await generateImage({
|
|
126
|
+
model: luma.image('photon-flash-1'),
|
|
127
|
+
prompt,
|
|
128
|
+
n: 10,
|
|
129
|
+
maxImagesPerCall: 5,
|
|
130
|
+
providerOptions: {
|
|
131
|
+
luma: { pollIntervalMillis: 5 },
|
|
132
|
+
},
|
|
133
|
+
});
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
Pull Request: https://github.com/vercel/ai/pull/6180
|
|
137
|
+
|
|
138
|
+
### Patch Changes
|
|
139
|
+
|
|
140
|
+
- Updated dependencies [516be5b]
|
|
141
|
+
- Updated dependencies [ea7a7c9]
|
|
142
|
+
- @ai-sdk/openai-compatible@1.0.0-canary.17
|
|
143
|
+
- @ai-sdk/provider-utils@3.0.0-canary.17
|
|
144
|
+
|
|
145
|
+
## 1.0.0-canary.16
|
|
146
|
+
|
|
147
|
+
### Patch Changes
|
|
148
|
+
|
|
149
|
+
- Updated dependencies [87b828f]
|
|
150
|
+
- @ai-sdk/provider-utils@3.0.0-canary.16
|
|
151
|
+
- @ai-sdk/openai-compatible@1.0.0-canary.16
|
|
152
|
+
|
|
153
|
+
## 1.0.0-canary.15
|
|
154
|
+
|
|
155
|
+
### Patch Changes
|
|
156
|
+
|
|
157
|
+
- Updated dependencies [a571d6e]
|
|
158
|
+
- Updated dependencies [a8c8bd5]
|
|
159
|
+
- Updated dependencies [7979f7f]
|
|
160
|
+
- Updated dependencies [41fa418]
|
|
161
|
+
- @ai-sdk/provider-utils@3.0.0-canary.15
|
|
162
|
+
- @ai-sdk/provider@2.0.0-canary.14
|
|
163
|
+
- @ai-sdk/openai-compatible@1.0.0-canary.15
|
|
164
|
+
|
|
165
|
+
## 1.0.0-canary.14
|
|
166
|
+
|
|
167
|
+
### Patch Changes
|
|
168
|
+
|
|
169
|
+
- Updated dependencies [957b739]
|
|
170
|
+
- Updated dependencies [9bd5ab5]
|
|
171
|
+
- @ai-sdk/provider-utils@3.0.0-canary.14
|
|
172
|
+
- @ai-sdk/provider@2.0.0-canary.13
|
|
173
|
+
- @ai-sdk/openai-compatible@1.0.0-canary.14
|
|
174
|
+
|
|
175
|
+
## 1.0.0-canary.13
|
|
176
|
+
|
|
177
|
+
### Patch Changes
|
|
178
|
+
|
|
179
|
+
- d9209ca: fix (image-model): `specificationVersion: v1` -> `v2`
|
|
180
|
+
- Updated dependencies [7b3ae3f]
|
|
181
|
+
- Updated dependencies [d9209ca]
|
|
182
|
+
- Updated dependencies [0ff02bb]
|
|
183
|
+
- @ai-sdk/provider@2.0.0-canary.12
|
|
184
|
+
- @ai-sdk/openai-compatible@1.0.0-canary.13
|
|
185
|
+
- @ai-sdk/provider-utils@3.0.0-canary.13
|
|
186
|
+
|
|
187
|
+
## 1.0.0-canary.12
|
|
188
|
+
|
|
189
|
+
### Patch Changes
|
|
190
|
+
|
|
191
|
+
- Updated dependencies [9bf7291]
|
|
192
|
+
- Updated dependencies [4617fab]
|
|
193
|
+
- Updated dependencies [e030615]
|
|
194
|
+
- @ai-sdk/provider@2.0.0-canary.11
|
|
195
|
+
- @ai-sdk/openai-compatible@1.0.0-canary.12
|
|
196
|
+
- @ai-sdk/provider-utils@3.0.0-canary.12
|
|
197
|
+
|
|
198
|
+
## 1.0.0-canary.11
|
|
199
|
+
|
|
200
|
+
### Patch Changes
|
|
201
|
+
|
|
202
|
+
- 9301f86: refactor (image-model): rename `ImageModelV1` to `ImageModelV2`
|
|
203
|
+
- Updated dependencies [db72adc]
|
|
204
|
+
- Updated dependencies [42e32b0]
|
|
205
|
+
- Updated dependencies [66962ed]
|
|
206
|
+
- Updated dependencies [9301f86]
|
|
207
|
+
- Updated dependencies [a3f768e]
|
|
208
|
+
- @ai-sdk/openai-compatible@1.0.0-canary.11
|
|
209
|
+
- @ai-sdk/provider-utils@3.0.0-canary.11
|
|
210
|
+
- @ai-sdk/provider@2.0.0-canary.10
|
|
211
|
+
|
|
212
|
+
## 1.0.0-canary.10
|
|
213
|
+
|
|
214
|
+
### Patch Changes
|
|
215
|
+
|
|
216
|
+
- Updated dependencies [cf8280e]
|
|
217
|
+
- Updated dependencies [e86be6f]
|
|
218
|
+
- @ai-sdk/openai-compatible@1.0.0-canary.10
|
|
219
|
+
- @ai-sdk/provider@2.0.0-canary.9
|
|
220
|
+
- @ai-sdk/provider-utils@3.0.0-canary.10
|
|
221
|
+
|
|
222
|
+
## 1.0.0-canary.9
|
|
223
|
+
|
|
224
|
+
### Patch Changes
|
|
225
|
+
|
|
226
|
+
- Updated dependencies [95857aa]
|
|
227
|
+
- Updated dependencies [7ea4132]
|
|
228
|
+
- @ai-sdk/provider@2.0.0-canary.8
|
|
229
|
+
- @ai-sdk/openai-compatible@1.0.0-canary.9
|
|
230
|
+
- @ai-sdk/provider-utils@3.0.0-canary.9
|
|
231
|
+
|
|
232
|
+
## 1.0.0-canary.8
|
|
233
|
+
|
|
234
|
+
### Patch Changes
|
|
235
|
+
|
|
236
|
+
- Updated dependencies [5d142ab]
|
|
237
|
+
- Updated dependencies [b6b43c7]
|
|
238
|
+
- Updated dependencies [b9a6121]
|
|
239
|
+
- Updated dependencies [8aa9e20]
|
|
240
|
+
- Updated dependencies [3795467]
|
|
241
|
+
- @ai-sdk/provider-utils@3.0.0-canary.8
|
|
242
|
+
- @ai-sdk/provider@2.0.0-canary.7
|
|
243
|
+
- @ai-sdk/openai-compatible@1.0.0-canary.8
|
|
244
|
+
|
|
245
|
+
## 1.0.0-canary.7
|
|
246
|
+
|
|
247
|
+
### Patch Changes
|
|
248
|
+
|
|
249
|
+
- fa49207: feat(providers/openai-compatible): convert to providerOptions
|
|
250
|
+
- 26735b5: chore(embedding-model): add v2 interface
|
|
251
|
+
- Updated dependencies [fa49207]
|
|
252
|
+
- Updated dependencies [26735b5]
|
|
253
|
+
- Updated dependencies [443d8ec]
|
|
254
|
+
- Updated dependencies [14c9410]
|
|
255
|
+
- Updated dependencies [d9c98f4]
|
|
256
|
+
- Updated dependencies [c4a2fec]
|
|
257
|
+
- Updated dependencies [0054544]
|
|
258
|
+
- Updated dependencies [9e9c809]
|
|
259
|
+
- Updated dependencies [32831c6]
|
|
260
|
+
- Updated dependencies [d0f9495]
|
|
261
|
+
- Updated dependencies [fd65bc6]
|
|
262
|
+
- Updated dependencies [393138b]
|
|
263
|
+
- Updated dependencies [7182d14]
|
|
264
|
+
- @ai-sdk/openai-compatible@1.0.0-canary.7
|
|
265
|
+
- @ai-sdk/provider@2.0.0-canary.6
|
|
266
|
+
- @ai-sdk/provider-utils@3.0.0-canary.7
|
|
267
|
+
|
|
268
|
+
## 1.0.0-canary.6
|
|
269
|
+
|
|
270
|
+
### Patch Changes
|
|
271
|
+
|
|
272
|
+
- Updated dependencies [6db02c9]
|
|
273
|
+
- Updated dependencies [411e483]
|
|
274
|
+
- Updated dependencies [79457bd]
|
|
275
|
+
- Updated dependencies [ad80501]
|
|
276
|
+
- Updated dependencies [1766ede]
|
|
277
|
+
- Updated dependencies [f10304b]
|
|
278
|
+
- @ai-sdk/openai-compatible@1.0.0-canary.6
|
|
279
|
+
- @ai-sdk/provider@2.0.0-canary.5
|
|
280
|
+
- @ai-sdk/provider-utils@3.0.0-canary.6
|
|
281
|
+
|
|
282
|
+
## 1.0.0-canary.5
|
|
283
|
+
|
|
284
|
+
### Patch Changes
|
|
285
|
+
|
|
286
|
+
- Updated dependencies [6f6bb89]
|
|
287
|
+
- @ai-sdk/provider@2.0.0-canary.4
|
|
288
|
+
- @ai-sdk/openai-compatible@1.0.0-canary.5
|
|
289
|
+
- @ai-sdk/provider-utils@3.0.0-canary.5
|
|
290
|
+
|
|
291
|
+
## 1.0.0-canary.4
|
|
292
|
+
|
|
293
|
+
### Patch Changes
|
|
294
|
+
|
|
295
|
+
- Updated dependencies [d1a1aa1]
|
|
296
|
+
- @ai-sdk/provider@2.0.0-canary.3
|
|
297
|
+
- @ai-sdk/openai-compatible@1.0.0-canary.4
|
|
298
|
+
- @ai-sdk/provider-utils@3.0.0-canary.4
|
|
299
|
+
|
|
300
|
+
## 1.0.0-canary.3
|
|
301
|
+
|
|
302
|
+
### Patch Changes
|
|
303
|
+
|
|
304
|
+
- Updated dependencies [a166433]
|
|
305
|
+
- Updated dependencies [abf9a79]
|
|
306
|
+
- Updated dependencies [9f95b35]
|
|
307
|
+
- Updated dependencies [0a87932]
|
|
308
|
+
- Updated dependencies [6dc848c]
|
|
309
|
+
- @ai-sdk/provider-utils@3.0.0-canary.3
|
|
310
|
+
- @ai-sdk/provider@2.0.0-canary.2
|
|
311
|
+
- @ai-sdk/openai-compatible@1.0.0-canary.3
|
|
312
|
+
|
|
313
|
+
## 1.0.0-canary.2
|
|
314
|
+
|
|
315
|
+
### Patch Changes
|
|
316
|
+
|
|
317
|
+
- Updated dependencies [c57e248]
|
|
318
|
+
- Updated dependencies [33f4a6a]
|
|
319
|
+
- @ai-sdk/provider@2.0.0-canary.1
|
|
320
|
+
- @ai-sdk/openai-compatible@1.0.0-canary.2
|
|
321
|
+
- @ai-sdk/provider-utils@3.0.0-canary.2
|
|
322
|
+
|
|
323
|
+
## 1.0.0-canary.1
|
|
324
|
+
|
|
325
|
+
### Patch Changes
|
|
326
|
+
|
|
327
|
+
- Updated dependencies [060370c]
|
|
328
|
+
- Updated dependencies [0c0c0b3]
|
|
329
|
+
- Updated dependencies [63d791d]
|
|
330
|
+
- @ai-sdk/provider-utils@3.0.0-canary.1
|
|
331
|
+
- @ai-sdk/openai-compatible@1.0.0-canary.1
|
|
332
|
+
|
|
333
|
+
## 1.0.0-canary.0
|
|
334
|
+
|
|
335
|
+
### Major Changes
|
|
336
|
+
|
|
337
|
+
- d5f588f: AI SDK 5
|
|
338
|
+
|
|
339
|
+
### Patch Changes
|
|
340
|
+
|
|
341
|
+
- Updated dependencies [d5f588f]
|
|
342
|
+
- @ai-sdk/provider-utils@3.0.0-canary.0
|
|
343
|
+
- @ai-sdk/openai-compatible@1.0.0-canary.0
|
|
344
|
+
- @ai-sdk/provider@2.0.0-canary.0
|
|
73
345
|
|
|
74
346
|
## 0.2.5
|
|
75
347
|
|
package/dist/index.d.mts
CHANGED
|
@@ -1,28 +1,36 @@
|
|
|
1
|
-
import { ProviderV1, LanguageModelV1, EmbeddingModelV1, ImageModelV1 } from '@ai-sdk/provider';
|
|
2
|
-
import { FetchFunction } from '@ai-sdk/provider-utils';
|
|
3
1
|
import { z } from 'zod';
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
type FireworksChatModelId = 'accounts/fireworks/models/deepseek-v3' | 'accounts/fireworks/models/llama-v3p3-70b-instruct' | 'accounts/fireworks/models/llama-v3p2-3b-instruct' | 'accounts/fireworks/models/llama-v3p1-405b-instruct' | 'accounts/fireworks/models/llama-v3p1-8b-instruct' | 'accounts/fireworks/models/mixtral-8x7b-instruct' | 'accounts/fireworks/models/mixtral-8x22b-instruct' | 'accounts/fireworks/models/mixtral-8x7b-instruct-hf' | 'accounts/fireworks/models/qwen2p5-coder-32b-instruct' | 'accounts/fireworks/models/qwen2p5-72b-instruct' | 'accounts/fireworks/models/qwen-qwq-32b-preview' | 'accounts/fireworks/models/qwen2-vl-72b-instruct' | 'accounts/fireworks/models/llama-v3p2-11b-vision-instruct' | 'accounts/fireworks/models/qwq-32b' | 'accounts/fireworks/models/yi-large' | (string & {});
|
|
7
|
-
interface FireworksChatSettings extends OpenAICompatibleChatSettings {
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
type FireworksCompletionModelId = 'accounts/fireworks/models/llama-v3-8b-instruct' | 'accounts/fireworks/models/llama-v2-34b-code' | (string & {});
|
|
11
|
-
interface FireworksCompletionSettings extends OpenAICompatibleCompletionSettings {
|
|
12
|
-
}
|
|
2
|
+
import { ImageModelV2, ProviderV2, LanguageModelV2, EmbeddingModelV2 } from '@ai-sdk/provider';
|
|
3
|
+
import { FetchFunction } from '@ai-sdk/provider-utils';
|
|
13
4
|
|
|
14
5
|
type FireworksEmbeddingModelId = 'nomic-ai/nomic-embed-text-v1.5' | (string & {});
|
|
15
|
-
|
|
16
|
-
|
|
6
|
+
declare const fireworksEmbeddingProviderOptions: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
|
|
7
|
+
type FireworksEmbeddingProviderOptions = z.infer<typeof fireworksEmbeddingProviderOptions>;
|
|
17
8
|
|
|
18
9
|
type FireworksImageModelId = 'accounts/fireworks/models/flux-1-dev-fp8' | 'accounts/fireworks/models/flux-1-schnell-fp8' | 'accounts/fireworks/models/playground-v2-5-1024px-aesthetic' | 'accounts/fireworks/models/japanese-stable-diffusion-xl' | 'accounts/fireworks/models/playground-v2-1024px-aesthetic' | 'accounts/fireworks/models/SSD-1B' | 'accounts/fireworks/models/stable-diffusion-xl-1024-v1-0' | (string & {});
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
10
|
+
|
|
11
|
+
interface FireworksImageModelConfig {
|
|
12
|
+
provider: string;
|
|
13
|
+
baseURL: string;
|
|
14
|
+
headers: () => Record<string, string>;
|
|
15
|
+
fetch?: FetchFunction;
|
|
16
|
+
_internal?: {
|
|
17
|
+
currentDate?: () => Date;
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
declare class FireworksImageModel implements ImageModelV2 {
|
|
21
|
+
readonly modelId: FireworksImageModelId;
|
|
22
|
+
private config;
|
|
23
|
+
readonly specificationVersion = "v2";
|
|
24
|
+
readonly maxImagesPerCall = 1;
|
|
25
|
+
get provider(): string;
|
|
26
|
+
constructor(modelId: FireworksImageModelId, config: FireworksImageModelConfig);
|
|
27
|
+
doGenerate({ prompt, n, size, aspectRatio, seed, providerOptions, headers, abortSignal, }: Parameters<ImageModelV2['doGenerate']>[0]): Promise<Awaited<ReturnType<ImageModelV2['doGenerate']>>>;
|
|
24
28
|
}
|
|
25
29
|
|
|
30
|
+
type FireworksChatModelId = 'accounts/fireworks/models/deepseek-v3' | 'accounts/fireworks/models/llama-v3p3-70b-instruct' | 'accounts/fireworks/models/llama-v3p2-3b-instruct' | 'accounts/fireworks/models/llama-v3p1-405b-instruct' | 'accounts/fireworks/models/llama-v3p1-8b-instruct' | 'accounts/fireworks/models/mixtral-8x7b-instruct' | 'accounts/fireworks/models/mixtral-8x22b-instruct' | 'accounts/fireworks/models/mixtral-8x7b-instruct-hf' | 'accounts/fireworks/models/qwen2p5-coder-32b-instruct' | 'accounts/fireworks/models/qwen2p5-72b-instruct' | 'accounts/fireworks/models/qwen-qwq-32b-preview' | 'accounts/fireworks/models/qwen2-vl-72b-instruct' | 'accounts/fireworks/models/llama-v3p2-11b-vision-instruct' | 'accounts/fireworks/models/qwq-32b' | 'accounts/fireworks/models/yi-large' | (string & {});
|
|
31
|
+
|
|
32
|
+
type FireworksCompletionModelId = 'accounts/fireworks/models/llama-v3-8b-instruct' | 'accounts/fireworks/models/llama-v2-34b-code' | (string & {});
|
|
33
|
+
|
|
26
34
|
type FireworksErrorData = z.infer<typeof fireworksErrorSchema>;
|
|
27
35
|
declare const fireworksErrorSchema: z.ZodObject<{
|
|
28
36
|
error: z.ZodString;
|
|
@@ -51,37 +59,38 @@ interface FireworksProviderSettings {
|
|
|
51
59
|
*/
|
|
52
60
|
fetch?: FetchFunction;
|
|
53
61
|
}
|
|
54
|
-
interface FireworksProvider extends
|
|
62
|
+
interface FireworksProvider extends ProviderV2 {
|
|
55
63
|
/**
|
|
56
64
|
Creates a model for text generation.
|
|
57
65
|
*/
|
|
58
|
-
(modelId: FireworksChatModelId
|
|
66
|
+
(modelId: FireworksChatModelId): LanguageModelV2;
|
|
59
67
|
/**
|
|
60
68
|
Creates a chat model for text generation.
|
|
61
69
|
*/
|
|
62
|
-
chatModel(modelId: FireworksChatModelId
|
|
70
|
+
chatModel(modelId: FireworksChatModelId): LanguageModelV2;
|
|
63
71
|
/**
|
|
64
72
|
Creates a completion model for text generation.
|
|
65
73
|
*/
|
|
66
|
-
completionModel(modelId: FireworksCompletionModelId
|
|
74
|
+
completionModel(modelId: FireworksCompletionModelId): LanguageModelV2;
|
|
67
75
|
/**
|
|
68
76
|
Creates a chat model for text generation.
|
|
69
77
|
*/
|
|
70
|
-
languageModel(modelId: FireworksChatModelId
|
|
78
|
+
languageModel(modelId: FireworksChatModelId): LanguageModelV2;
|
|
71
79
|
/**
|
|
72
80
|
Creates a text embedding model for text generation.
|
|
73
81
|
*/
|
|
74
|
-
textEmbeddingModel(modelId: FireworksEmbeddingModelId
|
|
82
|
+
textEmbeddingModel(modelId: FireworksEmbeddingModelId): EmbeddingModelV2<string>;
|
|
75
83
|
/**
|
|
76
84
|
Creates a model for image generation.
|
|
85
|
+
@deprecated Use `imageModel` instead.
|
|
77
86
|
*/
|
|
78
|
-
image(modelId: FireworksImageModelId
|
|
87
|
+
image(modelId: FireworksImageModelId): ImageModelV2;
|
|
79
88
|
/**
|
|
80
89
|
Creates a model for image generation.
|
|
81
90
|
*/
|
|
82
|
-
imageModel(modelId: FireworksImageModelId
|
|
91
|
+
imageModel(modelId: FireworksImageModelId): ImageModelV2;
|
|
83
92
|
}
|
|
84
93
|
declare function createFireworks(options?: FireworksProviderSettings): FireworksProvider;
|
|
85
94
|
declare const fireworks: FireworksProvider;
|
|
86
95
|
|
|
87
|
-
export { type FireworksErrorData, type FireworksProvider, type FireworksProviderSettings, createFireworks, fireworks };
|
|
96
|
+
export { type FireworksEmbeddingModelId, type FireworksEmbeddingProviderOptions, type FireworksErrorData, FireworksImageModel, type FireworksImageModelId, type FireworksProvider, type FireworksProviderSettings, createFireworks, fireworks };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,28 +1,36 @@
|
|
|
1
|
-
import { ProviderV1, LanguageModelV1, EmbeddingModelV1, ImageModelV1 } from '@ai-sdk/provider';
|
|
2
|
-
import { FetchFunction } from '@ai-sdk/provider-utils';
|
|
3
1
|
import { z } from 'zod';
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
type FireworksChatModelId = 'accounts/fireworks/models/deepseek-v3' | 'accounts/fireworks/models/llama-v3p3-70b-instruct' | 'accounts/fireworks/models/llama-v3p2-3b-instruct' | 'accounts/fireworks/models/llama-v3p1-405b-instruct' | 'accounts/fireworks/models/llama-v3p1-8b-instruct' | 'accounts/fireworks/models/mixtral-8x7b-instruct' | 'accounts/fireworks/models/mixtral-8x22b-instruct' | 'accounts/fireworks/models/mixtral-8x7b-instruct-hf' | 'accounts/fireworks/models/qwen2p5-coder-32b-instruct' | 'accounts/fireworks/models/qwen2p5-72b-instruct' | 'accounts/fireworks/models/qwen-qwq-32b-preview' | 'accounts/fireworks/models/qwen2-vl-72b-instruct' | 'accounts/fireworks/models/llama-v3p2-11b-vision-instruct' | 'accounts/fireworks/models/qwq-32b' | 'accounts/fireworks/models/yi-large' | (string & {});
|
|
7
|
-
interface FireworksChatSettings extends OpenAICompatibleChatSettings {
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
type FireworksCompletionModelId = 'accounts/fireworks/models/llama-v3-8b-instruct' | 'accounts/fireworks/models/llama-v2-34b-code' | (string & {});
|
|
11
|
-
interface FireworksCompletionSettings extends OpenAICompatibleCompletionSettings {
|
|
12
|
-
}
|
|
2
|
+
import { ImageModelV2, ProviderV2, LanguageModelV2, EmbeddingModelV2 } from '@ai-sdk/provider';
|
|
3
|
+
import { FetchFunction } from '@ai-sdk/provider-utils';
|
|
13
4
|
|
|
14
5
|
type FireworksEmbeddingModelId = 'nomic-ai/nomic-embed-text-v1.5' | (string & {});
|
|
15
|
-
|
|
16
|
-
|
|
6
|
+
declare const fireworksEmbeddingProviderOptions: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
|
|
7
|
+
type FireworksEmbeddingProviderOptions = z.infer<typeof fireworksEmbeddingProviderOptions>;
|
|
17
8
|
|
|
18
9
|
type FireworksImageModelId = 'accounts/fireworks/models/flux-1-dev-fp8' | 'accounts/fireworks/models/flux-1-schnell-fp8' | 'accounts/fireworks/models/playground-v2-5-1024px-aesthetic' | 'accounts/fireworks/models/japanese-stable-diffusion-xl' | 'accounts/fireworks/models/playground-v2-1024px-aesthetic' | 'accounts/fireworks/models/SSD-1B' | 'accounts/fireworks/models/stable-diffusion-xl-1024-v1-0' | (string & {});
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
10
|
+
|
|
11
|
+
interface FireworksImageModelConfig {
|
|
12
|
+
provider: string;
|
|
13
|
+
baseURL: string;
|
|
14
|
+
headers: () => Record<string, string>;
|
|
15
|
+
fetch?: FetchFunction;
|
|
16
|
+
_internal?: {
|
|
17
|
+
currentDate?: () => Date;
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
declare class FireworksImageModel implements ImageModelV2 {
|
|
21
|
+
readonly modelId: FireworksImageModelId;
|
|
22
|
+
private config;
|
|
23
|
+
readonly specificationVersion = "v2";
|
|
24
|
+
readonly maxImagesPerCall = 1;
|
|
25
|
+
get provider(): string;
|
|
26
|
+
constructor(modelId: FireworksImageModelId, config: FireworksImageModelConfig);
|
|
27
|
+
doGenerate({ prompt, n, size, aspectRatio, seed, providerOptions, headers, abortSignal, }: Parameters<ImageModelV2['doGenerate']>[0]): Promise<Awaited<ReturnType<ImageModelV2['doGenerate']>>>;
|
|
24
28
|
}
|
|
25
29
|
|
|
30
|
+
type FireworksChatModelId = 'accounts/fireworks/models/deepseek-v3' | 'accounts/fireworks/models/llama-v3p3-70b-instruct' | 'accounts/fireworks/models/llama-v3p2-3b-instruct' | 'accounts/fireworks/models/llama-v3p1-405b-instruct' | 'accounts/fireworks/models/llama-v3p1-8b-instruct' | 'accounts/fireworks/models/mixtral-8x7b-instruct' | 'accounts/fireworks/models/mixtral-8x22b-instruct' | 'accounts/fireworks/models/mixtral-8x7b-instruct-hf' | 'accounts/fireworks/models/qwen2p5-coder-32b-instruct' | 'accounts/fireworks/models/qwen2p5-72b-instruct' | 'accounts/fireworks/models/qwen-qwq-32b-preview' | 'accounts/fireworks/models/qwen2-vl-72b-instruct' | 'accounts/fireworks/models/llama-v3p2-11b-vision-instruct' | 'accounts/fireworks/models/qwq-32b' | 'accounts/fireworks/models/yi-large' | (string & {});
|
|
31
|
+
|
|
32
|
+
type FireworksCompletionModelId = 'accounts/fireworks/models/llama-v3-8b-instruct' | 'accounts/fireworks/models/llama-v2-34b-code' | (string & {});
|
|
33
|
+
|
|
26
34
|
type FireworksErrorData = z.infer<typeof fireworksErrorSchema>;
|
|
27
35
|
declare const fireworksErrorSchema: z.ZodObject<{
|
|
28
36
|
error: z.ZodString;
|
|
@@ -51,37 +59,38 @@ interface FireworksProviderSettings {
|
|
|
51
59
|
*/
|
|
52
60
|
fetch?: FetchFunction;
|
|
53
61
|
}
|
|
54
|
-
interface FireworksProvider extends
|
|
62
|
+
interface FireworksProvider extends ProviderV2 {
|
|
55
63
|
/**
|
|
56
64
|
Creates a model for text generation.
|
|
57
65
|
*/
|
|
58
|
-
(modelId: FireworksChatModelId
|
|
66
|
+
(modelId: FireworksChatModelId): LanguageModelV2;
|
|
59
67
|
/**
|
|
60
68
|
Creates a chat model for text generation.
|
|
61
69
|
*/
|
|
62
|
-
chatModel(modelId: FireworksChatModelId
|
|
70
|
+
chatModel(modelId: FireworksChatModelId): LanguageModelV2;
|
|
63
71
|
/**
|
|
64
72
|
Creates a completion model for text generation.
|
|
65
73
|
*/
|
|
66
|
-
completionModel(modelId: FireworksCompletionModelId
|
|
74
|
+
completionModel(modelId: FireworksCompletionModelId): LanguageModelV2;
|
|
67
75
|
/**
|
|
68
76
|
Creates a chat model for text generation.
|
|
69
77
|
*/
|
|
70
|
-
languageModel(modelId: FireworksChatModelId
|
|
78
|
+
languageModel(modelId: FireworksChatModelId): LanguageModelV2;
|
|
71
79
|
/**
|
|
72
80
|
Creates a text embedding model for text generation.
|
|
73
81
|
*/
|
|
74
|
-
textEmbeddingModel(modelId: FireworksEmbeddingModelId
|
|
82
|
+
textEmbeddingModel(modelId: FireworksEmbeddingModelId): EmbeddingModelV2<string>;
|
|
75
83
|
/**
|
|
76
84
|
Creates a model for image generation.
|
|
85
|
+
@deprecated Use `imageModel` instead.
|
|
77
86
|
*/
|
|
78
|
-
image(modelId: FireworksImageModelId
|
|
87
|
+
image(modelId: FireworksImageModelId): ImageModelV2;
|
|
79
88
|
/**
|
|
80
89
|
Creates a model for image generation.
|
|
81
90
|
*/
|
|
82
|
-
imageModel(modelId: FireworksImageModelId
|
|
91
|
+
imageModel(modelId: FireworksImageModelId): ImageModelV2;
|
|
83
92
|
}
|
|
84
93
|
declare function createFireworks(options?: FireworksProviderSettings): FireworksProvider;
|
|
85
94
|
declare const fireworks: FireworksProvider;
|
|
86
95
|
|
|
87
|
-
export { type FireworksErrorData, type FireworksProvider, type FireworksProviderSettings, createFireworks, fireworks };
|
|
96
|
+
export { type FireworksEmbeddingModelId, type FireworksEmbeddingProviderOptions, type FireworksErrorData, FireworksImageModel, type FireworksImageModelId, type FireworksProvider, type FireworksProviderSettings, createFireworks, fireworks };
|
package/dist/index.js
CHANGED
|
@@ -20,16 +20,12 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
20
20
|
// src/index.ts
|
|
21
21
|
var src_exports = {};
|
|
22
22
|
__export(src_exports, {
|
|
23
|
+
FireworksImageModel: () => FireworksImageModel,
|
|
23
24
|
createFireworks: () => createFireworks,
|
|
24
25
|
fireworks: () => fireworks
|
|
25
26
|
});
|
|
26
27
|
module.exports = __toCommonJS(src_exports);
|
|
27
28
|
|
|
28
|
-
// src/fireworks-provider.ts
|
|
29
|
-
var import_openai_compatible = require("@ai-sdk/openai-compatible");
|
|
30
|
-
var import_provider_utils2 = require("@ai-sdk/provider-utils");
|
|
31
|
-
var import_zod = require("zod");
|
|
32
|
-
|
|
33
29
|
// src/fireworks-image-model.ts
|
|
34
30
|
var import_provider_utils = require("@ai-sdk/provider-utils");
|
|
35
31
|
var modelToBackendConfig = {
|
|
@@ -71,19 +67,15 @@ function getUrlForModel(baseUrl, modelId) {
|
|
|
71
67
|
}
|
|
72
68
|
}
|
|
73
69
|
var FireworksImageModel = class {
|
|
74
|
-
constructor(modelId,
|
|
70
|
+
constructor(modelId, config) {
|
|
75
71
|
this.modelId = modelId;
|
|
76
|
-
this.settings = settings;
|
|
77
72
|
this.config = config;
|
|
78
|
-
this.specificationVersion = "
|
|
73
|
+
this.specificationVersion = "v2";
|
|
74
|
+
this.maxImagesPerCall = 1;
|
|
79
75
|
}
|
|
80
76
|
get provider() {
|
|
81
77
|
return this.config.provider;
|
|
82
78
|
}
|
|
83
|
-
get maxImagesPerCall() {
|
|
84
|
-
var _a;
|
|
85
|
-
return (_a = this.settings.maxImagesPerCall) != null ? _a : 1;
|
|
86
|
-
}
|
|
87
79
|
async doGenerate({
|
|
88
80
|
prompt,
|
|
89
81
|
n,
|
|
@@ -142,6 +134,9 @@ var FireworksImageModel = class {
|
|
|
142
134
|
};
|
|
143
135
|
|
|
144
136
|
// src/fireworks-provider.ts
|
|
137
|
+
var import_openai_compatible = require("@ai-sdk/openai-compatible");
|
|
138
|
+
var import_provider_utils2 = require("@ai-sdk/provider-utils");
|
|
139
|
+
var import_zod = require("zod");
|
|
145
140
|
var fireworksErrorSchema = import_zod.z.object({
|
|
146
141
|
error: import_zod.z.string()
|
|
147
142
|
});
|
|
@@ -167,26 +162,25 @@ function createFireworks(options = {}) {
|
|
|
167
162
|
headers: getHeaders,
|
|
168
163
|
fetch: options.fetch
|
|
169
164
|
});
|
|
170
|
-
const createChatModel = (modelId
|
|
171
|
-
return new import_openai_compatible.OpenAICompatibleChatLanguageModel(modelId,
|
|
165
|
+
const createChatModel = (modelId) => {
|
|
166
|
+
return new import_openai_compatible.OpenAICompatibleChatLanguageModel(modelId, {
|
|
172
167
|
...getCommonModelConfig("chat"),
|
|
173
|
-
errorStructure: fireworksErrorStructure
|
|
174
|
-
defaultObjectGenerationMode: "json"
|
|
168
|
+
errorStructure: fireworksErrorStructure
|
|
175
169
|
});
|
|
176
170
|
};
|
|
177
|
-
const createCompletionModel = (modelId
|
|
171
|
+
const createCompletionModel = (modelId) => new import_openai_compatible.OpenAICompatibleCompletionLanguageModel(modelId, {
|
|
178
172
|
...getCommonModelConfig("completion"),
|
|
179
173
|
errorStructure: fireworksErrorStructure
|
|
180
174
|
});
|
|
181
|
-
const createTextEmbeddingModel = (modelId
|
|
175
|
+
const createTextEmbeddingModel = (modelId) => new import_openai_compatible.OpenAICompatibleEmbeddingModel(modelId, {
|
|
182
176
|
...getCommonModelConfig("embedding"),
|
|
183
177
|
errorStructure: fireworksErrorStructure
|
|
184
178
|
});
|
|
185
|
-
const createImageModel = (modelId
|
|
179
|
+
const createImageModel = (modelId) => new FireworksImageModel(modelId, {
|
|
186
180
|
...getCommonModelConfig("image"),
|
|
187
181
|
baseURL: baseURL != null ? baseURL : defaultBaseURL
|
|
188
182
|
});
|
|
189
|
-
const provider = (modelId
|
|
183
|
+
const provider = (modelId) => createChatModel(modelId);
|
|
190
184
|
provider.completionModel = createCompletionModel;
|
|
191
185
|
provider.chatModel = createChatModel;
|
|
192
186
|
provider.languageModel = createChatModel;
|
|
@@ -198,6 +192,7 @@ function createFireworks(options = {}) {
|
|
|
198
192
|
var fireworks = createFireworks();
|
|
199
193
|
// Annotate the CommonJS export names for ESM import in node:
|
|
200
194
|
0 && (module.exports = {
|
|
195
|
+
FireworksImageModel,
|
|
201
196
|
createFireworks,
|
|
202
197
|
fireworks
|
|
203
198
|
});
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts","../src/fireworks-provider.ts","../src/fireworks-image-model.ts"],"sourcesContent":["export { createFireworks, fireworks } from './fireworks-provider';\nexport type {\n FireworksProvider,\n FireworksProviderSettings,\n FireworksErrorData,\n} from './fireworks-provider';\n","import {\n OpenAICompatibleChatLanguageModel,\n OpenAICompatibleCompletionLanguageModel,\n OpenAICompatibleEmbeddingModel,\n ProviderErrorStructure,\n} from '@ai-sdk/openai-compatible';\nimport {\n EmbeddingModelV1,\n ImageModelV1,\n LanguageModelV1,\n ProviderV1,\n} from '@ai-sdk/provider';\nimport {\n FetchFunction,\n loadApiKey,\n withoutTrailingSlash,\n} from '@ai-sdk/provider-utils';\nimport { z } from 'zod';\nimport {\n FireworksChatModelId,\n FireworksChatSettings,\n} from './fireworks-chat-settings';\nimport {\n FireworksCompletionModelId,\n FireworksCompletionSettings,\n} from './fireworks-completion-settings';\nimport {\n FireworksEmbeddingModelId,\n FireworksEmbeddingSettings,\n} from './fireworks-embedding-settings';\nimport { FireworksImageModel } from './fireworks-image-model';\nimport {\n FireworksImageModelId,\n FireworksImageSettings,\n} from './fireworks-image-settings';\n\nexport type FireworksErrorData = z.infer<typeof fireworksErrorSchema>;\n\nconst fireworksErrorSchema = z.object({\n error: z.string(),\n});\n\nconst fireworksErrorStructure: ProviderErrorStructure<FireworksErrorData> = {\n errorSchema: fireworksErrorSchema,\n errorToMessage: data => data.error,\n};\n\nexport interface FireworksProviderSettings {\n /**\nFireworks API key. Default value is taken from the `FIREWORKS_API_KEY`\nenvironment variable.\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 FireworksProvider extends ProviderV1 {\n /**\nCreates a model for text generation.\n*/\n (\n modelId: FireworksChatModelId,\n settings?: FireworksChatSettings,\n ): LanguageModelV1;\n\n /**\nCreates a chat model for text generation.\n*/\n chatModel(\n modelId: FireworksChatModelId,\n settings?: FireworksChatSettings,\n ): LanguageModelV1;\n\n /**\nCreates a completion model for text generation.\n*/\n completionModel(\n modelId: FireworksCompletionModelId,\n settings?: FireworksCompletionSettings,\n ): LanguageModelV1;\n\n /**\nCreates a chat model for text generation.\n*/\n languageModel(\n modelId: FireworksChatModelId,\n settings?: FireworksChatSettings,\n ): LanguageModelV1;\n\n /**\nCreates a text embedding model for text generation.\n*/\n textEmbeddingModel(\n modelId: FireworksEmbeddingModelId,\n settings?: FireworksEmbeddingSettings,\n ): EmbeddingModelV1<string>;\n\n /**\nCreates a model for image generation.\n*/\n image(\n modelId: FireworksImageModelId,\n settings?: FireworksImageSettings,\n ): ImageModelV1;\n\n /**\nCreates a model for image generation.\n*/\n imageModel(\n modelId: FireworksImageModelId,\n settings?: FireworksImageSettings,\n ): ImageModelV1;\n}\n\nconst defaultBaseURL = 'https://api.fireworks.ai/inference/v1';\n\nexport function createFireworks(\n options: FireworksProviderSettings = {},\n): FireworksProvider {\n const baseURL = withoutTrailingSlash(options.baseURL ?? defaultBaseURL);\n const getHeaders = () => ({\n Authorization: `Bearer ${loadApiKey({\n apiKey: options.apiKey,\n environmentVariableName: 'FIREWORKS_API_KEY',\n description: 'Fireworks API key',\n })}`,\n ...options.headers,\n });\n\n interface CommonModelConfig {\n provider: string;\n url: ({ path }: { path: string }) => string;\n headers: () => Record<string, string>;\n fetch?: FetchFunction;\n }\n\n const getCommonModelConfig = (modelType: string): CommonModelConfig => ({\n provider: `fireworks.${modelType}`,\n url: ({ path }) => `${baseURL}${path}`,\n headers: getHeaders,\n fetch: options.fetch,\n });\n\n const createChatModel = (\n modelId: FireworksChatModelId,\n settings: FireworksChatSettings = {},\n ) => {\n return new OpenAICompatibleChatLanguageModel(modelId, settings, {\n ...getCommonModelConfig('chat'),\n errorStructure: fireworksErrorStructure,\n defaultObjectGenerationMode: 'json',\n });\n };\n\n const createCompletionModel = (\n modelId: FireworksCompletionModelId,\n settings: FireworksCompletionSettings = {},\n ) =>\n new OpenAICompatibleCompletionLanguageModel(modelId, settings, {\n ...getCommonModelConfig('completion'),\n errorStructure: fireworksErrorStructure,\n });\n\n const createTextEmbeddingModel = (\n modelId: FireworksEmbeddingModelId,\n settings: FireworksEmbeddingSettings = {},\n ) =>\n new OpenAICompatibleEmbeddingModel(modelId, settings, {\n ...getCommonModelConfig('embedding'),\n errorStructure: fireworksErrorStructure,\n });\n\n const createImageModel = (\n modelId: FireworksImageModelId,\n settings: FireworksImageSettings = {},\n ) =>\n new FireworksImageModel(modelId, settings, {\n ...getCommonModelConfig('image'),\n baseURL: baseURL ?? defaultBaseURL,\n });\n\n const provider = (\n modelId: FireworksChatModelId,\n settings?: FireworksChatSettings,\n ) => createChatModel(modelId, settings);\n\n provider.completionModel = createCompletionModel;\n provider.chatModel = createChatModel;\n provider.languageModel = createChatModel;\n provider.textEmbeddingModel = createTextEmbeddingModel;\n provider.image = createImageModel;\n provider.imageModel = createImageModel;\n return provider;\n}\n\nexport const fireworks = createFireworks();\n","import { ImageModelV1, ImageModelV1CallWarning } from '@ai-sdk/provider';\nimport {\n combineHeaders,\n createBinaryResponseHandler,\n createStatusCodeErrorResponseHandler,\n FetchFunction,\n postJsonToApi,\n} from '@ai-sdk/provider-utils';\nimport {\n FireworksImageModelId,\n FireworksImageSettings,\n} from './fireworks-image-settings';\n\ninterface FireworksImageModelBackendConfig {\n urlFormat: 'workflows' | 'image_generation';\n supportsSize?: boolean;\n}\n\nconst modelToBackendConfig: Partial<\n Record<FireworksImageModelId, FireworksImageModelBackendConfig>\n> = {\n 'accounts/fireworks/models/flux-1-dev-fp8': {\n urlFormat: 'workflows',\n },\n 'accounts/fireworks/models/flux-1-schnell-fp8': {\n urlFormat: 'workflows',\n },\n 'accounts/fireworks/models/playground-v2-5-1024px-aesthetic': {\n urlFormat: 'image_generation',\n supportsSize: true,\n },\n 'accounts/fireworks/models/japanese-stable-diffusion-xl': {\n urlFormat: 'image_generation',\n supportsSize: true,\n },\n 'accounts/fireworks/models/playground-v2-1024px-aesthetic': {\n urlFormat: 'image_generation',\n supportsSize: true,\n },\n 'accounts/fireworks/models/stable-diffusion-xl-1024-v1-0': {\n urlFormat: 'image_generation',\n supportsSize: true,\n },\n 'accounts/fireworks/models/SSD-1B': {\n urlFormat: 'image_generation',\n supportsSize: true,\n },\n};\n\nfunction getUrlForModel(\n baseUrl: string,\n modelId: FireworksImageModelId,\n): string {\n switch (modelToBackendConfig[modelId]?.urlFormat) {\n case 'image_generation':\n return `${baseUrl}/image_generation/${modelId}`;\n case 'workflows':\n default:\n return `${baseUrl}/workflows/${modelId}/text_to_image`;\n }\n}\n\ninterface FireworksImageModelConfig {\n provider: string;\n baseURL: string;\n headers: () => Record<string, string>;\n fetch?: FetchFunction;\n _internal?: {\n currentDate?: () => Date;\n };\n}\n\nexport class FireworksImageModel implements ImageModelV1 {\n readonly specificationVersion = 'v1';\n\n get provider(): string {\n return this.config.provider;\n }\n\n get maxImagesPerCall(): number {\n return this.settings.maxImagesPerCall ?? 1;\n }\n\n constructor(\n readonly modelId: FireworksImageModelId,\n readonly settings: FireworksImageSettings,\n private config: FireworksImageModelConfig,\n ) {}\n\n async doGenerate({\n prompt,\n n,\n size,\n aspectRatio,\n seed,\n providerOptions,\n headers,\n abortSignal,\n }: Parameters<ImageModelV1['doGenerate']>[0]): Promise<\n Awaited<ReturnType<ImageModelV1['doGenerate']>>\n > {\n const warnings: Array<ImageModelV1CallWarning> = [];\n\n const backendConfig = modelToBackendConfig[this.modelId];\n if (!backendConfig?.supportsSize && size != null) {\n warnings.push({\n type: 'unsupported-setting',\n setting: 'size',\n details:\n 'This model does not support the `size` option. Use `aspectRatio` instead.',\n });\n }\n\n // Use supportsSize as a proxy for whether the model does not support\n // aspectRatio. This invariant holds for the current set of models.\n if (backendConfig?.supportsSize && aspectRatio != null) {\n warnings.push({\n type: 'unsupported-setting',\n setting: 'aspectRatio',\n details: 'This model does not support the `aspectRatio` option.',\n });\n }\n\n const splitSize = size?.split('x');\n const currentDate = this.config._internal?.currentDate?.() ?? new Date();\n const { value: response, responseHeaders } = await postJsonToApi({\n url: getUrlForModel(this.config.baseURL, this.modelId),\n headers: combineHeaders(this.config.headers(), headers),\n body: {\n prompt,\n aspect_ratio: aspectRatio,\n seed,\n samples: n,\n ...(splitSize && { width: splitSize[0], height: splitSize[1] }),\n ...(providerOptions.fireworks ?? {}),\n },\n failedResponseHandler: createStatusCodeErrorResponseHandler(),\n successfulResponseHandler: createBinaryResponseHandler(),\n abortSignal,\n fetch: this.config.fetch,\n });\n\n return {\n images: [response],\n warnings,\n response: {\n timestamp: currentDate,\n modelId: this.modelId,\n headers: responseHeaders,\n },\n };\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,+BAKO;AAOP,IAAAA,yBAIO;AACP,iBAAkB;;;AChBlB,4BAMO;AAWP,IAAM,uBAEF;AAAA,EACF,4CAA4C;AAAA,IAC1C,WAAW;AAAA,EACb;AAAA,EACA,gDAAgD;AAAA,IAC9C,WAAW;AAAA,EACb;AAAA,EACA,8DAA8D;AAAA,IAC5D,WAAW;AAAA,IACX,cAAc;AAAA,EAChB;AAAA,EACA,0DAA0D;AAAA,IACxD,WAAW;AAAA,IACX,cAAc;AAAA,EAChB;AAAA,EACA,4DAA4D;AAAA,IAC1D,WAAW;AAAA,IACX,cAAc;AAAA,EAChB;AAAA,EACA,2DAA2D;AAAA,IACzD,WAAW;AAAA,IACX,cAAc;AAAA,EAChB;AAAA,EACA,oCAAoC;AAAA,IAClC,WAAW;AAAA,IACX,cAAc;AAAA,EAChB;AACF;AAEA,SAAS,eACP,SACA,SACQ;AApDV;AAqDE,WAAQ,0BAAqB,OAAO,MAA5B,mBAA+B,WAAW;AAAA,IAChD,KAAK;AACH,aAAO,GAAG,OAAO,qBAAqB,OAAO;AAAA,IAC/C,KAAK;AAAA,IACL;AACE,aAAO,GAAG,OAAO,cAAc,OAAO;AAAA,EAC1C;AACF;AAYO,IAAM,sBAAN,MAAkD;AAAA,EAWvD,YACW,SACA,UACD,QACR;AAHS;AACA;AACD;AAbV,SAAS,uBAAuB;AAAA,EAc7B;AAAA,EAZH,IAAI,WAAmB;AACrB,WAAO,KAAK,OAAO;AAAA,EACrB;AAAA,EAEA,IAAI,mBAA2B;AA/EjC;AAgFI,YAAO,UAAK,SAAS,qBAAd,YAAkC;AAAA,EAC3C;AAAA,EAQA,MAAM,WAAW;AAAA,IACf;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,GAEE;AApGJ;AAqGI,UAAM,WAA2C,CAAC;AAElD,UAAM,gBAAgB,qBAAqB,KAAK,OAAO;AACvD,QAAI,EAAC,+CAAe,iBAAgB,QAAQ,MAAM;AAChD,eAAS,KAAK;AAAA,QACZ,MAAM;AAAA,QACN,SAAS;AAAA,QACT,SACE;AAAA,MACJ,CAAC;AAAA,IACH;AAIA,SAAI,+CAAe,iBAAgB,eAAe,MAAM;AACtD,eAAS,KAAK;AAAA,QACZ,MAAM;AAAA,QACN,SAAS;AAAA,QACT,SAAS;AAAA,MACX,CAAC;AAAA,IACH;AAEA,UAAM,YAAY,6BAAM,MAAM;AAC9B,UAAM,eAAc,sBAAK,OAAO,cAAZ,mBAAuB,gBAAvB,4CAA0C,oBAAI,KAAK;AACvE,UAAM,EAAE,OAAO,UAAU,gBAAgB,IAAI,UAAM,qCAAc;AAAA,MAC/D,KAAK,eAAe,KAAK,OAAO,SAAS,KAAK,OAAO;AAAA,MACrD,aAAS,sCAAe,KAAK,OAAO,QAAQ,GAAG,OAAO;AAAA,MACtD,MAAM;AAAA,QACJ;AAAA,QACA,cAAc;AAAA,QACd;AAAA,QACA,SAAS;AAAA,QACT,GAAI,aAAa,EAAE,OAAO,UAAU,CAAC,GAAG,QAAQ,UAAU,CAAC,EAAE;AAAA,QAC7D,IAAI,qBAAgB,cAAhB,YAA6B,CAAC;AAAA,MACpC;AAAA,MACA,2BAAuB,4DAAqC;AAAA,MAC5D,+BAA2B,mDAA4B;AAAA,MACvD;AAAA,MACA,OAAO,KAAK,OAAO;AAAA,IACrB,CAAC;AAED,WAAO;AAAA,MACL,QAAQ,CAAC,QAAQ;AAAA,MACjB;AAAA,MACA,UAAU;AAAA,QACR,WAAW;AAAA,QACX,SAAS,KAAK;AAAA,QACd,SAAS;AAAA,MACX;AAAA,IACF;AAAA,EACF;AACF;;;ADlHA,IAAM,uBAAuB,aAAE,OAAO;AAAA,EACpC,OAAO,aAAE,OAAO;AAClB,CAAC;AAED,IAAM,0BAAsE;AAAA,EAC1E,aAAa;AAAA,EACb,gBAAgB,UAAQ,KAAK;AAC/B;AAiFA,IAAM,iBAAiB;AAEhB,SAAS,gBACd,UAAqC,CAAC,GACnB;AAlIrB;AAmIE,QAAM,cAAU,8CAAqB,aAAQ,YAAR,YAAmB,cAAc;AACtE,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;AASA,QAAM,uBAAuB,CAAC,eAA0C;AAAA,IACtE,UAAU,aAAa,SAAS;AAAA,IAChC,KAAK,CAAC,EAAE,KAAK,MAAM,GAAG,OAAO,GAAG,IAAI;AAAA,IACpC,SAAS;AAAA,IACT,OAAO,QAAQ;AAAA,EACjB;AAEA,QAAM,kBAAkB,CACtB,SACA,WAAkC,CAAC,MAChC;AACH,WAAO,IAAI,2DAAkC,SAAS,UAAU;AAAA,MAC9D,GAAG,qBAAqB,MAAM;AAAA,MAC9B,gBAAgB;AAAA,MAChB,6BAA6B;AAAA,IAC/B,CAAC;AAAA,EACH;AAEA,QAAM,wBAAwB,CAC5B,SACA,WAAwC,CAAC,MAEzC,IAAI,iEAAwC,SAAS,UAAU;AAAA,IAC7D,GAAG,qBAAqB,YAAY;AAAA,IACpC,gBAAgB;AAAA,EAClB,CAAC;AAEH,QAAM,2BAA2B,CAC/B,SACA,WAAuC,CAAC,MAExC,IAAI,wDAA+B,SAAS,UAAU;AAAA,IACpD,GAAG,qBAAqB,WAAW;AAAA,IACnC,gBAAgB;AAAA,EAClB,CAAC;AAEH,QAAM,mBAAmB,CACvB,SACA,WAAmC,CAAC,MAEpC,IAAI,oBAAoB,SAAS,UAAU;AAAA,IACzC,GAAG,qBAAqB,OAAO;AAAA,IAC/B,SAAS,4BAAW;AAAA,EACtB,CAAC;AAEH,QAAM,WAAW,CACf,SACA,aACG,gBAAgB,SAAS,QAAQ;AAEtC,WAAS,kBAAkB;AAC3B,WAAS,YAAY;AACrB,WAAS,gBAAgB;AACzB,WAAS,qBAAqB;AAC9B,WAAS,QAAQ;AACjB,WAAS,aAAa;AACtB,SAAO;AACT;AAEO,IAAM,YAAY,gBAAgB;","names":["import_provider_utils"]}
|
|
1
|
+
{"version":3,"sources":["../src/index.ts","../src/fireworks-image-model.ts","../src/fireworks-provider.ts"],"sourcesContent":["export type {\n FireworksEmbeddingModelId,\n FireworksEmbeddingProviderOptions,\n} from './fireworks-embedding-options';\nexport { FireworksImageModel } from './fireworks-image-model';\nexport type { FireworksImageModelId } from './fireworks-image-options';\nexport { fireworks, createFireworks } from './fireworks-provider';\nexport type {\n FireworksProvider,\n FireworksProviderSettings,\n FireworksErrorData,\n} from './fireworks-provider';\n","import { ImageModelV2, ImageModelV2CallWarning } from '@ai-sdk/provider';\nimport {\n combineHeaders,\n createBinaryResponseHandler,\n createStatusCodeErrorResponseHandler,\n FetchFunction,\n postJsonToApi,\n} from '@ai-sdk/provider-utils';\nimport { FireworksImageModelId } from './fireworks-image-options';\n\ninterface FireworksImageModelBackendConfig {\n urlFormat: 'workflows' | 'image_generation';\n supportsSize?: boolean;\n}\n\nconst modelToBackendConfig: Partial<\n Record<FireworksImageModelId, FireworksImageModelBackendConfig>\n> = {\n 'accounts/fireworks/models/flux-1-dev-fp8': {\n urlFormat: 'workflows',\n },\n 'accounts/fireworks/models/flux-1-schnell-fp8': {\n urlFormat: 'workflows',\n },\n 'accounts/fireworks/models/playground-v2-5-1024px-aesthetic': {\n urlFormat: 'image_generation',\n supportsSize: true,\n },\n 'accounts/fireworks/models/japanese-stable-diffusion-xl': {\n urlFormat: 'image_generation',\n supportsSize: true,\n },\n 'accounts/fireworks/models/playground-v2-1024px-aesthetic': {\n urlFormat: 'image_generation',\n supportsSize: true,\n },\n 'accounts/fireworks/models/stable-diffusion-xl-1024-v1-0': {\n urlFormat: 'image_generation',\n supportsSize: true,\n },\n 'accounts/fireworks/models/SSD-1B': {\n urlFormat: 'image_generation',\n supportsSize: true,\n },\n};\n\nfunction getUrlForModel(\n baseUrl: string,\n modelId: FireworksImageModelId,\n): string {\n switch (modelToBackendConfig[modelId]?.urlFormat) {\n case 'image_generation':\n return `${baseUrl}/image_generation/${modelId}`;\n case 'workflows':\n default:\n return `${baseUrl}/workflows/${modelId}/text_to_image`;\n }\n}\n\ninterface FireworksImageModelConfig {\n provider: string;\n baseURL: string;\n headers: () => Record<string, string>;\n fetch?: FetchFunction;\n _internal?: {\n currentDate?: () => Date;\n };\n}\n\nexport class FireworksImageModel implements ImageModelV2 {\n readonly specificationVersion = 'v2';\n readonly maxImagesPerCall = 1;\n\n get provider(): string {\n return this.config.provider;\n }\n\n constructor(\n readonly modelId: FireworksImageModelId,\n private config: FireworksImageModelConfig,\n ) {}\n\n async doGenerate({\n prompt,\n n,\n size,\n aspectRatio,\n seed,\n providerOptions,\n headers,\n abortSignal,\n }: Parameters<ImageModelV2['doGenerate']>[0]): Promise<\n Awaited<ReturnType<ImageModelV2['doGenerate']>>\n > {\n const warnings: Array<ImageModelV2CallWarning> = [];\n\n const backendConfig = modelToBackendConfig[this.modelId];\n if (!backendConfig?.supportsSize && size != null) {\n warnings.push({\n type: 'unsupported-setting',\n setting: 'size',\n details:\n 'This model does not support the `size` option. Use `aspectRatio` instead.',\n });\n }\n\n // Use supportsSize as a proxy for whether the model does not support\n // aspectRatio. This invariant holds for the current set of models.\n if (backendConfig?.supportsSize && aspectRatio != null) {\n warnings.push({\n type: 'unsupported-setting',\n setting: 'aspectRatio',\n details: 'This model does not support the `aspectRatio` option.',\n });\n }\n\n const splitSize = size?.split('x');\n const currentDate = this.config._internal?.currentDate?.() ?? new Date();\n const { value: response, responseHeaders } = await postJsonToApi({\n url: getUrlForModel(this.config.baseURL, this.modelId),\n headers: combineHeaders(this.config.headers(), headers),\n body: {\n prompt,\n aspect_ratio: aspectRatio,\n seed,\n samples: n,\n ...(splitSize && { width: splitSize[0], height: splitSize[1] }),\n ...(providerOptions.fireworks ?? {}),\n },\n failedResponseHandler: createStatusCodeErrorResponseHandler(),\n successfulResponseHandler: createBinaryResponseHandler(),\n abortSignal,\n fetch: this.config.fetch,\n });\n\n return {\n images: [response],\n warnings,\n response: {\n timestamp: currentDate,\n modelId: this.modelId,\n headers: responseHeaders,\n },\n };\n }\n}\n","import {\n OpenAICompatibleChatLanguageModel,\n OpenAICompatibleCompletionLanguageModel,\n OpenAICompatibleEmbeddingModel,\n ProviderErrorStructure,\n} from '@ai-sdk/openai-compatible';\nimport {\n EmbeddingModelV2,\n ImageModelV2,\n LanguageModelV2,\n ProviderV2,\n} from '@ai-sdk/provider';\nimport {\n FetchFunction,\n loadApiKey,\n withoutTrailingSlash,\n} from '@ai-sdk/provider-utils';\nimport { z } from 'zod';\nimport { FireworksChatModelId } from './fireworks-chat-options';\nimport { FireworksCompletionModelId } from './fireworks-completion-options';\nimport { FireworksEmbeddingModelId } from './fireworks-embedding-options';\nimport { FireworksImageModel } from './fireworks-image-model';\nimport { FireworksImageModelId } from './fireworks-image-options';\n\nexport type FireworksErrorData = z.infer<typeof fireworksErrorSchema>;\n\nconst fireworksErrorSchema = z.object({\n error: z.string(),\n});\n\nconst fireworksErrorStructure: ProviderErrorStructure<FireworksErrorData> = {\n errorSchema: fireworksErrorSchema,\n errorToMessage: data => data.error,\n};\n\nexport interface FireworksProviderSettings {\n /**\nFireworks API key. Default value is taken from the `FIREWORKS_API_KEY`\nenvironment variable.\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 FireworksProvider extends ProviderV2 {\n /**\nCreates a model for text generation.\n*/\n (modelId: FireworksChatModelId): LanguageModelV2;\n\n /**\nCreates a chat model for text generation.\n*/\n chatModel(modelId: FireworksChatModelId): LanguageModelV2;\n\n /**\nCreates a completion model for text generation.\n*/\n completionModel(modelId: FireworksCompletionModelId): LanguageModelV2;\n\n /**\nCreates a chat model for text generation.\n*/\n languageModel(modelId: FireworksChatModelId): LanguageModelV2;\n\n /**\nCreates a text embedding model for text generation.\n*/\n textEmbeddingModel(\n modelId: FireworksEmbeddingModelId,\n ): EmbeddingModelV2<string>;\n\n /**\nCreates a model for image generation.\n@deprecated Use `imageModel` instead.\n*/\n image(modelId: FireworksImageModelId): ImageModelV2;\n\n /**\nCreates a model for image generation.\n*/\n imageModel(modelId: FireworksImageModelId): ImageModelV2;\n}\n\nconst defaultBaseURL = 'https://api.fireworks.ai/inference/v1';\n\nexport function createFireworks(\n options: FireworksProviderSettings = {},\n): FireworksProvider {\n const baseURL = withoutTrailingSlash(options.baseURL ?? defaultBaseURL);\n const getHeaders = () => ({\n Authorization: `Bearer ${loadApiKey({\n apiKey: options.apiKey,\n environmentVariableName: 'FIREWORKS_API_KEY',\n description: 'Fireworks API key',\n })}`,\n ...options.headers,\n });\n\n interface CommonModelConfig {\n provider: string;\n url: ({ path }: { path: string }) => string;\n headers: () => Record<string, string>;\n fetch?: FetchFunction;\n }\n\n const getCommonModelConfig = (modelType: string): CommonModelConfig => ({\n provider: `fireworks.${modelType}`,\n url: ({ path }) => `${baseURL}${path}`,\n headers: getHeaders,\n fetch: options.fetch,\n });\n\n const createChatModel = (modelId: FireworksChatModelId) => {\n return new OpenAICompatibleChatLanguageModel(modelId, {\n ...getCommonModelConfig('chat'),\n errorStructure: fireworksErrorStructure,\n });\n };\n\n const createCompletionModel = (modelId: FireworksCompletionModelId) =>\n new OpenAICompatibleCompletionLanguageModel(modelId, {\n ...getCommonModelConfig('completion'),\n errorStructure: fireworksErrorStructure,\n });\n\n const createTextEmbeddingModel = (modelId: FireworksEmbeddingModelId) =>\n new OpenAICompatibleEmbeddingModel(modelId, {\n ...getCommonModelConfig('embedding'),\n errorStructure: fireworksErrorStructure,\n });\n\n const createImageModel = (modelId: FireworksImageModelId) =>\n new FireworksImageModel(modelId, {\n ...getCommonModelConfig('image'),\n baseURL: baseURL ?? defaultBaseURL,\n });\n\n const provider = (modelId: FireworksChatModelId) => createChatModel(modelId);\n\n provider.completionModel = createCompletionModel;\n provider.chatModel = createChatModel;\n provider.languageModel = createChatModel;\n provider.textEmbeddingModel = createTextEmbeddingModel;\n provider.image = createImageModel;\n provider.imageModel = createImageModel;\n return provider;\n}\n\nexport const fireworks = createFireworks();\n"],"mappings":"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","names":["import_provider_utils"]}
|
package/dist/index.mjs
CHANGED
|
@@ -1,15 +1,3 @@
|
|
|
1
|
-
// src/fireworks-provider.ts
|
|
2
|
-
import {
|
|
3
|
-
OpenAICompatibleChatLanguageModel,
|
|
4
|
-
OpenAICompatibleCompletionLanguageModel,
|
|
5
|
-
OpenAICompatibleEmbeddingModel
|
|
6
|
-
} from "@ai-sdk/openai-compatible";
|
|
7
|
-
import {
|
|
8
|
-
loadApiKey,
|
|
9
|
-
withoutTrailingSlash
|
|
10
|
-
} from "@ai-sdk/provider-utils";
|
|
11
|
-
import { z } from "zod";
|
|
12
|
-
|
|
13
1
|
// src/fireworks-image-model.ts
|
|
14
2
|
import {
|
|
15
3
|
combineHeaders,
|
|
@@ -56,19 +44,15 @@ function getUrlForModel(baseUrl, modelId) {
|
|
|
56
44
|
}
|
|
57
45
|
}
|
|
58
46
|
var FireworksImageModel = class {
|
|
59
|
-
constructor(modelId,
|
|
47
|
+
constructor(modelId, config) {
|
|
60
48
|
this.modelId = modelId;
|
|
61
|
-
this.settings = settings;
|
|
62
49
|
this.config = config;
|
|
63
|
-
this.specificationVersion = "
|
|
50
|
+
this.specificationVersion = "v2";
|
|
51
|
+
this.maxImagesPerCall = 1;
|
|
64
52
|
}
|
|
65
53
|
get provider() {
|
|
66
54
|
return this.config.provider;
|
|
67
55
|
}
|
|
68
|
-
get maxImagesPerCall() {
|
|
69
|
-
var _a;
|
|
70
|
-
return (_a = this.settings.maxImagesPerCall) != null ? _a : 1;
|
|
71
|
-
}
|
|
72
56
|
async doGenerate({
|
|
73
57
|
prompt,
|
|
74
58
|
n,
|
|
@@ -127,6 +111,16 @@ var FireworksImageModel = class {
|
|
|
127
111
|
};
|
|
128
112
|
|
|
129
113
|
// src/fireworks-provider.ts
|
|
114
|
+
import {
|
|
115
|
+
OpenAICompatibleChatLanguageModel,
|
|
116
|
+
OpenAICompatibleCompletionLanguageModel,
|
|
117
|
+
OpenAICompatibleEmbeddingModel
|
|
118
|
+
} from "@ai-sdk/openai-compatible";
|
|
119
|
+
import {
|
|
120
|
+
loadApiKey,
|
|
121
|
+
withoutTrailingSlash
|
|
122
|
+
} from "@ai-sdk/provider-utils";
|
|
123
|
+
import { z } from "zod";
|
|
130
124
|
var fireworksErrorSchema = z.object({
|
|
131
125
|
error: z.string()
|
|
132
126
|
});
|
|
@@ -152,26 +146,25 @@ function createFireworks(options = {}) {
|
|
|
152
146
|
headers: getHeaders,
|
|
153
147
|
fetch: options.fetch
|
|
154
148
|
});
|
|
155
|
-
const createChatModel = (modelId
|
|
156
|
-
return new OpenAICompatibleChatLanguageModel(modelId,
|
|
149
|
+
const createChatModel = (modelId) => {
|
|
150
|
+
return new OpenAICompatibleChatLanguageModel(modelId, {
|
|
157
151
|
...getCommonModelConfig("chat"),
|
|
158
|
-
errorStructure: fireworksErrorStructure
|
|
159
|
-
defaultObjectGenerationMode: "json"
|
|
152
|
+
errorStructure: fireworksErrorStructure
|
|
160
153
|
});
|
|
161
154
|
};
|
|
162
|
-
const createCompletionModel = (modelId
|
|
155
|
+
const createCompletionModel = (modelId) => new OpenAICompatibleCompletionLanguageModel(modelId, {
|
|
163
156
|
...getCommonModelConfig("completion"),
|
|
164
157
|
errorStructure: fireworksErrorStructure
|
|
165
158
|
});
|
|
166
|
-
const createTextEmbeddingModel = (modelId
|
|
159
|
+
const createTextEmbeddingModel = (modelId) => new OpenAICompatibleEmbeddingModel(modelId, {
|
|
167
160
|
...getCommonModelConfig("embedding"),
|
|
168
161
|
errorStructure: fireworksErrorStructure
|
|
169
162
|
});
|
|
170
|
-
const createImageModel = (modelId
|
|
163
|
+
const createImageModel = (modelId) => new FireworksImageModel(modelId, {
|
|
171
164
|
...getCommonModelConfig("image"),
|
|
172
165
|
baseURL: baseURL != null ? baseURL : defaultBaseURL
|
|
173
166
|
});
|
|
174
|
-
const provider = (modelId
|
|
167
|
+
const provider = (modelId) => createChatModel(modelId);
|
|
175
168
|
provider.completionModel = createCompletionModel;
|
|
176
169
|
provider.chatModel = createChatModel;
|
|
177
170
|
provider.languageModel = createChatModel;
|
|
@@ -182,6 +175,7 @@ function createFireworks(options = {}) {
|
|
|
182
175
|
}
|
|
183
176
|
var fireworks = createFireworks();
|
|
184
177
|
export {
|
|
178
|
+
FireworksImageModel,
|
|
185
179
|
createFireworks,
|
|
186
180
|
fireworks
|
|
187
181
|
};
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/fireworks-provider.ts","../src/fireworks-image-model.ts"],"sourcesContent":["import {\n OpenAICompatibleChatLanguageModel,\n OpenAICompatibleCompletionLanguageModel,\n OpenAICompatibleEmbeddingModel,\n ProviderErrorStructure,\n} from '@ai-sdk/openai-compatible';\nimport {\n EmbeddingModelV1,\n ImageModelV1,\n LanguageModelV1,\n ProviderV1,\n} from '@ai-sdk/provider';\nimport {\n FetchFunction,\n loadApiKey,\n withoutTrailingSlash,\n} from '@ai-sdk/provider-utils';\nimport { z } from 'zod';\nimport {\n FireworksChatModelId,\n FireworksChatSettings,\n} from './fireworks-chat-settings';\nimport {\n FireworksCompletionModelId,\n FireworksCompletionSettings,\n} from './fireworks-completion-settings';\nimport {\n FireworksEmbeddingModelId,\n FireworksEmbeddingSettings,\n} from './fireworks-embedding-settings';\nimport { FireworksImageModel } from './fireworks-image-model';\nimport {\n FireworksImageModelId,\n FireworksImageSettings,\n} from './fireworks-image-settings';\n\nexport type FireworksErrorData = z.infer<typeof fireworksErrorSchema>;\n\nconst fireworksErrorSchema = z.object({\n error: z.string(),\n});\n\nconst fireworksErrorStructure: ProviderErrorStructure<FireworksErrorData> = {\n errorSchema: fireworksErrorSchema,\n errorToMessage: data => data.error,\n};\n\nexport interface FireworksProviderSettings {\n /**\nFireworks API key. Default value is taken from the `FIREWORKS_API_KEY`\nenvironment variable.\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 FireworksProvider extends ProviderV1 {\n /**\nCreates a model for text generation.\n*/\n (\n modelId: FireworksChatModelId,\n settings?: FireworksChatSettings,\n ): LanguageModelV1;\n\n /**\nCreates a chat model for text generation.\n*/\n chatModel(\n modelId: FireworksChatModelId,\n settings?: FireworksChatSettings,\n ): LanguageModelV1;\n\n /**\nCreates a completion model for text generation.\n*/\n completionModel(\n modelId: FireworksCompletionModelId,\n settings?: FireworksCompletionSettings,\n ): LanguageModelV1;\n\n /**\nCreates a chat model for text generation.\n*/\n languageModel(\n modelId: FireworksChatModelId,\n settings?: FireworksChatSettings,\n ): LanguageModelV1;\n\n /**\nCreates a text embedding model for text generation.\n*/\n textEmbeddingModel(\n modelId: FireworksEmbeddingModelId,\n settings?: FireworksEmbeddingSettings,\n ): EmbeddingModelV1<string>;\n\n /**\nCreates a model for image generation.\n*/\n image(\n modelId: FireworksImageModelId,\n settings?: FireworksImageSettings,\n ): ImageModelV1;\n\n /**\nCreates a model for image generation.\n*/\n imageModel(\n modelId: FireworksImageModelId,\n settings?: FireworksImageSettings,\n ): ImageModelV1;\n}\n\nconst defaultBaseURL = 'https://api.fireworks.ai/inference/v1';\n\nexport function createFireworks(\n options: FireworksProviderSettings = {},\n): FireworksProvider {\n const baseURL = withoutTrailingSlash(options.baseURL ?? defaultBaseURL);\n const getHeaders = () => ({\n Authorization: `Bearer ${loadApiKey({\n apiKey: options.apiKey,\n environmentVariableName: 'FIREWORKS_API_KEY',\n description: 'Fireworks API key',\n })}`,\n ...options.headers,\n });\n\n interface CommonModelConfig {\n provider: string;\n url: ({ path }: { path: string }) => string;\n headers: () => Record<string, string>;\n fetch?: FetchFunction;\n }\n\n const getCommonModelConfig = (modelType: string): CommonModelConfig => ({\n provider: `fireworks.${modelType}`,\n url: ({ path }) => `${baseURL}${path}`,\n headers: getHeaders,\n fetch: options.fetch,\n });\n\n const createChatModel = (\n modelId: FireworksChatModelId,\n settings: FireworksChatSettings = {},\n ) => {\n return new OpenAICompatibleChatLanguageModel(modelId, settings, {\n ...getCommonModelConfig('chat'),\n errorStructure: fireworksErrorStructure,\n defaultObjectGenerationMode: 'json',\n });\n };\n\n const createCompletionModel = (\n modelId: FireworksCompletionModelId,\n settings: FireworksCompletionSettings = {},\n ) =>\n new OpenAICompatibleCompletionLanguageModel(modelId, settings, {\n ...getCommonModelConfig('completion'),\n errorStructure: fireworksErrorStructure,\n });\n\n const createTextEmbeddingModel = (\n modelId: FireworksEmbeddingModelId,\n settings: FireworksEmbeddingSettings = {},\n ) =>\n new OpenAICompatibleEmbeddingModel(modelId, settings, {\n ...getCommonModelConfig('embedding'),\n errorStructure: fireworksErrorStructure,\n });\n\n const createImageModel = (\n modelId: FireworksImageModelId,\n settings: FireworksImageSettings = {},\n ) =>\n new FireworksImageModel(modelId, settings, {\n ...getCommonModelConfig('image'),\n baseURL: baseURL ?? defaultBaseURL,\n });\n\n const provider = (\n modelId: FireworksChatModelId,\n settings?: FireworksChatSettings,\n ) => createChatModel(modelId, settings);\n\n provider.completionModel = createCompletionModel;\n provider.chatModel = createChatModel;\n provider.languageModel = createChatModel;\n provider.textEmbeddingModel = createTextEmbeddingModel;\n provider.image = createImageModel;\n provider.imageModel = createImageModel;\n return provider;\n}\n\nexport const fireworks = createFireworks();\n","import { ImageModelV1, ImageModelV1CallWarning } from '@ai-sdk/provider';\nimport {\n combineHeaders,\n createBinaryResponseHandler,\n createStatusCodeErrorResponseHandler,\n FetchFunction,\n postJsonToApi,\n} from '@ai-sdk/provider-utils';\nimport {\n FireworksImageModelId,\n FireworksImageSettings,\n} from './fireworks-image-settings';\n\ninterface FireworksImageModelBackendConfig {\n urlFormat: 'workflows' | 'image_generation';\n supportsSize?: boolean;\n}\n\nconst modelToBackendConfig: Partial<\n Record<FireworksImageModelId, FireworksImageModelBackendConfig>\n> = {\n 'accounts/fireworks/models/flux-1-dev-fp8': {\n urlFormat: 'workflows',\n },\n 'accounts/fireworks/models/flux-1-schnell-fp8': {\n urlFormat: 'workflows',\n },\n 'accounts/fireworks/models/playground-v2-5-1024px-aesthetic': {\n urlFormat: 'image_generation',\n supportsSize: true,\n },\n 'accounts/fireworks/models/japanese-stable-diffusion-xl': {\n urlFormat: 'image_generation',\n supportsSize: true,\n },\n 'accounts/fireworks/models/playground-v2-1024px-aesthetic': {\n urlFormat: 'image_generation',\n supportsSize: true,\n },\n 'accounts/fireworks/models/stable-diffusion-xl-1024-v1-0': {\n urlFormat: 'image_generation',\n supportsSize: true,\n },\n 'accounts/fireworks/models/SSD-1B': {\n urlFormat: 'image_generation',\n supportsSize: true,\n },\n};\n\nfunction getUrlForModel(\n baseUrl: string,\n modelId: FireworksImageModelId,\n): string {\n switch (modelToBackendConfig[modelId]?.urlFormat) {\n case 'image_generation':\n return `${baseUrl}/image_generation/${modelId}`;\n case 'workflows':\n default:\n return `${baseUrl}/workflows/${modelId}/text_to_image`;\n }\n}\n\ninterface FireworksImageModelConfig {\n provider: string;\n baseURL: string;\n headers: () => Record<string, string>;\n fetch?: FetchFunction;\n _internal?: {\n currentDate?: () => Date;\n };\n}\n\nexport class FireworksImageModel implements ImageModelV1 {\n readonly specificationVersion = 'v1';\n\n get provider(): string {\n return this.config.provider;\n }\n\n get maxImagesPerCall(): number {\n return this.settings.maxImagesPerCall ?? 1;\n }\n\n constructor(\n readonly modelId: FireworksImageModelId,\n readonly settings: FireworksImageSettings,\n private config: FireworksImageModelConfig,\n ) {}\n\n async doGenerate({\n prompt,\n n,\n size,\n aspectRatio,\n seed,\n providerOptions,\n headers,\n abortSignal,\n }: Parameters<ImageModelV1['doGenerate']>[0]): Promise<\n Awaited<ReturnType<ImageModelV1['doGenerate']>>\n > {\n const warnings: Array<ImageModelV1CallWarning> = [];\n\n const backendConfig = modelToBackendConfig[this.modelId];\n if (!backendConfig?.supportsSize && size != null) {\n warnings.push({\n type: 'unsupported-setting',\n setting: 'size',\n details:\n 'This model does not support the `size` option. Use `aspectRatio` instead.',\n });\n }\n\n // Use supportsSize as a proxy for whether the model does not support\n // aspectRatio. This invariant holds for the current set of models.\n if (backendConfig?.supportsSize && aspectRatio != null) {\n warnings.push({\n type: 'unsupported-setting',\n setting: 'aspectRatio',\n details: 'This model does not support the `aspectRatio` option.',\n });\n }\n\n const splitSize = size?.split('x');\n const currentDate = this.config._internal?.currentDate?.() ?? new Date();\n const { value: response, responseHeaders } = await postJsonToApi({\n url: getUrlForModel(this.config.baseURL, this.modelId),\n headers: combineHeaders(this.config.headers(), headers),\n body: {\n prompt,\n aspect_ratio: aspectRatio,\n seed,\n samples: n,\n ...(splitSize && { width: splitSize[0], height: splitSize[1] }),\n ...(providerOptions.fireworks ?? {}),\n },\n failedResponseHandler: createStatusCodeErrorResponseHandler(),\n successfulResponseHandler: createBinaryResponseHandler(),\n abortSignal,\n fetch: this.config.fetch,\n });\n\n return {\n images: [response],\n warnings,\n response: {\n timestamp: currentDate,\n modelId: this.modelId,\n headers: responseHeaders,\n },\n };\n }\n}\n"],"mappings":"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","names":[]}
|
|
1
|
+
{"version":3,"sources":["../src/fireworks-image-model.ts","../src/fireworks-provider.ts"],"sourcesContent":["import { ImageModelV2, ImageModelV2CallWarning } from '@ai-sdk/provider';\nimport {\n combineHeaders,\n createBinaryResponseHandler,\n createStatusCodeErrorResponseHandler,\n FetchFunction,\n postJsonToApi,\n} from '@ai-sdk/provider-utils';\nimport { FireworksImageModelId } from './fireworks-image-options';\n\ninterface FireworksImageModelBackendConfig {\n urlFormat: 'workflows' | 'image_generation';\n supportsSize?: boolean;\n}\n\nconst modelToBackendConfig: Partial<\n Record<FireworksImageModelId, FireworksImageModelBackendConfig>\n> = {\n 'accounts/fireworks/models/flux-1-dev-fp8': {\n urlFormat: 'workflows',\n },\n 'accounts/fireworks/models/flux-1-schnell-fp8': {\n urlFormat: 'workflows',\n },\n 'accounts/fireworks/models/playground-v2-5-1024px-aesthetic': {\n urlFormat: 'image_generation',\n supportsSize: true,\n },\n 'accounts/fireworks/models/japanese-stable-diffusion-xl': {\n urlFormat: 'image_generation',\n supportsSize: true,\n },\n 'accounts/fireworks/models/playground-v2-1024px-aesthetic': {\n urlFormat: 'image_generation',\n supportsSize: true,\n },\n 'accounts/fireworks/models/stable-diffusion-xl-1024-v1-0': {\n urlFormat: 'image_generation',\n supportsSize: true,\n },\n 'accounts/fireworks/models/SSD-1B': {\n urlFormat: 'image_generation',\n supportsSize: true,\n },\n};\n\nfunction getUrlForModel(\n baseUrl: string,\n modelId: FireworksImageModelId,\n): string {\n switch (modelToBackendConfig[modelId]?.urlFormat) {\n case 'image_generation':\n return `${baseUrl}/image_generation/${modelId}`;\n case 'workflows':\n default:\n return `${baseUrl}/workflows/${modelId}/text_to_image`;\n }\n}\n\ninterface FireworksImageModelConfig {\n provider: string;\n baseURL: string;\n headers: () => Record<string, string>;\n fetch?: FetchFunction;\n _internal?: {\n currentDate?: () => Date;\n };\n}\n\nexport class FireworksImageModel implements ImageModelV2 {\n readonly specificationVersion = 'v2';\n readonly maxImagesPerCall = 1;\n\n get provider(): string {\n return this.config.provider;\n }\n\n constructor(\n readonly modelId: FireworksImageModelId,\n private config: FireworksImageModelConfig,\n ) {}\n\n async doGenerate({\n prompt,\n n,\n size,\n aspectRatio,\n seed,\n providerOptions,\n headers,\n abortSignal,\n }: Parameters<ImageModelV2['doGenerate']>[0]): Promise<\n Awaited<ReturnType<ImageModelV2['doGenerate']>>\n > {\n const warnings: Array<ImageModelV2CallWarning> = [];\n\n const backendConfig = modelToBackendConfig[this.modelId];\n if (!backendConfig?.supportsSize && size != null) {\n warnings.push({\n type: 'unsupported-setting',\n setting: 'size',\n details:\n 'This model does not support the `size` option. Use `aspectRatio` instead.',\n });\n }\n\n // Use supportsSize as a proxy for whether the model does not support\n // aspectRatio. This invariant holds for the current set of models.\n if (backendConfig?.supportsSize && aspectRatio != null) {\n warnings.push({\n type: 'unsupported-setting',\n setting: 'aspectRatio',\n details: 'This model does not support the `aspectRatio` option.',\n });\n }\n\n const splitSize = size?.split('x');\n const currentDate = this.config._internal?.currentDate?.() ?? new Date();\n const { value: response, responseHeaders } = await postJsonToApi({\n url: getUrlForModel(this.config.baseURL, this.modelId),\n headers: combineHeaders(this.config.headers(), headers),\n body: {\n prompt,\n aspect_ratio: aspectRatio,\n seed,\n samples: n,\n ...(splitSize && { width: splitSize[0], height: splitSize[1] }),\n ...(providerOptions.fireworks ?? {}),\n },\n failedResponseHandler: createStatusCodeErrorResponseHandler(),\n successfulResponseHandler: createBinaryResponseHandler(),\n abortSignal,\n fetch: this.config.fetch,\n });\n\n return {\n images: [response],\n warnings,\n response: {\n timestamp: currentDate,\n modelId: this.modelId,\n headers: responseHeaders,\n },\n };\n }\n}\n","import {\n OpenAICompatibleChatLanguageModel,\n OpenAICompatibleCompletionLanguageModel,\n OpenAICompatibleEmbeddingModel,\n ProviderErrorStructure,\n} from '@ai-sdk/openai-compatible';\nimport {\n EmbeddingModelV2,\n ImageModelV2,\n LanguageModelV2,\n ProviderV2,\n} from '@ai-sdk/provider';\nimport {\n FetchFunction,\n loadApiKey,\n withoutTrailingSlash,\n} from '@ai-sdk/provider-utils';\nimport { z } from 'zod';\nimport { FireworksChatModelId } from './fireworks-chat-options';\nimport { FireworksCompletionModelId } from './fireworks-completion-options';\nimport { FireworksEmbeddingModelId } from './fireworks-embedding-options';\nimport { FireworksImageModel } from './fireworks-image-model';\nimport { FireworksImageModelId } from './fireworks-image-options';\n\nexport type FireworksErrorData = z.infer<typeof fireworksErrorSchema>;\n\nconst fireworksErrorSchema = z.object({\n error: z.string(),\n});\n\nconst fireworksErrorStructure: ProviderErrorStructure<FireworksErrorData> = {\n errorSchema: fireworksErrorSchema,\n errorToMessage: data => data.error,\n};\n\nexport interface FireworksProviderSettings {\n /**\nFireworks API key. Default value is taken from the `FIREWORKS_API_KEY`\nenvironment variable.\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 FireworksProvider extends ProviderV2 {\n /**\nCreates a model for text generation.\n*/\n (modelId: FireworksChatModelId): LanguageModelV2;\n\n /**\nCreates a chat model for text generation.\n*/\n chatModel(modelId: FireworksChatModelId): LanguageModelV2;\n\n /**\nCreates a completion model for text generation.\n*/\n completionModel(modelId: FireworksCompletionModelId): LanguageModelV2;\n\n /**\nCreates a chat model for text generation.\n*/\n languageModel(modelId: FireworksChatModelId): LanguageModelV2;\n\n /**\nCreates a text embedding model for text generation.\n*/\n textEmbeddingModel(\n modelId: FireworksEmbeddingModelId,\n ): EmbeddingModelV2<string>;\n\n /**\nCreates a model for image generation.\n@deprecated Use `imageModel` instead.\n*/\n image(modelId: FireworksImageModelId): ImageModelV2;\n\n /**\nCreates a model for image generation.\n*/\n imageModel(modelId: FireworksImageModelId): ImageModelV2;\n}\n\nconst defaultBaseURL = 'https://api.fireworks.ai/inference/v1';\n\nexport function createFireworks(\n options: FireworksProviderSettings = {},\n): FireworksProvider {\n const baseURL = withoutTrailingSlash(options.baseURL ?? defaultBaseURL);\n const getHeaders = () => ({\n Authorization: `Bearer ${loadApiKey({\n apiKey: options.apiKey,\n environmentVariableName: 'FIREWORKS_API_KEY',\n description: 'Fireworks API key',\n })}`,\n ...options.headers,\n });\n\n interface CommonModelConfig {\n provider: string;\n url: ({ path }: { path: string }) => string;\n headers: () => Record<string, string>;\n fetch?: FetchFunction;\n }\n\n const getCommonModelConfig = (modelType: string): CommonModelConfig => ({\n provider: `fireworks.${modelType}`,\n url: ({ path }) => `${baseURL}${path}`,\n headers: getHeaders,\n fetch: options.fetch,\n });\n\n const createChatModel = (modelId: FireworksChatModelId) => {\n return new OpenAICompatibleChatLanguageModel(modelId, {\n ...getCommonModelConfig('chat'),\n errorStructure: fireworksErrorStructure,\n });\n };\n\n const createCompletionModel = (modelId: FireworksCompletionModelId) =>\n new OpenAICompatibleCompletionLanguageModel(modelId, {\n ...getCommonModelConfig('completion'),\n errorStructure: fireworksErrorStructure,\n });\n\n const createTextEmbeddingModel = (modelId: FireworksEmbeddingModelId) =>\n new OpenAICompatibleEmbeddingModel(modelId, {\n ...getCommonModelConfig('embedding'),\n errorStructure: fireworksErrorStructure,\n });\n\n const createImageModel = (modelId: FireworksImageModelId) =>\n new FireworksImageModel(modelId, {\n ...getCommonModelConfig('image'),\n baseURL: baseURL ?? defaultBaseURL,\n });\n\n const provider = (modelId: FireworksChatModelId) => createChatModel(modelId);\n\n provider.completionModel = createCompletionModel;\n provider.chatModel = createChatModel;\n provider.languageModel = createChatModel;\n provider.textEmbeddingModel = createTextEmbeddingModel;\n provider.image = createImageModel;\n provider.imageModel = createImageModel;\n return provider;\n}\n\nexport const fireworks = createFireworks();\n"],"mappings":"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","names":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ai-sdk/fireworks",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "1.0.0-alpha.10",
|
|
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": "0.
|
|
23
|
-
"@ai-sdk/provider": "
|
|
24
|
-
"@ai-sdk/provider-utils": "
|
|
22
|
+
"@ai-sdk/openai-compatible": "1.0.0-alpha.10",
|
|
23
|
+
"@ai-sdk/provider": "2.0.0-alpha.10",
|
|
24
|
+
"@ai-sdk/provider-utils": "3.0.0-alpha.10"
|
|
25
25
|
},
|
|
26
26
|
"devDependencies": {
|
|
27
27
|
"@types/node": "20.17.24",
|
|
28
28
|
"tsup": "^8",
|
|
29
|
-
"typescript": "5.
|
|
30
|
-
"zod": "3.
|
|
29
|
+
"typescript": "5.8.3",
|
|
30
|
+
"zod": "3.25.49",
|
|
31
31
|
"@vercel/ai-tsconfig": "0.0.0"
|
|
32
32
|
},
|
|
33
33
|
"peerDependencies": {
|
|
34
|
-
"zod": "^3.
|
|
34
|
+
"zod": "^3.25.49"
|
|
35
35
|
},
|
|
36
36
|
"engines": {
|
|
37
37
|
"node": ">=18"
|
|
@@ -51,13 +51,15 @@
|
|
|
51
51
|
"ai"
|
|
52
52
|
],
|
|
53
53
|
"scripts": {
|
|
54
|
-
"build": "tsup",
|
|
55
|
-
"build:watch": "tsup --watch",
|
|
56
|
-
"clean": "rm -rf dist",
|
|
54
|
+
"build": "pnpm clean && tsup --tsconfig tsconfig.build.json",
|
|
55
|
+
"build:watch": "pnpm clean && tsup --watch",
|
|
56
|
+
"clean": "rm -rf dist *.tsbuildinfo",
|
|
57
57
|
"lint": "eslint \"./**/*.ts*\"",
|
|
58
|
-
"type-check": "tsc --
|
|
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
|
}
|