@ai-sdk/cerebras 3.0.0-beta.3 → 3.0.0-beta.31

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 CHANGED
@@ -1,5 +1,249 @@
1
1
  # @ai-sdk/cerebras
2
2
 
3
+ ## 3.0.0-beta.31
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies [2e98477]
8
+ - Updated dependencies [bfb756d]
9
+ - @ai-sdk/provider-utils@5.0.0-beta.26
10
+ - @ai-sdk/openai-compatible@3.0.0-beta.31
11
+
12
+ ## 3.0.0-beta.30
13
+
14
+ ### Patch Changes
15
+
16
+ - Updated dependencies [eea8d98]
17
+ - @ai-sdk/provider-utils@5.0.0-beta.25
18
+ - @ai-sdk/openai-compatible@3.0.0-beta.30
19
+
20
+ ## 3.0.0-beta.29
21
+
22
+ ### Patch Changes
23
+
24
+ - Updated dependencies [f807e45]
25
+ - @ai-sdk/provider-utils@5.0.0-beta.24
26
+ - @ai-sdk/openai-compatible@3.0.0-beta.29
27
+
28
+ ## 3.0.0-beta.28
29
+
30
+ ### Patch Changes
31
+
32
+ - Updated dependencies [350ea38]
33
+ - @ai-sdk/provider-utils@5.0.0-beta.23
34
+ - @ai-sdk/openai-compatible@3.0.0-beta.28
35
+
36
+ ## 3.0.0-beta.27
37
+
38
+ ### Patch Changes
39
+
40
+ - Updated dependencies [083947b]
41
+ - @ai-sdk/provider-utils@5.0.0-beta.22
42
+ - @ai-sdk/openai-compatible@3.0.0-beta.27
43
+
44
+ ## 3.0.0-beta.26
45
+
46
+ ### Patch Changes
47
+
48
+ - Updated dependencies [add1126]
49
+ - @ai-sdk/provider-utils@5.0.0-beta.21
50
+ - @ai-sdk/openai-compatible@3.0.0-beta.26
51
+
52
+ ## 3.0.0-beta.25
53
+
54
+ ### Patch Changes
55
+
56
+ - Updated dependencies [b3976a2]
57
+ - Updated dependencies [ff5eba1]
58
+ - @ai-sdk/provider-utils@5.0.0-beta.20
59
+ - @ai-sdk/openai-compatible@3.0.0-beta.25
60
+ - @ai-sdk/provider@4.0.0-beta.12
61
+
62
+ ## 3.0.0-beta.24
63
+
64
+ ### Major Changes
65
+
66
+ - ef992f8: Remove CommonJS exports from all packages. All packages are now ESM-only (`"type": "module"`). Consumers using `require()` must switch to ESM `import` syntax.
67
+
68
+ ### Patch Changes
69
+
70
+ - Updated dependencies [ef992f8]
71
+ - @ai-sdk/openai-compatible@3.0.0-beta.24
72
+ - @ai-sdk/provider@4.0.0-beta.11
73
+ - @ai-sdk/provider-utils@5.0.0-beta.19
74
+
75
+ ## 3.0.0-beta.23
76
+
77
+ ### Patch Changes
78
+
79
+ - 90e2d8a: chore: fix unused vars not being flagged by our lint tooling
80
+ - Updated dependencies [90e2d8a]
81
+ - @ai-sdk/openai-compatible@3.0.0-beta.23
82
+ - @ai-sdk/provider-utils@5.0.0-beta.18
83
+
84
+ ## 3.0.0-beta.22
85
+
86
+ ### Patch Changes
87
+
88
+ - Updated dependencies [3ae1786]
89
+ - @ai-sdk/provider-utils@5.0.0-beta.17
90
+ - @ai-sdk/openai-compatible@3.0.0-beta.22
91
+
92
+ ## 3.0.0-beta.21
93
+
94
+ ### Patch Changes
95
+
96
+ - Updated dependencies [176466a]
97
+ - @ai-sdk/provider@4.0.0-beta.10
98
+ - @ai-sdk/openai-compatible@3.0.0-beta.21
99
+ - @ai-sdk/provider-utils@5.0.0-beta.16
100
+
101
+ ## 3.0.0-beta.20
102
+
103
+ ### Patch Changes
104
+
105
+ - Updated dependencies [e311194]
106
+ - @ai-sdk/provider@4.0.0-beta.9
107
+ - @ai-sdk/openai-compatible@3.0.0-beta.20
108
+ - @ai-sdk/provider-utils@5.0.0-beta.15
109
+
110
+ ## 3.0.0-beta.19
111
+
112
+ ### Patch Changes
113
+
114
+ - Updated dependencies [34bd95d]
115
+ - Updated dependencies [008271d]
116
+ - @ai-sdk/provider@4.0.0-beta.8
117
+ - @ai-sdk/openai-compatible@3.0.0-beta.19
118
+ - @ai-sdk/provider-utils@5.0.0-beta.14
119
+
120
+ ## 3.0.0-beta.18
121
+
122
+ ### Patch Changes
123
+
124
+ - Updated dependencies [b0c2869]
125
+ - Updated dependencies [7e26e81]
126
+ - @ai-sdk/provider-utils@5.0.0-beta.13
127
+ - @ai-sdk/openai-compatible@3.0.0-beta.18
128
+
129
+ ## 3.0.0-beta.17
130
+
131
+ ### Patch Changes
132
+
133
+ - Updated dependencies [816ff67]
134
+ - @ai-sdk/openai-compatible@3.0.0-beta.17
135
+
136
+ ## 3.0.0-beta.16
137
+
138
+ ### Patch Changes
139
+
140
+ - Updated dependencies [46d1149]
141
+ - @ai-sdk/provider-utils@5.0.0-beta.12
142
+ - @ai-sdk/openai-compatible@3.0.0-beta.16
143
+
144
+ ## 3.0.0-beta.15
145
+
146
+ ### Patch Changes
147
+
148
+ - Updated dependencies [6fd51c0]
149
+ - @ai-sdk/provider-utils@5.0.0-beta.11
150
+ - @ai-sdk/provider@4.0.0-beta.7
151
+ - @ai-sdk/openai-compatible@3.0.0-beta.15
152
+
153
+ ## 3.0.0-beta.14
154
+
155
+ ### Patch Changes
156
+
157
+ - Updated dependencies [c29a26f]
158
+ - @ai-sdk/openai-compatible@3.0.0-beta.14
159
+ - @ai-sdk/provider-utils@5.0.0-beta.10
160
+ - @ai-sdk/provider@4.0.0-beta.6
161
+
162
+ ## 3.0.0-beta.13
163
+
164
+ ### Patch Changes
165
+
166
+ - 38fc777: Add AI Gateway hint to provider READMEs
167
+ - Updated dependencies [38fc777]
168
+ - @ai-sdk/openai-compatible@3.0.0-beta.13
169
+
170
+ ## 3.0.0-beta.12
171
+
172
+ ### Patch Changes
173
+
174
+ - Updated dependencies [2e17091]
175
+ - @ai-sdk/provider-utils@5.0.0-beta.9
176
+ - @ai-sdk/openai-compatible@3.0.0-beta.12
177
+
178
+ ## 3.0.0-beta.11
179
+
180
+ ### Patch Changes
181
+
182
+ - Updated dependencies [986c6fd]
183
+ - Updated dependencies [493295c]
184
+ - @ai-sdk/provider-utils@5.0.0-beta.8
185
+ - @ai-sdk/openai-compatible@3.0.0-beta.11
186
+
187
+ ## 3.0.0-beta.10
188
+
189
+ ### Patch Changes
190
+
191
+ - Updated dependencies [1f509d4]
192
+ - @ai-sdk/provider-utils@5.0.0-beta.7
193
+ - @ai-sdk/provider@4.0.0-beta.5
194
+ - @ai-sdk/openai-compatible@3.0.0-beta.10
195
+
196
+ ## 3.0.0-beta.9
197
+
198
+ ### Patch Changes
199
+
200
+ - Updated dependencies [74d520f]
201
+ - @ai-sdk/openai-compatible@3.0.0-beta.9
202
+
203
+ ## 3.0.0-beta.8
204
+
205
+ ### Patch Changes
206
+
207
+ - Updated dependencies [3887c70]
208
+ - @ai-sdk/provider-utils@5.0.0-beta.6
209
+ - @ai-sdk/provider@4.0.0-beta.4
210
+ - @ai-sdk/openai-compatible@3.0.0-beta.8
211
+
212
+ ## 3.0.0-beta.7
213
+
214
+ ### Patch Changes
215
+
216
+ - Updated dependencies [776b617]
217
+ - @ai-sdk/provider-utils@5.0.0-beta.5
218
+ - @ai-sdk/provider@4.0.0-beta.3
219
+ - @ai-sdk/openai-compatible@3.0.0-beta.7
220
+
221
+ ## 3.0.0-beta.6
222
+
223
+ ### Patch Changes
224
+
225
+ - Updated dependencies [61753c3]
226
+ - @ai-sdk/provider-utils@5.0.0-beta.4
227
+ - @ai-sdk/openai-compatible@3.0.0-beta.6
228
+
229
+ ## 3.0.0-beta.5
230
+
231
+ ### Patch Changes
232
+
233
+ - Updated dependencies [f7d4f01]
234
+ - @ai-sdk/provider-utils@5.0.0-beta.3
235
+ - @ai-sdk/provider@4.0.0-beta.2
236
+ - @ai-sdk/openai-compatible@3.0.0-beta.5
237
+
238
+ ## 3.0.0-beta.4
239
+
240
+ ### Patch Changes
241
+
242
+ - Updated dependencies [5c2a5a2]
243
+ - @ai-sdk/provider@4.0.0-beta.1
244
+ - @ai-sdk/openai-compatible@3.0.0-beta.4
245
+ - @ai-sdk/provider-utils@5.0.0-beta.2
246
+
3
247
  ## 3.0.0-beta.3
