@sriinnu/kosha-discovery 1.13.0 → 1.15.0
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 +88 -78
- package/dist/cli-cmd-doctor.d.ts.map +1 -1
- package/dist/cli-cmd-doctor.js +69 -18
- package/dist/cli-cmd-doctor.js.map +1 -1
- package/dist/cli-cmd-model.d.ts.map +1 -1
- package/dist/cli-cmd-model.js +18 -7
- package/dist/cli-cmd-model.js.map +1 -1
- package/dist/cli-cmd-query.d.ts.map +1 -1
- package/dist/cli-cmd-query.js +17 -0
- package/dist/cli-cmd-query.js.map +1 -1
- package/dist/cli-cmd-registry.d.ts +2 -1
- package/dist/cli-cmd-registry.d.ts.map +1 -1
- package/dist/cli-cmd-registry.js +30 -1
- package/dist/cli-cmd-registry.js.map +1 -1
- package/dist/cli-commands.d.ts +4 -0
- package/dist/cli-commands.d.ts.map +1 -1
- package/dist/cli-commands.js +43 -5
- package/dist/cli-commands.js.map +1 -1
- package/dist/cli-help.d.ts.map +1 -1
- package/dist/cli-help.js +4 -1
- package/dist/cli-help.js.map +1 -1
- package/dist/cli.js +1 -1
- package/dist/cli.js.map +1 -1
- package/dist/cost.d.ts +16 -1
- package/dist/cost.d.ts.map +1 -1
- package/dist/cost.js +73 -14
- package/dist/cost.js.map +1 -1
- package/dist/credentials/resolver.d.ts +0 -1
- package/dist/credentials/resolver.d.ts.map +1 -1
- package/dist/credentials/resolver.js +10 -46
- package/dist/credentials/resolver.js.map +1 -1
- package/dist/discovery/catalog-only.d.ts.map +1 -1
- package/dist/discovery/catalog-only.js +8 -1
- package/dist/discovery/catalog-only.js.map +1 -1
- package/dist/discovery/free-tier.d.ts +2 -0
- package/dist/discovery/free-tier.d.ts.map +1 -1
- package/dist/discovery/free-tier.js +4 -0
- package/dist/discovery/free-tier.js.map +1 -1
- package/dist/discovery/generic-openai.d.ts +27 -0
- package/dist/discovery/generic-openai.d.ts.map +1 -1
- package/dist/discovery/generic-openai.js +109 -5
- package/dist/discovery/generic-openai.js.map +1 -1
- package/dist/discovery/modelsdev-seed.d.ts.map +1 -1
- package/dist/discovery/modelsdev-seed.js +21 -6
- package/dist/discovery/modelsdev-seed.js.map +1 -1
- package/dist/discovery/openai-compatible.d.ts +2 -0
- package/dist/discovery/openai-compatible.d.ts.map +1 -1
- package/dist/discovery/openai-compatible.js +19 -11
- package/dist/discovery/openai-compatible.js.map +1 -1
- package/dist/discovery/snapshot-catalog.d.ts +18 -0
- package/dist/discovery/snapshot-catalog.d.ts.map +1 -1
- package/dist/discovery/snapshot-catalog.js +83 -3
- package/dist/discovery/snapshot-catalog.js.map +1 -1
- package/dist/discovery/vercel.d.ts.map +1 -1
- package/dist/discovery/vercel.js +19 -0
- package/dist/discovery/vercel.js.map +1 -1
- package/dist/discovery-contract.d.ts +8 -3
- package/dist/discovery-contract.d.ts.map +1 -1
- package/dist/discovery-contract.js.map +1 -1
- package/dist/enrichment/catalog.js +2 -2
- package/dist/enrichment/catalog.js.map +1 -1
- package/dist/enrichment/litellm.d.ts.map +1 -1
- package/dist/enrichment/litellm.js +18 -16
- package/dist/enrichment/litellm.js.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/lifecycle.d.ts +13 -0
- package/dist/lifecycle.d.ts.map +1 -0
- package/dist/lifecycle.js +19 -0
- package/dist/lifecycle.js.map +1 -0
- package/dist/mcp-server.d.ts +1 -1
- package/dist/mcp-server.d.ts.map +1 -1
- package/dist/mcp-server.js +8 -1
- package/dist/mcp-server.js.map +1 -1
- package/dist/price-trust.d.ts +12 -0
- package/dist/price-trust.d.ts.map +1 -1
- package/dist/price-trust.js +72 -0
- package/dist/price-trust.js.map +1 -1
- package/dist/provider-catalog.d.ts +48 -0
- package/dist/provider-catalog.d.ts.map +1 -1
- package/dist/provider-catalog.js +114 -6
- package/dist/provider-catalog.js.map +1 -1
- package/dist/proxy.d.ts +9 -0
- package/dist/proxy.d.ts.map +1 -1
- package/dist/proxy.js +196 -31
- package/dist/proxy.js.map +1 -1
- package/dist/registry-discovery.js +7 -1
- package/dist/registry-discovery.js.map +1 -1
- package/dist/registry-query.d.ts.map +1 -1
- package/dist/registry-query.js +20 -8
- package/dist/registry-query.js.map +1 -1
- package/dist/registry-routing.d.ts.map +1 -1
- package/dist/registry-routing.js +2 -1
- package/dist/registry-routing.js.map +1 -1
- package/dist/registry-runtime.d.ts +34 -2
- package/dist/registry-runtime.d.ts.map +1 -1
- package/dist/registry-runtime.js +499 -67
- package/dist/registry-runtime.js.map +1 -1
- package/dist/registry.d.ts +5 -1
- package/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +22 -4
- package/dist/registry.js.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +21 -6
- package/dist/server.js.map +1 -1
- package/dist/snapshot-gate.d.ts +50 -0
- package/dist/snapshot-gate.d.ts.map +1 -0
- package/dist/snapshot-gate.js +128 -0
- package/dist/snapshot-gate.js.map +1 -0
- package/dist/subscription-plans.d.ts +63 -0
- package/dist/subscription-plans.d.ts.map +1 -0
- package/dist/subscription-plans.js +261 -0
- package/dist/subscription-plans.js.map +1 -0
- package/dist/types.d.ts +22 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +8 -8
- package/server.json +2 -2
|
@@ -14,9 +14,21 @@
|
|
|
14
14
|
* long tail, which is where most new providers land.
|
|
15
15
|
* @module
|
|
16
16
|
*/
|
|
17
|
+
import { SUBSCRIPTION_PLANS } from "../subscription-plans.js";
|
|
18
|
+
import { SUBSCRIPTION_PLAN_CAPABILITY } from "./free-tier.js";
|
|
17
19
|
import { OpenAICompatibleDiscoverer, } from "./openai-compatible.js";
|
|
18
20
|
import { getPublicSeed } from "./public-seed.js";
|
|
19
21
|
import { STATIC_XAI_MODELS } from "./static-direct.js";
|
|
22
|
+
/**
|
|
23
|
+
* A plan could not test a key borrowed from a shared env var (no list route).
|
|
24
|
+
* Not a rejection: the key may well work elsewhere in its family.
|
|
25
|
+
*/
|
|
26
|
+
export class PlanKeyUnverifiedError extends Error {
|
|
27
|
+
constructor(providerName) {
|
|
28
|
+
super(`${providerName}: no model list to test a shared key against`);
|
|
29
|
+
this.name = "PlanKeyUnverifiedError";
|
|
30
|
+
}
|
|
31
|
+
}
|
|
20
32
|
/**
|
|
21
33
|
* A provider discoverer built from an {@link OpenAICompatibleProviderSpec}.
|
|
22
34
|
*/
|
|
@@ -43,7 +55,61 @@ export class GenericOpenAICompatibleDiscoverer extends OpenAICompatibleDiscovere
|
|
|
43
55
|
if (this.spec.seedOnly || !hasKey) {
|
|
44
56
|
return this.keylessModels();
|
|
45
57
|
}
|
|
46
|
-
|
|
58
|
+
if (!this.spec.subscriptionPlan)
|
|
59
|
+
return super.discover(credential, options);
|
|
60
|
+
let live;
|
|
61
|
+
try {
|
|
62
|
+
live = await super.discover(credential, options);
|
|
63
|
+
}
|
|
64
|
+
catch (error) {
|
|
65
|
+
// No list route and no catalog to fall back on: still not a verdict
|
|
66
|
+
// on a borrowed key.
|
|
67
|
+
if (credential.shared && error instanceof Error && /API error:\s*404\b/.test(error.message)) {
|
|
68
|
+
throw new PlanKeyUnverifiedError(this.providerName);
|
|
69
|
+
}
|
|
70
|
+
throw error;
|
|
71
|
+
}
|
|
72
|
+
// No list route answered, so the shared pipeline fell back to the
|
|
73
|
+
// catalog. That proves nothing about a key borrowed from a shared env
|
|
74
|
+
// var, and claiming it would list a plan the user may not have.
|
|
75
|
+
if (credential.shared && !live.some((card) => card.source === "api")) {
|
|
76
|
+
throw new PlanKeyUnverifiedError(this.providerName);
|
|
77
|
+
}
|
|
78
|
+
return this.asPlanCards(live);
|
|
79
|
+
}
|
|
80
|
+
listHeaders(apiKey) {
|
|
81
|
+
if (this.spec.listAuth === "x-api-key")
|
|
82
|
+
return { "x-api-key": apiKey, "anthropic-version": "2023-06-01" };
|
|
83
|
+
return super.listHeaders(apiKey);
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Tag live plan cards as plan-billed and fill their limits from the plan's
|
|
87
|
+
* catalog entry by ID. A model the catalog doesn't know yet (a preview out
|
|
88
|
+
* a day) keeps its live card, untagged limits and all.
|
|
89
|
+
*/
|
|
90
|
+
async asPlanCards(live) {
|
|
91
|
+
let seeds = [];
|
|
92
|
+
try {
|
|
93
|
+
seeds = await getPublicSeed(this.providerId);
|
|
94
|
+
}
|
|
95
|
+
catch {
|
|
96
|
+
/* limits stay unknown; the listing itself is still right */
|
|
97
|
+
}
|
|
98
|
+
const byId = new Map(seeds.map((seed) => [seed.id, seed]));
|
|
99
|
+
return live.map((card) => {
|
|
100
|
+
const seed = byId.get(card.id);
|
|
101
|
+
const raw = card.rawCapabilities ?? card.capabilities;
|
|
102
|
+
const { pricing: _perToken, ...rest } = card;
|
|
103
|
+
return {
|
|
104
|
+
...rest,
|
|
105
|
+
name: seed?.name ?? card.name,
|
|
106
|
+
contextWindow: card.contextWindow || seed?.contextWindow || 0,
|
|
107
|
+
maxOutputTokens: card.maxOutputTokens || seed?.maxOutputTokens || 0,
|
|
108
|
+
...(card.maxInputTokens === undefined && seed?.maxInputTokens ? { maxInputTokens: seed.maxInputTokens } : {}),
|
|
109
|
+
...(card.releaseDate === undefined && seed?.releaseDate ? { releaseDate: seed.releaseDate } : {}),
|
|
110
|
+
rawCapabilities: raw.includes(SUBSCRIPTION_PLAN_CAPABILITY) ? raw : [...raw, SUBSCRIPTION_PLAN_CAPABILITY],
|
|
111
|
+
};
|
|
112
|
+
});
|
|
47
113
|
}
|
|
48
114
|
/** Public catalog seed, falling back to the curated list. */
|
|
49
115
|
async keylessModels() {
|
|
@@ -104,7 +170,7 @@ export class GenericOpenAICompatibleDiscoverer extends OpenAICompatibleDiscovere
|
|
|
104
170
|
if (this.spec.namespacedIds) {
|
|
105
171
|
return this.extractPrefixOrigin(id, this.providerId, this.spec.originAliases);
|
|
106
172
|
}
|
|
107
|
-
return this.inferOriginFromKeywords(lower, [...(this.spec.originRules ?? [])], this.providerId);
|
|
173
|
+
return this.inferOriginFromKeywords(lower, [...(this.spec.originRules ?? [])], this.spec.defaultOrigin ?? this.providerId);
|
|
108
174
|
}
|
|
109
175
|
/** Spec rules win over the shared heuristics; chat is the fallback. */
|
|
110
176
|
resolveMode(lower) {
|
|
@@ -167,10 +233,10 @@ const SHARED_ORIGIN_ALIASES = {
|
|
|
167
233
|
moonshotai: "moonshot",
|
|
168
234
|
"stepfun-ai": "stepfun",
|
|
169
235
|
minimaxai: "minimax",
|
|
170
|
-
|
|
171
|
-
|
|
236
|
+
qwen: "qwen",
|
|
237
|
+
inclusionai: "inclusionai",
|
|
172
238
|
thinkingmachines: "thinkingmachines",
|
|
173
|
-
|
|
239
|
+
paddlepaddle: "baidu",
|
|
174
240
|
"x-ai": "xai",
|
|
175
241
|
};
|
|
176
242
|
/** Keyword → origin rules shared by providers that serve flat open-weight IDs. */
|
|
@@ -187,6 +253,43 @@ const OPEN_WEIGHT_ORIGIN_RULES = [
|
|
|
187
253
|
["mistral", "mistral"],
|
|
188
254
|
["llama", "meta"],
|
|
189
255
|
];
|
|
256
|
+
/**
|
|
257
|
+
* Model families plans resell, keyword → origin. Most specific first; a model
|
|
258
|
+
* no rule names is the plan vendor's own (`defaultOrigin`).
|
|
259
|
+
*/
|
|
260
|
+
const PLAN_ORIGIN_RULES = [
|
|
261
|
+
["deepseek", "deepseek"],
|
|
262
|
+
["glm", "zai"],
|
|
263
|
+
["kimi", "moonshot"],
|
|
264
|
+
["minimax", "minimax"],
|
|
265
|
+
["qwen", "qwen"],
|
|
266
|
+
["mimo", "xiaomi"],
|
|
267
|
+
["hunyuan", "tencent"],
|
|
268
|
+
["doubao", "bytedance"],
|
|
269
|
+
["step-", "stepfun"],
|
|
270
|
+
];
|
|
271
|
+
const PLAN_MODE_RULES = [
|
|
272
|
+
["-image", "image"],
|
|
273
|
+
["-video", "video"],
|
|
274
|
+
["2v", "video"],
|
|
275
|
+
["tts", "audio"],
|
|
276
|
+
["asr", "audio"],
|
|
277
|
+
["realtime", "audio"],
|
|
278
|
+
["wan", "video"],
|
|
279
|
+
];
|
|
280
|
+
/** One generic spec per plan in {@link SUBSCRIPTION_PLANS}. */
|
|
281
|
+
const PLAN_SPECS = SUBSCRIPTION_PLANS.map((plan) => ({
|
|
282
|
+
providerId: plan.providerId,
|
|
283
|
+
providerName: plan.name,
|
|
284
|
+
baseUrl: plan.baseUrl,
|
|
285
|
+
seedOnly: plan.listing === "none",
|
|
286
|
+
originRules: PLAN_ORIGIN_RULES,
|
|
287
|
+
defaultOrigin: plan.defaultOrigin,
|
|
288
|
+
modeRules: PLAN_MODE_RULES,
|
|
289
|
+
subscriptionPlan: true,
|
|
290
|
+
...(plan.wire === "anthropic" ? { listAuth: "x-api-key" } : {}),
|
|
291
|
+
chatCapabilities: ["function_calling", "code", "nlu"],
|
|
292
|
+
}));
|
|
190
293
|
/**
|
|
191
294
|
* Every provider kosha discovers through the generic OpenAI-compatible path.
|
|
192
295
|
*
|
|
@@ -240,6 +343,7 @@ export const GENERIC_OPENAI_PROVIDERS = [
|
|
|
240
343
|
],
|
|
241
344
|
chatCapabilities: ["function_calling", "code", "nlu"],
|
|
242
345
|
},
|
|
346
|
+
...PLAN_SPECS,
|
|
243
347
|
{
|
|
244
348
|
providerId: "siliconflow-cn",
|
|
245
349
|
providerName: "SiliconFlow (China)",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generic-openai.js","sourceRoot":"","sources":["../../src/discovery/generic-openai.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"generic-openai.js","sourceRoot":"","sources":["../../src/discovery/generic-openai.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modelsdev-seed.d.ts","sourceRoot":"","sources":["../../src/discovery/modelsdev-seed.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;
|
|
1
|
+
{"version":3,"file":"modelsdev-seed.d.ts","sourceRoot":"","sources":["../../src/discovery/modelsdev-seed.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAwC,MAAM,aAAa,CAAC;AA0EnF,4EAA4E;AAC5E,wBAAgB,oBAAoB,IAAI,GAAG,CAAC,MAAM,CAAC,CAElD;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAM5D;AASD;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAgB3E;AAyBD;;;GAGG;AACH,wBAAsB,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CA6B/E"}
|
|
@@ -10,7 +10,8 @@
|
|
|
10
10
|
* conversion done by the LiteLLM seed is unnecessary here.
|
|
11
11
|
* @module
|
|
12
12
|
*/
|
|
13
|
-
import {
|
|
13
|
+
import { isSubscriptionPlanProvider, SUBSCRIPTION_PLANS } from "../subscription-plans.js";
|
|
14
|
+
import { applyFreeTierFlag, CATALOG_ONLY_CAPABILITY, FREE_TIER_CAPABILITY, SUBSCRIPTION_PLAN_CAPABILITY, } from "./free-tier.js";
|
|
14
15
|
import { loadModelsDevCatalog } from "./modelsdev-catalog.js";
|
|
15
16
|
/** Maximum models seeded for a single provider. */
|
|
16
17
|
const MAX_MODELS_PER_SEED = 1_000;
|
|
@@ -69,6 +70,8 @@ const PROVIDER_SLUG_ALIASES = {
|
|
|
69
70
|
thinkingmachines: ["thinkingmachines"],
|
|
70
71
|
vertex: ["google-vertex", "google-vertex-anthropic"],
|
|
71
72
|
bedrock: ["amazon-bedrock"],
|
|
73
|
+
// Every plan's provider ID is its models.dev slug.
|
|
74
|
+
...Object.fromEntries(SUBSCRIPTION_PLANS.map((plan) => [plan.providerId, [plan.providerId]])),
|
|
72
75
|
};
|
|
73
76
|
/** Every models.dev slug already served through a mapped kosha provider. */
|
|
74
77
|
export function mappedModelsDevSlugs() {
|
|
@@ -79,7 +82,9 @@ export function mappedModelsDevSlugs() {
|
|
|
79
82
|
* tokens, so the $0 says nothing about what the model costs.
|
|
80
83
|
*/
|
|
81
84
|
export function isSubscriptionPlanSlug(slug) {
|
|
82
|
-
return
|
|
85
|
+
return (isSubscriptionPlanProvider(slug) ||
|
|
86
|
+
/(^|-)(coding|code|token|step)-plan(-|$)/.test(slug) ||
|
|
87
|
+
SUBSCRIPTION_BILLED_SLUGS.has(slug));
|
|
83
88
|
}
|
|
84
89
|
/**
|
|
85
90
|
* Plans whose slug doesn't say so. GitLab lists 31 Duo models at $0, among them
|
|
@@ -116,13 +121,22 @@ function markCatalogOnly(card, plan) {
|
|
|
116
121
|
const raw = card.rawCapabilities ?? card.capabilities;
|
|
117
122
|
if (!plan)
|
|
118
123
|
return { ...card, rawCapabilities: [...raw, CATALOG_ONLY_CAPABILITY] };
|
|
124
|
+
return stripPlanPrice(card, [CATALOG_ONLY_CAPABILITY]);
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* A plan's catalog price is not a price anyone pays per token: $0 means the
|
|
128
|
+
* subscription pays, and a nonzero figure may be an overage rate or a copied
|
|
129
|
+
* pay-as-you-go rate, and nothing says which. Drop it and the free-tier tag,
|
|
130
|
+
* and mark the card as plan-billed.
|
|
131
|
+
*/
|
|
132
|
+
function stripPlanPrice(card, extraRaw = []) {
|
|
133
|
+
const raw = card.rawCapabilities ?? card.capabilities;
|
|
119
134
|
const notFree = (capability) => capability !== FREE_TIER_CAPABILITY;
|
|
120
|
-
const { pricing, ...rest } = card;
|
|
135
|
+
const { pricing: _planPrice, ...rest } = card;
|
|
121
136
|
return {
|
|
122
137
|
...rest,
|
|
123
|
-
...(pricing && !isFreeTier(card) ? { pricing } : {}),
|
|
124
138
|
capabilities: card.capabilities.filter(notFree),
|
|
125
|
-
rawCapabilities: [...raw.filter(notFree),
|
|
139
|
+
rawCapabilities: [...raw.filter(notFree), ...extraRaw, SUBSCRIPTION_PLAN_CAPABILITY],
|
|
126
140
|
};
|
|
127
141
|
}
|
|
128
142
|
/**
|
|
@@ -137,6 +151,7 @@ export async function getModelsDevSeed(providerId) {
|
|
|
137
151
|
const seeds = [];
|
|
138
152
|
const seenIds = new Set();
|
|
139
153
|
for (const slug of slugs) {
|
|
154
|
+
const plan = isSubscriptionPlanSlug(slug);
|
|
140
155
|
const provider = catalog[slug];
|
|
141
156
|
if (!provider || typeof provider !== "object")
|
|
142
157
|
continue;
|
|
@@ -154,7 +169,7 @@ export async function getModelsDevSeed(providerId) {
|
|
|
154
169
|
seenIds.add(id);
|
|
155
170
|
const card = buildSeedCard(id, providerId, entry);
|
|
156
171
|
if (card)
|
|
157
|
-
seeds.push(card);
|
|
172
|
+
seeds.push(plan ? stripPlanPrice(card) : card);
|
|
158
173
|
}
|
|
159
174
|
}
|
|
160
175
|
return seeds;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modelsdev-seed.js","sourceRoot":"","sources":["../../src/discovery/modelsdev-seed.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"modelsdev-seed.js","sourceRoot":"","sources":["../../src/discovery/modelsdev-seed.ts"],"names":[],"mappings":"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"}
|
|
@@ -82,6 +82,8 @@ export declare abstract class OpenAICompatibleDiscoverer extends BaseDiscoverer
|
|
|
82
82
|
* Most providers use `/v1/models`. Some OpenAI-compatible APIs expose
|
|
83
83
|
* `/models` at versioned base URLs; subclasses can override this.
|
|
84
84
|
*/
|
|
85
|
+
/** Auth headers for the model-list call; Bearer unless a subclass says otherwise. */
|
|
86
|
+
protected listHeaders(apiKey: string): Record<string, string>;
|
|
85
87
|
protected modelListEndpoints(): string[];
|
|
86
88
|
/**
|
|
87
89
|
* Return false to exclude a model from discovery results.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai-compatible.d.ts","sourceRoot":"","sources":["../../src/discovery/openai-compatible.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAG3C,gFAAgF;AAChF,MAAM,WAAW,qBAAqB;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,yDAAyD;IACzD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,4DAA4D;IAC5D,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,wDAAwD;IACxD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,uDAAuD;IACvD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,6DAA6D;IAC7D,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,qDAAqD;AACrD,MAAM,WAAW,4BAA4B;IAC5C,IAAI,EAAE,qBAAqB,EAAE,CAAC;IAC9B,MAAM,EAAE,MAAM,CAAC;CACf;AAED,+DAA+D;AAC/D,MAAM,WAAW,mBAAmB;IACnC,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,SAAS,CAAC;IAChB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,8BAAsB,0BAA2B,SAAQ,cAAc;IACtE;;;;;OAKG;IACG,QAAQ,CAAC,UAAU,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"openai-compatible.d.ts","sourceRoot":"","sources":["../../src/discovery/openai-compatible.ts"],"names":[],"mappings":"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"}
|
|
@@ -57,9 +57,7 @@ export class OpenAICompatibleDiscoverer extends BaseDiscoverer {
|
|
|
57
57
|
}
|
|
58
58
|
}
|
|
59
59
|
const timeoutMs = this.validateTimeout(options?.timeout);
|
|
60
|
-
const headers =
|
|
61
|
-
Authorization: `Bearer ${apiKey}`,
|
|
62
|
-
};
|
|
60
|
+
const headers = this.listHeaders(apiKey);
|
|
63
61
|
let response = null;
|
|
64
62
|
let firstError;
|
|
65
63
|
let allNotFound = true;
|
|
@@ -98,9 +96,7 @@ export class OpenAICompatibleDiscoverer extends BaseDiscoverer {
|
|
|
98
96
|
}
|
|
99
97
|
throw firstError instanceof Error ? firstError : new Error(`${this.providerName} API request failed`);
|
|
100
98
|
}
|
|
101
|
-
return response.data
|
|
102
|
-
.filter((model) => this.isRelevantModel(model))
|
|
103
|
-
.map((model) => this.toCard(model));
|
|
99
|
+
return response.data.filter((model) => this.isRelevantModel(model)).map((model) => this.toCard(model));
|
|
104
100
|
}
|
|
105
101
|
/**
|
|
106
102
|
* Ordered model-list endpoints to try.
|
|
@@ -108,6 +104,10 @@ export class OpenAICompatibleDiscoverer extends BaseDiscoverer {
|
|
|
108
104
|
* Most providers use `/v1/models`. Some OpenAI-compatible APIs expose
|
|
109
105
|
* `/models` at versioned base URLs; subclasses can override this.
|
|
110
106
|
*/
|
|
107
|
+
/** Auth headers for the model-list call; Bearer unless a subclass says otherwise. */
|
|
108
|
+
listHeaders(apiKey) {
|
|
109
|
+
return { Authorization: `Bearer ${apiKey}` };
|
|
110
|
+
}
|
|
111
111
|
modelListEndpoints() {
|
|
112
112
|
return [`${this.baseUrl}/v1/models`];
|
|
113
113
|
}
|
|
@@ -156,14 +156,22 @@ export class OpenAICompatibleDiscoverer extends BaseDiscoverer {
|
|
|
156
156
|
}
|
|
157
157
|
/** Check if a lowercase model ID looks like a vision model. */
|
|
158
158
|
looksLikeVision(lower) {
|
|
159
|
-
return lower.includes("vision") ||
|
|
160
|
-
lower.includes("
|
|
161
|
-
lower.includes("
|
|
159
|
+
return (lower.includes("vision") ||
|
|
160
|
+
lower.includes("vlm") ||
|
|
161
|
+
lower.includes("llava") ||
|
|
162
|
+
lower.includes("pixtral") ||
|
|
163
|
+
lower.includes("neva") ||
|
|
164
|
+
lower.includes("fuyu") ||
|
|
165
|
+
lower.includes("cogvlm") ||
|
|
166
|
+
lower.includes("vila"));
|
|
162
167
|
}
|
|
163
168
|
/** Check if a lowercase model ID looks like a code model. */
|
|
164
169
|
looksLikeCode(lower) {
|
|
165
|
-
return lower.includes("code") ||
|
|
166
|
-
lower.includes("
|
|
170
|
+
return (lower.includes("code") ||
|
|
171
|
+
lower.includes("codestral") ||
|
|
172
|
+
lower.includes("starcoder") ||
|
|
173
|
+
lower.includes("codellama") ||
|
|
174
|
+
lower.includes("coder"));
|
|
167
175
|
}
|
|
168
176
|
/** Check if a lowercase model ID looks like an audio/speech model. */
|
|
169
177
|
looksLikeAudio(lower) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai-compatible.js","sourceRoot":"","sources":["../../src/discovery/openai-compatible.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAqCjD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,OAAgB,0BAA2B,SAAQ,cAAc;IACtE;;;;;OAKG;IACH,KAAK,CAAC,QAAQ,CAAC,UAA4B,EAAE,OAA8B;QAC1E,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,IAAI,UAAU,CAAC,WAAW,CAAC;QAC3D,IAAI,CAAC,MAAM,EAAE,CAAC;YACb,gEAAgE;YAChE,gEAAgE;YAChE,+DAA+D;YAC/D,gEAAgE;YAChE,yCAAyC;YACzC,IAAI,CAAC;gBACJ,OAAO,MAAM,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC7C,CAAC;YAAC,MAAM,CAAC;gBACR,OAAO,EAAE,CAAC;YACX,CAAC;QACF,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACzD,MAAM,OAAO,
|
|
1
|
+
{"version":3,"file":"openai-compatible.js","sourceRoot":"","sources":["../../src/discovery/openai-compatible.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,6 +17,16 @@ import type { ModelCard } from "../types.js";
|
|
|
17
17
|
export declare const SNAPSHOT_CATALOG_URL = "https://github.com/sriinnu/kosha-discovery/releases/download/snapshot-latest/kosha-latest.json";
|
|
18
18
|
/** Env override for forks and air-gapped mirrors; must be an https URL. */
|
|
19
19
|
export declare const SNAPSHOT_CATALOG_URL_ENV = "KOSHA_SNAPSHOT_URL";
|
|
20
|
+
/**
|
|
21
|
+
* The Ed25519 keys the snapshot workflow signs with (SPKI PEM). A snapshot from
|
|
22
|
+
* the default URL must carry a valid signature by one of them in
|
|
23
|
+
* `kosha-latest.json.sig`, or it is refused. More than one is listed only
|
|
24
|
+
* while a key is being rotated.
|
|
25
|
+
*/
|
|
26
|
+
export declare const SNAPSHOT_PUBLIC_KEYS: readonly string[];
|
|
27
|
+
/** A mirror's own public key (SPKI PEM). When set, every snapshot URL,
|
|
28
|
+
* the default included, must be signed by it. */
|
|
29
|
+
export declare const SNAPSHOT_PUBLIC_KEY_ENV = "KOSHA_SNAPSHOT_PUBKEY";
|
|
20
30
|
/** A parsed catalog: cards keyed by provider id, plus when it was built. */
|
|
21
31
|
export interface SnapshotCatalog {
|
|
22
32
|
providers: Map<string, ModelCard[]>;
|
|
@@ -35,6 +45,14 @@ export declare function resetSnapshotCatalogCache(): void;
|
|
|
35
45
|
* one. Returns `[]` for a provider the snapshot does not carry.
|
|
36
46
|
*/
|
|
37
47
|
export declare function getSnapshotSeed(providerId: string): Promise<ModelCard[]>;
|
|
48
|
+
/**
|
|
49
|
+
* The keys a snapshot from `url` must be signed by, or null when it needs
|
|
50
|
+
* none: a mirror set with `KOSHA_SNAPSHOT_URL` and no `KOSHA_SNAPSHOT_PUBKEY`
|
|
51
|
+
* is the operator's own choice of source.
|
|
52
|
+
*/
|
|
53
|
+
export declare function snapshotTrustedKeys(url: string): readonly string[] | null;
|
|
54
|
+
/** True if `signature` is an Ed25519 signature of `text` by one of `keys`. */
|
|
55
|
+
export declare function snapshotSignatureValid(text: string, signature: Buffer, keys: readonly string[]): boolean;
|
|
38
56
|
/**
|
|
39
57
|
* Parse and validate a catalog in the snapshot format. Shared by the
|
|
40
58
|
* published snapshot and the `local` catalog file, so both get the same
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snapshot-catalog.d.ts","sourceRoot":"","sources":["../../src/discovery/snapshot-catalog.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;
|
|
1
|
+
{"version":3,"file":"snapshot-catalog.d.ts","sourceRoot":"","sources":["../../src/discovery/snapshot-catalog.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAIH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,yDAAyD;AACzD,eAAO,MAAM,oBAAoB,mGACgE,CAAC;AAElG,2EAA2E;AAC3E,eAAO,MAAM,wBAAwB,uBAAuB,CAAC;AAE7D;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,EAAE,SAAS,MAAM,EAEjD,CAAC;AAEF;kDACkD;AAClD,eAAO,MAAM,uBAAuB,0BAA0B,CAAC;AAoB/D,4EAA4E;AAC5E,MAAM,WAAW,eAAe;IAC/B,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;IACpC,sEAAsE;IACtE,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAeD,4EAA4E;AAC5E,wBAAgB,kBAAkB,IAAI,MAAM,CAI3C;AAED,gEAAgE;AAChE,wBAAgB,mBAAmB,IAAI,OAAO,CAAC,eAAe,CAAC,CAO9D;AAED,wBAAgB,yBAAyB,IAAI,IAAI,CAEhD;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAW9E;AAuBD;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,GAAG,IAAI,CAIzE;AAmBD,8EAA8E;AAC9E,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAUxG;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,eAAe,CAgDjF"}
|
|
@@ -12,11 +12,26 @@
|
|
|
12
12
|
* so concurrent callers share a fetch, and a reset hook for tests.
|
|
13
13
|
* @module
|
|
14
14
|
*/
|
|
15
|
+
import { createPublicKey, verify } from "node:crypto";
|
|
15
16
|
import { quarantineEntries } from "../security.js";
|
|
16
17
|
/** The stable URL the snapshot workflow publishes to. */
|
|
17
18
|
export const SNAPSHOT_CATALOG_URL = "https://github.com/sriinnu/kosha-discovery/releases/download/snapshot-latest/kosha-latest.json";
|
|
18
19
|
/** Env override for forks and air-gapped mirrors; must be an https URL. */
|
|
19
20
|
export const SNAPSHOT_CATALOG_URL_ENV = "KOSHA_SNAPSHOT_URL";
|
|
21
|
+
/**
|
|
22
|
+
* The Ed25519 keys the snapshot workflow signs with (SPKI PEM). A snapshot from
|
|
23
|
+
* the default URL must carry a valid signature by one of them in
|
|
24
|
+
* `kosha-latest.json.sig`, or it is refused. More than one is listed only
|
|
25
|
+
* while a key is being rotated.
|
|
26
|
+
*/
|
|
27
|
+
export const SNAPSHOT_PUBLIC_KEYS = [
|
|
28
|
+
"-----BEGIN PUBLIC KEY-----\nMCowBQYDK2VwAyEA/nM7HYtoUrh+Uwz7VEOvcSKpvqlwHnsuv/79ZeG3sR0=\n-----END PUBLIC KEY-----\n",
|
|
29
|
+
];
|
|
30
|
+
/** A mirror's own public key (SPKI PEM). When set, every snapshot URL,
|
|
31
|
+
* the default included, must be signed by it. */
|
|
32
|
+
export const SNAPSHOT_PUBLIC_KEY_ENV = "KOSHA_SNAPSHOT_PUBKEY";
|
|
33
|
+
/** Cap on the detached signature file (base64 of 64 bytes, plus slack). */
|
|
34
|
+
const MAX_SIGNATURE_BYTES = 1024;
|
|
20
35
|
/** Hard cap on the payload; the snapshot is ~3 MB today. */
|
|
21
36
|
const MAX_PAYLOAD_BYTES = 16 * 1024 * 1024;
|
|
22
37
|
/** Network timeout for the snapshot fetch. */
|
|
@@ -24,6 +39,17 @@ const FETCH_TIMEOUT_MS = 15_000;
|
|
|
24
39
|
/** Upper bound on providers in a snapshot — anything larger is not ours. */
|
|
25
40
|
const MAX_PROVIDERS = 500;
|
|
26
41
|
let inflight = null;
|
|
42
|
+
/** Hold bookkeeping the snapshot gate (`src/snapshot-gate.ts`) leaves on a
|
|
43
|
+
* published card so next week's run can continue it. */
|
|
44
|
+
const GATE_FIELDS = ["pricingHold", "priceAnchor", "lastSeenAt", "missingRunCount"];
|
|
45
|
+
function withoutGateFields(card) {
|
|
46
|
+
if (!GATE_FIELDS.some((field) => field in card))
|
|
47
|
+
return card;
|
|
48
|
+
const out = { ...card };
|
|
49
|
+
for (const field of GATE_FIELDS)
|
|
50
|
+
delete out[field];
|
|
51
|
+
return out;
|
|
52
|
+
}
|
|
27
53
|
/** Resolve the snapshot URL, honouring the env override when it is sane. */
|
|
28
54
|
export function snapshotCatalogUrl() {
|
|
29
55
|
const override = process.env[SNAPSHOT_CATALOG_URL_ENV];
|
|
@@ -53,8 +79,10 @@ export function resetSnapshotCatalogCache() {
|
|
|
53
79
|
export async function getSnapshotSeed(providerId) {
|
|
54
80
|
const catalog = await loadSnapshotCatalog();
|
|
55
81
|
const now = Date.now();
|
|
82
|
+
// The gate's hold bookkeeping is the publisher's state, not the reader's:
|
|
83
|
+
// a local merge keeps its own clock.
|
|
56
84
|
return (catalog.providers.get(providerId) ?? []).map((card) => ({
|
|
57
|
-
...card,
|
|
85
|
+
...withoutGateFields(card),
|
|
58
86
|
discoveredAt: now,
|
|
59
87
|
source: "litellm",
|
|
60
88
|
catalogSource: "snapshot",
|
|
@@ -74,7 +102,54 @@ async function fetchAndValidate() {
|
|
|
74
102
|
if (!response.ok) {
|
|
75
103
|
throw new Error(`Failed to fetch kosha snapshot: ${response.status} ${response.statusText}`);
|
|
76
104
|
}
|
|
77
|
-
|
|
105
|
+
const text = await readBoundedText(response, MAX_PAYLOAD_BYTES);
|
|
106
|
+
const keys = snapshotTrustedKeys(url);
|
|
107
|
+
if (keys)
|
|
108
|
+
await verifySnapshotSignature(url, text, keys);
|
|
109
|
+
return parseSnapshotCatalog(text, "kosha snapshot");
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* The keys a snapshot from `url` must be signed by, or null when it needs
|
|
113
|
+
* none: a mirror set with `KOSHA_SNAPSHOT_URL` and no `KOSHA_SNAPSHOT_PUBKEY`
|
|
114
|
+
* is the operator's own choice of source.
|
|
115
|
+
*/
|
|
116
|
+
export function snapshotTrustedKeys(url) {
|
|
117
|
+
const pinned = process.env[SNAPSHOT_PUBLIC_KEY_ENV];
|
|
118
|
+
if (pinned?.trim())
|
|
119
|
+
return [pinned.replace(/\\n/g, "\n")];
|
|
120
|
+
return url === SNAPSHOT_CATALOG_URL ? SNAPSHOT_PUBLIC_KEYS : null;
|
|
121
|
+
}
|
|
122
|
+
/** Fetch `<url>.sig` and check it signs exactly `text`. Throws otherwise. */
|
|
123
|
+
async function verifySnapshotSignature(url, text, keys) {
|
|
124
|
+
const controller = new AbortController();
|
|
125
|
+
const timer = setTimeout(() => controller.abort(), FETCH_TIMEOUT_MS);
|
|
126
|
+
let response;
|
|
127
|
+
try {
|
|
128
|
+
response = await fetch(`${url}.sig`, { signal: controller.signal });
|
|
129
|
+
}
|
|
130
|
+
finally {
|
|
131
|
+
clearTimeout(timer);
|
|
132
|
+
}
|
|
133
|
+
if (!response.ok)
|
|
134
|
+
throw new Error(`kosha snapshot signature missing: ${response.status} ${response.statusText}`);
|
|
135
|
+
const signature = Buffer.from((await readBoundedText(response, MAX_SIGNATURE_BYTES)).trim(), "base64");
|
|
136
|
+
if (!snapshotSignatureValid(text, signature, keys)) {
|
|
137
|
+
throw new Error("kosha snapshot signature does not verify — refusing to load");
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
/** True if `signature` is an Ed25519 signature of `text` by one of `keys`. */
|
|
141
|
+
export function snapshotSignatureValid(text, signature, keys) {
|
|
142
|
+
if (signature.length !== 64)
|
|
143
|
+
return false;
|
|
144
|
+
const data = Buffer.from(text, "utf8");
|
|
145
|
+
return keys.some((pem) => {
|
|
146
|
+
try {
|
|
147
|
+
return verify(null, data, createPublicKey(pem), signature);
|
|
148
|
+
}
|
|
149
|
+
catch {
|
|
150
|
+
return false; // a malformed key never verifies
|
|
151
|
+
}
|
|
152
|
+
});
|
|
78
153
|
}
|
|
79
154
|
/**
|
|
80
155
|
* Parse and validate a catalog in the snapshot format. Shared by the
|
|
@@ -120,7 +195,12 @@ export function parseSnapshotCatalog(text, label) {
|
|
|
120
195
|
for (const [id, models] of Object.entries(clean)) {
|
|
121
196
|
if (!Array.isArray(models))
|
|
122
197
|
continue;
|
|
123
|
-
|
|
198
|
+
// The gate keeps a row last week's discovery didn't see, so its price
|
|
199
|
+
// baseline survives a thin run; `missingRunCount` marks it. It's the
|
|
200
|
+
// publisher's state, not a model anyone can call today.
|
|
201
|
+
const cards = models
|
|
202
|
+
.filter(isModelCardShape)
|
|
203
|
+
.filter((card) => card.provider === id && !((card.missingRunCount ?? 0) > 0));
|
|
124
204
|
if (cards.length > 0)
|
|
125
205
|
out.set(id, cards);
|
|
126
206
|
}
|