@ai-sdk/cerebras 2.0.19 → 2.0.20
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 +10 -0
- package/dist/index.js +1 -1
- package/dist/index.mjs +1 -1
- package/package.json +8 -4
- package/src/cerebras-provider.test.ts +0 -133
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
# @ai-sdk/cerebras
|
|
2
2
|
|
|
3
|
+
## 2.0.20
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 4de5a1d: chore: excluded tests from src folder in npm package
|
|
8
|
+
- Updated dependencies [4de5a1d]
|
|
9
|
+
- @ai-sdk/openai-compatible@2.0.18
|
|
10
|
+
- @ai-sdk/provider@3.0.5
|
|
11
|
+
- @ai-sdk/provider-utils@4.0.9
|
|
12
|
+
|
|
3
13
|
## 2.0.19
|
|
4
14
|
|
|
5
15
|
### Patch Changes
|
package/dist/index.js
CHANGED
|
@@ -33,7 +33,7 @@ var import_provider_utils = require("@ai-sdk/provider-utils");
|
|
|
33
33
|
var import_v4 = require("zod/v4");
|
|
34
34
|
|
|
35
35
|
// src/version.ts
|
|
36
|
-
var VERSION = true ? "2.0.
|
|
36
|
+
var VERSION = true ? "2.0.20" : "0.0.0-test";
|
|
37
37
|
|
|
38
38
|
// src/cerebras-provider.ts
|
|
39
39
|
var cerebrasErrorSchema = import_v4.z.object({
|
package/dist/index.mjs
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ai-sdk/cerebras",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.20",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -10,6 +10,10 @@
|
|
|
10
10
|
"dist/**/*",
|
|
11
11
|
"docs/**/*",
|
|
12
12
|
"src",
|
|
13
|
+
"!src/**/*.test.ts",
|
|
14
|
+
"!src/**/*.test-d.ts",
|
|
15
|
+
"!src/**/__snapshots__",
|
|
16
|
+
"!src/**/__fixtures__",
|
|
13
17
|
"CHANGELOG.md",
|
|
14
18
|
"README.md"
|
|
15
19
|
],
|
|
@@ -25,9 +29,9 @@
|
|
|
25
29
|
}
|
|
26
30
|
},
|
|
27
31
|
"dependencies": {
|
|
28
|
-
"@ai-sdk/openai-compatible": "2.0.
|
|
29
|
-
"@ai-sdk/provider": "3.0.
|
|
30
|
-
"@ai-sdk/provider-utils": "4.0.
|
|
32
|
+
"@ai-sdk/openai-compatible": "2.0.18",
|
|
33
|
+
"@ai-sdk/provider": "3.0.5",
|
|
34
|
+
"@ai-sdk/provider-utils": "4.0.9"
|
|
31
35
|
},
|
|
32
36
|
"devDependencies": {
|
|
33
37
|
"@types/node": "20.17.24",
|
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect, vi, beforeEach, Mock } from 'vitest';
|
|
2
|
-
import { createCerebras } from './cerebras-provider';
|
|
3
|
-
import { loadApiKey } from '@ai-sdk/provider-utils';
|
|
4
|
-
import { OpenAICompatibleChatLanguageModel } from '@ai-sdk/openai-compatible';
|
|
5
|
-
|
|
6
|
-
// Add type assertion for the mocked class
|
|
7
|
-
const OpenAICompatibleChatLanguageModelMock =
|
|
8
|
-
OpenAICompatibleChatLanguageModel as unknown as Mock;
|
|
9
|
-
|
|
10
|
-
vi.mock('@ai-sdk/openai-compatible', () => ({
|
|
11
|
-
OpenAICompatibleChatLanguageModel: vi.fn(),
|
|
12
|
-
}));
|
|
13
|
-
|
|
14
|
-
vi.mock('./version', () => ({
|
|
15
|
-
VERSION: '0.0.0-test',
|
|
16
|
-
}));
|
|
17
|
-
|
|
18
|
-
vi.mock('@ai-sdk/provider-utils', async () => {
|
|
19
|
-
const actual = await vi.importActual('@ai-sdk/provider-utils');
|
|
20
|
-
return {
|
|
21
|
-
...actual,
|
|
22
|
-
loadApiKey: vi.fn().mockReturnValue('mock-api-key'),
|
|
23
|
-
withoutTrailingSlash: vi.fn(url => url),
|
|
24
|
-
};
|
|
25
|
-
});
|
|
26
|
-
|
|
27
|
-
describe('CerebrasProvider', () => {
|
|
28
|
-
beforeEach(() => {
|
|
29
|
-
vi.clearAllMocks();
|
|
30
|
-
});
|
|
31
|
-
|
|
32
|
-
describe('createCerebras', () => {
|
|
33
|
-
it('should create a CerebrasProvider instance with default options', () => {
|
|
34
|
-
const provider = createCerebras();
|
|
35
|
-
const model = provider('model-id');
|
|
36
|
-
|
|
37
|
-
const constructorCall =
|
|
38
|
-
OpenAICompatibleChatLanguageModelMock.mock.calls[0];
|
|
39
|
-
const config = constructorCall[1];
|
|
40
|
-
config.headers();
|
|
41
|
-
|
|
42
|
-
expect(loadApiKey).toHaveBeenCalledWith({
|
|
43
|
-
apiKey: undefined,
|
|
44
|
-
environmentVariableName: 'CEREBRAS_API_KEY',
|
|
45
|
-
description: 'Cerebras API key',
|
|
46
|
-
});
|
|
47
|
-
});
|
|
48
|
-
|
|
49
|
-
it('should create a CerebrasProvider instance with custom options', () => {
|
|
50
|
-
const options = {
|
|
51
|
-
apiKey: 'custom-key',
|
|
52
|
-
baseURL: 'https://custom.url',
|
|
53
|
-
headers: { 'Custom-Header': 'value' },
|
|
54
|
-
};
|
|
55
|
-
const provider = createCerebras(options);
|
|
56
|
-
provider('model-id');
|
|
57
|
-
|
|
58
|
-
const constructorCall =
|
|
59
|
-
OpenAICompatibleChatLanguageModelMock.mock.calls[0];
|
|
60
|
-
const config = constructorCall[1];
|
|
61
|
-
config.headers();
|
|
62
|
-
|
|
63
|
-
expect(loadApiKey).toHaveBeenCalledWith({
|
|
64
|
-
apiKey: 'custom-key',
|
|
65
|
-
environmentVariableName: 'CEREBRAS_API_KEY',
|
|
66
|
-
description: 'Cerebras API key',
|
|
67
|
-
});
|
|
68
|
-
});
|
|
69
|
-
|
|
70
|
-
it('should pass header', async () => {
|
|
71
|
-
const fetchMock = vi
|
|
72
|
-
.fn()
|
|
73
|
-
.mockResolvedValue(new Response('{}', { status: 200 }));
|
|
74
|
-
|
|
75
|
-
const provider = createCerebras({ fetch: fetchMock });
|
|
76
|
-
provider('model-id');
|
|
77
|
-
|
|
78
|
-
const constructorCall = vi.mocked(OpenAICompatibleChatLanguageModel).mock
|
|
79
|
-
.calls[0];
|
|
80
|
-
const config = constructorCall[1];
|
|
81
|
-
const headers = config.headers();
|
|
82
|
-
|
|
83
|
-
await fetchMock('https://api.cerebras.ai/v1/test', {
|
|
84
|
-
method: 'POST',
|
|
85
|
-
headers,
|
|
86
|
-
});
|
|
87
|
-
|
|
88
|
-
expect(fetchMock.mock.calls[0][1].headers['user-agent']).toContain(
|
|
89
|
-
'ai-sdk/cerebras/0.0.0-test',
|
|
90
|
-
);
|
|
91
|
-
});
|
|
92
|
-
|
|
93
|
-
it('should return a chat model when called as a function', () => {
|
|
94
|
-
const provider = createCerebras();
|
|
95
|
-
const modelId = 'foo-model-id';
|
|
96
|
-
|
|
97
|
-
const model = provider(modelId);
|
|
98
|
-
expect(model).toBeInstanceOf(OpenAICompatibleChatLanguageModel);
|
|
99
|
-
});
|
|
100
|
-
});
|
|
101
|
-
|
|
102
|
-
describe('languageModel', () => {
|
|
103
|
-
it('should construct a language model with correct configuration', () => {
|
|
104
|
-
const provider = createCerebras();
|
|
105
|
-
const modelId = 'foo-model-id';
|
|
106
|
-
|
|
107
|
-
const model = provider.languageModel(modelId);
|
|
108
|
-
|
|
109
|
-
expect(model).toBeInstanceOf(OpenAICompatibleChatLanguageModel);
|
|
110
|
-
});
|
|
111
|
-
});
|
|
112
|
-
|
|
113
|
-
describe('embeddingModel', () => {
|
|
114
|
-
it('should throw NoSuchModelError when attempting to create embedding model', () => {
|
|
115
|
-
const provider = createCerebras();
|
|
116
|
-
|
|
117
|
-
expect(() => provider.embeddingModel('any-model')).toThrow(
|
|
118
|
-
'No such embeddingModel: any-model',
|
|
119
|
-
);
|
|
120
|
-
});
|
|
121
|
-
});
|
|
122
|
-
|
|
123
|
-
describe('chat', () => {
|
|
124
|
-
it('should construct a chat model with correct configuration', () => {
|
|
125
|
-
const provider = createCerebras();
|
|
126
|
-
const modelId = 'foo-model-id';
|
|
127
|
-
|
|
128
|
-
const model = provider.chat(modelId);
|
|
129
|
-
|
|
130
|
-
expect(model).toBeInstanceOf(OpenAICompatibleChatLanguageModel);
|
|
131
|
-
});
|
|
132
|
-
});
|
|
133
|
-
});
|