@x12i/ai-profiles 4.4.2 → 4.5.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 +17 -5
- package/dist/browser.d.ts.map +1 -1
- package/dist/browser.js +11 -8
- package/dist/browser.js.map +1 -1
- package/dist/buildCatalogFromOpenRouterApi.d.ts +11 -0
- package/dist/buildCatalogFromOpenRouterApi.d.ts.map +1 -1
- package/dist/buildCatalogFromOpenRouterApi.js +9 -0
- package/dist/buildCatalogFromOpenRouterApi.js.map +1 -1
- package/dist/catalogEnrichment.d.ts.map +1 -1
- package/dist/catalogEnrichment.js +5 -4
- package/dist/catalogEnrichment.js.map +1 -1
- package/dist/cost/computeInvokeCost.d.ts.map +1 -1
- package/dist/cost/computeInvokeCost.js +2 -1
- package/dist/cost/computeInvokeCost.js.map +1 -1
- package/dist/data/models-catalog.json +21228 -17393
- package/dist/data/models-profiles.json +10855 -10370
- package/dist/data/models-registry.json +12438 -11192
- package/dist/evidence/openRouter.d.ts.map +1 -1
- package/dist/evidence/openRouter.js +3 -0
- package/dist/evidence/openRouter.js.map +1 -1
- package/dist/evidence/scoringConfig.d.ts.map +1 -1
- package/dist/evidence/scoringConfig.js +8 -7
- package/dist/evidence/scoringConfig.js.map +1 -1
- package/dist/finalProfileModelMappingPatch.d.ts.map +1 -1
- package/dist/finalProfileModelMappingPatch.js +24 -19
- package/dist/finalProfileModelMappingPatch.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/inferModelFamily.d.ts.map +1 -1
- package/dist/inferModelFamily.js +2 -0
- package/dist/inferModelFamily.js.map +1 -1
- package/dist/modelsCatalog.d.ts +2 -0
- package/dist/modelsCatalog.d.ts.map +1 -1
- package/dist/modelsCatalog.js +12 -6
- package/dist/modelsCatalog.js.map +1 -1
- package/dist/pricingNormalize.d.ts +13 -0
- package/dist/pricingNormalize.d.ts.map +1 -0
- package/dist/pricingNormalize.js +58 -0
- package/dist/pricingNormalize.js.map +1 -0
- package/dist/profileRegistryV2.d.ts.map +1 -1
- package/dist/profileRegistryV2.js +5 -4
- package/dist/profileRegistryV2.js.map +1 -1
- package/dist/profileRegistryV3.d.ts.map +1 -1
- package/dist/profileRegistryV3.js +18 -3
- package/dist/profileRegistryV3.js.map +1 -1
- package/dist/reasoning/bedrockDirective.d.ts +18 -0
- package/dist/reasoning/bedrockDirective.d.ts.map +1 -0
- package/dist/reasoning/bedrockDirective.js +131 -0
- package/dist/reasoning/bedrockDirective.js.map +1 -0
- package/dist/reasoning/catalogReasoning.d.ts +8 -0
- package/dist/reasoning/catalogReasoning.d.ts.map +1 -0
- package/dist/reasoning/catalogReasoning.js +53 -0
- package/dist/reasoning/catalogReasoning.js.map +1 -0
- package/dist/reasoning/openRouterDirective.d.ts +18 -0
- package/dist/reasoning/openRouterDirective.d.ts.map +1 -0
- package/dist/reasoning/openRouterDirective.js +136 -0
- package/dist/reasoning/openRouterDirective.js.map +1 -0
- package/dist/reasoning/types.d.ts +35 -0
- package/dist/reasoning/types.d.ts.map +1 -0
- package/dist/reasoning/types.js +22 -0
- package/dist/reasoning/types.js.map +1 -0
- package/dist/resolveReasoning.d.ts +9 -0
- package/dist/resolveReasoning.d.ts.map +1 -0
- package/dist/resolveReasoning.js +81 -0
- package/dist/resolveReasoning.js.map +1 -0
- package/dist/types.d.ts +17 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
> Part of the **ai-catalog** monorepo. Root docs: [../../README.md](../../README.md) · [../../docs/MONOREPO.md](../../docs/MONOREPO.md)
|
|
2
|
-
|
|
3
|
-
> **v4.4.1** adds `@x12i/ai-profiles/browser` for Vite/UI. Explore via `npm run ui` (AI Profiles tab).
|
|
4
|
-
|
|
1
|
+
> Part of the **ai-catalog** monorepo. Root docs: [../../README.md](../../README.md) · [../../docs/MONOREPO.md](../../docs/MONOREPO.md)
|
|
2
|
+
|
|
3
|
+
> **v4.4.1** adds `@x12i/ai-profiles/browser` for Vite/UI. Explore via `npm run ui` (AI Profiles tab).
|
|
4
|
+
|
|
5
5
|
# @x12i/ai-profiles
|
|
6
6
|
|
|
7
7
|
Resolve AI profile names into concrete model choices. The package ships JSON in `src/data/` as the offline fallback. By default, registry data is fetched from public assets, validated, and cached in memory.
|
|
@@ -291,6 +291,7 @@ npm install @x12i/ai-profiles
|
|
|
291
291
|
| `resolveBundledCatalogModelDetails(slug, options?)` | Yes | Same as above but throws `UNKNOWN_MODEL` on miss |
|
|
292
292
|
| `resolveCatalogModelDetails(slug, options?)` | No (async) | Rich catalog snapshot with optional remote catalog refresh |
|
|
293
293
|
| `isReasoningModel(input, options?)` | Yes | `true`/`false` for supported inputs (throws `UNKNOWN_MODEL` on unknown concrete models) |
|
|
294
|
+
| `resolveReasoning({ transport, model, effort })` | Yes | Opaque reasoning directive for `openrouter` or `bedrock`. `supported: false` means send no reasoning fields |
|
|
294
295
|
| `resolveAIProfile(input, options?)` | No (async) | Resolve an explicit `profile/choice` key → model, pricing, runtime. Pass `includeSecondary: true` to attach `secondary`; `includeCatalog: true` to attach full `catalogModel`. |
|
|
295
296
|
| `resolveSecondaryModel(input, options?)` | No (async) | Resolve primary choice + optional companion `secondary` from profile `secondary` refs |
|
|
296
297
|
| `getSecondaryForResolvedProfile(resolved, registry, catalog?)` | Yes | Secondary for an already-resolved primary (no extra I/O when catalog is passed) |
|
|
@@ -355,6 +356,8 @@ import {
|
|
|
355
356
|
ensureConcreteModel,
|
|
356
357
|
isKnownProfileInput,
|
|
357
358
|
isReasoningModel,
|
|
359
|
+
resolveReasoning,
|
|
360
|
+
toAbstractEffort,
|
|
358
361
|
resolveBundledInput,
|
|
359
362
|
resolveBundledAIProfile,
|
|
360
363
|
applyModelRouting,
|
|
@@ -390,6 +393,15 @@ isReasoningModel("deep/default"); // true
|
|
|
390
393
|
isReasoningModel("cheap/default"); // true (catalog marks gemini-2.5-flash-lite reasoning-capable)
|
|
391
394
|
isReasoningModel("google/gemini-2.5-flash-lite"); // false
|
|
392
395
|
|
|
396
|
+
const resolved = resolveBundledAIProfile("deep/default", { catalogLane: "text" });
|
|
397
|
+
const directive = resolveReasoning({
|
|
398
|
+
transport: "openrouter",
|
|
399
|
+
model: resolved.invocation.openrouter.modelId,
|
|
400
|
+
effort: toAbstractEffort(resolved.runtime.reasoningEffort),
|
|
401
|
+
});
|
|
402
|
+
// When directive.supported is false, send no reasoning fields.
|
|
403
|
+
// directive.body merges onto the OpenRouter request. Keys stay opaque to the caller.
|
|
404
|
+
|
|
393
405
|
const caps = lookupBundledCatalogCaps({
|
|
394
406
|
provider: "openrouter",
|
|
395
407
|
modelId: "google/gemini-2.5-flash-lite",
|
|
@@ -729,7 +741,7 @@ model.modelSignals.isReasoningModel; // true
|
|
|
729
741
|
model.modelSignals.maxOutputTokens; // same as maxCompletionTokens
|
|
730
742
|
model.catalogCapabilities?.toolCalling; // true
|
|
731
743
|
model.invocation.openrouter?.modelId; // "google/gemini-2.5-flash-lite"
|
|
732
|
-
model.capabilities?.supportsOpenRouterReasoningParam; //
|
|
744
|
+
model.capabilities?.supportsOpenRouterReasoningParam; // legacy hint; use resolveReasoning for the wire body
|
|
733
745
|
```
|
|
734
746
|
|
|
735
747
|
### Invoke cost (Activix / FuncX)
|
package/dist/browser.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,eAAe,EACf,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAEpB,YAAY,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,CAAC;AAE3E,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,aAAa,EAAE,OAAO,CAAC;IACvB,cAAc,EAAE,OAAO,CAAC;CACzB;AAMD,yEAAyE;AACzE,wBAAgB,wBAAwB,IAAI,kBAAkB,CAE7D;AAED,uEAAuE;AACvE,wBAAgB,uBAAuB,IAAI,iBAAiB,CAE3D;AAED,6EAA6E;AAC7E,wBAAgB,6BAA6B,CAAC,OAAO,CAAC,EAAE;IACtD,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B,GAAG,mBAAmB,EAAE,CAMxB;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAE9E;AA2BD,mFAAmF;AACnF,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,GACd,iBAAiB,GAAG,IAAI,CA4B1B;AAED,+CAA+C;AAC/C,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAOvE;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,eAAe,GAAG,iBAAiB,GAAG,IAAI,CA0BjF;AAED,+DAA+D;AAC/D,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,GAAG,KAAK,GAAG,MAAM,GAAG,SAAS,CAM5F"}
|
package/dist/browser.js
CHANGED
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import modelsProfiles from "./data/models-profiles.json" with { type: "json" };
|
|
6
6
|
import modelsCatalog from "./data/models-catalog.json" with { type: "json" };
|
|
7
|
+
import { coerceOptionalUsdPer1M } from "./pricingNormalize.js";
|
|
7
8
|
function normalize(value) {
|
|
8
9
|
return value.trim().toLowerCase();
|
|
9
10
|
}
|
|
@@ -64,8 +65,8 @@ export function lookupCatalogPrice(provider, modelId) {
|
|
|
64
65
|
const mods = entry.openrouter?.modalities ?? entry.modalities;
|
|
65
66
|
const caps = entry.openrouter?.capabilities;
|
|
66
67
|
return {
|
|
67
|
-
input: pricing?.input ?? null,
|
|
68
|
-
output: pricing?.output ?? null,
|
|
68
|
+
input: coerceOptionalUsdPer1M(pricing?.input) ?? null,
|
|
69
|
+
output: coerceOptionalUsdPer1M(pricing?.output) ?? null,
|
|
69
70
|
currency: "USD",
|
|
70
71
|
unit: "1M_tokens",
|
|
71
72
|
openRouterModelId: entry.openrouter?.modelId ?? null,
|
|
@@ -80,7 +81,8 @@ export function lookupCatalogPrice(provider, modelId) {
|
|
|
80
81
|
export function formatUsdPer1M(value) {
|
|
81
82
|
if (value == null || Number.isNaN(value))
|
|
82
83
|
return "—";
|
|
83
|
-
|
|
84
|
+
// Negative sentinels (e.g. OpenRouter -1e6) are free / unset → show $0.
|
|
85
|
+
if (!Number.isFinite(value) || value <= 0)
|
|
84
86
|
return "$0";
|
|
85
87
|
if (value < 0.01)
|
|
86
88
|
return `$${value.toFixed(4)}`;
|
|
@@ -92,8 +94,8 @@ export function choiceCostQuote(choice) {
|
|
|
92
94
|
const fromChoice = choice.pricing;
|
|
93
95
|
if (fromChoice && typeof fromChoice === "object") {
|
|
94
96
|
const v2 = fromChoice;
|
|
95
|
-
const input = v2.standard?.input ?? v2.input ?? null;
|
|
96
|
-
const output = v2.standard?.output ?? v2.output ?? null;
|
|
97
|
+
const input = coerceOptionalUsdPer1M(v2.standard?.input ?? v2.input) ?? null;
|
|
98
|
+
const output = coerceOptionalUsdPer1M(v2.standard?.output ?? v2.output) ?? null;
|
|
97
99
|
if (input != null || output != null) {
|
|
98
100
|
return {
|
|
99
101
|
input,
|
|
@@ -113,11 +115,12 @@ export function choiceCostQuote(choice) {
|
|
|
113
115
|
}
|
|
114
116
|
/** Bucket for cost filters: floor = cheap input, mid, high. */
|
|
115
117
|
export function costTierFromInput(input) {
|
|
116
|
-
if (input == null)
|
|
118
|
+
if (input == null || !Number.isFinite(input))
|
|
117
119
|
return "unknown";
|
|
118
|
-
|
|
120
|
+
const rate = input < 0 ? 0 : input;
|
|
121
|
+
if (rate <= 0.5)
|
|
119
122
|
return "cheap";
|
|
120
|
-
if (
|
|
123
|
+
if (rate <= 5)
|
|
121
124
|
return "mid";
|
|
122
125
|
return "high";
|
|
123
126
|
}
|
package/dist/browser.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser.js","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,cAAc,MAAM,6BAA6B,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AAC/E,OAAO,aAAa,MAAM,4BAA4B,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"browser.js","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,6 +16,17 @@ export type OpenRouterApiModel = {
|
|
|
16
16
|
max_completion_tokens?: number;
|
|
17
17
|
};
|
|
18
18
|
supported_parameters?: string[];
|
|
19
|
+
/**
|
|
20
|
+
* Per-model reasoning control. Omitted for non-reasoning models.
|
|
21
|
+
* `supported_efforts: null` accepts every gateway effort.
|
|
22
|
+
*/
|
|
23
|
+
reasoning?: {
|
|
24
|
+
supported_efforts?: Array<string | null> | null;
|
|
25
|
+
default_effort?: string | null;
|
|
26
|
+
default_enabled?: boolean;
|
|
27
|
+
mandatory?: boolean;
|
|
28
|
+
supports_max_tokens?: boolean;
|
|
29
|
+
};
|
|
19
30
|
knowledge_cutoff?: string | null;
|
|
20
31
|
expiration_date?: string | null;
|
|
21
32
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildCatalogFromOpenRouterApi.d.ts","sourceRoot":"","sources":["../src/buildCatalogFromOpenRouterApi.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAiC,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEnF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE;QACb,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;QAC5B,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;KAC9B,CAAC;IACF,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;IACpD,YAAY,CAAC,EAAE;QACb,qBAAqB,CAAC,EAAE,MAAM,CAAC;KAChC,CAAC;IACF,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAChC,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,IAAI,EAAE,kBAAkB,EAAE,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,4DAA4D;IAC5D,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAmB5E;AAED,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,kBAAkB,EAAE,EAC5B,OAAO,GAAE,sBAA2B,GACnC,kBAAkB,EAAE,
|
|
1
|
+
{"version":3,"file":"buildCatalogFromOpenRouterApi.d.ts","sourceRoot":"","sources":["../src/buildCatalogFromOpenRouterApi.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAiC,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEnF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE;QACb,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;QAC5B,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;KAC9B,CAAC;IACF,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;IACpD,YAAY,CAAC,EAAE;QACb,qBAAqB,CAAC,EAAE,MAAM,CAAC;KAChC,CAAC;IACF,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAChC;;;OAGG;IACH,SAAS,CAAC,EAAE;QACV,iBAAiB,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;QAChD,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAC/B,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,mBAAmB,CAAC,EAAE,OAAO,CAAC;KAC/B,CAAC;IACF,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,IAAI,EAAE,kBAAkB,EAAE,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,4DAA4D;IAC5D,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAmB5E;AAED,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,kBAAkB,EAAE,EAC5B,OAAO,GAAE,sBAA2B,GACnC,kBAAkB,EAAE,CAgBtB;AA+GD,mGAAmG;AACnG,wBAAgB,mCAAmC,CACjD,QAAQ,EAAE,2BAA2B,EACrC,OAAO,GAAE,sBAA2B,GACnC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAsBzB;AAED,2EAA2E;AAC3E,wBAAgB,uCAAuC,CACrD,QAAQ,EAAE,2BAA2B,EACrC,OAAO,GAAE,sBAA2B,GACnC,iBAAiB,CAqBnB;AAED,0EAA0E;AAC1E,wBAAgB,mCAAmC,CACjD,QAAQ,EAAE,2BAA2B,GACpC,iBAAiB,CAEnB"}
|
|
@@ -31,6 +31,10 @@ export function filterTextOnlyOpenRouterModels(models, options = {}) {
|
|
|
31
31
|
if (!includeFree && model.id.includes(":free")) {
|
|
32
32
|
return false;
|
|
33
33
|
}
|
|
34
|
+
// OpenRouter billing variants share a canonical slug with the base SKU.
|
|
35
|
+
if (/:batch$/i.test(model.id)) {
|
|
36
|
+
return false;
|
|
37
|
+
}
|
|
34
38
|
return isTextOnlyOpenRouterModel(model);
|
|
35
39
|
});
|
|
36
40
|
}
|
|
@@ -42,6 +46,10 @@ function perTokenToPerMillion(tokenPrice) {
|
|
|
42
46
|
if (!Number.isFinite(perToken)) {
|
|
43
47
|
return undefined;
|
|
44
48
|
}
|
|
49
|
+
// OpenRouter marks free / dynamic rates as negative per-token prices.
|
|
50
|
+
if (perToken < 0) {
|
|
51
|
+
return 0;
|
|
52
|
+
}
|
|
45
53
|
return roundCatalogPricingUsd(perToken * 1_000_000);
|
|
46
54
|
}
|
|
47
55
|
function inferFamily(modelId) {
|
|
@@ -112,6 +120,7 @@ function mapLegacyEntry(model) {
|
|
|
112
120
|
webSearchPerRequest: perTokenToPerMillion(pricing.web_search),
|
|
113
121
|
},
|
|
114
122
|
capabilities: inferCapabilities(model.supported_parameters),
|
|
123
|
+
reasoning: model.reasoning,
|
|
115
124
|
};
|
|
116
125
|
}
|
|
117
126
|
/** Build the legacy OpenRouter-only catalog document (fed into {@link normalizeModelsCatalog}). */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildCatalogFromOpenRouterApi.js","sourceRoot":"","sources":["../src/buildCatalogFromOpenRouterApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,uCAAuC,EAAE,MAAM,2BAA2B,CAAC;AACpF,OAAO,EACL,yBAAyB,EACzB,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,iCAAiC,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"buildCatalogFromOpenRouterApi.js","sourceRoot":"","sources":["../src/buildCatalogFromOpenRouterApi.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catalogEnrichment.d.ts","sourceRoot":"","sources":["../src/catalogEnrichment.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"catalogEnrichment.d.ts","sourceRoot":"","sources":["../src/catalogEnrichment.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,eAAe,EACf,cAAc,EACd,UAAU,EACV,iBAAiB,EAGjB,iBAAiB,EACjB,yBAAyB,EACzB,mBAAmB,EACpB,MAAM,YAAY,CAAC;AAwCpB,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,iBAAiB,GACvB,cAAc,GAAG,SAAS,CAkB5B;AAED,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,iBAAiB,GACvB,mBAAmB,CAMrB;AAED,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,iBAAiB,EACxB,eAAe,CAAC,EAAE,OAAO,YAAY,EAAE,eAAe,GACrD,yBAAyB,CAwB3B;AAED,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,iBAAiB,EAC1B,MAAM,EAAE;IACN,QAAQ,EAAE,UAAU,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACnC,GACA,iBAAiB,GAAG,SAAS,CA+B/B;AAED,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,iBAAiB,EAC1B,MAAM,EAAE,eAAe,EACvB,MAAM,CAAC,EAAE;IAAE,QAAQ,EAAE,UAAU,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,EAClD,eAAe,CAAC,EAAE,OAAO,YAAY,EAAE,eAAe,GACrD;IACD,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,YAAY,CAAC,EAAE,yBAAyB,CAAC;IACzC,YAAY,CAAC,EAAE,iBAAiB,CAAC;CAClC,CAiBA"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { openRouterReasoningWireFromCatalog } from "./cost/reasoningWire.js";
|
|
2
2
|
import { buildModelsCatalogIndex } from "./modelsCatalog.js";
|
|
3
|
+
import { coerceAIModelPricing, coerceUsdPer1M } from "./pricingNormalize.js";
|
|
3
4
|
import { fixVendorModelId } from "./vendorModelId.js";
|
|
4
5
|
import { normalizeModalityContract } from "./modalityPolicy.js";
|
|
5
6
|
import { getChoiceOpenRouterModelId, getChoiceVendorModelId } from "./profileRegistryV2.js";
|
|
@@ -34,17 +35,17 @@ export function pricingFromCatalogEntry(entry) {
|
|
|
34
35
|
if (!pricing) {
|
|
35
36
|
return undefined;
|
|
36
37
|
}
|
|
37
|
-
return {
|
|
38
|
+
return coerceAIModelPricing({
|
|
38
39
|
input: pricing.input,
|
|
39
40
|
output: pricing.output,
|
|
40
41
|
cachedInput: pricing.cachedInput,
|
|
41
42
|
batchInput: pricing.batchInput,
|
|
42
43
|
batchOutput: pricing.batchOutput,
|
|
43
44
|
cacheWrite5m: pricing.cacheWrite,
|
|
44
|
-
notes: pricing.webSearchPerRequest
|
|
45
|
-
? `Web search per request: $${pricing.webSearchPerRequest}`
|
|
45
|
+
notes: pricing.webSearchPerRequest != null
|
|
46
|
+
? `Web search per request: $${coerceUsdPer1M(pricing.webSearchPerRequest)}`
|
|
46
47
|
: undefined,
|
|
47
|
-
};
|
|
48
|
+
});
|
|
48
49
|
}
|
|
49
50
|
export function limitsFromCatalogEntry(entry) {
|
|
50
51
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catalogEnrichment.js","sourceRoot":"","sources":["../src/catalogEnrichment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kCAAkC,EAAE,MAAM,yBAAyB,CAAC;AAC7E,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,0BAA0B,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAa5F,SAAS,YAAY,CAAC,KAAa;IACjC,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AACpC,CAAC;AAED,SAAS,sBAAsB,CAC7B,UAAuD;IAEvD,OAAO,UAAU,EAAE,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC;AACvD,CAAC;AAED,SAAS,qBAAqB,CAC5B,IAA+C,EAC/C,UAAuD,EACvD,OAAkC;IAElC,MAAM,oBAAoB,GAAG,UAAU;QACrC,CAAC,CAAC,yBAAyB,CAAC,UAAU,CAAC;QACvC,CAAC,CAAC,SAAS,CAAC;IAEd,OAAO;QACL,cAAc,EAAE,sBAAsB,CAAC,UAAU,CAAC;QAClD,aAAa,EAAE,IAAI,EAAE,WAAW;QAChC,iBAAiB,EAAE,IAAI,EAAE,SAAS;QAClC,kBAAkB,EAAE,IAAI,EAAE,iBAAiB;QAC3C,eAAe,EACb,OAAO,EAAE,WAAW,KAAK,SAAS,IAAI,OAAO,EAAE,UAAU,KAAK,SAAS;QACzE,aAAa,EACX,OAAO,EAAE,UAAU,KAAK,SAAS,IAAI,OAAO,EAAE,WAAW,KAAK,SAAS;QACzE,iBAAiB,EAAE,IAAI;QACvB,GAAG,CAAC,oBAAoB;YACtB,CAAC,CAAC;gBACE,eAAe,EAAE,oBAAoB,CAAC,KAAK;gBAC3C,gBAAgB,EAAE,oBAAoB,CAAC,MAAM;aAC9C;YACH,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,KAAwB;IAExB,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC;IACzC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO;
|
|
1
|
+
{"version":3,"file":"catalogEnrichment.js","sourceRoot":"","sources":["../src/catalogEnrichment.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"computeInvokeCost.d.ts","sourceRoot":"","sources":["../../src/cost/computeInvokeCost.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"computeInvokeCost.d.ts","sourceRoot":"","sources":["../../src/cost/computeInvokeCost.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAQ5E,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,mBAAmB;IAClC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,uBAAuB,CAAC,EAAE,MAAM,CAAC;CAClC;AAoCD,wBAAgB,cAAc,CAC5B,OAAO,CAAC,EAAE,cAAc,EACxB,cAAc,CAAC,EAAE,wBAAwB,GACxC,OAAO,CAgBT;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE;IAC3C,MAAM,EAAE,gBAAgB,CAAC;IACzB,OAAO,EAAE,cAAc,CAAC;IACxB,cAAc,CAAC,EAAE,wBAAwB,CAAC;IAC1C,OAAO,CAAC,EAAE,YAAY,GAAG,QAAQ,CAAC;IAClC,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,mBAAmB,CAAA;CAAE,CA2EvD"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
+
import { coerceUsdPer1M } from "../pricingNormalize.js";
|
|
1
2
|
import { DEFAULT_OPENROUTER_MARKUP_RATE, PROFILE_TIERED_CONTEXT_THRESHOLD, TOKENS_PER_MILLION, } from "./constants.js";
|
|
2
3
|
function usdPerToken(perMillion) {
|
|
3
|
-
return (perMillion ?? 0) / TOKENS_PER_MILLION;
|
|
4
|
+
return coerceUsdPer1M(perMillion ?? 0) / TOKENS_PER_MILLION;
|
|
4
5
|
}
|
|
5
6
|
function pickInputRatePerMillion(pricing, promptTokens) {
|
|
6
7
|
if (pricing.inputBelow200k !== undefined &&
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"computeInvokeCost.js","sourceRoot":"","sources":["../../src/cost/computeInvokeCost.ts"],"names":[],"mappings":"AACA,OAAO,EACL,8BAA8B,EAC9B,gCAAgC,EAChC,kBAAkB,GACnB,MAAM,gBAAgB,CAAC;AAwBxB,SAAS,WAAW,CAAC,UAAmB;IACtC,OAAO,CAAC,UAAU,IAAI,CAAC,CAAC,GAAG,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"computeInvokeCost.js","sourceRoot":"","sources":["../../src/cost/computeInvokeCost.ts"],"names":[],"mappings":"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"}
|