@sriinnu/kosha-discovery 0.6.1 → 1.0.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 +53 -268
- package/dist/cli-cmd-model.d.ts +48 -0
- package/dist/cli-cmd-model.d.ts.map +1 -0
- package/dist/cli-cmd-model.js +231 -0
- package/dist/cli-cmd-model.js.map +1 -0
- package/dist/cli-cmd-query.d.ts +40 -0
- package/dist/cli-cmd-query.d.ts.map +1 -0
- package/dist/cli-cmd-query.js +303 -0
- package/dist/cli-cmd-query.js.map +1 -0
- package/dist/cli-commands.d.ts +65 -75
- package/dist/cli-commands.d.ts.map +1 -1
- package/dist/cli-commands.js +93 -543
- package/dist/cli-commands.js.map +1 -1
- package/dist/cli-format.d.ts +32 -0
- package/dist/cli-format.d.ts.map +1 -1
- package/dist/cli-format.js +51 -0
- package/dist/cli-format.js.map +1 -1
- package/dist/cli-help.d.ts +19 -0
- package/dist/cli-help.d.ts.map +1 -0
- package/dist/cli-help.js +150 -0
- package/dist/cli-help.js.map +1 -0
- package/dist/cli.js +4 -1
- package/dist/cli.js.map +1 -1
- package/dist/discovery/anthropic.d.ts +8 -1
- package/dist/discovery/anthropic.d.ts.map +1 -1
- package/dist/discovery/anthropic.js +26 -3
- package/dist/discovery/anthropic.js.map +1 -1
- package/dist/discovery/base.d.ts +26 -0
- package/dist/discovery/base.d.ts.map +1 -1
- package/dist/discovery/base.js +55 -2
- package/dist/discovery/base.js.map +1 -1
- package/dist/discovery/free-tier.d.ts +31 -0
- package/dist/discovery/free-tier.d.ts.map +1 -0
- package/dist/discovery/free-tier.js +47 -0
- package/dist/discovery/free-tier.js.map +1 -0
- package/dist/discovery/google.d.ts +8 -1
- package/dist/discovery/google.d.ts.map +1 -1
- package/dist/discovery/google.js +25 -3
- package/dist/discovery/google.js.map +1 -1
- package/dist/discovery/litellm-seed.d.ts +32 -0
- package/dist/discovery/litellm-seed.d.ts.map +1 -0
- package/dist/discovery/litellm-seed.js +252 -0
- package/dist/discovery/litellm-seed.js.map +1 -0
- package/dist/discovery/modelsdev-catalog.d.ts +95 -0
- package/dist/discovery/modelsdev-catalog.d.ts.map +1 -0
- package/dist/discovery/modelsdev-catalog.js +131 -0
- package/dist/discovery/modelsdev-catalog.js.map +1 -0
- package/dist/discovery/modelsdev-seed.d.ts +19 -0
- package/dist/discovery/modelsdev-seed.d.ts.map +1 -0
- package/dist/discovery/modelsdev-seed.js +203 -0
- package/dist/discovery/modelsdev-seed.js.map +1 -0
- package/dist/discovery/openai-compatible.d.ts.map +1 -1
- package/dist/discovery/openai-compatible.js +12 -1
- package/dist/discovery/openai-compatible.js.map +1 -1
- package/dist/discovery/openai.d.ts +9 -1
- package/dist/discovery/openai.d.ts.map +1 -1
- package/dist/discovery/openai.js +31 -8
- package/dist/discovery/openai.js.map +1 -1
- package/dist/discovery/promo-overrides.d.ts +54 -0
- package/dist/discovery/promo-overrides.d.ts.map +1 -0
- package/dist/discovery/promo-overrides.js +74 -0
- package/dist/discovery/promo-overrides.js.map +1 -0
- package/dist/discovery/public-seed.d.ts +30 -0
- package/dist/discovery/public-seed.d.ts.map +1 -0
- package/dist/discovery/public-seed.js +51 -0
- package/dist/discovery/public-seed.js.map +1 -0
- package/dist/discovery-contract.d.ts +14 -2
- package/dist/discovery-contract.d.ts.map +1 -1
- package/dist/discovery-contract.js +28 -0
- package/dist/discovery-contract.js.map +1 -1
- package/dist/enrichment/litellm-catalog.d.ts +81 -0
- package/dist/enrichment/litellm-catalog.d.ts.map +1 -0
- package/dist/enrichment/litellm-catalog.js +129 -0
- package/dist/enrichment/litellm-catalog.js.map +1 -0
- package/dist/enrichment/litellm.d.ts +9 -2
- package/dist/enrichment/litellm.d.ts.map +1 -1
- package/dist/enrichment/litellm.js +168 -20
- 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 -0
- package/dist/index.js.map +1 -1
- package/dist/model-features.d.ts +77 -0
- package/dist/model-features.d.ts.map +1 -0
- package/dist/model-features.js +245 -0
- package/dist/model-features.js.map +1 -0
- package/dist/provider-catalog.d.ts +7 -0
- package/dist/provider-catalog.d.ts.map +1 -1
- package/dist/provider-catalog.js +4 -0
- package/dist/provider-catalog.js.map +1 -1
- package/dist/registry-discovery.d.ts.map +1 -1
- package/dist/registry-discovery.js +11 -1
- package/dist/registry-discovery.js.map +1 -1
- package/dist/registry-runtime.d.ts +20 -1
- package/dist/registry-runtime.d.ts.map +1 -1
- package/dist/registry-runtime.js +296 -8
- package/dist/registry-runtime.js.map +1 -1
- package/dist/registry-selection.js +2 -0
- package/dist/registry-selection.js.map +1 -1
- package/dist/registry.d.ts +9 -0
- package/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +11 -1
- package/dist/registry.js.map +1 -1
- package/dist/tokenizer-family.d.ts +39 -0
- package/dist/tokenizer-family.d.ts.map +1 -0
- package/dist/tokenizer-family.js +92 -0
- package/dist/tokenizer-family.js.map +1 -0
- package/dist/types.d.ts +186 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +8 -2
|
@@ -6,8 +6,11 @@
|
|
|
6
6
|
* flags on already-discovered {@link ModelCard} objects.
|
|
7
7
|
* @module
|
|
8
8
|
*/
|
|
9
|
+
import { applyFreeTierFlag } from "../discovery/free-tier.js";
|
|
9
10
|
import { normalizeModelId } from "../normalize.js";
|
|
10
|
-
import {
|
|
11
|
+
import { inferParallelToolCalls, inferStructuredOutputModes, inferToolDialect } from "../model-features.js";
|
|
12
|
+
import { inferTokenizerFamily } from "../tokenizer-family.js";
|
|
13
|
+
import { loadLiteLLMCatalog } from "./litellm-catalog.js";
|
|
11
14
|
/**
|
|
12
15
|
* Multiplier to convert litellm's per-token costs into our standard
|
|
13
16
|
* per-million-token pricing. litellm stores costs as cost-per-single-token,
|
|
@@ -22,18 +25,11 @@ const PER_MILLION = 1_000_000;
|
|
|
22
25
|
*/
|
|
23
26
|
export class LiteLLMEnricher {
|
|
24
27
|
data = null;
|
|
25
|
-
|
|
26
|
-
/** Fetch and cache the litellm pricing JSON. Safe to call multiple times. */
|
|
28
|
+
/** Fetch and cache the litellm pricing JSON via the shared catalog loader. */
|
|
27
29
|
async load() {
|
|
28
30
|
if (this.data)
|
|
29
31
|
return;
|
|
30
|
-
|
|
31
|
-
if (!response.ok) {
|
|
32
|
-
throw new Error(`Failed to fetch litellm data: ${response.status} ${response.statusText}`);
|
|
33
|
-
}
|
|
34
|
-
const raw = (await response.json());
|
|
35
|
-
assertCleanPayload(raw, "litellm");
|
|
36
|
-
this.data = raw;
|
|
32
|
+
this.data = await loadLiteLLMCatalog();
|
|
37
33
|
}
|
|
38
34
|
/**
|
|
39
35
|
* Enrich an array of ModelCards with litellm data.
|
|
@@ -44,7 +40,7 @@ export class LiteLLMEnricher {
|
|
|
44
40
|
*/
|
|
45
41
|
async enrich(models) {
|
|
46
42
|
await this.load();
|
|
47
|
-
return models.map((model) => this.enrichOne(model));
|
|
43
|
+
return models.map((model) => applyFreeTierFlag(this.enrichOne(model)));
|
|
48
44
|
}
|
|
49
45
|
// ---------------------------------------------------------------------------
|
|
50
46
|
// Private
|
|
@@ -78,6 +74,20 @@ export class LiteLLMEnricher {
|
|
|
78
74
|
cacheWritePerMillion: entryPricing.cacheWritePerMillion,
|
|
79
75
|
};
|
|
80
76
|
}
|
|
77
|
+
if (enriched.pricing.batchInputPerMillion === undefined &&
|
|
78
|
+
entryPricing.batchInputPerMillion !== undefined) {
|
|
79
|
+
enriched.pricing = {
|
|
80
|
+
...enriched.pricing,
|
|
81
|
+
batchInputPerMillion: entryPricing.batchInputPerMillion,
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
if (enriched.pricing.batchOutputPerMillion === undefined &&
|
|
85
|
+
entryPricing.batchOutputPerMillion !== undefined) {
|
|
86
|
+
enriched.pricing = {
|
|
87
|
+
...enriched.pricing,
|
|
88
|
+
batchOutputPerMillion: entryPricing.batchOutputPerMillion,
|
|
89
|
+
};
|
|
90
|
+
}
|
|
81
91
|
}
|
|
82
92
|
}
|
|
83
93
|
// Preserve proxy-route pricing while surfacing direct-origin reference pricing.
|
|
@@ -127,8 +137,80 @@ export class LiteLLMEnricher {
|
|
|
127
137
|
if (entry.supports_prompt_caching && !enriched.capabilities.includes("prompt_caching")) {
|
|
128
138
|
enriched.capabilities.push("prompt_caching");
|
|
129
139
|
}
|
|
140
|
+
if (entry.supports_audio_input && !enriched.capabilities.includes("audio_input")) {
|
|
141
|
+
enriched.capabilities.push("audio_input");
|
|
142
|
+
}
|
|
143
|
+
if (entry.supports_audio_output && !enriched.capabilities.includes("audio_output")) {
|
|
144
|
+
enriched.capabilities.push("audio_output");
|
|
145
|
+
}
|
|
146
|
+
if (entry.supports_video_input && !enriched.capabilities.includes("video_input")) {
|
|
147
|
+
enriched.capabilities.push("video_input");
|
|
148
|
+
}
|
|
149
|
+
if (entry.supports_reasoning && !enriched.capabilities.includes("reasoning")) {
|
|
150
|
+
enriched.capabilities.push("reasoning");
|
|
151
|
+
}
|
|
152
|
+
if (entry.supports_response_schema && !enriched.capabilities.includes("structured_output")) {
|
|
153
|
+
enriched.capabilities.push("structured_output");
|
|
154
|
+
}
|
|
155
|
+
// Tokenizer family — only fill when missing. Prefer a local-runtime value
|
|
156
|
+
// when the discoverer already supplied one; fall back to heuristic inference
|
|
157
|
+
// based on origin provider and model ID.
|
|
158
|
+
if (!enriched.tokenizerFamily) {
|
|
159
|
+
const localFamily = enriched.localRuntime?.tokenizerFamily;
|
|
160
|
+
enriched.tokenizerFamily =
|
|
161
|
+
localFamily ?? inferTokenizerFamily(enriched.originProvider, enriched.id);
|
|
162
|
+
}
|
|
163
|
+
// Tool dialect — only fill when missing. The discoverer might know the
|
|
164
|
+
// canonical dialect for managed proxy endpoints; we only infer when it
|
|
165
|
+
// didn't come through.
|
|
166
|
+
if (enriched.toolDialect === undefined) {
|
|
167
|
+
const dialect = inferToolDialect(enriched.originProvider, enriched.id);
|
|
168
|
+
if (dialect !== undefined)
|
|
169
|
+
enriched.toolDialect = dialect;
|
|
170
|
+
}
|
|
171
|
+
// Structured output modes — only fill when the discoverer hasn't set them.
|
|
172
|
+
if (enriched.structuredOutputModes === undefined) {
|
|
173
|
+
const modes = inferStructuredOutputModes(enriched.originProvider, enriched.id);
|
|
174
|
+
if (modes.length > 0)
|
|
175
|
+
enriched.structuredOutputModes = modes;
|
|
176
|
+
}
|
|
177
|
+
// Parallel tool calls — litellm's flag takes precedence when present,
|
|
178
|
+
// otherwise fall back to the heuristic from the dialect / model ID.
|
|
179
|
+
if (enriched.supportsParallelToolCalls === undefined) {
|
|
180
|
+
if (entry.supports_parallel_function_calling !== undefined) {
|
|
181
|
+
enriched.supportsParallelToolCalls = entry.supports_parallel_function_calling;
|
|
182
|
+
}
|
|
183
|
+
else {
|
|
184
|
+
const parallel = inferParallelToolCalls(enriched.originProvider, enriched.id);
|
|
185
|
+
if (parallel !== undefined)
|
|
186
|
+
enriched.supportsParallelToolCalls = parallel;
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
// Deprecation metadata — only fill when missing; litellm publishes
|
|
190
|
+
// `deprecation_date` as an ISO string for models with announced sunset.
|
|
191
|
+
if (!enriched.deprecationDate && entry.deprecation_date) {
|
|
192
|
+
enriched.deprecationDate = entry.deprecation_date;
|
|
193
|
+
}
|
|
194
|
+
if (!enriched.status) {
|
|
195
|
+
enriched.status = this.inferStatus(enriched.deprecationDate);
|
|
196
|
+
}
|
|
130
197
|
return enriched;
|
|
131
198
|
}
|
|
199
|
+
/**
|
|
200
|
+
* Best-effort lifecycle status from a deprecation-date string.
|
|
201
|
+
*
|
|
202
|
+
* Returns `"retired"` when the date has already passed,
|
|
203
|
+
* `"deprecated"` when one is set but still in the future,
|
|
204
|
+
* and `"active"` when no date is present.
|
|
205
|
+
*/
|
|
206
|
+
inferStatus(deprecationDate) {
|
|
207
|
+
if (!deprecationDate)
|
|
208
|
+
return "active";
|
|
209
|
+
const ts = Date.parse(deprecationDate);
|
|
210
|
+
if (Number.isNaN(ts))
|
|
211
|
+
return "active";
|
|
212
|
+
return ts <= Date.now() ? "retired" : "deprecated";
|
|
213
|
+
}
|
|
132
214
|
/**
|
|
133
215
|
* Look up a model in the litellm pricing catalogue using a tiered set of
|
|
134
216
|
* key strategies. Later strategies use `originProvider` to handle models
|
|
@@ -192,18 +274,31 @@ export class LiteLLMEnricher {
|
|
|
192
274
|
extractPricing(entry) {
|
|
193
275
|
const reasoningInputCost = this.firstFinite(entry.input_cost_per_reasoning_token, entry.reasoning_input_cost_per_token);
|
|
194
276
|
const reasoningOutputCost = this.firstFinite(entry.output_cost_per_reasoning_token, entry.reasoning_output_cost_per_token);
|
|
195
|
-
const
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
277
|
+
const baseInput = this.firstFinite(entry.input_cost_per_token);
|
|
278
|
+
const baseOutput = this.firstFinite(entry.output_cost_per_token);
|
|
279
|
+
const hasBaseTokenPricing = baseInput !== undefined && baseOutput !== undefined;
|
|
280
|
+
// Multimodal-only entries (TTS by-the-second, image generation, per-character
|
|
281
|
+
// Vertex models) legitimately publish no token-billed pricing — synthesizing
|
|
282
|
+
// 0/0 base on those is honest, and downstream free_tier detection skips
|
|
283
|
+
// non-chat modes. Cache-only / batch-only / reasoning-only entries, on the
|
|
284
|
+
// other hand, are incomplete catalog rows: synthesizing 0/0 base from them
|
|
285
|
+
// would falsely flag the model as free_tier, so we refuse.
|
|
286
|
+
const hasNonTokenPricing = entry.input_cost_per_image !== undefined ||
|
|
287
|
+
entry.output_cost_per_image !== undefined ||
|
|
288
|
+
entry.input_cost_per_audio_token !== undefined ||
|
|
289
|
+
entry.output_cost_per_audio_token !== undefined ||
|
|
290
|
+
entry.input_cost_per_audio_per_second !== undefined ||
|
|
291
|
+
entry.output_cost_per_audio_per_second !== undefined ||
|
|
292
|
+
entry.input_cost_per_video_per_second !== undefined ||
|
|
293
|
+
entry.input_cost_per_video_token !== undefined ||
|
|
294
|
+
entry.input_cost_per_character !== undefined ||
|
|
295
|
+
entry.output_cost_per_character !== undefined;
|
|
296
|
+
if (!hasBaseTokenPricing && !hasNonTokenPricing) {
|
|
202
297
|
return undefined;
|
|
203
298
|
}
|
|
204
299
|
const pricing = {
|
|
205
|
-
inputPerMillion: (
|
|
206
|
-
outputPerMillion: (
|
|
300
|
+
inputPerMillion: (baseInput ?? 0) * PER_MILLION,
|
|
301
|
+
outputPerMillion: (baseOutput ?? 0) * PER_MILLION,
|
|
207
302
|
};
|
|
208
303
|
if (reasoningInputCost !== undefined) {
|
|
209
304
|
pricing.reasoningInputPerMillion = reasoningInputCost * PER_MILLION;
|
|
@@ -217,6 +312,59 @@ export class LiteLLMEnricher {
|
|
|
217
312
|
if (entry.cache_creation_input_token_cost !== undefined) {
|
|
218
313
|
pricing.cacheWritePerMillion = entry.cache_creation_input_token_cost * PER_MILLION;
|
|
219
314
|
}
|
|
315
|
+
if (entry.input_cost_per_token_batches !== undefined) {
|
|
316
|
+
pricing.batchInputPerMillion = entry.input_cost_per_token_batches * PER_MILLION;
|
|
317
|
+
}
|
|
318
|
+
if (entry.output_cost_per_token_batches !== undefined) {
|
|
319
|
+
pricing.batchOutputPerMillion = entry.output_cost_per_token_batches * PER_MILLION;
|
|
320
|
+
}
|
|
321
|
+
// Multimodal — images are already per-unit; audio/video tokens go through PER_MILLION.
|
|
322
|
+
if (entry.input_cost_per_image !== undefined) {
|
|
323
|
+
pricing.imageInputPerImage = entry.input_cost_per_image;
|
|
324
|
+
}
|
|
325
|
+
if (entry.output_cost_per_image !== undefined) {
|
|
326
|
+
pricing.imageOutputPerImage = entry.output_cost_per_image;
|
|
327
|
+
}
|
|
328
|
+
if (entry.input_cost_per_audio_token !== undefined) {
|
|
329
|
+
pricing.audioInputPerMillion = entry.input_cost_per_audio_token * PER_MILLION;
|
|
330
|
+
}
|
|
331
|
+
if (entry.output_cost_per_audio_token !== undefined) {
|
|
332
|
+
pricing.audioOutputPerMillion = entry.output_cost_per_audio_token * PER_MILLION;
|
|
333
|
+
}
|
|
334
|
+
if (entry.input_cost_per_audio_per_second !== undefined) {
|
|
335
|
+
pricing.audioInputPerSecond = entry.input_cost_per_audio_per_second;
|
|
336
|
+
}
|
|
337
|
+
if (entry.output_cost_per_audio_per_second !== undefined) {
|
|
338
|
+
pricing.audioOutputPerSecond = entry.output_cost_per_audio_per_second;
|
|
339
|
+
}
|
|
340
|
+
if (entry.input_cost_per_video_per_second !== undefined) {
|
|
341
|
+
pricing.videoInputPerSecond = entry.input_cost_per_video_per_second;
|
|
342
|
+
}
|
|
343
|
+
if (entry.input_cost_per_video_token !== undefined) {
|
|
344
|
+
pricing.videoInputPerMillion = entry.input_cost_per_video_token * PER_MILLION;
|
|
345
|
+
}
|
|
346
|
+
// Character-billed providers (Vertex AI, Azure).
|
|
347
|
+
if (entry.input_cost_per_character !== undefined) {
|
|
348
|
+
pricing.inputPerMillionCharacters = entry.input_cost_per_character * PER_MILLION;
|
|
349
|
+
}
|
|
350
|
+
if (entry.output_cost_per_character !== undefined) {
|
|
351
|
+
pricing.outputPerMillionCharacters = entry.output_cost_per_character * PER_MILLION;
|
|
352
|
+
}
|
|
353
|
+
// Tiered long-context pricing — prefer 128k, fall back to 200k (Claude-style).
|
|
354
|
+
const tieredIn = this.firstFinite(entry.input_cost_per_token_above_128k_tokens, entry.input_cost_per_token_above_200k_tokens);
|
|
355
|
+
const tieredOut = this.firstFinite(entry.output_cost_per_token_above_128k_tokens, entry.output_cost_per_token_above_200k_tokens);
|
|
356
|
+
if (tieredIn !== undefined) {
|
|
357
|
+
pricing.longContextInputPerMillion = tieredIn * PER_MILLION;
|
|
358
|
+
}
|
|
359
|
+
if (tieredOut !== undefined) {
|
|
360
|
+
pricing.longContextOutputPerMillion = tieredOut * PER_MILLION;
|
|
361
|
+
}
|
|
362
|
+
if (entry.input_cost_per_token_above_128k_tokens !== undefined || entry.output_cost_per_token_above_128k_tokens !== undefined) {
|
|
363
|
+
pricing.longContextThresholdTokens = 128_000;
|
|
364
|
+
}
|
|
365
|
+
else if (entry.input_cost_per_token_above_200k_tokens !== undefined || entry.output_cost_per_token_above_200k_tokens !== undefined) {
|
|
366
|
+
pricing.longContextThresholdTokens = 200_000;
|
|
367
|
+
}
|
|
220
368
|
return pricing;
|
|
221
369
|
}
|
|
222
370
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"litellm.js","sourceRoot":"","sources":["../../src/enrichment/litellm.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"litellm.js","sourceRoot":"","sources":["../../src/enrichment/litellm.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -11,9 +11,11 @@ export { KoshaCache } from "./cache.js";
|
|
|
11
11
|
export { DISCOVERY_SCHEMA_VERSION, discoveryRoles, makeModelKey, rawCapabilitiesForModel, trustedCapabilitiesForModel, } from "./discovery-contract.js";
|
|
12
12
|
export type { DiscoveryBindingHintsV1, DiscoveryBindingQuery, DiscoveryChangeV1, DiscoveryCheapestCandidateV1, DiscoveryCheapestResultV1, DiscoveryCredentialPrompt, DiscoveryDeltaV1, DiscoveryHealthRecord, DiscoveryModelV1, DiscoveryProviderV1, DiscoveryRoleDefinition, DiscoverySnapshotV1, TrustedCapability, } from "./discovery-contract.js";
|
|
13
13
|
export { extractModelVersion, extractOriginProvider, normalizeModelId } from "./normalize.js";
|
|
14
|
+
export { inferTokenizerFamily } from "./tokenizer-family.js";
|
|
15
|
+
export { inferParallelToolCalls, inferStructuredOutputModes, inferToolDialect } from "./model-features.js";
|
|
14
16
|
export { getProviderDescriptor, isLocalProvider, listProviderDescriptors, normalizeProviderId, PROVIDER_CATALOG, } from "./provider-catalog.js";
|
|
15
17
|
export type { ProviderDescriptor } from "./provider-catalog.js";
|
|
16
|
-
export type { ComputeTarget, LocalRuntimeMetadata, ModelCard, ProviderInfo, ProviderRoleInfo, DiscoveryError, DiscoveryOptions, KoshaConfig, LatestDiscoveryOptions, LatestDiscoveryResult, ModelMode, ModelPricing, ModelRoleCard, RoleQueryOptions, CheapestModelOptions, CheapestModelMatch, CheapestModelResult, ProviderCredentialPrompt, PricingMetric, ModelRouteInfo, CapabilitySummary, CredentialResult, ProviderDiscoverer, Enricher, ProviderOrigin, ProviderTransport, } from "./types.js";
|
|
18
|
+
export type { ComputeTarget, LocalRuntimeMetadata, ModelCard, ModelStatus, ProviderInfo, ProviderRoleInfo, DiscoveryError, DiscoveryOptions, KoshaConfig, LatestDiscoveryOptions, LatestDiscoveryResult, ModelMode, ModelPricing, ModelRoleCard, RoleQueryOptions, CheapestModelOptions, CheapestModelMatch, CheapestModelResult, ProviderCredentialPrompt, PricingMetric, ModelRouteInfo, CapabilitySummary, CredentialResult, ProviderDiscoverer, Enricher, ProviderOrigin, ProviderTransport, StructuredOutputMode, ToolDialect, } from "./types.js";
|
|
17
19
|
/**
|
|
18
20
|
* Convenience factory: creates a ModelRegistry and runs discovery in one call.
|
|
19
21
|
*
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EACN,wBAAwB,EACxB,cAAc,EACd,YAAY,EACZ,uBAAuB,EACvB,2BAA2B,GAC3B,MAAM,yBAAyB,CAAC;AACjC,YAAY,EACX,uBAAuB,EACvB,qBAAqB,EACrB,iBAAiB,EACjB,4BAA4B,EAC5B,yBAAyB,EACzB,yBAAyB,EACzB,gBAAgB,EAChB,qBAAqB,EACrB,gBAAgB,EAChB,mBAAmB,EACnB,uBAAuB,EACvB,mBAAmB,EACnB,iBAAiB,GACjB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAC9F,OAAO,EACN,qBAAqB,EACrB,eAAe,EACf,uBAAuB,EACvB,mBAAmB,EACnB,gBAAgB,GAChB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAChE,YAAY,EACX,aAAa,EACb,oBAAoB,EACpB,SAAS,EACT,YAAY,EACZ,gBAAgB,EAChB,cAAc,EACd,gBAAgB,EAChB,WAAW,EACX,sBAAsB,EACtB,qBAAqB,EACrB,SAAS,EACT,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,EACnB,wBAAwB,EACxB,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,QAAQ,EACR,cAAc,EACd,iBAAiB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EACN,wBAAwB,EACxB,cAAc,EACd,YAAY,EACZ,uBAAuB,EACvB,2BAA2B,GAC3B,MAAM,yBAAyB,CAAC;AACjC,YAAY,EACX,uBAAuB,EACvB,qBAAqB,EACrB,iBAAiB,EACjB,4BAA4B,EAC5B,yBAAyB,EACzB,yBAAyB,EACzB,gBAAgB,EAChB,qBAAqB,EACrB,gBAAgB,EAChB,mBAAmB,EACnB,uBAAuB,EACvB,mBAAmB,EACnB,iBAAiB,GACjB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAC9F,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC3G,OAAO,EACN,qBAAqB,EACrB,eAAe,EACf,uBAAuB,EACvB,mBAAmB,EACnB,gBAAgB,GAChB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAChE,YAAY,EACX,aAAa,EACb,oBAAoB,EACpB,SAAS,EACT,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,cAAc,EACd,gBAAgB,EAChB,WAAW,EACX,sBAAsB,EACtB,qBAAqB,EACrB,SAAS,EACT,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,EACnB,wBAAwB,EACxB,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,QAAQ,EACR,cAAc,EACd,iBAAiB,EACjB,oBAAoB,EACpB,WAAW,GACX,MAAM,YAAY,CAAC;AAEpB;;;;;;;;;;;GAWG;AACH,wBAAsB,WAAW,CAAC,MAAM,CAAC,EAAE,OAAO,YAAY,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,eAAe,EAAE,aAAa,CAAC,CAM3H"}
|
package/dist/index.js
CHANGED
|
@@ -10,6 +10,8 @@ export { AliasResolver, DEFAULT_ALIASES } from "./aliases.js";
|
|
|
10
10
|
export { KoshaCache } from "./cache.js";
|
|
11
11
|
export { DISCOVERY_SCHEMA_VERSION, discoveryRoles, makeModelKey, rawCapabilitiesForModel, trustedCapabilitiesForModel, } from "./discovery-contract.js";
|
|
12
12
|
export { extractModelVersion, extractOriginProvider, normalizeModelId } from "./normalize.js";
|
|
13
|
+
export { inferTokenizerFamily } from "./tokenizer-family.js";
|
|
14
|
+
export { inferParallelToolCalls, inferStructuredOutputModes, inferToolDialect } from "./model-features.js";
|
|
13
15
|
export { getProviderDescriptor, isLocalProvider, listProviderDescriptors, normalizeProviderId, PROVIDER_CATALOG, } from "./provider-catalog.js";
|
|
14
16
|
/**
|
|
15
17
|
* Convenience factory: creates a ModelRegistry and runs discovery in one call.
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EACN,wBAAwB,EACxB,cAAc,EACd,YAAY,EACZ,uBAAuB,EACvB,2BAA2B,GAC3B,MAAM,yBAAyB,CAAC;AAgBjC,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAC9F,OAAO,EACN,qBAAqB,EACrB,eAAe,EACf,uBAAuB,EACvB,mBAAmB,EACnB,gBAAgB,GAChB,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EACN,wBAAwB,EACxB,cAAc,EACd,YAAY,EACZ,uBAAuB,EACvB,2BAA2B,GAC3B,MAAM,yBAAyB,CAAC;AAgBjC,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAC9F,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC3G,OAAO,EACN,qBAAqB,EACrB,eAAe,EACf,uBAAuB,EACvB,mBAAmB,EACnB,gBAAgB,GAChB,MAAM,uBAAuB,CAAC;AAkC/B;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,MAAyC;IAC1E,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;IAClE,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IACrD,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC;IACtC,MAAM,QAAQ,CAAC,QAAQ,EAAE,CAAC;IAC1B,OAAO,QAAQ,CAAC;AACjB,CAAC"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* kosha-discovery — Tool-dialect and structured-output inference.
|
|
3
|
+
*
|
|
4
|
+
* Tool calling and structured output are two surfaces where every frontier
|
|
5
|
+
* provider has settled on a *different* JSON shape. A consumer that wants
|
|
6
|
+
* to route a single workload across multiple providers has to pick the
|
|
7
|
+
* right adapter per model, and the registry is the natural place to tag
|
|
8
|
+
* that. These helpers return best-effort hints inferred from the origin
|
|
9
|
+
* provider plus the model ID — downstream callers treat them as defaults
|
|
10
|
+
* and override with direct API probes when precision matters.
|
|
11
|
+
* @module
|
|
12
|
+
*/
|
|
13
|
+
import type { StructuredOutputMode, ToolDialect } from "./types.js";
|
|
14
|
+
/**
|
|
15
|
+
* Infer the tool-calling dialect a model natively speaks.
|
|
16
|
+
*
|
|
17
|
+
* The return value describes the wire format a consumer must emit to
|
|
18
|
+
* invoke tools on this model. Returns `undefined` when the provider is
|
|
19
|
+
* unknown and the model ID gives no signal — the caller should then
|
|
20
|
+
* fall back to `"openai-tools"` (the de-facto compatibility dialect).
|
|
21
|
+
*
|
|
22
|
+
* Mapping summary:
|
|
23
|
+
* - OpenAI GPT-4.1 / GPT-5 / o-series → `"openai-responses"` (new API)
|
|
24
|
+
* - OpenAI GPT-4 / GPT-4o / GPT-3.5 → `"openai-tools"`
|
|
25
|
+
* - Anthropic Claude 3+ → `"anthropic-tools"`
|
|
26
|
+
* - Google Gemini 1.5+ → `"gemini-functions"`
|
|
27
|
+
* - Cohere Command R / R+ → `"cohere-tools"`
|
|
28
|
+
* - Mistral Large / Small → `"mistral-tools"`
|
|
29
|
+
* - Meta Llama 3.1+ (instruct variants) → `"llama3-tools"`
|
|
30
|
+
* - Embedding / image / audio-only models → `"none"`
|
|
31
|
+
*
|
|
32
|
+
* NOTE on serving-layer proxies: this helper infers the model's *native*
|
|
33
|
+
* dialect from its origin provider. Managed serving layers such as Groq,
|
|
34
|
+
* Together, Fireworks, and OpenRouter expose open-weight models behind
|
|
35
|
+
* an OpenAI-compatible tools API regardless of the underlying family —
|
|
36
|
+
* so if you are calling a Llama 3.1 model through Groq, you should use
|
|
37
|
+
* `"openai-tools"` on the wire, not the `"llama3-tools"` hint returned
|
|
38
|
+
* here. Callers that care about the serving-layer wire format should
|
|
39
|
+
* check `ModelCard.provider` (the serving slug) first and fall back to
|
|
40
|
+
* this inference only for direct-origin routes. A future revision may
|
|
41
|
+
* take `servingProvider` as a second argument.
|
|
42
|
+
*
|
|
43
|
+
* @param originProvider - Model creator slug (e.g. `"anthropic"`).
|
|
44
|
+
* @param modelId - Provider-canonical model ID.
|
|
45
|
+
* @returns Best-effort dialect tag, or `undefined` when no safe guess exists.
|
|
46
|
+
*/
|
|
47
|
+
export declare function inferToolDialect(originProvider: string | undefined, modelId: string): ToolDialect | undefined;
|
|
48
|
+
/**
|
|
49
|
+
* Infer the structured-output modes a model supports.
|
|
50
|
+
*
|
|
51
|
+
* Returns an ordered list with the most precise mode first. An empty
|
|
52
|
+
* array means no structured-output enforcement is available and the
|
|
53
|
+
* caller must fall back to prompt-level coercion.
|
|
54
|
+
*
|
|
55
|
+
* Precision ranking: `json-schema` > `response-schema` > `grammar`
|
|
56
|
+
* > `json-mode` > `response-format` > `tool-choice` > `xml`.
|
|
57
|
+
*
|
|
58
|
+
* @param originProvider - Model creator slug.
|
|
59
|
+
* @param modelId - Provider-canonical model ID.
|
|
60
|
+
* @returns Ordered list of supported modes (empty when unknown).
|
|
61
|
+
*/
|
|
62
|
+
export declare function inferStructuredOutputModes(originProvider: string | undefined, modelId: string): StructuredOutputMode[];
|
|
63
|
+
/**
|
|
64
|
+
* Best-effort inference for whether a model supports parallel tool calls
|
|
65
|
+
* (multiple tool invocations emitted in a single assistant turn).
|
|
66
|
+
*
|
|
67
|
+
* Frontier models (GPT-4o, Claude 3.5+, Gemini 1.5+) all support this;
|
|
68
|
+
* older tool-capable models (GPT-3.5, early Claude 3) emit tool calls
|
|
69
|
+
* serially. Returns `undefined` when the model does not appear to support
|
|
70
|
+
* tool calling at all.
|
|
71
|
+
*
|
|
72
|
+
* @param originProvider - Model creator slug.
|
|
73
|
+
* @param modelId - Provider-canonical model ID.
|
|
74
|
+
* @returns `true`, `false`, or `undefined` when not tool-capable.
|
|
75
|
+
*/
|
|
76
|
+
export declare function inferParallelToolCalls(originProvider: string | undefined, modelId: string): boolean | undefined;
|
|
77
|
+
//# sourceMappingURL=model-features.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model-features.d.ts","sourceRoot":"","sources":["../src/model-features.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEpE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAgB,gBAAgB,CAC/B,cAAc,EAAE,MAAM,GAAG,SAAS,EAClC,OAAO,EAAE,MAAM,GACb,WAAW,GAAG,SAAS,CA0EzB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,0BAA0B,CACzC,cAAc,EAAE,MAAM,GAAG,SAAS,EAClC,OAAO,EAAE,MAAM,GACb,oBAAoB,EAAE,CA+ExB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,sBAAsB,CACrC,cAAc,EAAE,MAAM,GAAG,SAAS,EAClC,OAAO,EAAE,MAAM,GACb,OAAO,GAAG,SAAS,CA0BrB"}
|