@ai-sdk/vercel 3.0.0-beta.8 → 3.0.0-canary.37
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 +262 -0
- package/dist/index.js +18 -41
- package/dist/index.js.map +1 -1
- package/package.json +11 -9
- package/src/vercel-provider.ts +4 -4
- package/dist/index.d.mts +0 -45
- package/dist/index.mjs +0 -61
- package/dist/index.mjs.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,267 @@
|
|
|
1
1
|
# @ai-sdk/vercel
|
|
2
2
|
|
|
3
|
+
## 3.0.0-canary.37
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 0c4c275: trigger initial canary release
|
|
8
|
+
- Updated dependencies [0c4c275]
|
|
9
|
+
- @ai-sdk/openai-compatible@3.0.0-canary.37
|
|
10
|
+
- @ai-sdk/provider-utils@5.0.0-canary.31
|
|
11
|
+
- @ai-sdk/provider@4.0.0-canary.15
|
|
12
|
+
|
|
13
|
+
## 3.0.0-beta.36
|
|
14
|
+
|
|
15
|
+
### Patch Changes
|
|
16
|
+
|
|
17
|
+
- Updated dependencies [e59c955]
|
|
18
|
+
- @ai-sdk/openai-compatible@3.0.0-beta.36
|
|
19
|
+
|
|
20
|
+
## 3.0.0-beta.35
|
|
21
|
+
|
|
22
|
+
### Patch Changes
|
|
23
|
+
|
|
24
|
+
- Updated dependencies [08d2129]
|
|
25
|
+
- Updated dependencies [04e9009]
|
|
26
|
+
- @ai-sdk/provider-utils@5.0.0-beta.30
|
|
27
|
+
- @ai-sdk/openai-compatible@3.0.0-beta.35
|
|
28
|
+
|
|
29
|
+
## 3.0.0-beta.34
|
|
30
|
+
|
|
31
|
+
### Patch Changes
|
|
32
|
+
|
|
33
|
+
- 258c093: chore: ensure consistent import handling and avoid import duplicates or cycles
|
|
34
|
+
- Updated dependencies [9bd6512]
|
|
35
|
+
- Updated dependencies [258c093]
|
|
36
|
+
- Updated dependencies [b6783da]
|
|
37
|
+
- @ai-sdk/openai-compatible@3.0.0-beta.34
|
|
38
|
+
- @ai-sdk/provider-utils@5.0.0-beta.29
|
|
39
|
+
- @ai-sdk/provider@4.0.0-beta.14
|
|
40
|
+
|
|
41
|
+
## 3.0.0-beta.33
|
|
42
|
+
|
|
43
|
+
### Patch Changes
|
|
44
|
+
|
|
45
|
+
- 9f0e36c: trigger release for all packages after provenance setup
|
|
46
|
+
- Updated dependencies [9f0e36c]
|
|
47
|
+
- @ai-sdk/openai-compatible@3.0.0-beta.33
|
|
48
|
+
- @ai-sdk/provider@4.0.0-beta.13
|
|
49
|
+
- @ai-sdk/provider-utils@5.0.0-beta.28
|
|
50
|
+
|
|
51
|
+
## 3.0.0-beta.32
|
|
52
|
+
|
|
53
|
+
### Patch Changes
|
|
54
|
+
|
|
55
|
+
- Updated dependencies [ab81968]
|
|
56
|
+
- Updated dependencies [785fe16]
|
|
57
|
+
- Updated dependencies [67df0a0]
|
|
58
|
+
- Updated dependencies [befb78c]
|
|
59
|
+
- Updated dependencies [0458559]
|
|
60
|
+
- Updated dependencies [58a2ad7]
|
|
61
|
+
- Updated dependencies [5852c0a]
|
|
62
|
+
- Updated dependencies [fc92055]
|
|
63
|
+
- @ai-sdk/openai-compatible@3.0.0-beta.32
|
|
64
|
+
- @ai-sdk/provider-utils@5.0.0-beta.27
|
|
65
|
+
|
|
66
|
+
## 3.0.0-beta.31
|
|
67
|
+
|
|
68
|
+
### Patch Changes
|
|
69
|
+
|
|
70
|
+
- Updated dependencies [2e98477]
|
|
71
|
+
- Updated dependencies [bfb756d]
|
|
72
|
+
- @ai-sdk/provider-utils@5.0.0-beta.26
|
|
73
|
+
- @ai-sdk/openai-compatible@3.0.0-beta.31
|
|
74
|
+
|
|
75
|
+
## 3.0.0-beta.30
|
|
76
|
+
|
|
77
|
+
### Patch Changes
|
|
78
|
+
|
|
79
|
+
- Updated dependencies [eea8d98]
|
|
80
|
+
- @ai-sdk/provider-utils@5.0.0-beta.25
|
|
81
|
+
- @ai-sdk/openai-compatible@3.0.0-beta.30
|
|
82
|
+
|
|
83
|
+
## 3.0.0-beta.29
|
|
84
|
+
|
|
85
|
+
### Patch Changes
|
|
86
|
+
|
|
87
|
+
- Updated dependencies [f807e45]
|
|
88
|
+
- @ai-sdk/provider-utils@5.0.0-beta.24
|
|
89
|
+
- @ai-sdk/openai-compatible@3.0.0-beta.29
|
|
90
|
+
|
|
91
|
+
## 3.0.0-beta.28
|
|
92
|
+
|
|
93
|
+
### Patch Changes
|
|
94
|
+
|
|
95
|
+
- Updated dependencies [350ea38]
|
|
96
|
+
- @ai-sdk/provider-utils@5.0.0-beta.23
|
|
97
|
+
- @ai-sdk/openai-compatible@3.0.0-beta.28
|
|
98
|
+
|
|
99
|
+
## 3.0.0-beta.27
|
|
100
|
+
|
|
101
|
+
### Patch Changes
|
|
102
|
+
|
|
103
|
+
- Updated dependencies [083947b]
|
|
104
|
+
- @ai-sdk/provider-utils@5.0.0-beta.22
|
|
105
|
+
- @ai-sdk/openai-compatible@3.0.0-beta.27
|
|
106
|
+
|
|
107
|
+
## 3.0.0-beta.26
|
|
108
|
+
|
|
109
|
+
### Patch Changes
|
|
110
|
+
|
|
111
|
+
- Updated dependencies [add1126]
|
|
112
|
+
- @ai-sdk/provider-utils@5.0.0-beta.21
|
|
113
|
+
- @ai-sdk/openai-compatible@3.0.0-beta.26
|
|
114
|
+
|
|
115
|
+
## 3.0.0-beta.25
|
|
116
|
+
|
|
117
|
+
### Patch Changes
|
|
118
|
+
|
|
119
|
+
- Updated dependencies [b3976a2]
|
|
120
|
+
- Updated dependencies [ff5eba1]
|
|
121
|
+
- @ai-sdk/provider-utils@5.0.0-beta.20
|
|
122
|
+
- @ai-sdk/openai-compatible@3.0.0-beta.25
|
|
123
|
+
- @ai-sdk/provider@4.0.0-beta.12
|
|
124
|
+
|
|
125
|
+
## 3.0.0-beta.24
|
|
126
|
+
|
|
127
|
+
### Major Changes
|
|
128
|
+
|
|
129
|
+
- ef992f8: Remove CommonJS exports from all packages. All packages are now ESM-only (`"type": "module"`). Consumers using `require()` must switch to ESM `import` syntax.
|
|
130
|
+
|
|
131
|
+
### Patch Changes
|
|
132
|
+
|
|
133
|
+
- Updated dependencies [ef992f8]
|
|
134
|
+
- @ai-sdk/openai-compatible@3.0.0-beta.24
|
|
135
|
+
- @ai-sdk/provider@4.0.0-beta.11
|
|
136
|
+
- @ai-sdk/provider-utils@5.0.0-beta.19
|
|
137
|
+
|
|
138
|
+
## 3.0.0-beta.23
|
|
139
|
+
|
|
140
|
+
### Patch Changes
|
|
141
|
+
|
|
142
|
+
- 90e2d8a: chore: fix unused vars not being flagged by our lint tooling
|
|
143
|
+
- Updated dependencies [90e2d8a]
|
|
144
|
+
- @ai-sdk/openai-compatible@3.0.0-beta.23
|
|
145
|
+
- @ai-sdk/provider-utils@5.0.0-beta.18
|
|
146
|
+
|
|
147
|
+
## 3.0.0-beta.22
|
|
148
|
+
|
|
149
|
+
### Patch Changes
|
|
150
|
+
|
|
151
|
+
- Updated dependencies [3ae1786]
|
|
152
|
+
- @ai-sdk/provider-utils@5.0.0-beta.17
|
|
153
|
+
- @ai-sdk/openai-compatible@3.0.0-beta.22
|
|
154
|
+
|
|
155
|
+
## 3.0.0-beta.21
|
|
156
|
+
|
|
157
|
+
### Patch Changes
|
|
158
|
+
|
|
159
|
+
- Updated dependencies [176466a]
|
|
160
|
+
- @ai-sdk/provider@4.0.0-beta.10
|
|
161
|
+
- @ai-sdk/openai-compatible@3.0.0-beta.21
|
|
162
|
+
- @ai-sdk/provider-utils@5.0.0-beta.16
|
|
163
|
+
|
|
164
|
+
## 3.0.0-beta.20
|
|
165
|
+
|
|
166
|
+
### Patch Changes
|
|
167
|
+
|
|
168
|
+
- Updated dependencies [e311194]
|
|
169
|
+
- @ai-sdk/provider@4.0.0-beta.9
|
|
170
|
+
- @ai-sdk/openai-compatible@3.0.0-beta.20
|
|
171
|
+
- @ai-sdk/provider-utils@5.0.0-beta.15
|
|
172
|
+
|
|
173
|
+
## 3.0.0-beta.19
|
|
174
|
+
|
|
175
|
+
### Patch Changes
|
|
176
|
+
|
|
177
|
+
- Updated dependencies [34bd95d]
|
|
178
|
+
- Updated dependencies [008271d]
|
|
179
|
+
- @ai-sdk/provider@4.0.0-beta.8
|
|
180
|
+
- @ai-sdk/openai-compatible@3.0.0-beta.19
|
|
181
|
+
- @ai-sdk/provider-utils@5.0.0-beta.14
|
|
182
|
+
|
|
183
|
+
## 3.0.0-beta.18
|
|
184
|
+
|
|
185
|
+
### Patch Changes
|
|
186
|
+
|
|
187
|
+
- Updated dependencies [b0c2869]
|
|
188
|
+
- Updated dependencies [7e26e81]
|
|
189
|
+
- @ai-sdk/provider-utils@5.0.0-beta.13
|
|
190
|
+
- @ai-sdk/openai-compatible@3.0.0-beta.18
|
|
191
|
+
|
|
192
|
+
## 3.0.0-beta.17
|
|
193
|
+
|
|
194
|
+
### Patch Changes
|
|
195
|
+
|
|
196
|
+
- Updated dependencies [816ff67]
|
|
197
|
+
- @ai-sdk/openai-compatible@3.0.0-beta.17
|
|
198
|
+
|
|
199
|
+
## 3.0.0-beta.16
|
|
200
|
+
|
|
201
|
+
### Patch Changes
|
|
202
|
+
|
|
203
|
+
- Updated dependencies [46d1149]
|
|
204
|
+
- @ai-sdk/provider-utils@5.0.0-beta.12
|
|
205
|
+
- @ai-sdk/openai-compatible@3.0.0-beta.16
|
|
206
|
+
|
|
207
|
+
## 3.0.0-beta.15
|
|
208
|
+
|
|
209
|
+
### Patch Changes
|
|
210
|
+
|
|
211
|
+
- Updated dependencies [6fd51c0]
|
|
212
|
+
- @ai-sdk/provider-utils@5.0.0-beta.11
|
|
213
|
+
- @ai-sdk/provider@4.0.0-beta.7
|
|
214
|
+
- @ai-sdk/openai-compatible@3.0.0-beta.15
|
|
215
|
+
|
|
216
|
+
## 3.0.0-beta.14
|
|
217
|
+
|
|
218
|
+
### Patch Changes
|
|
219
|
+
|
|
220
|
+
- Updated dependencies [c29a26f]
|
|
221
|
+
- @ai-sdk/openai-compatible@3.0.0-beta.14
|
|
222
|
+
- @ai-sdk/provider-utils@5.0.0-beta.10
|
|
223
|
+
- @ai-sdk/provider@4.0.0-beta.6
|
|
224
|
+
|
|
225
|
+
## 3.0.0-beta.13
|
|
226
|
+
|
|
227
|
+
### Patch Changes
|
|
228
|
+
|
|
229
|
+
- Updated dependencies [38fc777]
|
|
230
|
+
- @ai-sdk/openai-compatible@3.0.0-beta.13
|
|
231
|
+
|
|
232
|
+
## 3.0.0-beta.12
|
|
233
|
+
|
|
234
|
+
### Patch Changes
|
|
235
|
+
|
|
236
|
+
- Updated dependencies [2e17091]
|
|
237
|
+
- @ai-sdk/provider-utils@5.0.0-beta.9
|
|
238
|
+
- @ai-sdk/openai-compatible@3.0.0-beta.12
|
|
239
|
+
|
|
240
|
+
## 3.0.0-beta.11
|
|
241
|
+
|
|
242
|
+
### Patch Changes
|
|
243
|
+
|
|
244
|
+
- Updated dependencies [986c6fd]
|
|
245
|
+
- Updated dependencies [493295c]
|
|
246
|
+
- @ai-sdk/provider-utils@5.0.0-beta.8
|
|
247
|
+
- @ai-sdk/openai-compatible@3.0.0-beta.11
|
|
248
|
+
|
|
249
|
+
## 3.0.0-beta.10
|
|
250
|
+
|
|
251
|
+
### Patch Changes
|
|
252
|
+
|
|
253
|
+
- Updated dependencies [1f509d4]
|
|
254
|
+
- @ai-sdk/provider-utils@5.0.0-beta.7
|
|
255
|
+
- @ai-sdk/provider@4.0.0-beta.5
|
|
256
|
+
- @ai-sdk/openai-compatible@3.0.0-beta.10
|
|
257
|
+
|
|
258
|
+
## 3.0.0-beta.9
|
|
259
|
+
|
|
260
|
+
### Patch Changes
|
|
261
|
+
|
|
262
|
+
- Updated dependencies [74d520f]
|
|
263
|
+
- @ai-sdk/openai-compatible@3.0.0-beta.9
|
|
264
|
+
|
|
3
265
|
## 3.0.0-beta.8
|
|
4
266
|
|
|
5
267
|
### Patch Changes
|
package/dist/index.js
CHANGED
|
@@ -1,48 +1,26 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __defProp = Object.defineProperty;
|
|
3
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __export = (target, all) => {
|
|
7
|
-
for (var name in all)
|
|
8
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
-
};
|
|
10
|
-
var __copyProps = (to, from, except, desc) => {
|
|
11
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
-
for (let key of __getOwnPropNames(from))
|
|
13
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
-
}
|
|
16
|
-
return to;
|
|
17
|
-
};
|
|
18
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
|
|
20
|
-
// src/index.ts
|
|
21
|
-
var index_exports = {};
|
|
22
|
-
__export(index_exports, {
|
|
23
|
-
VERSION: () => VERSION,
|
|
24
|
-
createVercel: () => createVercel,
|
|
25
|
-
vercel: () => vercel
|
|
26
|
-
});
|
|
27
|
-
module.exports = __toCommonJS(index_exports);
|
|
28
|
-
|
|
29
1
|
// src/vercel-provider.ts
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
2
|
+
import {
|
|
3
|
+
NoSuchModelError
|
|
4
|
+
} from "@ai-sdk/provider";
|
|
5
|
+
import { OpenAICompatibleChatLanguageModel } from "@ai-sdk/openai-compatible";
|
|
6
|
+
import {
|
|
7
|
+
loadApiKey,
|
|
8
|
+
withoutTrailingSlash,
|
|
9
|
+
withUserAgentSuffix
|
|
10
|
+
} from "@ai-sdk/provider-utils";
|
|
33
11
|
|
|
34
12
|
// src/version.ts
|
|
35
|
-
var VERSION = true ? "3.0.0-
|
|
13
|
+
var VERSION = true ? "3.0.0-canary.37" : "0.0.0-test";
|
|
36
14
|
|
|
37
15
|
// src/vercel-provider.ts
|
|
38
16
|
function createVercel(options = {}) {
|
|
39
17
|
var _a;
|
|
40
|
-
const baseURL =
|
|
18
|
+
const baseURL = withoutTrailingSlash(
|
|
41
19
|
(_a = options.baseURL) != null ? _a : "https://api.v0.dev/v1"
|
|
42
20
|
);
|
|
43
|
-
const getHeaders = () =>
|
|
21
|
+
const getHeaders = () => withUserAgentSuffix(
|
|
44
22
|
{
|
|
45
|
-
Authorization: `Bearer ${
|
|
23
|
+
Authorization: `Bearer ${loadApiKey({
|
|
46
24
|
apiKey: options.apiKey,
|
|
47
25
|
environmentVariableName: "VERCEL_API_KEY",
|
|
48
26
|
description: "Vercel"
|
|
@@ -58,7 +36,7 @@ function createVercel(options = {}) {
|
|
|
58
36
|
fetch: options.fetch
|
|
59
37
|
});
|
|
60
38
|
const createChatModel = (modelId) => {
|
|
61
|
-
return new
|
|
39
|
+
return new OpenAICompatibleChatLanguageModel(modelId, {
|
|
62
40
|
...getCommonModelConfig("chat")
|
|
63
41
|
});
|
|
64
42
|
};
|
|
@@ -66,19 +44,18 @@ function createVercel(options = {}) {
|
|
|
66
44
|
provider.specificationVersion = "v4";
|
|
67
45
|
provider.languageModel = createChatModel;
|
|
68
46
|
provider.embeddingModel = (modelId) => {
|
|
69
|
-
throw new
|
|
47
|
+
throw new NoSuchModelError({ modelId, modelType: "embeddingModel" });
|
|
70
48
|
};
|
|
71
49
|
provider.textEmbeddingModel = provider.embeddingModel;
|
|
72
50
|
provider.imageModel = (modelId) => {
|
|
73
|
-
throw new
|
|
51
|
+
throw new NoSuchModelError({ modelId, modelType: "imageModel" });
|
|
74
52
|
};
|
|
75
53
|
return provider;
|
|
76
54
|
}
|
|
77
55
|
var vercel = createVercel();
|
|
78
|
-
|
|
79
|
-
0 && (module.exports = {
|
|
56
|
+
export {
|
|
80
57
|
VERSION,
|
|
81
58
|
createVercel,
|
|
82
59
|
vercel
|
|
83
|
-
}
|
|
60
|
+
};
|
|
84
61
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/
|
|
1
|
+
{"version":3,"sources":["../src/vercel-provider.ts","../src/version.ts"],"sourcesContent":["import {\n NoSuchModelError,\n type LanguageModelV4,\n type ProviderV4,\n} from '@ai-sdk/provider';\nimport { OpenAICompatibleChatLanguageModel } from '@ai-sdk/openai-compatible';\nimport {\n loadApiKey,\n withoutTrailingSlash,\n withUserAgentSuffix,\n type FetchFunction,\n} from '@ai-sdk/provider-utils';\nimport type { VercelChatModelId } from './vercel-chat-options';\nimport { VERSION } from './version';\n\nexport interface VercelProviderSettings {\n /**\n * Vercel API key.\n */\n apiKey?: string;\n /**\n * Base URL for the API calls.\n */\n baseURL?: string;\n /**\n * Custom headers to include in the requests.\n */\n headers?: Record<string, string>;\n /**\n * Custom fetch implementation. You can use it as a middleware to intercept requests,\n * or to provide a custom fetch implementation for e.g. testing.\n */\n fetch?: FetchFunction;\n}\n\nexport interface VercelProvider extends ProviderV4 {\n /**\n * Creates a model for text generation.\n */\n (modelId: VercelChatModelId): LanguageModelV4;\n\n /**\n * Creates a language model for text generation.\n */\n languageModel(modelId: VercelChatModelId): LanguageModelV4;\n\n /**\n * @deprecated Use `embeddingModel` instead.\n */\n textEmbeddingModel(modelId: string): never;\n}\n\nexport function createVercel(\n options: VercelProviderSettings = {},\n): VercelProvider {\n const baseURL = withoutTrailingSlash(\n options.baseURL ?? 'https://api.v0.dev/v1',\n );\n const getHeaders = () =>\n withUserAgentSuffix(\n {\n Authorization: `Bearer ${loadApiKey({\n apiKey: options.apiKey,\n environmentVariableName: 'VERCEL_API_KEY',\n description: 'Vercel',\n })}`,\n ...options.headers,\n },\n `ai-sdk/vercel/${VERSION}`,\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: `vercel.${modelType}`,\n url: ({ path }) => `${baseURL}${path}`,\n headers: getHeaders,\n fetch: options.fetch,\n });\n\n const createChatModel = (modelId: VercelChatModelId) => {\n return new OpenAICompatibleChatLanguageModel(modelId, {\n ...getCommonModelConfig('chat'),\n });\n };\n\n const provider = (modelId: VercelChatModelId) => createChatModel(modelId);\n\n provider.specificationVersion = 'v4' as const;\n provider.languageModel = createChatModel;\n provider.embeddingModel = (modelId: string) => {\n throw new NoSuchModelError({ modelId, modelType: 'embeddingModel' });\n };\n provider.textEmbeddingModel = provider.embeddingModel;\n provider.imageModel = (modelId: string) => {\n throw new NoSuchModelError({ modelId, modelType: 'imageModel' });\n };\n\n return provider;\n}\n\nexport const vercel = createVercel();\n","// Version string of this package injected at build time.\ndeclare const __PACKAGE_VERSION__: string | undefined;\nexport const VERSION: string =\n typeof __PACKAGE_VERSION__ !== 'undefined'\n ? __PACKAGE_VERSION__\n : '0.0.0-test';\n"],"mappings":";AAAA;AAAA,EACE;AAAA,OAGK;AACP,SAAS,yCAAyC;AAClD;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OAEK;;;ACTA,IAAM,UACX,OACI,oBACA;;;AD+CC,SAAS,aACd,UAAkC,CAAC,GACnB;AAtDlB;AAuDE,QAAM,UAAU;AAAA,KACd,aAAQ,YAAR,YAAmB;AAAA,EACrB;AACA,QAAM,aAAa,MACjB;AAAA,IACE;AAAA,MACE,eAAe,UAAU,WAAW;AAAA,QAClC,QAAQ,QAAQ;AAAA,QAChB,yBAAyB;AAAA,QACzB,aAAa;AAAA,MACf,CAAC,CAAC;AAAA,MACF,GAAG,QAAQ;AAAA,IACb;AAAA,IACA,iBAAiB,OAAO;AAAA,EAC1B;AASF,QAAM,uBAAuB,CAAC,eAA0C;AAAA,IACtE,UAAU,UAAU,SAAS;AAAA,IAC7B,KAAK,CAAC,EAAE,KAAK,MAAM,GAAG,OAAO,GAAG,IAAI;AAAA,IACpC,SAAS;AAAA,IACT,OAAO,QAAQ;AAAA,EACjB;AAEA,QAAM,kBAAkB,CAAC,YAA+B;AACtD,WAAO,IAAI,kCAAkC,SAAS;AAAA,MACpD,GAAG,qBAAqB,MAAM;AAAA,IAChC,CAAC;AAAA,EACH;AAEA,QAAM,WAAW,CAAC,YAA+B,gBAAgB,OAAO;AAExE,WAAS,uBAAuB;AAChC,WAAS,gBAAgB;AACzB,WAAS,iBAAiB,CAAC,YAAoB;AAC7C,UAAM,IAAI,iBAAiB,EAAE,SAAS,WAAW,iBAAiB,CAAC;AAAA,EACrE;AACA,WAAS,qBAAqB,SAAS;AACvC,WAAS,aAAa,CAAC,YAAoB;AACzC,UAAM,IAAI,iBAAiB,EAAE,SAAS,WAAW,aAAa,CAAC;AAAA,EACjE;AAEA,SAAO;AACT;AAEO,IAAM,SAAS,aAAa;","names":[]}
|
package/package.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ai-sdk/vercel",
|
|
3
|
-
"version": "3.0.0-
|
|
3
|
+
"version": "3.0.0-canary.37",
|
|
4
|
+
"type": "module",
|
|
4
5
|
"license": "Apache-2.0",
|
|
5
6
|
"sideEffects": false,
|
|
6
7
|
"main": "./dist/index.js",
|
|
7
|
-
"module": "./dist/index.mjs",
|
|
8
8
|
"types": "./dist/index.d.ts",
|
|
9
9
|
"files": [
|
|
10
10
|
"dist/**/*",
|
|
@@ -24,14 +24,14 @@
|
|
|
24
24
|
"./package.json": "./package.json",
|
|
25
25
|
".": {
|
|
26
26
|
"types": "./dist/index.d.ts",
|
|
27
|
-
"import": "./dist/index.
|
|
28
|
-
"
|
|
27
|
+
"import": "./dist/index.js",
|
|
28
|
+
"default": "./dist/index.js"
|
|
29
29
|
}
|
|
30
30
|
},
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"@ai-sdk/openai-compatible": "3.0.0-
|
|
33
|
-
"@ai-sdk/provider": "4.0.0-
|
|
34
|
-
"@ai-sdk/provider-utils": "5.0.0-
|
|
32
|
+
"@ai-sdk/openai-compatible": "3.0.0-canary.37",
|
|
33
|
+
"@ai-sdk/provider": "4.0.0-canary.15",
|
|
34
|
+
"@ai-sdk/provider-utils": "5.0.0-canary.31"
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
|
37
37
|
"@types/node": "20.17.24",
|
|
@@ -47,12 +47,14 @@
|
|
|
47
47
|
"node": ">=18"
|
|
48
48
|
},
|
|
49
49
|
"publishConfig": {
|
|
50
|
-
"access": "public"
|
|
50
|
+
"access": "public",
|
|
51
|
+
"provenance": true
|
|
51
52
|
},
|
|
52
53
|
"homepage": "https://ai-sdk.dev/docs",
|
|
53
54
|
"repository": {
|
|
54
55
|
"type": "git",
|
|
55
|
-
"url": "
|
|
56
|
+
"url": "https://github.com/vercel/ai",
|
|
57
|
+
"directory": "packages/vercel"
|
|
56
58
|
},
|
|
57
59
|
"bugs": {
|
|
58
60
|
"url": "https://github.com/vercel/ai/issues"
|
package/src/vercel-provider.ts
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import {
|
|
2
|
-
LanguageModelV4,
|
|
3
2
|
NoSuchModelError,
|
|
4
|
-
|
|
3
|
+
type LanguageModelV4,
|
|
4
|
+
type ProviderV4,
|
|
5
5
|
} from '@ai-sdk/provider';
|
|
6
6
|
import { OpenAICompatibleChatLanguageModel } from '@ai-sdk/openai-compatible';
|
|
7
7
|
import {
|
|
8
|
-
FetchFunction,
|
|
9
8
|
loadApiKey,
|
|
10
9
|
withoutTrailingSlash,
|
|
11
10
|
withUserAgentSuffix,
|
|
11
|
+
type FetchFunction,
|
|
12
12
|
} from '@ai-sdk/provider-utils';
|
|
13
|
-
import { VercelChatModelId } from './vercel-chat-options';
|
|
13
|
+
import type { VercelChatModelId } from './vercel-chat-options';
|
|
14
14
|
import { VERSION } from './version';
|
|
15
15
|
|
|
16
16
|
export interface VercelProviderSettings {
|
package/dist/index.d.mts
DELETED
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import { ProviderV4, LanguageModelV4 } from '@ai-sdk/provider';
|
|
2
|
-
import { FetchFunction } from '@ai-sdk/provider-utils';
|
|
3
|
-
export { OpenAICompatibleErrorData as VercelErrorData } from '@ai-sdk/openai-compatible';
|
|
4
|
-
|
|
5
|
-
type VercelChatModelId = 'v0-1.0-md' | 'v0-1.5-md' | 'v0-1.5-lg' | (string & {});
|
|
6
|
-
|
|
7
|
-
interface VercelProviderSettings {
|
|
8
|
-
/**
|
|
9
|
-
* Vercel API key.
|
|
10
|
-
*/
|
|
11
|
-
apiKey?: string;
|
|
12
|
-
/**
|
|
13
|
-
* Base URL for the API calls.
|
|
14
|
-
*/
|
|
15
|
-
baseURL?: string;
|
|
16
|
-
/**
|
|
17
|
-
* Custom headers to include in the requests.
|
|
18
|
-
*/
|
|
19
|
-
headers?: Record<string, string>;
|
|
20
|
-
/**
|
|
21
|
-
* Custom fetch implementation. You can use it as a middleware to intercept requests,
|
|
22
|
-
* or to provide a custom fetch implementation for e.g. testing.
|
|
23
|
-
*/
|
|
24
|
-
fetch?: FetchFunction;
|
|
25
|
-
}
|
|
26
|
-
interface VercelProvider extends ProviderV4 {
|
|
27
|
-
/**
|
|
28
|
-
* Creates a model for text generation.
|
|
29
|
-
*/
|
|
30
|
-
(modelId: VercelChatModelId): LanguageModelV4;
|
|
31
|
-
/**
|
|
32
|
-
* Creates a language model for text generation.
|
|
33
|
-
*/
|
|
34
|
-
languageModel(modelId: VercelChatModelId): LanguageModelV4;
|
|
35
|
-
/**
|
|
36
|
-
* @deprecated Use `embeddingModel` instead.
|
|
37
|
-
*/
|
|
38
|
-
textEmbeddingModel(modelId: string): never;
|
|
39
|
-
}
|
|
40
|
-
declare function createVercel(options?: VercelProviderSettings): VercelProvider;
|
|
41
|
-
declare const vercel: VercelProvider;
|
|
42
|
-
|
|
43
|
-
declare const VERSION: string;
|
|
44
|
-
|
|
45
|
-
export { VERSION, type VercelProvider, type VercelProviderSettings, createVercel, vercel };
|
package/dist/index.mjs
DELETED
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
// src/vercel-provider.ts
|
|
2
|
-
import {
|
|
3
|
-
NoSuchModelError
|
|
4
|
-
} from "@ai-sdk/provider";
|
|
5
|
-
import { OpenAICompatibleChatLanguageModel } from "@ai-sdk/openai-compatible";
|
|
6
|
-
import {
|
|
7
|
-
loadApiKey,
|
|
8
|
-
withoutTrailingSlash,
|
|
9
|
-
withUserAgentSuffix
|
|
10
|
-
} from "@ai-sdk/provider-utils";
|
|
11
|
-
|
|
12
|
-
// src/version.ts
|
|
13
|
-
var VERSION = true ? "3.0.0-beta.8" : "0.0.0-test";
|
|
14
|
-
|
|
15
|
-
// src/vercel-provider.ts
|
|
16
|
-
function createVercel(options = {}) {
|
|
17
|
-
var _a;
|
|
18
|
-
const baseURL = withoutTrailingSlash(
|
|
19
|
-
(_a = options.baseURL) != null ? _a : "https://api.v0.dev/v1"
|
|
20
|
-
);
|
|
21
|
-
const getHeaders = () => withUserAgentSuffix(
|
|
22
|
-
{
|
|
23
|
-
Authorization: `Bearer ${loadApiKey({
|
|
24
|
-
apiKey: options.apiKey,
|
|
25
|
-
environmentVariableName: "VERCEL_API_KEY",
|
|
26
|
-
description: "Vercel"
|
|
27
|
-
})}`,
|
|
28
|
-
...options.headers
|
|
29
|
-
},
|
|
30
|
-
`ai-sdk/vercel/${VERSION}`
|
|
31
|
-
);
|
|
32
|
-
const getCommonModelConfig = (modelType) => ({
|
|
33
|
-
provider: `vercel.${modelType}`,
|
|
34
|
-
url: ({ path }) => `${baseURL}${path}`,
|
|
35
|
-
headers: getHeaders,
|
|
36
|
-
fetch: options.fetch
|
|
37
|
-
});
|
|
38
|
-
const createChatModel = (modelId) => {
|
|
39
|
-
return new OpenAICompatibleChatLanguageModel(modelId, {
|
|
40
|
-
...getCommonModelConfig("chat")
|
|
41
|
-
});
|
|
42
|
-
};
|
|
43
|
-
const provider = (modelId) => createChatModel(modelId);
|
|
44
|
-
provider.specificationVersion = "v4";
|
|
45
|
-
provider.languageModel = createChatModel;
|
|
46
|
-
provider.embeddingModel = (modelId) => {
|
|
47
|
-
throw new NoSuchModelError({ modelId, modelType: "embeddingModel" });
|
|
48
|
-
};
|
|
49
|
-
provider.textEmbeddingModel = provider.embeddingModel;
|
|
50
|
-
provider.imageModel = (modelId) => {
|
|
51
|
-
throw new NoSuchModelError({ modelId, modelType: "imageModel" });
|
|
52
|
-
};
|
|
53
|
-
return provider;
|
|
54
|
-
}
|
|
55
|
-
var vercel = createVercel();
|
|
56
|
-
export {
|
|
57
|
-
VERSION,
|
|
58
|
-
createVercel,
|
|
59
|
-
vercel
|
|
60
|
-
};
|
|
61
|
-
//# sourceMappingURL=index.mjs.map
|
package/dist/index.mjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/vercel-provider.ts","../src/version.ts"],"sourcesContent":["import {\n LanguageModelV4,\n NoSuchModelError,\n ProviderV4,\n} from '@ai-sdk/provider';\nimport { OpenAICompatibleChatLanguageModel } from '@ai-sdk/openai-compatible';\nimport {\n FetchFunction,\n loadApiKey,\n withoutTrailingSlash,\n withUserAgentSuffix,\n} from '@ai-sdk/provider-utils';\nimport { VercelChatModelId } from './vercel-chat-options';\nimport { VERSION } from './version';\n\nexport interface VercelProviderSettings {\n /**\n * Vercel API key.\n */\n apiKey?: string;\n /**\n * Base URL for the API calls.\n */\n baseURL?: string;\n /**\n * Custom headers to include in the requests.\n */\n headers?: Record<string, string>;\n /**\n * Custom fetch implementation. You can use it as a middleware to intercept requests,\n * or to provide a custom fetch implementation for e.g. testing.\n */\n fetch?: FetchFunction;\n}\n\nexport interface VercelProvider extends ProviderV4 {\n /**\n * Creates a model for text generation.\n */\n (modelId: VercelChatModelId): LanguageModelV4;\n\n /**\n * Creates a language model for text generation.\n */\n languageModel(modelId: VercelChatModelId): LanguageModelV4;\n\n /**\n * @deprecated Use `embeddingModel` instead.\n */\n textEmbeddingModel(modelId: string): never;\n}\n\nexport function createVercel(\n options: VercelProviderSettings = {},\n): VercelProvider {\n const baseURL = withoutTrailingSlash(\n options.baseURL ?? 'https://api.v0.dev/v1',\n );\n const getHeaders = () =>\n withUserAgentSuffix(\n {\n Authorization: `Bearer ${loadApiKey({\n apiKey: options.apiKey,\n environmentVariableName: 'VERCEL_API_KEY',\n description: 'Vercel',\n })}`,\n ...options.headers,\n },\n `ai-sdk/vercel/${VERSION}`,\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: `vercel.${modelType}`,\n url: ({ path }) => `${baseURL}${path}`,\n headers: getHeaders,\n fetch: options.fetch,\n });\n\n const createChatModel = (modelId: VercelChatModelId) => {\n return new OpenAICompatibleChatLanguageModel(modelId, {\n ...getCommonModelConfig('chat'),\n });\n };\n\n const provider = (modelId: VercelChatModelId) => createChatModel(modelId);\n\n provider.specificationVersion = 'v4' as const;\n provider.languageModel = createChatModel;\n provider.embeddingModel = (modelId: string) => {\n throw new NoSuchModelError({ modelId, modelType: 'embeddingModel' });\n };\n provider.textEmbeddingModel = provider.embeddingModel;\n provider.imageModel = (modelId: string) => {\n throw new NoSuchModelError({ modelId, modelType: 'imageModel' });\n };\n\n return provider;\n}\n\nexport const vercel = createVercel();\n","// Version string of this package injected at build time.\ndeclare const __PACKAGE_VERSION__: string | undefined;\nexport const VERSION: string =\n typeof __PACKAGE_VERSION__ !== 'undefined'\n ? __PACKAGE_VERSION__\n : '0.0.0-test';\n"],"mappings":";AAAA;AAAA,EAEE;AAAA,OAEK;AACP,SAAS,yCAAyC;AAClD;AAAA,EAEE;AAAA,EACA;AAAA,EACA;AAAA,OACK;;;ACTA,IAAM,UACX,OACI,iBACA;;;AD+CC,SAAS,aACd,UAAkC,CAAC,GACnB;AAtDlB;AAuDE,QAAM,UAAU;AAAA,KACd,aAAQ,YAAR,YAAmB;AAAA,EACrB;AACA,QAAM,aAAa,MACjB;AAAA,IACE;AAAA,MACE,eAAe,UAAU,WAAW;AAAA,QAClC,QAAQ,QAAQ;AAAA,QAChB,yBAAyB;AAAA,QACzB,aAAa;AAAA,MACf,CAAC,CAAC;AAAA,MACF,GAAG,QAAQ;AAAA,IACb;AAAA,IACA,iBAAiB,OAAO;AAAA,EAC1B;AASF,QAAM,uBAAuB,CAAC,eAA0C;AAAA,IACtE,UAAU,UAAU,SAAS;AAAA,IAC7B,KAAK,CAAC,EAAE,KAAK,MAAM,GAAG,OAAO,GAAG,IAAI;AAAA,IACpC,SAAS;AAAA,IACT,OAAO,QAAQ;AAAA,EACjB;AAEA,QAAM,kBAAkB,CAAC,YAA+B;AACtD,WAAO,IAAI,kCAAkC,SAAS;AAAA,MACpD,GAAG,qBAAqB,MAAM;AAAA,IAChC,CAAC;AAAA,EACH;AAEA,QAAM,WAAW,CAAC,YAA+B,gBAAgB,OAAO;AAExE,WAAS,uBAAuB;AAChC,WAAS,gBAAgB;AACzB,WAAS,iBAAiB,CAAC,YAAoB;AAC7C,UAAM,IAAI,iBAAiB,EAAE,SAAS,WAAW,iBAAiB,CAAC;AAAA,EACrE;AACA,WAAS,qBAAqB,SAAS;AACvC,WAAS,aAAa,CAAC,YAAoB;AACzC,UAAM,IAAI,iBAAiB,EAAE,SAAS,WAAW,aAAa,CAAC;AAAA,EACjE;AAEA,SAAO;AACT;AAEO,IAAM,SAAS,aAAa;","names":[]}
|