4
248
 
5
249
  ### Patch Changes
@@ -355,13 +599,13 @@
355
599
  Before
356
600
 
357
601
  ```ts
358
- model.textEmbeddingModel('my-model-id');
602
+ model.textEmbeddingModel("my-model-id");
359
603
  ```
360
604
 
361
605
  After
362
606
 
363
607
  ```ts
364
- model.embeddingModel('my-model-id');
608
+ model.embeddingModel("my-model-id");
365
609
  ```
366
610
 
367
611
  - 42e9f64: Add support for 5 new Cerebras models:
@@ -594,13 +838,13 @@
594
838
  Before
595
839
 
596
840
  ```ts
597
- model.textEmbeddingModel('my-model-id');
841
+ model.textEmbeddingModel("my-model-id");
598
842
  ```
599
843
 
600
844
  After
601
845
 
602
846
  ```ts
603
- model.embeddingModel('my-model-id');
847
+ model.embeddingModel("my-model-id");
604
848
  ```
605
849
 
606
850
  - Updated dependencies [8d9e8ad]
package/README.md CHANGED
@@ -2,6 +2,8 @@
2
2
 
3
3
  The **Cerebras provider** for the [AI SDK](https://ai-sdk.dev/docs) contains language model support for [Cerebras](https://cerebras.ai), offering high-speed AI model inference powered by Cerebras Wafer-Scale Engines and CS-3 systems.
4
4
 
5
+ > **Deploying to Vercel?** With Vercel's AI Gateway you can access Cerebras (and hundreds of models from other providers) — no additional packages, API keys, or extra cost. [Get started with AI Gateway](https://vercel.com/ai-gateway).
6
+
5
7
  ## Setup
6
8
 
7
9
  The Cerebras provider is available in the `@ai-sdk/cerebras` module. You can install it with
package/dist/index.js CHANGED
@@ -1,46 +1,24 @@
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
- cerebras: () => cerebras,
25
- createCerebras: () => createCerebras
26
- });
27
- module.exports = __toCommonJS(index_exports);
28
-
29
1
  // src/cerebras-provider.ts
30
- var import_openai_compatible = require("@ai-sdk/openai-compatible");
31
- var import_provider = require("@ai-sdk/provider");
32
- var import_provider_utils = require("@ai-sdk/provider-utils");
33
- var import_v4 = require("zod/v4");
2
+ import { OpenAICompatibleChatLanguageModel } from "@ai-sdk/openai-compatible";
3
+ import {
4
+ NoSuchModelError
5
+ } from "@ai-sdk/provider";
6
+ import {
7
+ loadApiKey,
8
+ withoutTrailingSlash,
9
+ withUserAgentSuffix
10
+ } from "@ai-sdk/provider-utils";
11
+ import { z } from "zod/v4";
34
12
 
35
13
  // src/version.ts
36
- var VERSION = true ? "3.0.0-beta.3" : "0.0.0-test";
14
+ var VERSION = true ? "3.0.0-beta.31" : "0.0.0-test";
37
15
 
38
16
  // src/cerebras-provider.ts
39
- var cerebrasErrorSchema = import_v4.z.object({
40
- message: import_v4.z.string(),
41
- type: import_v4.z.string(),
42
- param: import_v4.z.string(),
43
- code: import_v4.z.string()
17
+ var cerebrasErrorSchema = z.object({
18
+ message: z.string(),
19
+ type: z.string(),
20
+ param: z.string(),
21
+ code: z.string()
44
22
  });
45
23
  var cerebrasErrorStructure = {
46
24
  errorSchema: cerebrasErrorSchema,
@@ -48,12 +26,12 @@ var cerebrasErrorStructure = {
48
26
  };
49
27
  function createCerebras(options = {}) {
50
28
  var _a;
51
- const baseURL = (0, import_provider_utils.withoutTrailingSlash)(
29
+ const baseURL = withoutTrailingSlash(
52
30
  (_a = options.baseURL) != null ? _a : "https://api.cerebras.ai/v1"
53
31
  );
54
- const getHeaders = () => (0, import_provider_utils.withUserAgentSuffix)(
32
+ const getHeaders = () => withUserAgentSuffix(
55
33
  {
56
- Authorization: `Bearer ${(0, import_provider_utils.loadApiKey)({
34
+ Authorization: `Bearer ${loadApiKey({
57
35
  apiKey: options.apiKey,
58
36
  environmentVariableName: "CEREBRAS_API_KEY",
59
37
  description: "Cerebras API key"
@@ -63,7 +41,7 @@ function createCerebras(options = {}) {
63
41
  `ai-sdk/cerebras/${VERSION}`
64
42
  );
65
43
  const createLanguageModel = (modelId) => {
66
- return new import_openai_compatible.OpenAICompatibleChatLanguageModel(modelId, {
44
+ return new OpenAICompatibleChatLanguageModel(modelId, {
67
45
  provider: `cerebras.chat`,
68
46
  url: ({ path }) => `${baseURL}${path}`,
69
47
  headers: getHeaders,
@@ -77,19 +55,18 @@ function createCerebras(options = {}) {
77
55
  provider.languageModel = createLanguageModel;
78
56
  provider.chat = createLanguageModel;
79
57
  provider.embeddingModel = (modelId) => {
80
- throw new import_provider.NoSuchModelError({ modelId, modelType: "embeddingModel" });
58
+ throw new NoSuchModelError({ modelId, modelType: "embeddingModel" });
81
59
  };
82
60
  provider.textEmbeddingModel = provider.embeddingModel;
83
61
  provider.imageModel = (modelId) => {
84
- throw new import_provider.NoSuchModelError({ modelId, modelType: "imageModel" });
62
+ throw new NoSuchModelError({ modelId, modelType: "imageModel" });
85
63
  };
86
64
  return provider;
87
65
  }
88
66
  var cerebras = createCerebras();
89
- // Annotate the CommonJS export names for ESM import in node:
90
- 0 && (module.exports = {
67
+ export {
91
68
  VERSION,
92
69
  cerebras,
93
70
  createCerebras
94
- });
71
+ };
95
72
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../src/cerebras-provider.ts","../src/version.ts"],"sourcesContent":["export { createCerebras, cerebras } from './cerebras-provider';\nexport type {\n CerebrasProvider,\n CerebrasProviderSettings,\n} from './cerebras-provider';\nexport type { CerebrasErrorData } from './cerebras-provider';\nexport { VERSION } from './version';\n","import { OpenAICompatibleChatLanguageModel } from '@ai-sdk/openai-compatible';\nimport {\n LanguageModelV4,\n NoSuchModelError,\n ProviderV4,\n} from '@ai-sdk/provider';\nimport {\n FetchFunction,\n loadApiKey,\n withoutTrailingSlash,\n withUserAgentSuffix,\n} from '@ai-sdk/provider-utils';\nimport { CerebrasChatModelId } from './cerebras-chat-options';\nimport { z } from 'zod/v4';\nimport { ProviderErrorStructure } from '@ai-sdk/openai-compatible';\nimport { VERSION } from './version';\n\n// Add error schema and structure\nconst cerebrasErrorSchema = z.object({\n message: z.string(),\n type: z.string(),\n param: z.string(),\n code: z.string(),\n});\n\nexport type CerebrasErrorData = z.infer<typeof cerebrasErrorSchema>;\n\nconst cerebrasErrorStructure: ProviderErrorStructure<CerebrasErrorData> = {\n errorSchema: cerebrasErrorSchema,\n errorToMessage: data => data.message,\n};\n\nexport interface CerebrasProviderSettings {\n /**\n * Cerebras 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 CerebrasProvider extends ProviderV4 {\n /**\n * Creates a Cerebras model for text generation.\n */\n (modelId: CerebrasChatModelId): LanguageModelV4;\n\n /**\n * Creates a Cerebras model for text generation.\n */\n languageModel(modelId: CerebrasChatModelId): LanguageModelV4;\n\n /**\n * Creates a Cerebras chat model for text generation.\n */\n chat(modelId: CerebrasChatModelId): LanguageModelV4;\n\n /**\n * @deprecated Use `embeddingModel` instead.\n */\n textEmbeddingModel(modelId: string): never;\n}\n\nexport function createCerebras(\n options: CerebrasProviderSettings = {},\n): CerebrasProvider {\n const baseURL = withoutTrailingSlash(\n options.baseURL ?? 'https://api.cerebras.ai/v1',\n );\n const getHeaders = () =>\n withUserAgentSuffix(\n {\n Authorization: `Bearer ${loadApiKey({\n apiKey: options.apiKey,\n environmentVariableName: 'CEREBRAS_API_KEY',\n description: 'Cerebras API key',\n })}`,\n ...options.headers,\n },\n `ai-sdk/cerebras/${VERSION}`,\n );\n\n const createLanguageModel = (modelId: CerebrasChatModelId) => {\n return new OpenAICompatibleChatLanguageModel(modelId, {\n provider: `cerebras.chat`,\n url: ({ path }) => `${baseURL}${path}`,\n headers: getHeaders,\n fetch: options.fetch,\n errorStructure: cerebrasErrorStructure,\n supportsStructuredOutputs: true,\n });\n };\n\n const provider = (modelId: CerebrasChatModelId) =>\n createLanguageModel(modelId);\n\n provider.specificationVersion = 'v4' as const;\n provider.languageModel = createLanguageModel;\n provider.chat = createLanguageModel;\n\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 cerebras = createCerebras();\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;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,+BAAkD;AAClD,sBAIO;AACP,4BAKO;AAEP,gBAAkB;;;ACXX,IAAM,UACX,OACI,iBACA;;;ADaN,IAAM,sBAAsB,YAAE,OAAO;AAAA,EACnC,SAAS,YAAE,OAAO;AAAA,EAClB,MAAM,YAAE,OAAO;AAAA,EACf,OAAO,YAAE,OAAO;AAAA,EAChB,MAAM,YAAE,OAAO;AACjB,CAAC;AAID,IAAM,yBAAoE;AAAA,EACxE,aAAa;AAAA,EACb,gBAAgB,UAAQ,KAAK;AAC/B;AA4CO,SAAS,eACd,UAAoC,CAAC,GACnB;AA5EpB;AA6EE,QAAM,cAAU;AAAA,KACd,aAAQ,YAAR,YAAmB;AAAA,EACrB;AACA,QAAM,aAAa,UACjB;AAAA,IACE;AAAA,MACE,eAAe,cAAU,kCAAW;AAAA,QAClC,QAAQ,QAAQ;AAAA,QAChB,yBAAyB;AAAA,QACzB,aAAa;AAAA,MACf,CAAC,CAAC;AAAA,MACF,GAAG,QAAQ;AAAA,IACb;AAAA,IACA,mBAAmB,OAAO;AAAA,EAC5B;AAEF,QAAM,sBAAsB,CAAC,YAAiC;AAC5D,WAAO,IAAI,2DAAkC,SAAS;AAAA,MACpD,UAAU;AAAA,MACV,KAAK,CAAC,EAAE,KAAK,MAAM,GAAG,OAAO,GAAG,IAAI;AAAA,MACpC,SAAS;AAAA,MACT,OAAO,QAAQ;AAAA,MACf,gBAAgB;AAAA,MAChB,2BAA2B;AAAA,IAC7B,CAAC;AAAA,EACH;AAEA,QAAM,WAAW,CAAC,YAChB,oBAAoB,OAAO;AAE7B,WAAS,uBAAuB;AAChC,WAAS,gBAAgB;AACzB,WAAS,OAAO;AAEhB,WAAS,iBAAiB,CAAC,YAAoB;AAC7C,UAAM,IAAI,iCAAiB,EAAE,SAAS,WAAW,iBAAiB,CAAC;AAAA,EACrE;AACA,WAAS,qBAAqB,SAAS;AACvC,WAAS,aAAa,CAAC,YAAoB;AACzC,UAAM,IAAI,iCAAiB,EAAE,SAAS,WAAW,aAAa,CAAC;AAAA,EACjE;AAEA,SAAO;AACT;AAEO,IAAM,WAAW,eAAe;","names":[]}
1
+ {"version":3,"sources":["../src/cerebras-provider.ts","../src/version.ts"],"sourcesContent":["import { OpenAICompatibleChatLanguageModel } from '@ai-sdk/openai-compatible';\nimport {\n LanguageModelV4,\n NoSuchModelError,\n ProviderV4,\n} from '@ai-sdk/provider';\nimport {\n FetchFunction,\n loadApiKey,\n withoutTrailingSlash,\n withUserAgentSuffix,\n} from '@ai-sdk/provider-utils';\nimport { CerebrasChatModelId } from './cerebras-chat-options';\nimport { z } from 'zod/v4';\nimport { ProviderErrorStructure } from '@ai-sdk/openai-compatible';\nimport { VERSION } from './version';\n\n// Add error schema and structure\nconst cerebrasErrorSchema = z.object({\n message: z.string(),\n type: z.string(),\n param: z.string(),\n code: z.string(),\n});\n\nexport type CerebrasErrorData = z.infer<typeof cerebrasErrorSchema>;\n\nconst cerebrasErrorStructure: ProviderErrorStructure<CerebrasErrorData> = {\n errorSchema: cerebrasErrorSchema,\n errorToMessage: data => data.message,\n};\n\nexport interface CerebrasProviderSettings {\n /**\n * Cerebras 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 CerebrasProvider extends ProviderV4 {\n /**\n * Creates a Cerebras model for text generation.\n */\n (modelId: CerebrasChatModelId): LanguageModelV4;\n\n /**\n * Creates a Cerebras model for text generation.\n */\n languageModel(modelId: CerebrasChatModelId): LanguageModelV4;\n\n /**\n * Creates a Cerebras chat model for text generation.\n */\n chat(modelId: CerebrasChatModelId): LanguageModelV4;\n\n /**\n * @deprecated Use `embeddingModel` instead.\n */\n textEmbeddingModel(modelId: string): never;\n}\n\nexport function createCerebras(\n options: CerebrasProviderSettings = {},\n): CerebrasProvider {\n const baseURL = withoutTrailingSlash(\n options.baseURL ?? 'https://api.cerebras.ai/v1',\n );\n const getHeaders = () =>\n withUserAgentSuffix(\n {\n Authorization: `Bearer ${loadApiKey({\n apiKey: options.apiKey,\n environmentVariableName: 'CEREBRAS_API_KEY',\n description: 'Cerebras API key',\n })}`,\n ...options.headers,\n },\n `ai-sdk/cerebras/${VERSION}`,\n );\n\n const createLanguageModel = (modelId: CerebrasChatModelId) => {\n return new OpenAICompatibleChatLanguageModel(modelId, {\n provider: `cerebras.chat`,\n url: ({ path }) => `${baseURL}${path}`,\n headers: getHeaders,\n fetch: options.fetch,\n errorStructure: cerebrasErrorStructure,\n supportsStructuredOutputs: true,\n });\n };\n\n const provider = (modelId: CerebrasChatModelId) =>\n createLanguageModel(modelId);\n\n provider.specificationVersion = 'v4' as const;\n provider.languageModel = createLanguageModel;\n provider.chat = createLanguageModel;\n\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 cerebras = createCerebras();\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,SAAS,yCAAyC;AAClD;AAAA,EAEE;AAAA,OAEK;AACP;AAAA,EAEE;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAEP,SAAS,SAAS;;;ACXX,IAAM,UACX,OACI,kBACA;;;ADaN,IAAM,sBAAsB,EAAE,OAAO;AAAA,EACnC,SAAS,EAAE,OAAO;AAAA,EAClB,MAAM,EAAE,OAAO;AAAA,EACf,OAAO,EAAE,OAAO;AAAA,EAChB,MAAM,EAAE,OAAO;AACjB,CAAC;AAID,IAAM,yBAAoE;AAAA,EACxE,aAAa;AAAA,EACb,gBAAgB,UAAQ,KAAK;AAC/B;AA4CO,SAAS,eACd,UAAoC,CAAC,GACnB;AA5EpB;AA6EE,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,mBAAmB,OAAO;AAAA,EAC5B;AAEF,QAAM,sBAAsB,CAAC,YAAiC;AAC5D,WAAO,IAAI,kCAAkC,SAAS;AAAA,MACpD,UAAU;AAAA,MACV,KAAK,CAAC,EAAE,KAAK,MAAM,GAAG,OAAO,GAAG,IAAI;AAAA,MACpC,SAAS;AAAA,MACT,OAAO,QAAQ;AAAA,MACf,gBAAgB;AAAA,MAChB,2BAA2B;AAAA,IAC7B,CAAC;AAAA,EACH;AAEA,QAAM,WAAW,CAAC,YAChB,oBAAoB,OAAO;AAE7B,WAAS,uBAAuB;AAChC,WAAS,gBAAgB;AACzB,WAAS,OAAO;AAEhB,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,WAAW,eAAe;","names":[]}
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "@ai-sdk/cerebras",
3
- "version": "3.0.0-beta.3",
3
+ "version": "3.0.0-beta.31",
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.mjs",
28
- "require": "./dist/index.js"
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-beta.3",
33
- "@ai-sdk/provider": "4.0.0-beta.0",
34
- "@ai-sdk/provider-utils": "5.0.0-beta.1"
32
+ "@ai-sdk/openai-compatible": "3.0.0-beta.31",
33
+ "@ai-sdk/provider": "4.0.0-beta.12",
34
+ "@ai-sdk/provider-utils": "5.0.0-beta.26"
35
35
  },
36
36
  "devDependencies": {
37
37
  "@types/node": "20.17.24",
@@ -62,14 +62,11 @@
62
62
  ],
63
63
  "description": "The **Cerebras provider** for the [AI SDK](https://ai-sdk.dev/docs) contains language model support for [Cerebras](https://cerebras.ai), offering high-speed AI model inference powered by Cerebras Wafer-Scale Engines and CS-3 systems.",
64
64
  "author": "",
65
- "type": "commonjs",
66
65
  "scripts": {
67
66
  "build": "pnpm clean && tsup --tsconfig tsconfig.build.json",
68
67
  "build:watch": "pnpm clean && tsup --watch",
69
68
  "clean": "del-cli dist docs *.tsbuildinfo",
70
- "lint": "eslint \"./**/*.ts*\"",
71
69
  "type-check": "tsc --build",
72
- "prettier-check": "prettier --check \"./**/*.ts*\"",
73
70
  "test": "pnpm test:node && pnpm test:edge",
74
71
  "test:update": "pnpm test:node -u",
75
72
  "test:watch": "vitest --config vitest.node.config.js",
package/dist/index.d.mts DELETED
@@ -1,56 +0,0 @@
1
- import { ProviderV4, LanguageModelV4 } from '@ai-sdk/provider';
2
- import { FetchFunction } from '@ai-sdk/provider-utils';
3
- import { z } from 'zod/v4';
4
-
5
- type CerebrasChatModelId = 'llama3.1-8b' | 'gpt-oss-120b' | 'qwen-3-235b-a22b-instruct-2507' | 'qwen-3-235b-a22b-thinking-2507' | 'zai-glm-4.6' | 'zai-glm-4.7' | (string & {});
6
-
7
- declare const cerebrasErrorSchema: z.ZodObject<{
8
- message: z.ZodString;
9
- type: z.ZodString;
10
- param: z.ZodString;
11
- code: z.ZodString;
12
- }, z.core.$strip>;
13
- type CerebrasErrorData = z.infer<typeof cerebrasErrorSchema>;
14
- interface CerebrasProviderSettings {
15
- /**
16
- * Cerebras API key.
17
- */
18
- apiKey?: string;
19
- /**
20
- * Base URL for the API calls.
21
- */
22
- baseURL?: string;
23
- /**
24
- * Custom headers to include in the requests.
25
- */
26
- headers?: Record<string, string>;
27
- /**
28
- * Custom fetch implementation. You can use it as a middleware to intercept requests,
29
- * or to provide a custom fetch implementation for e.g. testing.
30
- */
31
- fetch?: FetchFunction;
32
- }
33
- interface CerebrasProvider extends ProviderV4 {
34
- /**
35
- * Creates a Cerebras model for text generation.
36
- */
37
- (modelId: CerebrasChatModelId): LanguageModelV4;
38
- /**
39
- * Creates a Cerebras model for text generation.
40
- */
41
- languageModel(modelId: CerebrasChatModelId): LanguageModelV4;
42
- /**
43
- * Creates a Cerebras chat model for text generation.
44
- */
45
- chat(modelId: CerebrasChatModelId): LanguageModelV4;
46
- /**
47
- * @deprecated Use `embeddingModel` instead.
48
- */
49
- textEmbeddingModel(modelId: string): never;
50
- }
51
- declare function createCerebras(options?: CerebrasProviderSettings): CerebrasProvider;
52
- declare const cerebras: CerebrasProvider;
53
-
54
- declare const VERSION: string;
55
-
56
- export { type CerebrasErrorData, type CerebrasProvider, type CerebrasProviderSettings, VERSION, cerebras, createCerebras };
package/dist/index.mjs DELETED
@@ -1,72 +0,0 @@
1
- // src/cerebras-provider.ts
2
- import { OpenAICompatibleChatLanguageModel } from "@ai-sdk/openai-compatible";
3
- import {
4
- NoSuchModelError
5
- } from "@ai-sdk/provider";
6
- import {
7
- loadApiKey,
8
- withoutTrailingSlash,
9
- withUserAgentSuffix
10
- } from "@ai-sdk/provider-utils";
11
- import { z } from "zod/v4";
12
-
13
- // src/version.ts
14
- var VERSION = true ? "3.0.0-beta.3" : "0.0.0-test";
15
-
16
- // src/cerebras-provider.ts
17
- var cerebrasErrorSchema = z.object({
18
- message: z.string(),
19
- type: z.string(),
20
- param: z.string(),
21
- code: z.string()
22
- });
23
- var cerebrasErrorStructure = {
24
- errorSchema: cerebrasErrorSchema,
25
- errorToMessage: (data) => data.message
26
- };
27
- function createCerebras(options = {}) {
28
- var _a;
29
- const baseURL = withoutTrailingSlash(
30
- (_a = options.baseURL) != null ? _a : "https://api.cerebras.ai/v1"
31
- );
32
- const getHeaders = () => withUserAgentSuffix(
33
- {
34
- Authorization: `Bearer ${loadApiKey({
35
- apiKey: options.apiKey,
36
- environmentVariableName: "CEREBRAS_API_KEY",
37
- description: "Cerebras API key"
38
- })}`,
39
- ...options.headers
40
- },
41
- `ai-sdk/cerebras/${VERSION}`
42
- );
43
- const createLanguageModel = (modelId) => {
44
- return new OpenAICompatibleChatLanguageModel(modelId, {
45
- provider: `cerebras.chat`,
46
- url: ({ path }) => `${baseURL}${path}`,
47
- headers: getHeaders,
48
- fetch: options.fetch,
49
- errorStructure: cerebrasErrorStructure,
50
- supportsStructuredOutputs: true
51
- });
52
- };
53
- const provider = (modelId) => createLanguageModel(modelId);
54
- provider.specificationVersion = "v4";
55
- provider.languageModel = createLanguageModel;
56
- provider.chat = createLanguageModel;
57
- provider.embeddingModel = (modelId) => {
58
- throw new NoSuchModelError({ modelId, modelType: "embeddingModel" });
59
- };
60
- provider.textEmbeddingModel = provider.embeddingModel;
61
- provider.imageModel = (modelId) => {
62
- throw new NoSuchModelError({ modelId, modelType: "imageModel" });
63
- };
64
- return provider;
65
- }
66
- var cerebras = createCerebras();
67
- export {
68
- VERSION,
69
- cerebras,
70
- createCerebras
71
- };
72
- //# sourceMappingURL=index.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/cerebras-provider.ts","../src/version.ts"],"sourcesContent":["import { OpenAICompatibleChatLanguageModel } from '@ai-sdk/openai-compatible';\nimport {\n LanguageModelV4,\n NoSuchModelError,\n ProviderV4,\n} from '@ai-sdk/provider';\nimport {\n FetchFunction,\n loadApiKey,\n withoutTrailingSlash,\n withUserAgentSuffix,\n} from '@ai-sdk/provider-utils';\nimport { CerebrasChatModelId } from './cerebras-chat-options';\nimport { z } from 'zod/v4';\nimport { ProviderErrorStructure } from '@ai-sdk/openai-compatible';\nimport { VERSION } from './version';\n\n// Add error schema and structure\nconst cerebrasErrorSchema = z.object({\n message: z.string(),\n type: z.string(),\n param: z.string(),\n code: z.string(),\n});\n\nexport type CerebrasErrorData = z.infer<typeof cerebrasErrorSchema>;\n\nconst cerebrasErrorStructure: ProviderErrorStructure<CerebrasErrorData> = {\n errorSchema: cerebrasErrorSchema,\n errorToMessage: data => data.message,\n};\n\nexport interface CerebrasProviderSettings {\n /**\n * Cerebras 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 CerebrasProvider extends ProviderV4 {\n /**\n * Creates a Cerebras model for text generation.\n */\n (modelId: CerebrasChatModelId): LanguageModelV4;\n\n /**\n * Creates a Cerebras model for text generation.\n */\n languageModel(modelId: CerebrasChatModelId): LanguageModelV4;\n\n /**\n * Creates a Cerebras chat model for text generation.\n */\n chat(modelId: CerebrasChatModelId): LanguageModelV4;\n\n /**\n * @deprecated Use `embeddingModel` instead.\n */\n textEmbeddingModel(modelId: string): never;\n}\n\nexport function createCerebras(\n options: CerebrasProviderSettings = {},\n): CerebrasProvider {\n const baseURL = withoutTrailingSlash(\n options.baseURL ?? 'https://api.cerebras.ai/v1',\n );\n const getHeaders = () =>\n withUserAgentSuffix(\n {\n Authorization: `Bearer ${loadApiKey({\n apiKey: options.apiKey,\n environmentVariableName: 'CEREBRAS_API_KEY',\n description: 'Cerebras API key',\n })}`,\n ...options.headers,\n },\n `ai-sdk/cerebras/${VERSION}`,\n );\n\n const createLanguageModel = (modelId: CerebrasChatModelId) => {\n return new OpenAICompatibleChatLanguageModel(modelId, {\n provider: `cerebras.chat`,\n url: ({ path }) => `${baseURL}${path}`,\n headers: getHeaders,\n fetch: options.fetch,\n errorStructure: cerebrasErrorStructure,\n supportsStructuredOutputs: true,\n });\n };\n\n const provider = (modelId: CerebrasChatModelId) =>\n createLanguageModel(modelId);\n\n provider.specificationVersion = 'v4' as const;\n provider.languageModel = createLanguageModel;\n provider.chat = createLanguageModel;\n\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 cerebras = createCerebras();\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,SAAS,yCAAyC;AAClD;AAAA,EAEE;AAAA,OAEK;AACP;AAAA,EAEE;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAEP,SAAS,SAAS;;;ACXX,IAAM,UACX,OACI,iBACA;;;ADaN,IAAM,sBAAsB,EAAE,OAAO;AAAA,EACnC,SAAS,EAAE,OAAO;AAAA,EAClB,MAAM,EAAE,OAAO;AAAA,EACf,OAAO,EAAE,OAAO;AAAA,EAChB,MAAM,EAAE,OAAO;AACjB,CAAC;AAID,IAAM,yBAAoE;AAAA,EACxE,aAAa;AAAA,EACb,gBAAgB,UAAQ,KAAK;AAC/B;AA4CO,SAAS,eACd,UAAoC,CAAC,GACnB;AA5EpB;AA6EE,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,mBAAmB,OAAO;AAAA,EAC5B;AAEF,QAAM,sBAAsB,CAAC,YAAiC;AAC5D,WAAO,IAAI,kCAAkC,SAAS;AAAA,MACpD,UAAU;AAAA,MACV,KAAK,CAAC,EAAE,KAAK,MAAM,GAAG,OAAO,GAAG,IAAI;AAAA,MACpC,SAAS;AAAA,MACT,OAAO,QAAQ;AAAA,MACf,gBAAgB;AAAA,MAChB,2BAA2B;AAAA,IAC7B,CAAC;AAAA,EACH;AAEA,QAAM,WAAW,CAAC,YAChB,oBAAoB,OAAO;AAE7B,WAAS,uBAAuB;AAChC,WAAS,gBAAgB;AACzB,WAAS,OAAO;AAEhB,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,WAAW,eAAe;","names":[]}