@x12i/ai-profiles 2.1.1 → 2.2.2
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 +56 -0
- package/dist/gatewayWireId.d.ts +22 -0
- package/dist/gatewayWireId.d.ts.map +1 -0
- package/dist/gatewayWireId.js +42 -0
- package/dist/gatewayWireId.js.map +1 -0
- package/dist/index.d.ts +18 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -2
- package/dist/index.js.map +1 -1
- package/dist/isKnownProfileInput.d.ts +9 -0
- package/dist/isKnownProfileInput.d.ts.map +1 -0
- package/dist/isKnownProfileInput.js +14 -0
- package/dist/isKnownProfileInput.js.map +1 -0
- package/dist/isReasoningModel.d.ts +21 -0
- package/dist/isReasoningModel.d.ts.map +1 -0
- package/dist/isReasoningModel.js +18 -0
- package/dist/isReasoningModel.js.map +1 -0
- package/dist/lookupBundledCatalogCaps.d.ts +17 -0
- package/dist/lookupBundledCatalogCaps.d.ts.map +1 -0
- package/dist/lookupBundledCatalogCaps.js +22 -0
- package/dist/lookupBundledCatalogCaps.js.map +1 -0
- package/dist/profileChoiceKey.d.ts +25 -0
- package/dist/profileChoiceKey.d.ts.map +1 -1
- package/dist/profileChoiceKey.js +51 -0
- package/dist/profileChoiceKey.js.map +1 -1
- package/dist/resolveBundledAIProfile.d.ts +11 -0
- package/dist/resolveBundledAIProfile.d.ts.map +1 -0
- package/dist/resolveBundledAIProfile.js +16 -0
- package/dist/resolveBundledAIProfile.js.map +1 -0
- package/dist/resolveBundledCatalogModel.d.ts +14 -0
- package/dist/resolveBundledCatalogModel.d.ts.map +1 -0
- package/dist/resolveBundledCatalogModel.js +74 -0
- package/dist/resolveBundledCatalogModel.js.map +1 -0
- package/dist/resolveBundledInput.d.ts +18 -0
- package/dist/resolveBundledInput.d.ts.map +1 -0
- package/dist/resolveBundledInput.js +29 -0
- package/dist/resolveBundledInput.js.map +1 -0
- package/dist/resolveProfileInputCore.d.ts +4 -0
- package/dist/resolveProfileInputCore.d.ts.map +1 -0
- package/dist/resolveProfileInputCore.js +145 -0
- package/dist/resolveProfileInputCore.js.map +1 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -217,6 +217,13 @@ npm install @x12i/ai-profiles
|
|
|
217
217
|
| `listAIProfileChoices(options?)` | No (async) | List explicit `profile/choice` keys for strict pickers and stored config |
|
|
218
218
|
| `listAIShortcuts()` | Yes | Shortcut table: `{ key, profile, choice, description? }[]` |
|
|
219
219
|
| `isKnownProfileChoice(input)` | Yes (bundled only) | Whether input is a known `profile/choice` key or shortcut |
|
|
220
|
+
| `isKnownProfileInput(input)` | Yes (bundled only) | Whether input is registry-side: `profile/choice`, shortcut, bare profile, or alias (not a concrete slug or gateway wire) |
|
|
221
|
+
| `getBundledRegistry()` | Yes | Sync bundled profiles + shortcuts (no network) |
|
|
222
|
+
| `resolveBundledAIProfile(input, options)` | Yes | Same rules as `resolveAIProfile` with `source: "bundled"`, plus bare profiles and aliases → `defaultChoice` |
|
|
223
|
+
| `resolveBundledInput(input, options)` | Yes | Unified resolver: profile inputs → registry; concrete slugs / gateway wires / `{ provider, modelId }` → catalog |
|
|
224
|
+
| `resolveBundledCatalogModel(input, options?)` | Yes | Sync catalog resolution for vendor slugs and gateway wire ids |
|
|
225
|
+
| `lookupBundledCatalogCaps({ provider, modelId })` | Yes | Sync `{ contextWindow, maxOutputTokens, supportsReasoning }` from bundled catalog |
|
|
226
|
+
| `isReasoningModel(input, options?)` | Yes | `true`/`false` for profile+choice or concrete model (same inputs as `resolveBundledInput`) |
|
|
220
227
|
| `resolveAIProfile(input, options?)` | No (async) | Resolve an explicit `profile/choice` key (or shortcut) → model, pricing, runtime. Pass `includeSecondary: true` to attach `secondary`. |
|
|
221
228
|
| `resolveSecondaryModel(input, options?)` | No (async) | Resolve primary choice + optional companion `secondary` from profile `secondary` refs |
|
|
222
229
|
| `getSecondaryForResolvedProfile(resolved, registry, catalog?)` | Yes | Secondary for an already-resolved primary (no extra I/O when catalog is passed) |
|
|
@@ -249,6 +256,8 @@ Use these when callers pass **raw model ids or OpenRouter slugs**, not profile n
|
|
|
249
256
|
| Export | Sync? | Purpose |
|
|
250
257
|
|--------|-------|---------|
|
|
251
258
|
| `resolveUseOpenRouter(explicit?)` | Yes | Resolve OpenRouter vs vendor-direct routing (option → env → default) |
|
|
259
|
+
| `applyModelRouting(choice, backend, useOpenRouter, catalog?)` | Yes | Turn a registry choice into invoke-time `{ provider, modelId, routing }` (same rules as `resolveAIProfile`) |
|
|
260
|
+
| `normalizeGatewayWireId(input)` | Yes | `openrouter/openai/gpt-5.5` → `{ provider: "openrouter", modelId: "openai/gpt-5.5" }` (profile keys like `cheap/default` are not gateway wires) |
|
|
252
261
|
| `validateBundledProfileVendorCoverage(options?)` | Yes | Advisory report of leading-vendor coverage per profile |
|
|
253
262
|
| `validateBundledProfileModalityCoverage(options?)` | Yes | Advisory report of profile choice vs required input/output media |
|
|
254
263
|
| `isProfileVendorTrimReady(profile, allowedProviders)` | Yes | Whether auto-pick can satisfy a vendor filter |
|
|
@@ -269,6 +278,53 @@ Registry JSON lives in four bundled assets:
|
|
|
269
278
|
|
|
270
279
|
Validate with `src/data/models-profiles.schema.json`. Maintainer scripts: `npm run migrate:profiles-v3`, `npm run registry:finish` (catalog supplement + verified defaults + linkage rebuild).
|
|
271
280
|
|
|
281
|
+
## Sync bundled resolution (predict / invoke)
|
|
282
|
+
|
|
283
|
+
For consumers that need **no network** and a single entry point:
|
|
284
|
+
|
|
285
|
+
```ts
|
|
286
|
+
import {
|
|
287
|
+
isKnownProfileInput,
|
|
288
|
+
isReasoningModel,
|
|
289
|
+
resolveBundledInput,
|
|
290
|
+
resolveBundledAIProfile,
|
|
291
|
+
applyModelRouting,
|
|
292
|
+
normalizeGatewayWireId,
|
|
293
|
+
lookupBundledCatalogCaps,
|
|
294
|
+
getBundledRegistry,
|
|
295
|
+
} from "@x12i/ai-profiles";
|
|
296
|
+
|
|
297
|
+
// Resolution order in resolveBundledInput (registry keys and catalog ids do not overlap):
|
|
298
|
+
// 1. Profile input (isKnownProfileInput) → registry — requires catalogLane
|
|
299
|
+
// 2. Concrete model slug, gateway wire, or { provider, modelId } → catalog
|
|
300
|
+
|
|
301
|
+
if (isKnownProfileInput("cheap")) {
|
|
302
|
+
const resolved = resolveBundledInput("cheap", { catalogLane: "text" });
|
|
303
|
+
// → cheap/default, routed provider + modelId, limits, modelSignals.isReasoningModel
|
|
304
|
+
}
|
|
305
|
+
|
|
306
|
+
const wire = normalizeGatewayWireId("openrouter/openai/gpt-5.5");
|
|
307
|
+
// → { provider: "openrouter", modelId: "openai/gpt-5.5" }
|
|
308
|
+
|
|
309
|
+
isReasoningModel("deep/default"); // true
|
|
310
|
+
isReasoningModel("cheap/default"); // true (catalog marks gemini-2.5-flash-lite reasoning-capable)
|
|
311
|
+
isReasoningModel("meta-llama/llama-3.3-70b-instruct-turbo"); // false
|
|
312
|
+
|
|
313
|
+
const caps = lookupBundledCatalogCaps({
|
|
314
|
+
provider: "openrouter",
|
|
315
|
+
modelId: "google/gemini-2.5-flash-lite",
|
|
316
|
+
});
|
|
317
|
+
|
|
318
|
+
const registry = getBundledRegistry();
|
|
319
|
+
const routed = applyModelRouting(
|
|
320
|
+
registry.profiles.cheap.choices.default,
|
|
321
|
+
"openrouter",
|
|
322
|
+
true,
|
|
323
|
+
);
|
|
324
|
+
```
|
|
325
|
+
|
|
326
|
+
`isKnownProfileInput` returns **false** for `google/gemini-2.5-flash-lite` and `openrouter/openai/gpt-5.5` so predict paths skip profile resolution on concrete model strings.
|
|
327
|
+
|
|
272
328
|
## Basic usage
|
|
273
329
|
|
|
274
330
|
```ts
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { AIProvider } from "./types.js";
|
|
2
|
+
/** Gateway providers that prefix invoke-time wire ids (`openrouter/openai/gpt-5.5`). */
|
|
3
|
+
export declare const GATEWAY_PROVIDERS: readonly ["openrouter"];
|
|
4
|
+
export type GatewayProvider = (typeof GATEWAY_PROVIDERS)[number];
|
|
5
|
+
export interface NormalizedGatewayWireId {
|
|
6
|
+
provider: GatewayProvider;
|
|
7
|
+
modelId: string;
|
|
8
|
+
}
|
|
9
|
+
export declare function isGatewayProvider(value: string): value is GatewayProvider;
|
|
10
|
+
/**
|
|
11
|
+
* Split a gateway-prefixed wire id into `{ provider, modelId }`.
|
|
12
|
+
* `openrouter/openai/gpt-5.5` → `{ provider: "openrouter", modelId: "openai/gpt-5.5" }`.
|
|
13
|
+
*
|
|
14
|
+
* Profile keys like `cheap/default` are not gateway wires (first segment is not a gateway provider).
|
|
15
|
+
*/
|
|
16
|
+
export declare function normalizeGatewayWireId(input: string): NormalizedGatewayWireId | null;
|
|
17
|
+
/** Whether `input` is a gateway wire id (not a vendor slug like `google/gemini-2.5-flash-lite`). */
|
|
18
|
+
export declare function isGatewayWireId(input: string): boolean;
|
|
19
|
+
export declare function formatGatewayWireId(provider: GatewayProvider, modelId: string): string;
|
|
20
|
+
/** Invoke-time provider after gateway normalization (openrouter stays openrouter). */
|
|
21
|
+
export declare function gatewayInvokeProvider(provider: string): AIProvider;
|
|
22
|
+
//# sourceMappingURL=gatewayWireId.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gatewayWireId.d.ts","sourceRoot":"","sources":["../src/gatewayWireId.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,wFAAwF;AACxF,eAAO,MAAM,iBAAiB,yBAA0B,CAAC;AAEzD,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEjE,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,eAAe,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,eAAe,CAEzE;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,uBAAuB,GAAG,IAAI,CAqBpF;AAED,oGAAoG;AACpG,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEtD;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAEtF;AAED,sFAAsF;AACtF,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU,CAElE"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/** Gateway providers that prefix invoke-time wire ids (`openrouter/openai/gpt-5.5`). */
|
|
2
|
+
export const GATEWAY_PROVIDERS = ["openrouter"];
|
|
3
|
+
export function isGatewayProvider(value) {
|
|
4
|
+
return GATEWAY_PROVIDERS.includes(value.trim().toLowerCase());
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Split a gateway-prefixed wire id into `{ provider, modelId }`.
|
|
8
|
+
* `openrouter/openai/gpt-5.5` → `{ provider: "openrouter", modelId: "openai/gpt-5.5" }`.
|
|
9
|
+
*
|
|
10
|
+
* Profile keys like `cheap/default` are not gateway wires (first segment is not a gateway provider).
|
|
11
|
+
*/
|
|
12
|
+
export function normalizeGatewayWireId(input) {
|
|
13
|
+
const trimmed = input.trim();
|
|
14
|
+
if (!trimmed.includes("/")) {
|
|
15
|
+
return null;
|
|
16
|
+
}
|
|
17
|
+
const slash = trimmed.indexOf("/");
|
|
18
|
+
const prefix = trimmed.slice(0, slash).toLowerCase();
|
|
19
|
+
if (!isGatewayProvider(prefix)) {
|
|
20
|
+
return null;
|
|
21
|
+
}
|
|
22
|
+
const modelId = trimmed.slice(slash + 1).trim();
|
|
23
|
+
if (!modelId) {
|
|
24
|
+
return null;
|
|
25
|
+
}
|
|
26
|
+
return {
|
|
27
|
+
provider: prefix,
|
|
28
|
+
modelId,
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
/** Whether `input` is a gateway wire id (not a vendor slug like `google/gemini-2.5-flash-lite`). */
|
|
32
|
+
export function isGatewayWireId(input) {
|
|
33
|
+
return normalizeGatewayWireId(input) !== null;
|
|
34
|
+
}
|
|
35
|
+
export function formatGatewayWireId(provider, modelId) {
|
|
36
|
+
return `${provider}/${modelId}`;
|
|
37
|
+
}
|
|
38
|
+
/** Invoke-time provider after gateway normalization (openrouter stays openrouter). */
|
|
39
|
+
export function gatewayInvokeProvider(provider) {
|
|
40
|
+
return isGatewayProvider(provider) ? provider : provider;
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=gatewayWireId.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gatewayWireId.js","sourceRoot":"","sources":["../src/gatewayWireId.ts"],"names":[],"mappings":"AAEA,wFAAwF;AACxF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,YAAY,CAAU,CAAC;AASzD,MAAM,UAAU,iBAAiB,CAAC,KAAa;IAC7C,OAAQ,iBAAuC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;AACvF,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CAAC,KAAa;IAClD,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC3B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACnC,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;IACrD,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAChD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,QAAQ,EAAE,MAAM;QAChB,OAAO;KACR,CAAC;AACJ,CAAC;AAED,oGAAoG;AACpG,MAAM,UAAU,eAAe,CAAC,KAAa;IAC3C,OAAO,sBAAsB,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,QAAyB,EAAE,OAAe;IAC5E,OAAO,GAAG,QAAQ,IAAI,OAAO,EAAE,CAAC;AAClC,CAAC;AAED,sFAAsF;AACtF,MAAM,UAAU,qBAAqB,CAAC,QAAgB;IACpD,OAAO,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAE,QAAuB,CAAC;AAC3E,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -10,6 +10,9 @@ export { getAIRegistryStatistics } from "./getAIRegistryStatistics.js";
|
|
|
10
10
|
export { computeProfilesStatistics, computeCatalogStatistics, computeLinkageStatistics, computeShortcutsStatistics, buildRegistryStatistics, } from "./computeRegistryStatistics.js";
|
|
11
11
|
export { formatRegistryStatistics } from "./formatRegistryStatistics.js";
|
|
12
12
|
export { resolveAIProfile } from "./resolveAIProfile.js";
|
|
13
|
+
export { resolveBundledAIProfile } from "./resolveBundledAIProfile.js";
|
|
14
|
+
export { resolveBundledInput } from "./resolveBundledInput.js";
|
|
15
|
+
export { resolveBundledCatalogModel } from "./resolveBundledCatalogModel.js";
|
|
13
16
|
export { resolveCatalogModel } from "./resolveCatalogModel.js";
|
|
14
17
|
export { resolveAIProfileWithCostAlternatives, type ResolveAIProfileWithCostAlternativesResult, } from "./resolveAIProfileWithCostAlternatives.js";
|
|
15
18
|
export { resolveSecondaryModel, getSecondaryForResolvedProfile, } from "./resolveSecondaryModel.js";
|
|
@@ -17,11 +20,19 @@ export { listProfileSecondaries } from "./secondaryModel.js";
|
|
|
17
20
|
export { validateIntentLayerName, validateProfileTagLength, FORBIDDEN_INTENT_VENDOR_TOKENS, } from "./validation/profileIntentPolicy.js";
|
|
18
21
|
export { validateUniqueProfileTagSets } from "./validation/validateModelsProfilesJson.js";
|
|
19
22
|
export { isKnownProfileChoice } from "./isKnownProfileChoice.js";
|
|
20
|
-
export {
|
|
21
|
-
export
|
|
23
|
+
export { isKnownProfileInput } from "./isKnownProfileInput.js";
|
|
24
|
+
export { getBundledRegistry } from "./bundledRegistry.js";
|
|
25
|
+
export { lookupBundledCatalogCaps } from "./lookupBundledCatalogCaps.js";
|
|
26
|
+
export { isReasoningModel } from "./isReasoningModel.js";
|
|
27
|
+
export type { IsReasoningModelOptions } from "./isReasoningModel.js";
|
|
28
|
+
export { PROFILE_CHOICE_KEY_SEP, formatProfileChoiceKey, parseProfileChoiceKey, isProfileChoiceKeyFormat, matchStrictProfileInput, matchBundledProfileInput, listRegistryProfileChoiceKeys, isKnownProfileChoiceInput, isKnownProfileInputForRegistry, } from "./profileChoiceKey.js";
|
|
29
|
+
export type { ProfileChoiceRef, StrictProfileInputMatch, BundledProfileInputMatch, } from "./profileChoiceKey.js";
|
|
22
30
|
export { matchDiscoveryProfileInput } from "./profileDiscoveryMatch.js";
|
|
23
31
|
export type { DiscoveryProfileMatch } from "./profileDiscoveryMatch.js";
|
|
24
|
-
export { resolveUseOpenRouter, readUseOpenRouterFromEnv, buildOpenRouterModelId, } from "./resolveModelRouting.js";
|
|
32
|
+
export { resolveUseOpenRouter, readUseOpenRouterFromEnv, buildOpenRouterModelId, applyModelRouting, isRemoteProfileChoice, } from "./resolveModelRouting.js";
|
|
33
|
+
export type { AppliedModelRouting } from "./resolveModelRouting.js";
|
|
34
|
+
export { GATEWAY_PROVIDERS, isGatewayProvider, isGatewayWireId, normalizeGatewayWireId, formatGatewayWireId, gatewayInvokeProvider, } from "./gatewayWireId.js";
|
|
35
|
+
export type { GatewayProvider, NormalizedGatewayWireId } from "./gatewayWireId.js";
|
|
25
36
|
export { buildModelInvocation, buildDirectInvocation, buildRegistryKey, matchOpenRouterCatalog, normalizeAnthropicVersionSlug, openRouterResolutionCandidates, } from "./modelIdentity.js";
|
|
26
37
|
export { resolveModelIdentity } from "./resolveModelIdentity.js";
|
|
27
38
|
export type { ModelVendorRef, ResolveModelIdentityOptions, } from "./resolveModelIdentity.js";
|
|
@@ -52,6 +63,10 @@ export type { GetAIRegistryStatisticsResult } from "./getAIRegistryStatistics.js
|
|
|
52
63
|
export type { LoadCatalogResult } from "./loader/loadModelsCatalog.js";
|
|
53
64
|
export type { LoadRegistryOptions, LoadRegistryResult, } from "./types.js";
|
|
54
65
|
export type { AIModelRoutingMode } from "./resolveModelRouting.js";
|
|
66
|
+
export type { ResolveProfileInputCoreOptions } from "./resolveProfileInputCore.js";
|
|
67
|
+
export type { ResolveBundledInput, ResolveBundledInputOptions, } from "./resolveBundledInput.js";
|
|
68
|
+
export type { BundledCatalogModelInput, ResolveBundledCatalogModelOptions, } from "./resolveBundledCatalogModel.js";
|
|
69
|
+
export type { BundledCatalogCaps } from "./lookupBundledCatalogCaps.js";
|
|
55
70
|
export { normalizeKey, normalizeSegmentKey, resolveSegmentKey } from "./normalizeKey.js";
|
|
56
71
|
export { AIProfilesError } from "./errors.js";
|
|
57
72
|
export type { AIProfilesErrorCode } from "./errors.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,uBAAuB,EACvB,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,YAAY,EAAE,6BAA6B,EAAE,MAAM,6BAA6B,CAAC;AACjF,OAAO,EACL,qBAAqB,EACrB,kBAAkB,EAClB,yBAAyB,EACzB,yBAAyB,EACzB,0BAA0B,EAC1B,+BAA+B,EAC/B,wBAAwB,GACzB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EACL,yBAAyB,EACzB,wBAAwB,EACxB,wBAAwB,EACxB,0BAA0B,EAC1B,uBAAuB,GACxB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EACL,oCAAoC,EACpC,KAAK,0CAA0C,GAChD,MAAM,2CAA2C,CAAC;AACnD,OAAO,EACL,qBAAqB,EACrB,8BAA8B,GAC/B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EACxB,8BAA8B,GAC/B,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,4BAA4B,EAAE,MAAM,4CAA4C,CAAC;AAC1F,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,EACrB,wBAAwB,EACxB,uBAAuB,EACvB,6BAA6B,EAC7B,yBAAyB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -8,6 +8,9 @@ export { getAIRegistryStatistics } from "./getAIRegistryStatistics.js";
|
|
|
8
8
|
export { computeProfilesStatistics, computeCatalogStatistics, computeLinkageStatistics, computeShortcutsStatistics, buildRegistryStatistics, } from "./computeRegistryStatistics.js";
|
|
9
9
|
export { formatRegistryStatistics } from "./formatRegistryStatistics.js";
|
|
10
10
|
export { resolveAIProfile } from "./resolveAIProfile.js";
|
|
11
|
+
export { resolveBundledAIProfile } from "./resolveBundledAIProfile.js";
|
|
12
|
+
export { resolveBundledInput } from "./resolveBundledInput.js";
|
|
13
|
+
export { resolveBundledCatalogModel } from "./resolveBundledCatalogModel.js";
|
|
11
14
|
export { resolveCatalogModel } from "./resolveCatalogModel.js";
|
|
12
15
|
export { resolveAIProfileWithCostAlternatives, } from "./resolveAIProfileWithCostAlternatives.js";
|
|
13
16
|
export { resolveSecondaryModel, getSecondaryForResolvedProfile, } from "./resolveSecondaryModel.js";
|
|
@@ -15,9 +18,14 @@ export { listProfileSecondaries } from "./secondaryModel.js";
|
|
|
15
18
|
export { validateIntentLayerName, validateProfileTagLength, FORBIDDEN_INTENT_VENDOR_TOKENS, } from "./validation/profileIntentPolicy.js";
|
|
16
19
|
export { validateUniqueProfileTagSets } from "./validation/validateModelsProfilesJson.js";
|
|
17
20
|
export { isKnownProfileChoice } from "./isKnownProfileChoice.js";
|
|
18
|
-
export {
|
|
21
|
+
export { isKnownProfileInput } from "./isKnownProfileInput.js";
|
|
22
|
+
export { getBundledRegistry } from "./bundledRegistry.js";
|
|
23
|
+
export { lookupBundledCatalogCaps } from "./lookupBundledCatalogCaps.js";
|
|
24
|
+
export { isReasoningModel } from "./isReasoningModel.js";
|
|
25
|
+
export { PROFILE_CHOICE_KEY_SEP, formatProfileChoiceKey, parseProfileChoiceKey, isProfileChoiceKeyFormat, matchStrictProfileInput, matchBundledProfileInput, listRegistryProfileChoiceKeys, isKnownProfileChoiceInput, isKnownProfileInputForRegistry, } from "./profileChoiceKey.js";
|
|
19
26
|
export { matchDiscoveryProfileInput } from "./profileDiscoveryMatch.js";
|
|
20
|
-
export { resolveUseOpenRouter, readUseOpenRouterFromEnv, buildOpenRouterModelId, } from "./resolveModelRouting.js";
|
|
27
|
+
export { resolveUseOpenRouter, readUseOpenRouterFromEnv, buildOpenRouterModelId, applyModelRouting, isRemoteProfileChoice, } from "./resolveModelRouting.js";
|
|
28
|
+
export { GATEWAY_PROVIDERS, isGatewayProvider, isGatewayWireId, normalizeGatewayWireId, formatGatewayWireId, gatewayInvokeProvider, } from "./gatewayWireId.js";
|
|
21
29
|
export { buildModelInvocation, buildDirectInvocation, buildRegistryKey, matchOpenRouterCatalog, normalizeAnthropicVersionSlug, openRouterResolutionCandidates, } from "./modelIdentity.js";
|
|
22
30
|
export { resolveModelIdentity } from "./resolveModelIdentity.js";
|
|
23
31
|
export { buildModelInvocationFromChoice, getChoiceVendorModelId, getChoiceOpenRouterModelId, getChoicePricing, flattenChoicePricing, fixVendorModelId, } from "./profileRegistryV2.js";
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,uBAAuB,EACvB,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAErE,OAAO,EACL,qBAAqB,EACrB,kBAAkB,EAClB,yBAAyB,EACzB,yBAAyB,EACzB,0BAA0B,EAC1B,+BAA+B,EAC/B,wBAAwB,GACzB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EACL,yBAAyB,EACzB,wBAAwB,EACxB,wBAAwB,EACxB,0BAA0B,EAC1B,uBAAuB,GACxB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EACL,oCAAoC,GAErC,MAAM,2CAA2C,CAAC;AACnD,OAAO,EACL,qBAAqB,EACrB,8BAA8B,GAC/B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EACxB,8BAA8B,GAC/B,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,4BAA4B,EAAE,MAAM,4CAA4C,CAAC;AAC1F,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,EACrB,wBAAwB,EACxB,uBAAuB,EACvB,6BAA6B,EAC7B,yBAAyB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Whether `input` is a registry-side profile reference (not a concrete model slug).
|
|
3
|
+
*
|
|
4
|
+
* Returns true for `profile/choice`, shortcuts, bare profiles, and profile aliases.
|
|
5
|
+
* Returns false for vendor slugs (`google/gemini-2.5-flash-lite`) and gateway wires
|
|
6
|
+
* (`openrouter/openai/gpt-5.5`). Sync — bundled registry only.
|
|
7
|
+
*/
|
|
8
|
+
export declare function isKnownProfileInput(input: string): boolean;
|
|
9
|
+
//# sourceMappingURL=isKnownProfileInput.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isKnownProfileInput.d.ts","sourceRoot":"","sources":["../src/isKnownProfileInput.ts"],"names":[],"mappings":"AAGA;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAG1D"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { getBundledRegistry } from "./bundledRegistry.js";
|
|
2
|
+
import { isKnownProfileInputForRegistry } from "./profileChoiceKey.js";
|
|
3
|
+
/**
|
|
4
|
+
* Whether `input` is a registry-side profile reference (not a concrete model slug).
|
|
5
|
+
*
|
|
6
|
+
* Returns true for `profile/choice`, shortcuts, bare profiles, and profile aliases.
|
|
7
|
+
* Returns false for vendor slugs (`google/gemini-2.5-flash-lite`) and gateway wires
|
|
8
|
+
* (`openrouter/openai/gpt-5.5`). Sync — bundled registry only.
|
|
9
|
+
*/
|
|
10
|
+
export function isKnownProfileInput(input) {
|
|
11
|
+
const registry = getBundledRegistry();
|
|
12
|
+
return isKnownProfileInputForRegistry(registry, input);
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=isKnownProfileInput.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isKnownProfileInput.js","sourceRoot":"","sources":["../src/isKnownProfileInput.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,8BAA8B,EAAE,MAAM,uBAAuB,CAAC;AAEvE;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAa;IAC/C,MAAM,QAAQ,GAAG,kBAAkB,EAAE,CAAC;IACtC,OAAO,8BAA8B,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;AACzD,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { type ResolveBundledInput } from "./resolveBundledInput.js";
|
|
2
|
+
import type { ProfileCatalogLane } from "./types.js";
|
|
3
|
+
export interface IsReasoningModelOptions {
|
|
4
|
+
/**
|
|
5
|
+
* Catalog lane for profile inputs (`cheap/default`, shortcuts, bare profiles, aliases).
|
|
6
|
+
* Defaults to `"text"`.
|
|
7
|
+
*/
|
|
8
|
+
catalogLane?: ProfileCatalogLane;
|
|
9
|
+
useOpenRouter?: boolean;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Whether a profile reference or concrete model is reasoning-capable (sync, bundled catalog).
|
|
13
|
+
*
|
|
14
|
+
* Accepts the same inputs as {@link resolveBundledInput}:
|
|
15
|
+
* - Profile: `profile/choice`, shortcuts, bare profiles, aliases
|
|
16
|
+
* - Concrete: vendor slugs, gateway wire ids, `{ provider, modelId }`
|
|
17
|
+
*
|
|
18
|
+
* @throws {@link AIProfilesError} when the input cannot be resolved (same as `resolveBundledInput`).
|
|
19
|
+
*/
|
|
20
|
+
export declare function isReasoningModel(input: ResolveBundledInput, options?: IsReasoningModelOptions): boolean;
|
|
21
|
+
//# sourceMappingURL=isReasoningModel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isReasoningModel.d.ts","sourceRoot":"","sources":["../src/isReasoningModel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACzF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAErD,MAAM,WAAW,uBAAuB;IACtC;;;OAGG;IACH,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,mBAAmB,EAC1B,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAMT"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { resolveBundledInput } from "./resolveBundledInput.js";
|
|
2
|
+
/**
|
|
3
|
+
* Whether a profile reference or concrete model is reasoning-capable (sync, bundled catalog).
|
|
4
|
+
*
|
|
5
|
+
* Accepts the same inputs as {@link resolveBundledInput}:
|
|
6
|
+
* - Profile: `profile/choice`, shortcuts, bare profiles, aliases
|
|
7
|
+
* - Concrete: vendor slugs, gateway wire ids, `{ provider, modelId }`
|
|
8
|
+
*
|
|
9
|
+
* @throws {@link AIProfilesError} when the input cannot be resolved (same as `resolveBundledInput`).
|
|
10
|
+
*/
|
|
11
|
+
export function isReasoningModel(input, options = {}) {
|
|
12
|
+
const resolved = resolveBundledInput(input, {
|
|
13
|
+
catalogLane: options.catalogLane ?? "text",
|
|
14
|
+
useOpenRouter: options.useOpenRouter,
|
|
15
|
+
});
|
|
16
|
+
return resolved.modelSignals.isReasoningModel;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=isReasoningModel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isReasoningModel.js","sourceRoot":"","sources":["../src/isReasoningModel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAA4B,MAAM,0BAA0B,CAAC;AAYzF;;;;;;;;GAQG;AACH,MAAM,UAAU,gBAAgB,CAC9B,KAA0B,EAC1B,UAAmC,EAAE;IAErC,MAAM,QAAQ,GAAG,mBAAmB,CAAC,KAAK,EAAE;QAC1C,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,MAAM;QAC1C,aAAa,EAAE,OAAO,CAAC,aAAa;KACrC,CAAC,CAAC;IACH,OAAO,QAAQ,CAAC,YAAY,CAAC,gBAAgB,CAAC;AAChD,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { AIProvider } from "./types.js";
|
|
2
|
+
export interface BundledCatalogCaps {
|
|
3
|
+
contextWindow?: number;
|
|
4
|
+
maxOutputTokens?: number;
|
|
5
|
+
supportsReasoning?: boolean;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Sync bundled lookup of catalog limits and reasoning capability for a routed model.
|
|
9
|
+
* Tries `openRouterModelId`, `provider/modelId`, and bare `modelId` (same order as
|
|
10
|
+
* {@link findCatalogModelEntry}).
|
|
11
|
+
*/
|
|
12
|
+
export declare function lookupBundledCatalogCaps(params: {
|
|
13
|
+
provider: AIProvider;
|
|
14
|
+
modelId: string;
|
|
15
|
+
openRouterModelId?: string | null;
|
|
16
|
+
}): BundledCatalogCaps | undefined;
|
|
17
|
+
//# sourceMappingURL=lookupBundledCatalogCaps.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lookupBundledCatalogCaps.d.ts","sourceRoot":"","sources":["../src/lookupBundledCatalogCaps.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,MAAM,WAAW,kBAAkB;IACjC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE;IAC/C,QAAQ,EAAE,UAAU,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACnC,GAAG,kBAAkB,GAAG,SAAS,CAejC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { loadBundledModelsCatalog } from "./loader/loadBundledModelsCatalog.js";
|
|
2
|
+
import { capabilitiesFromCatalogEntry, findCatalogModelEntry, limitsFromCatalogEntry, } from "./catalogEnrichment.js";
|
|
3
|
+
/**
|
|
4
|
+
* Sync bundled lookup of catalog limits and reasoning capability for a routed model.
|
|
5
|
+
* Tries `openRouterModelId`, `provider/modelId`, and bare `modelId` (same order as
|
|
6
|
+
* {@link findCatalogModelEntry}).
|
|
7
|
+
*/
|
|
8
|
+
export function lookupBundledCatalogCaps(params) {
|
|
9
|
+
const catalog = loadBundledModelsCatalog();
|
|
10
|
+
const entry = findCatalogModelEntry(catalog, params);
|
|
11
|
+
if (!entry) {
|
|
12
|
+
return undefined;
|
|
13
|
+
}
|
|
14
|
+
const limits = limitsFromCatalogEntry(entry);
|
|
15
|
+
const capabilities = capabilitiesFromCatalogEntry(entry);
|
|
16
|
+
return {
|
|
17
|
+
contextWindow: limits.contextWindow,
|
|
18
|
+
maxOutputTokens: limits.maxOutputTokens,
|
|
19
|
+
supportsReasoning: capabilities.supportsReasoning,
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=lookupBundledCatalogCaps.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lookupBundledCatalogCaps.js","sourceRoot":"","sources":["../src/lookupBundledCatalogCaps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAC;AAChF,OAAO,EACL,4BAA4B,EAC5B,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,wBAAwB,CAAC;AAShC;;;;GAIG;AACH,MAAM,UAAU,wBAAwB,CAAC,MAIxC;IACC,MAAM,OAAO,GAAG,wBAAwB,EAAE,CAAC;IAC3C,MAAM,KAAK,GAAG,qBAAqB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACrD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,MAAM,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;IAC7C,MAAM,YAAY,GAAG,4BAA4B,CAAC,KAAK,CAAC,CAAC;IAEzD,OAAO;QACL,aAAa,EAAE,MAAM,CAAC,aAAa;QACnC,eAAe,EAAE,MAAM,CAAC,eAAe;QACvC,iBAAiB,EAAE,YAAY,CAAC,iBAAiB;KAClD,CAAC;AACJ,CAAC"}
|
|
@@ -34,4 +34,29 @@ export type StrictProfileInputMatch = {
|
|
|
34
34
|
export declare function matchStrictProfileInput(registry: Pick<AIProfilesRegistry, "profiles" | "shortcuts">, input: string): StrictProfileInputMatch | undefined;
|
|
35
35
|
export declare function listRegistryProfileChoiceKeys(registry: Pick<AIProfilesRegistry, "profiles">): ProfileChoiceRef[];
|
|
36
36
|
export declare function isKnownProfileChoiceInput(registry: Pick<AIProfilesRegistry, "profiles" | "shortcuts">, input: string): boolean;
|
|
37
|
+
export type BundledProfileInputMatch = {
|
|
38
|
+
kind: "profileChoice";
|
|
39
|
+
profile: string;
|
|
40
|
+
choice: string;
|
|
41
|
+
shortcutKey?: string;
|
|
42
|
+
} | {
|
|
43
|
+
kind: "bareProfile";
|
|
44
|
+
profile: string;
|
|
45
|
+
choice: string;
|
|
46
|
+
} | {
|
|
47
|
+
kind: "alias";
|
|
48
|
+
profile: string;
|
|
49
|
+
choice: string;
|
|
50
|
+
alias: string;
|
|
51
|
+
} | {
|
|
52
|
+
kind: "invalidChoice";
|
|
53
|
+
profile: string;
|
|
54
|
+
choice: string;
|
|
55
|
+
};
|
|
56
|
+
/**
|
|
57
|
+
* Bundled profile resolution match: strict keys, shortcuts, bare profiles, and aliases.
|
|
58
|
+
* Bare profiles and aliases resolve to `defaultChoice`.
|
|
59
|
+
*/
|
|
60
|
+
export declare function matchBundledProfileInput(registry: Pick<AIProfilesRegistry, "profiles" | "shortcuts">, input: string): BundledProfileInputMatch | undefined;
|
|
61
|
+
export declare function isKnownProfileInputForRegistry(registry: Pick<AIProfilesRegistry, "profiles" | "shortcuts">, input: string): boolean;
|
|
37
62
|
//# sourceMappingURL=profileChoiceKey.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"profileChoiceKey.d.ts","sourceRoot":"","sources":["../src/profileChoiceKey.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"profileChoiceKey.d.ts","sourceRoot":"","sources":["../src/profileChoiceKey.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAErD,+EAA+E;AAC/E,eAAO,MAAM,sBAAsB,EAAG,GAAY,CAAC;AAOnD,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAE9E;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAejF;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAE/D;AAED,MAAM,MAAM,uBAAuB,GAC/B;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAC1D;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAC1D;IACE,IAAI,EAAE,UAAU,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AA6BN;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,IAAI,CAAC,kBAAkB,EAAE,UAAU,GAAG,WAAW,CAAC,EAC5D,KAAK,EAAE,MAAM,GACZ,uBAAuB,GAAG,SAAS,CAsCrC;AAED,wBAAgB,6BAA6B,CAC3C,QAAQ,EAAE,IAAI,CAAC,kBAAkB,EAAE,UAAU,CAAC,GAC7C,gBAAgB,EAAE,CAQpB;AAED,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,IAAI,CAAC,kBAAkB,EAAE,UAAU,GAAG,WAAW,CAAC,EAC5D,KAAK,EAAE,MAAM,GACZ,OAAO,CAET;AAED,MAAM,MAAM,wBAAwB,GAChC;IACE,IAAI,EAAE,eAAe,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,GACD;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACxD;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACjE;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAE/D;;;GAGG;AACH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,IAAI,CAAC,kBAAkB,EAAE,UAAU,GAAG,WAAW,CAAC,EAC5D,KAAK,EAAE,MAAM,GACZ,wBAAwB,GAAG,SAAS,CA6CtC;AAED,wBAAgB,8BAA8B,CAC5C,QAAQ,EAAE,IAAI,CAAC,kBAAkB,EAAE,UAAU,GAAG,WAAW,CAAC,EAC5D,KAAK,EAAE,MAAM,GACZ,OAAO,CAGT"}
|
package/dist/profileChoiceKey.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { normalizeKey, normalizeSegmentKey, resolveSegmentKey, } from "./normalizeKey.js";
|
|
2
|
+
import { matchDiscoveryProfileInput } from "./profileDiscoveryMatch.js";
|
|
2
3
|
/** Separator for the canonical profile+choice lookup key (`cheap/default`). */
|
|
3
4
|
export const PROFILE_CHOICE_KEY_SEP = "/";
|
|
4
5
|
/** Normalize composite input: trim/lowercase and treat `\` like `/`. */
|
|
@@ -93,4 +94,54 @@ export function listRegistryProfileChoiceKeys(registry) {
|
|
|
93
94
|
export function isKnownProfileChoiceInput(registry, input) {
|
|
94
95
|
return matchStrictProfileInput(registry, input) !== undefined;
|
|
95
96
|
}
|
|
97
|
+
/**
|
|
98
|
+
* Bundled profile resolution match: strict keys, shortcuts, bare profiles, and aliases.
|
|
99
|
+
* Bare profiles and aliases resolve to `defaultChoice`.
|
|
100
|
+
*/
|
|
101
|
+
export function matchBundledProfileInput(registry, input) {
|
|
102
|
+
const strict = matchStrictProfileInput(registry, input);
|
|
103
|
+
if (strict) {
|
|
104
|
+
if (strict.kind === "invalidChoice") {
|
|
105
|
+
return strict;
|
|
106
|
+
}
|
|
107
|
+
if (strict.kind === "shortcut") {
|
|
108
|
+
return {
|
|
109
|
+
kind: "profileChoice",
|
|
110
|
+
profile: strict.profile,
|
|
111
|
+
choice: strict.choice,
|
|
112
|
+
shortcutKey: strict.shortcutKey,
|
|
113
|
+
};
|
|
114
|
+
}
|
|
115
|
+
return {
|
|
116
|
+
kind: "profileChoice",
|
|
117
|
+
profile: strict.profile,
|
|
118
|
+
choice: strict.choice,
|
|
119
|
+
};
|
|
120
|
+
}
|
|
121
|
+
const discovery = matchDiscoveryProfileInput(registry, input);
|
|
122
|
+
if (!discovery) {
|
|
123
|
+
return undefined;
|
|
124
|
+
}
|
|
125
|
+
const profile = registry.profiles[discovery.profileKey];
|
|
126
|
+
if (!profile) {
|
|
127
|
+
return undefined;
|
|
128
|
+
}
|
|
129
|
+
if (discovery.kind === "alias") {
|
|
130
|
+
return {
|
|
131
|
+
kind: "alias",
|
|
132
|
+
profile: discovery.profileKey,
|
|
133
|
+
choice: profile.defaultChoice,
|
|
134
|
+
alias: discovery.alias,
|
|
135
|
+
};
|
|
136
|
+
}
|
|
137
|
+
return {
|
|
138
|
+
kind: "bareProfile",
|
|
139
|
+
profile: discovery.profileKey,
|
|
140
|
+
choice: profile.defaultChoice,
|
|
141
|
+
};
|
|
142
|
+
}
|
|
143
|
+
export function isKnownProfileInputForRegistry(registry, input) {
|
|
144
|
+
const match = matchBundledProfileInput(registry, input);
|
|
145
|
+
return match !== undefined && match.kind !== "invalidChoice";
|
|
146
|
+
}
|
|
96
147
|
//# sourceMappingURL=profileChoiceKey.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"profileChoiceKey.js","sourceRoot":"","sources":["../src/profileChoiceKey.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"profileChoiceKey.js","sourceRoot":"","sources":["../src/profileChoiceKey.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { type ResolveProfileInputCoreOptions } from "./resolveProfileInputCore.js";
|
|
2
|
+
import type { ResolvedAIProfile } from "./types.js";
|
|
3
|
+
/**
|
|
4
|
+
* Sync bundled profile+choice resolution — same rules as
|
|
5
|
+
* `resolveAIProfile(input, { source: "bundled", catalogLane })`, without network.
|
|
6
|
+
*
|
|
7
|
+
* Accepts `profile/choice`, shortcuts, bare profiles (`cheap` → `defaultChoice`),
|
|
8
|
+
* and profile aliases.
|
|
9
|
+
*/
|
|
10
|
+
export declare function resolveBundledAIProfile(input: string, options: ResolveProfileInputCoreOptions): ResolvedAIProfile;
|
|
11
|
+
//# sourceMappingURL=resolveBundledAIProfile.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolveBundledAIProfile.d.ts","sourceRoot":"","sources":["../src/resolveBundledAIProfile.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,KAAK,8BAA8B,EACpC,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEpD;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,8BAA8B,GACtC,iBAAiB,CAInB"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { getBundledRegistry } from "./bundledRegistry.js";
|
|
2
|
+
import { loadBundledModelsCatalog } from "./loader/loadBundledModelsCatalog.js";
|
|
3
|
+
import { resolveProfileInputCore, } from "./resolveProfileInputCore.js";
|
|
4
|
+
/**
|
|
5
|
+
* Sync bundled profile+choice resolution — same rules as
|
|
6
|
+
* `resolveAIProfile(input, { source: "bundled", catalogLane })`, without network.
|
|
7
|
+
*
|
|
8
|
+
* Accepts `profile/choice`, shortcuts, bare profiles (`cheap` → `defaultChoice`),
|
|
9
|
+
* and profile aliases.
|
|
10
|
+
*/
|
|
11
|
+
export function resolveBundledAIProfile(input, options) {
|
|
12
|
+
const registry = getBundledRegistry();
|
|
13
|
+
const catalog = loadBundledModelsCatalog();
|
|
14
|
+
return resolveProfileInputCore(input, options, registry, catalog);
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=resolveBundledAIProfile.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolveBundledAIProfile.js","sourceRoot":"","sources":["../src/resolveBundledAIProfile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAC;AAChF,OAAO,EACL,uBAAuB,GAExB,MAAM,8BAA8B,CAAC;AAGtC;;;;;;GAMG;AACH,MAAM,UAAU,uBAAuB,CACrC,KAAa,EACb,OAAuC;IAEvC,MAAM,QAAQ,GAAG,kBAAkB,EAAE,CAAC;IACtC,MAAM,OAAO,GAAG,wBAAwB,EAAE,CAAC;IAC3C,OAAO,uBAAuB,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;AACpE,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { ResolvedAIProfile } from "./types.js";
|
|
2
|
+
export interface ResolveBundledCatalogModelOptions {
|
|
3
|
+
useOpenRouter?: boolean;
|
|
4
|
+
}
|
|
5
|
+
export type BundledCatalogModelInput = string | {
|
|
6
|
+
provider: string;
|
|
7
|
+
modelId: string;
|
|
8
|
+
};
|
|
9
|
+
/**
|
|
10
|
+
* Sync bundled catalog resolution for concrete model slugs and gateway wire ids.
|
|
11
|
+
* Use {@link resolveBundledAIProfile} for profile/choice inputs.
|
|
12
|
+
*/
|
|
13
|
+
export declare function resolveBundledCatalogModel(input: BundledCatalogModelInput, options?: ResolveBundledCatalogModelOptions): ResolvedAIProfile;
|
|
14
|
+
//# sourceMappingURL=resolveBundledCatalogModel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolveBundledCatalogModel.d.ts","sourceRoot":"","sources":["../src/resolveBundledCatalogModel.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEpD,MAAM,WAAW,iCAAiC;IAChD,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,MAAM,wBAAwB,GAChC,MAAM,GACN;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAmC1C;;;GAGG;AACH,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,wBAAwB,EAC/B,OAAO,GAAE,iCAAsC,GAC9C,iBAAiB,CA8CnB"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { getBundledRegistry } from "./bundledRegistry.js";
|
|
2
|
+
import { loadBundledModelsCatalog } from "./loader/loadBundledModelsCatalog.js";
|
|
3
|
+
import { AIProfilesError } from "./errors.js";
|
|
4
|
+
import { formatGatewayWireId, gatewayInvokeProvider, isGatewayProvider, normalizeGatewayWireId, } from "./gatewayWireId.js";
|
|
5
|
+
import { buildResolvedModelInput, resolveModelFromInput, } from "./modelInputFallback.js";
|
|
6
|
+
function catalogLookupKey(input) {
|
|
7
|
+
if (typeof input === "string") {
|
|
8
|
+
const gateway = normalizeGatewayWireId(input);
|
|
9
|
+
if (gateway) {
|
|
10
|
+
return {
|
|
11
|
+
lookupInput: gateway.modelId,
|
|
12
|
+
displayInput: formatGatewayWireId(gateway.provider, gateway.modelId),
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
return { lookupInput: input, displayInput: input };
|
|
16
|
+
}
|
|
17
|
+
const provider = input.provider.trim();
|
|
18
|
+
const modelId = input.modelId.trim();
|
|
19
|
+
if (isGatewayProvider(provider)) {
|
|
20
|
+
return {
|
|
21
|
+
lookupInput: modelId,
|
|
22
|
+
displayInput: formatGatewayWireId(provider, modelId),
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
const combined = modelId.includes("/") && !modelId.startsWith(`${provider}/`)
|
|
26
|
+
? `${provider}/${modelId}`
|
|
27
|
+
: modelId.includes("/")
|
|
28
|
+
? modelId
|
|
29
|
+
: `${provider}/${modelId}`;
|
|
30
|
+
return { lookupInput: combined, displayInput: combined };
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Sync bundled catalog resolution for concrete model slugs and gateway wire ids.
|
|
34
|
+
* Use {@link resolveBundledAIProfile} for profile/choice inputs.
|
|
35
|
+
*/
|
|
36
|
+
export function resolveBundledCatalogModel(input, options = {}) {
|
|
37
|
+
const registry = getBundledRegistry();
|
|
38
|
+
const catalog = loadBundledModelsCatalog();
|
|
39
|
+
const { lookupInput, displayInput } = catalogLookupKey(input);
|
|
40
|
+
const match = resolveModelFromInput(lookupInput, catalog);
|
|
41
|
+
if (!match || (match.confidence !== "exact" && match.confidence !== "high")) {
|
|
42
|
+
throw new AIProfilesError("UNKNOWN_MODEL", `Unknown catalog model: ${displayInput}`, { input: displayInput });
|
|
43
|
+
}
|
|
44
|
+
const resolved = buildResolvedModelInput({
|
|
45
|
+
input: displayInput,
|
|
46
|
+
match,
|
|
47
|
+
registry,
|
|
48
|
+
useOpenRouter: options.useOpenRouter,
|
|
49
|
+
});
|
|
50
|
+
if (typeof input === "object" && isGatewayProvider(input.provider)) {
|
|
51
|
+
const useOpenRouter = options.useOpenRouter ?? true;
|
|
52
|
+
if (useOpenRouter) {
|
|
53
|
+
return {
|
|
54
|
+
...resolved,
|
|
55
|
+
provider: gatewayInvokeProvider(input.provider),
|
|
56
|
+
modelId: input.modelId.trim(),
|
|
57
|
+
routing: "openrouter",
|
|
58
|
+
backend: "openrouter",
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
const gateway = typeof input === "string" ? normalizeGatewayWireId(input) : null;
|
|
63
|
+
if (gateway && (options.useOpenRouter ?? true)) {
|
|
64
|
+
return {
|
|
65
|
+
...resolved,
|
|
66
|
+
provider: gateway.provider,
|
|
67
|
+
modelId: gateway.modelId,
|
|
68
|
+
routing: "openrouter",
|
|
69
|
+
backend: "openrouter",
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
return resolved;
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=resolveBundledCatalogModel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolveBundledCatalogModel.js","sourceRoot":"","sources":["../src/resolveBundledCatalogModel.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { type BundledCatalogModelInput, type ResolveBundledCatalogModelOptions } from "./resolveBundledCatalogModel.js";
|
|
2
|
+
import type { ResolveProfileInputCoreOptions } from "./resolveProfileInputCore.js";
|
|
3
|
+
import type { ResolvedAIProfile } from "./types.js";
|
|
4
|
+
export type ResolveBundledInput = BundledCatalogModelInput;
|
|
5
|
+
export interface ResolveBundledInputOptions extends ResolveProfileInputCoreOptions, ResolveBundledCatalogModelOptions {
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Unified sync bundled resolver for predict consumers.
|
|
9
|
+
*
|
|
10
|
+
* **Resolution order** (registry keys and catalog ids do not overlap):
|
|
11
|
+
* 1. **String profile input** — when {@link isKnownProfileInput} is true: shortcuts,
|
|
12
|
+
* `profile/choice`, bare profiles, and aliases → bundled registry
|
|
13
|
+
* (requires `options.catalogLane`).
|
|
14
|
+
* 2. **Concrete model** — vendor slugs (`google/gemini-2.5-flash-lite`), gateway wire ids
|
|
15
|
+
* (`openrouter/openai/gpt-5.5`), or `{ provider, modelId }` → bundled catalog.
|
|
16
|
+
*/
|
|
17
|
+
export declare function resolveBundledInput(input: ResolveBundledInput, options: ResolveBundledInputOptions): ResolvedAIProfile;
|
|
18
|
+
//# sourceMappingURL=resolveBundledInput.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolveBundledInput.d.ts","sourceRoot":"","sources":["../src/resolveBundledInput.ts"],"names":[],"mappings":"AAIA,OAAO,EAEL,KAAK,wBAAwB,EAC7B,KAAK,iCAAiC,EACvC,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,8BAA8B,CAAC;AACnF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEpD,MAAM,MAAM,mBAAmB,GAAG,wBAAwB,CAAC;AAE3D,MAAM,WAAW,0BACf,SAAQ,8BAA8B,EACpC,iCAAiC;CAAG;AAExC;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,mBAAmB,EAC1B,OAAO,EAAE,0BAA0B,GAClC,iBAAiB,CAiBnB"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { AIProfilesError } from "./errors.js";
|
|
2
|
+
import { isKnownProfileInputForRegistry } from "./profileChoiceKey.js";
|
|
3
|
+
import { getBundledRegistry } from "./bundledRegistry.js";
|
|
4
|
+
import { resolveBundledAIProfile } from "./resolveBundledAIProfile.js";
|
|
5
|
+
import { resolveBundledCatalogModel, } from "./resolveBundledCatalogModel.js";
|
|
6
|
+
/**
|
|
7
|
+
* Unified sync bundled resolver for predict consumers.
|
|
8
|
+
*
|
|
9
|
+
* **Resolution order** (registry keys and catalog ids do not overlap):
|
|
10
|
+
* 1. **String profile input** — when {@link isKnownProfileInput} is true: shortcuts,
|
|
11
|
+
* `profile/choice`, bare profiles, and aliases → bundled registry
|
|
12
|
+
* (requires `options.catalogLane`).
|
|
13
|
+
* 2. **Concrete model** — vendor slugs (`google/gemini-2.5-flash-lite`), gateway wire ids
|
|
14
|
+
* (`openrouter/openai/gpt-5.5`), or `{ provider, modelId }` → bundled catalog.
|
|
15
|
+
*/
|
|
16
|
+
export function resolveBundledInput(input, options) {
|
|
17
|
+
if (typeof input === "string") {
|
|
18
|
+
const registry = getBundledRegistry();
|
|
19
|
+
if (isKnownProfileInputForRegistry(registry, input)) {
|
|
20
|
+
if (!options.catalogLane) {
|
|
21
|
+
throw new AIProfilesError("MISSING_CATALOG_LANE", "Profile input requires options.catalogLane (e.g. \"text\", \"image\")", { input });
|
|
22
|
+
}
|
|
23
|
+
return resolveBundledAIProfile(input, options);
|
|
24
|
+
}
|
|
25
|
+
return resolveBundledCatalogModel(input, options);
|
|
26
|
+
}
|
|
27
|
+
return resolveBundledCatalogModel(input, options);
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=resolveBundledInput.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolveBundledInput.js","sourceRoot":"","sources":["../src/resolveBundledInput.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,8BAA8B,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EACL,0BAA0B,GAG3B,MAAM,iCAAiC,CAAC;AAUzC;;;;;;;;;GASG;AACH,MAAM,UAAU,mBAAmB,CACjC,KAA0B,EAC1B,OAAmC;IAEnC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,MAAM,QAAQ,GAAG,kBAAkB,EAAE,CAAC;QACtC,IAAI,8BAA8B,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;YACpD,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;gBACzB,MAAM,IAAI,eAAe,CACvB,sBAAsB,EACtB,uEAAuE,EACvE,EAAE,KAAK,EAAE,CACV,CAAC;YACJ,CAAC;YACD,OAAO,uBAAuB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACjD,CAAC;QACD,OAAO,0BAA0B,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACpD,CAAC;IAED,OAAO,0BAA0B,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AACpD,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { AIProfileWarning, AIProfilesRegistry, ModelsCatalogJson, ResolveAIProfileOptions, ResolvedAIProfile } from "./types.js";
|
|
2
|
+
export type ResolveProfileInputCoreOptions = Omit<ResolveAIProfileOptions, "source" | "refresh" | "includeSecondary">;
|
|
3
|
+
export declare function resolveProfileInputCore(input: string, options: ResolveProfileInputCoreOptions, registry: AIProfilesRegistry, catalog: ModelsCatalogJson, loaderWarnings?: AIProfileWarning[]): ResolvedAIProfile;
|
|
4
|
+
//# sourceMappingURL=resolveProfileInputCore.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolveProfileInputCore.d.ts","sourceRoot":"","sources":["../src/resolveProfileInputCore.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EACV,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,uBAAuB,EACvB,iBAAiB,EAClB,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,8BAA8B,GAAG,IAAI,CAC/C,uBAAuB,EACvB,QAAQ,GAAG,SAAS,GAAG,kBAAkB,CAC1C,CAAC;AAEF,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,8BAA8B,EACvC,QAAQ,EAAE,kBAAkB,EAC5B,OAAO,EAAE,iBAAiB,EAC1B,cAAc,GAAE,gBAAgB,EAAO,GACtC,iBAAiB,CA8KnB"}
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
import { buildResolvedProfile } from "./buildResolvedProfile.js";
|
|
2
|
+
import { AIProfilesError } from "./errors.js";
|
|
3
|
+
import { formatProfileChoiceKey, matchBundledProfileInput, } from "./profileChoiceKey.js";
|
|
4
|
+
import { pickProfileChoiceWithConstraints } from "./modalityPolicy.js";
|
|
5
|
+
import { normalizeCostCap } from "./costPolicy.js";
|
|
6
|
+
import { resolveCostTierCap } from "./costTiers.js";
|
|
7
|
+
import { assertOpenRouterCatalogCoverage, assertProfileCatalogLane, } from "./profileCatalogLane.js";
|
|
8
|
+
export function resolveProfileInputCore(input, options, registry, catalog, loaderWarnings = []) {
|
|
9
|
+
if (!options.catalogLane) {
|
|
10
|
+
throw new AIProfilesError("MISSING_CATALOG_LANE", "Profile resolution requires options.catalogLane (e.g. \"text\", \"image\")", { input });
|
|
11
|
+
}
|
|
12
|
+
const match = matchBundledProfileInput(registry, input);
|
|
13
|
+
if (!match) {
|
|
14
|
+
throw new AIProfilesError("UNKNOWN_PROFILE_CHOICE", `Unknown profile/choice key: ${input}. Use "profile/choice" (e.g. "cheap/default"), a shortcut, a profile key, or a profile alias.`, { input });
|
|
15
|
+
}
|
|
16
|
+
if (match.kind === "invalidChoice") {
|
|
17
|
+
throw new AIProfilesError("UNKNOWN_CHOICE", `Unknown choice '${match.choice}' for AI profile '${match.profile}'`, { input, profile: match.profile, choice: match.choice });
|
|
18
|
+
}
|
|
19
|
+
const profileKey = match.profile;
|
|
20
|
+
const requestedChoiceKey = match.choice;
|
|
21
|
+
const matchedShortcut = match.kind === "profileChoice" && match.shortcutKey
|
|
22
|
+
? registry.shortcuts[match.shortcutKey]
|
|
23
|
+
: undefined;
|
|
24
|
+
const profile = registry.profiles[profileKey];
|
|
25
|
+
if (!profile) {
|
|
26
|
+
throw new AIProfilesError("UNKNOWN_PROFILE", `Unknown AI profile: ${profileKey}`, { input, profile: profileKey });
|
|
27
|
+
}
|
|
28
|
+
try {
|
|
29
|
+
assertProfileCatalogLane({
|
|
30
|
+
profileKey,
|
|
31
|
+
profile,
|
|
32
|
+
requestedLane: options.catalogLane,
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
catch (error) {
|
|
36
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
37
|
+
throw new AIProfilesError("CATALOG_LANE_MISMATCH", message, {
|
|
38
|
+
input,
|
|
39
|
+
profile: profileKey,
|
|
40
|
+
catalogLane: options.catalogLane,
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
const costCapPer1M = options.costCapPer1M ??
|
|
44
|
+
resolveCostTierCap(options.costTier, options.costTiers);
|
|
45
|
+
let finalChoiceKey;
|
|
46
|
+
let choice;
|
|
47
|
+
try {
|
|
48
|
+
const picked = pickProfileChoiceWithConstraints(profileKey, profile, {
|
|
49
|
+
choiceKey: requestedChoiceKey,
|
|
50
|
+
allowedProviders: options.allowedProviders,
|
|
51
|
+
preferLeadingVendors: options.preferLeadingVendors ?? true,
|
|
52
|
+
explicitChoiceRequested: true,
|
|
53
|
+
inputModalities: options.inputModalities,
|
|
54
|
+
outputModalities: options.outputModalities,
|
|
55
|
+
costCapPer1M,
|
|
56
|
+
capabilityFilter: options.capabilityFilter,
|
|
57
|
+
focus: options.focus,
|
|
58
|
+
catalog,
|
|
59
|
+
});
|
|
60
|
+
finalChoiceKey = picked.choiceKey;
|
|
61
|
+
choice = picked.choice;
|
|
62
|
+
}
|
|
63
|
+
catch (error) {
|
|
64
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
65
|
+
if (message.includes("allowedProviders")) {
|
|
66
|
+
throw new AIProfilesError("NO_ALLOWED_VENDOR", message, {
|
|
67
|
+
input,
|
|
68
|
+
profile: profileKey,
|
|
69
|
+
choice: requestedChoiceKey,
|
|
70
|
+
allowedProviders: options.allowedProviders,
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
if (message.includes("required modalities")) {
|
|
74
|
+
throw new AIProfilesError("NO_MODALITY_MATCH", message, {
|
|
75
|
+
input,
|
|
76
|
+
profile: profileKey,
|
|
77
|
+
choice: requestedChoiceKey,
|
|
78
|
+
inputModalities: options.inputModalities,
|
|
79
|
+
outputModalities: options.outputModalities,
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
if (message.includes("cost cap")) {
|
|
83
|
+
throw new AIProfilesError("NO_COST_CAP_MATCH", message, {
|
|
84
|
+
input,
|
|
85
|
+
profile: profileKey,
|
|
86
|
+
choice: requestedChoiceKey,
|
|
87
|
+
costCapPer1M,
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
if (message.startsWith("Unknown choice")) {
|
|
91
|
+
throw new AIProfilesError("UNKNOWN_CHOICE", message, {
|
|
92
|
+
input,
|
|
93
|
+
profile: profileKey,
|
|
94
|
+
choice: requestedChoiceKey,
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
throw error;
|
|
98
|
+
}
|
|
99
|
+
if (finalChoiceKey !== requestedChoiceKey) {
|
|
100
|
+
throw new AIProfilesError("CHOICE_SUBSTITUTED", `Explicit choice '${requestedChoiceKey}' was replaced with '${finalChoiceKey}' for profile '${profileKey}'. Use a different profile/choice key or discovery APIs.`, {
|
|
101
|
+
input,
|
|
102
|
+
profile: profileKey,
|
|
103
|
+
choice: requestedChoiceKey,
|
|
104
|
+
resolvedChoice: finalChoiceKey,
|
|
105
|
+
expectedKey: formatProfileChoiceKey(profileKey, requestedChoiceKey),
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
const enforceOpenRouterCatalog = profileKey === "local"
|
|
109
|
+
? options.requireOpenRouterCatalog === true
|
|
110
|
+
: options.requireOpenRouterCatalog !== false;
|
|
111
|
+
if (enforceOpenRouterCatalog) {
|
|
112
|
+
try {
|
|
113
|
+
assertOpenRouterCatalogCoverage({
|
|
114
|
+
profileKey,
|
|
115
|
+
choiceKey: finalChoiceKey,
|
|
116
|
+
choice,
|
|
117
|
+
catalog,
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
catch (error) {
|
|
121
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
122
|
+
throw new AIProfilesError("NO_OPENROUTER_CATALOG", message, {
|
|
123
|
+
input,
|
|
124
|
+
profile: profileKey,
|
|
125
|
+
choice: finalChoiceKey,
|
|
126
|
+
provider: choice.provider,
|
|
127
|
+
modelId: choice.modelId,
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
return buildResolvedProfile({
|
|
132
|
+
input,
|
|
133
|
+
shortcutKey: match.kind === "profileChoice" ? match.shortcutKey : undefined,
|
|
134
|
+
profile,
|
|
135
|
+
choice,
|
|
136
|
+
choiceKey: finalChoiceKey,
|
|
137
|
+
shortcut: matchedShortcut,
|
|
138
|
+
registry,
|
|
139
|
+
loaderWarnings,
|
|
140
|
+
useOpenRouter: options.useOpenRouter,
|
|
141
|
+
catalog,
|
|
142
|
+
costCapApplied: normalizeCostCap(costCapPer1M),
|
|
143
|
+
});
|
|
144
|
+
}
|
|
145
|
+
//# sourceMappingURL=resolveProfileInputCore.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolveProfileInputCore.js","sourceRoot":"","sources":["../src/resolveProfileInputCore.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED