@clinebot/llms 0.0.15 → 0.0.18
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/README.md +2 -2
- package/dist/index.browser.js +14 -14
- package/dist/index.js +12 -12
- package/package.json +2 -2
- package/src/live-providers.test.ts +9 -9
- package/src/models/generated.ts +15 -1
package/package.json
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@clinebot/llms",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.18",
|
|
4
4
|
"description": "Config-driven SDK for selecting, extending, and instantiating LLM providers and models",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"module": "./dist/index.js",
|
|
7
7
|
"dependencies": {
|
|
8
|
-
"@clinebot/shared": "0.0.
|
|
8
|
+
"@clinebot/shared": "0.0.17",
|
|
9
9
|
"@ai-sdk/amazon-bedrock": "^4.0.67",
|
|
10
10
|
"@ai-sdk/google-vertex": "^4.0.74",
|
|
11
11
|
"@ai-sdk/mistral": "^3.0.24",
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { readFileSync } from "node:fs";
|
|
2
2
|
import path from "node:path";
|
|
3
3
|
import { describe, it } from "vitest";
|
|
4
|
-
import {
|
|
4
|
+
import { LlmsProviders } from "./index";
|
|
5
5
|
|
|
6
|
-
type ProviderConfig =
|
|
7
|
-
type ProviderSettings =
|
|
6
|
+
type ProviderConfig = LlmsProviders.ProviderConfig;
|
|
7
|
+
type ProviderSettings = LlmsProviders.ProviderSettings;
|
|
8
8
|
|
|
9
9
|
interface StoredProviderSettingsEntryLike {
|
|
10
10
|
settings?: unknown;
|
|
@@ -29,7 +29,7 @@ function requireProvidersFilePath(): string {
|
|
|
29
29
|
const filePath = process.env[PROVIDERS_FILE_ENV];
|
|
30
30
|
if (!filePath) {
|
|
31
31
|
throw new Error(
|
|
32
|
-
`Set ${PROVIDERS_FILE_ENV} to a
|
|
32
|
+
`Set ${PROVIDERS_FILE_ENV} to a LlmsProviders.json file path before running live provider tests.`,
|
|
33
33
|
);
|
|
34
34
|
}
|
|
35
35
|
return path.resolve(filePath);
|
|
@@ -42,12 +42,12 @@ function toTargetsFromStoredFormat(
|
|
|
42
42
|
return entries.map(([entryKey, entryValue]) => {
|
|
43
43
|
const maybeEntry = entryValue as StoredProviderSettingsEntryLike;
|
|
44
44
|
const rawSettings = maybeEntry.settings ?? entryValue;
|
|
45
|
-
const parsed =
|
|
45
|
+
const parsed = LlmsProviders.ProviderSettingsSchema.parse(
|
|
46
46
|
rawSettings,
|
|
47
47
|
) as ProviderSettings;
|
|
48
48
|
return {
|
|
49
49
|
label: `${entryKey} (${parsed.provider})`,
|
|
50
|
-
config:
|
|
50
|
+
config: LlmsProviders.toProviderConfig(parsed),
|
|
51
51
|
};
|
|
52
52
|
});
|
|
53
53
|
}
|
|
@@ -58,12 +58,12 @@ function loadProviderTargets(filePath: string): ProviderTarget[] {
|
|
|
58
58
|
|
|
59
59
|
if (Array.isArray(parsed)) {
|
|
60
60
|
return parsed.map((entry, index) => {
|
|
61
|
-
const settings =
|
|
61
|
+
const settings = LlmsProviders.ProviderSettingsSchema.parse(
|
|
62
62
|
entry,
|
|
63
63
|
) as ProviderSettings;
|
|
64
64
|
return {
|
|
65
65
|
label: `index:${index} (${settings.provider})`,
|
|
66
|
-
config:
|
|
66
|
+
config: LlmsProviders.toProviderConfig(settings),
|
|
67
67
|
};
|
|
68
68
|
});
|
|
69
69
|
}
|
|
@@ -94,7 +94,7 @@ async function withTimeout<T>(
|
|
|
94
94
|
}
|
|
95
95
|
|
|
96
96
|
async function runPrompt(target: ProviderTarget): Promise<void> {
|
|
97
|
-
const handler = await
|
|
97
|
+
const handler = await LlmsProviders.createHandlerAsync(target.config);
|
|
98
98
|
const stream = handler.createMessage("You are a concise assistant.", [
|
|
99
99
|
{ role: "user", content: "Reply with the single word OK." },
|
|
100
100
|
]);
|
package/src/models/generated.ts
CHANGED
|
@@ -14,7 +14,7 @@ export const GENERATED_PROVIDER_MODELS: {
|
|
|
14
14
|
version: number;
|
|
15
15
|
providers: Record<string, Record<string, ModelInfo>>;
|
|
16
16
|
} = {
|
|
17
|
-
version:
|
|
17
|
+
version: 1774491093117,
|
|
18
18
|
providers: {
|
|
19
19
|
aihubmix: {
|
|
20
20
|
"claude-sonnet-4-6": {
|
|
@@ -5393,6 +5393,20 @@ export const GENERATED_PROVIDER_MODELS: {
|
|
|
5393
5393
|
},
|
|
5394
5394
|
releaseDate: "2026-03-17",
|
|
5395
5395
|
},
|
|
5396
|
+
"mistralai/mistral-small-2603": {
|
|
5397
|
+
id: "mistralai/mistral-small-2603",
|
|
5398
|
+
name: "Mistral Small 4",
|
|
5399
|
+
contextWindow: 262144,
|
|
5400
|
+
maxTokens: 13107,
|
|
5401
|
+
capabilities: ["images", "tools", "reasoning", "temperature"],
|
|
5402
|
+
pricing: {
|
|
5403
|
+
input: 0.15,
|
|
5404
|
+
output: 0.6,
|
|
5405
|
+
cacheRead: 0,
|
|
5406
|
+
cacheWrite: 0,
|
|
5407
|
+
},
|
|
5408
|
+
releaseDate: "2026-03-16",
|
|
5409
|
+
},
|
|
5396
5410
|
"x-ai/grok-4.20-beta": {
|
|
5397
5411
|
id: "x-ai/grok-4.20-beta",
|
|
5398
5412
|
name: "Grok 4.20 Beta",
|