@oh-my-pi/pi-catalog 16.3.14 → 16.3.15
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/CHANGELOG.md +18 -0
- package/dist/types/provider-models/openai-compat.d.ts +12 -0
- package/dist/types/types.d.ts +7 -0
- package/package.json +3 -3
- package/src/compat/openai.ts +1 -1
- package/src/identity/family.ts +1 -1
- package/src/models.json +748 -33
- package/src/provider-models/openai-compat.ts +57 -0
- package/src/types.ts +7 -0
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,24 @@
|
|
|
2
2
|
|
|
3
3
|
## [Unreleased]
|
|
4
4
|
|
|
5
|
+
## [16.3.15] - 2026-07-09
|
|
6
|
+
|
|
7
|
+
### Added
|
|
8
|
+
|
|
9
|
+
- Added support for Grok 4.5 model
|
|
10
|
+
- Added `gpt-5.6` base models and `gpt-5.6-{luna,sol,terra}-pro` variants
|
|
11
|
+
- Added `meta/muse-spark-1.1` model support
|
|
12
|
+
- Added support for thinking modes on `poolside/laguna` models
|
|
13
|
+
- Added generated GPT-5.6 Pro aliases (`gpt-5.6-{luna,sol,terra}-pro`) on the `openai` and `openai-codex` providers: each alias sends the base model id on the wire (`requestModelId`) with the new `reasoningMode: "pro"` marker, and re-derives from the current base rows on every catalog regeneration.
|
|
14
|
+
|
|
15
|
+
### Changed
|
|
16
|
+
|
|
17
|
+
- Updated cache read costs for Grok models
|
|
18
|
+
- Reduced max token limit for Grok 4.3 model
|
|
19
|
+
- Enabled prompt cache affinity for Grok models via the x-grok-conv-id header in OpenAI compatible endpoints
|
|
20
|
+
- Enabled prompt cache affinity for Grok models via the x-grok-conv-id header
|
|
21
|
+
- Marked direct xAI Grok Chat Completions models for `x-grok-conv-id` prompt-cache affinity.
|
|
22
|
+
|
|
5
23
|
## [16.3.14] - 2026-07-09
|
|
6
24
|
|
|
7
25
|
### Added
|
|
@@ -54,6 +54,18 @@ export interface OpenAIModelManagerConfig {
|
|
|
54
54
|
fetch?: FetchImpl;
|
|
55
55
|
}
|
|
56
56
|
export declare function openaiModelManagerOptions(config?: OpenAIModelManagerConfig): ModelManagerOptions<"openai-responses">;
|
|
57
|
+
/**
|
|
58
|
+
* Re-derive the generated pro-reasoning aliases (`gpt-5.6-*-pro`) for the
|
|
59
|
+
* first-party `openai`/`openai-codex` gpt-5.6 rows. Each alias inherits the
|
|
60
|
+
* base row's metadata, requests the base wire id via `requestModelId`, and
|
|
61
|
+
* sets `reasoningMode: "pro"` so Responses-family request builders emit
|
|
62
|
+
* `reasoning: { mode: "pro" }`. Called by the models.json generator after all
|
|
63
|
+
* sources merge: stale copies of the owned aliases (previous snapshot) are
|
|
64
|
+
* dropped and re-projected from the current base rows so alias metadata always
|
|
65
|
+
* tracks the base, while a real upstream model that occupies an alias id wins
|
|
66
|
+
* and suppresses the projection.
|
|
67
|
+
*/
|
|
68
|
+
export declare function projectOpenAIProReasoningAliases(models: readonly ModelSpec<Api>[]): ModelSpec<Api>[];
|
|
57
69
|
export interface GroqModelManagerConfig {
|
|
58
70
|
apiKey?: string;
|
|
59
71
|
baseUrl?: string;
|
package/dist/types/types.d.ts
CHANGED
|
@@ -563,6 +563,13 @@ export interface Model<TApi extends Api = Api> {
|
|
|
563
563
|
* everything local (selection, caching, usage attribution) keys on `id`.
|
|
564
564
|
*/
|
|
565
565
|
requestModelId?: string;
|
|
566
|
+
/**
|
|
567
|
+
* `reasoning.mode` to send on OpenAI Responses-family requests. Set on
|
|
568
|
+
* generated pro aliases (`gpt-5.6-*-pro` on `openai`/`openai-codex`) that
|
|
569
|
+
* pair a base wire id (`requestModelId`) with OpenAI's pro reasoning
|
|
570
|
+
* serving path. Absent everywhere else; providers omit the wire field.
|
|
571
|
+
*/
|
|
572
|
+
reasoningMode?: "pro";
|
|
566
573
|
name: string;
|
|
567
574
|
api: TApi;
|
|
568
575
|
provider: Provider;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"type": "module",
|
|
3
3
|
"name": "@oh-my-pi/pi-catalog",
|
|
4
|
-
"version": "16.3.
|
|
4
|
+
"version": "16.3.15",
|
|
5
5
|
"description": "Model catalog for omp: bundled model database, provider discovery descriptors, model identity, classification, and equivalence",
|
|
6
6
|
"homepage": "https://omp.sh",
|
|
7
7
|
"author": "Can Boluk",
|
|
@@ -34,12 +34,12 @@
|
|
|
34
34
|
},
|
|
35
35
|
"dependencies": {
|
|
36
36
|
"@bufbuild/protobuf": "^2.12.0",
|
|
37
|
-
"@oh-my-pi/pi-utils": "16.3.
|
|
37
|
+
"@oh-my-pi/pi-utils": "16.3.15",
|
|
38
38
|
"arktype": "^2.2.0",
|
|
39
39
|
"zod": "^4"
|
|
40
40
|
},
|
|
41
41
|
"devDependencies": {
|
|
42
|
-
"@oh-my-pi/pi-ai": "16.3.
|
|
42
|
+
"@oh-my-pi/pi-ai": "16.3.15",
|
|
43
43
|
"@types/bun": "^1.3.14"
|
|
44
44
|
},
|
|
45
45
|
"engines": {
|
package/src/compat/openai.ts
CHANGED
|
@@ -541,7 +541,7 @@ export function buildOpenAICompat(spec: ModelSpec<"openai-completions">): Resolv
|
|
|
541
541
|
MINIMAX_PROVIDER_OR_ID_PATTERN.test(provider) || MINIMAX_PROVIDER_OR_ID_PATTERN.test(spec.id),
|
|
542
542
|
emptyLengthFinishIsContextError: provider === "ollama",
|
|
543
543
|
usesOpenAIToolCallIdLimit: provider === "openai",
|
|
544
|
-
promptCacheSessionHeader: undefined,
|
|
544
|
+
promptCacheSessionHeader: isGrok ? "x-grok-conv-id" : undefined,
|
|
545
545
|
dropThinkingWhenReasoningEffort: provider === "fireworks",
|
|
546
546
|
};
|
|
547
547
|
|
package/src/identity/family.ts
CHANGED
|
@@ -78,7 +78,7 @@ export const isMimoModelIdOrName = memo((value: string): boolean => {
|
|
|
78
78
|
return value.toLowerCase().includes("mimo");
|
|
79
79
|
});
|
|
80
80
|
|
|
81
|
-
const GROK_EFFORT_CAPABLE_PREFIXES = ["grok-3-mini", "grok-4.20-multi-agent", "grok-4.3"] as const;
|
|
81
|
+
const GROK_EFFORT_CAPABLE_PREFIXES = ["grok-3-mini", "grok-4.20-multi-agent", "grok-4.3", "grok-4.5"] as const;
|
|
82
82
|
|
|
83
83
|
/**
|
|
84
84
|
* Grok SKUs that expose the wire `reasoning.effort` dial. Other Grok reasoners
|
package/src/models.json
CHANGED
|
@@ -32288,7 +32288,7 @@
|
|
|
32288
32288
|
"api": "openai-completions",
|
|
32289
32289
|
"provider": "kilo",
|
|
32290
32290
|
"baseUrl": "https://api.kilo.ai/api/gateway",
|
|
32291
|
-
"reasoning":
|
|
32291
|
+
"reasoning": true,
|
|
32292
32292
|
"input": [
|
|
32293
32293
|
"text"
|
|
32294
32294
|
],
|
|
@@ -32299,7 +32299,17 @@
|
|
|
32299
32299
|
"cacheWrite": 0
|
|
32300
32300
|
},
|
|
32301
32301
|
"contextWindow": 262144,
|
|
32302
|
-
"maxTokens": 32768
|
|
32302
|
+
"maxTokens": 32768,
|
|
32303
|
+
"thinking": {
|
|
32304
|
+
"mode": "effort",
|
|
32305
|
+
"efforts": [
|
|
32306
|
+
"minimal",
|
|
32307
|
+
"low",
|
|
32308
|
+
"medium",
|
|
32309
|
+
"high",
|
|
32310
|
+
"xhigh"
|
|
32311
|
+
]
|
|
32312
|
+
}
|
|
32303
32313
|
},
|
|
32304
32314
|
"poolside/laguna-m.1:free": {
|
|
32305
32315
|
"id": "poolside/laguna-m.1:free",
|
|
@@ -32374,7 +32384,7 @@
|
|
|
32374
32384
|
"api": "openai-completions",
|
|
32375
32385
|
"provider": "kilo",
|
|
32376
32386
|
"baseUrl": "https://api.kilo.ai/api/gateway",
|
|
32377
|
-
"reasoning":
|
|
32387
|
+
"reasoning": true,
|
|
32378
32388
|
"input": [
|
|
32379
32389
|
"text"
|
|
32380
32390
|
],
|
|
@@ -32385,7 +32395,17 @@
|
|
|
32385
32395
|
"cacheWrite": 0
|
|
32386
32396
|
},
|
|
32387
32397
|
"contextWindow": 262144,
|
|
32388
|
-
"maxTokens": 32768
|
|
32398
|
+
"maxTokens": 32768,
|
|
32399
|
+
"thinking": {
|
|
32400
|
+
"mode": "effort",
|
|
32401
|
+
"efforts": [
|
|
32402
|
+
"minimal",
|
|
32403
|
+
"low",
|
|
32404
|
+
"medium",
|
|
32405
|
+
"high",
|
|
32406
|
+
"xhigh"
|
|
32407
|
+
]
|
|
32408
|
+
}
|
|
32389
32409
|
},
|
|
32390
32410
|
"poolside/laguna-xs.2:free": {
|
|
32391
32411
|
"id": "poolside/laguna-xs.2:free",
|
|
@@ -45679,6 +45699,25 @@
|
|
|
45679
45699
|
"contextWindow": 328000,
|
|
45680
45700
|
"maxTokens": 65536
|
|
45681
45701
|
},
|
|
45702
|
+
"meta/muse-spark-1.1": {
|
|
45703
|
+
"id": "meta/muse-spark-1.1",
|
|
45704
|
+
"name": "meta/muse-spark-1.1",
|
|
45705
|
+
"api": "openai-completions",
|
|
45706
|
+
"provider": "nanogpt",
|
|
45707
|
+
"baseUrl": "https://nano-gpt.com/api/v1",
|
|
45708
|
+
"reasoning": false,
|
|
45709
|
+
"input": [
|
|
45710
|
+
"text"
|
|
45711
|
+
],
|
|
45712
|
+
"cost": {
|
|
45713
|
+
"input": 0,
|
|
45714
|
+
"output": 0,
|
|
45715
|
+
"cacheRead": 0,
|
|
45716
|
+
"cacheWrite": 0
|
|
45717
|
+
},
|
|
45718
|
+
"contextWindow": 1048576,
|
|
45719
|
+
"maxTokens": 1048576
|
|
45720
|
+
},
|
|
45682
45721
|
"microsoft/MAI-DS-R1-FP8": {
|
|
45683
45722
|
"id": "microsoft/MAI-DS-R1-FP8",
|
|
45684
45723
|
"name": "microsoft/MAI-DS-R1-FP8",
|
|
@@ -48497,6 +48536,174 @@
|
|
|
48497
48536
|
},
|
|
48498
48537
|
"contextPromotionTarget": "nanogpt/openai/gpt-5.4"
|
|
48499
48538
|
},
|
|
48539
|
+
"openai/gpt-5.6-luna": {
|
|
48540
|
+
"id": "openai/gpt-5.6-luna",
|
|
48541
|
+
"name": "GPT-5.6 Luna",
|
|
48542
|
+
"api": "openai-completions",
|
|
48543
|
+
"provider": "nanogpt",
|
|
48544
|
+
"baseUrl": "https://nano-gpt.com/api/v1",
|
|
48545
|
+
"reasoning": true,
|
|
48546
|
+
"input": [
|
|
48547
|
+
"text",
|
|
48548
|
+
"image"
|
|
48549
|
+
],
|
|
48550
|
+
"cost": {
|
|
48551
|
+
"input": 1,
|
|
48552
|
+
"output": 6,
|
|
48553
|
+
"cacheRead": 0.09999999999999999,
|
|
48554
|
+
"cacheWrite": 0
|
|
48555
|
+
},
|
|
48556
|
+
"contextWindow": 1050000,
|
|
48557
|
+
"maxTokens": 128000,
|
|
48558
|
+
"thinking": {
|
|
48559
|
+
"mode": "effort",
|
|
48560
|
+
"efforts": [
|
|
48561
|
+
"minimal",
|
|
48562
|
+
"low",
|
|
48563
|
+
"medium",
|
|
48564
|
+
"high",
|
|
48565
|
+
"xhigh"
|
|
48566
|
+
],
|
|
48567
|
+
"effortMap": {
|
|
48568
|
+
"minimal": "low",
|
|
48569
|
+
"low": "medium",
|
|
48570
|
+
"medium": "high",
|
|
48571
|
+
"high": "xhigh",
|
|
48572
|
+
"xhigh": "max"
|
|
48573
|
+
}
|
|
48574
|
+
}
|
|
48575
|
+
},
|
|
48576
|
+
"openai/gpt-5.6-luna-pro": {
|
|
48577
|
+
"id": "openai/gpt-5.6-luna-pro",
|
|
48578
|
+
"name": "GPT-5.6 Luna Pro",
|
|
48579
|
+
"api": "openai-completions",
|
|
48580
|
+
"provider": "nanogpt",
|
|
48581
|
+
"baseUrl": "https://nano-gpt.com/api/v1",
|
|
48582
|
+
"reasoning": false,
|
|
48583
|
+
"input": [
|
|
48584
|
+
"text"
|
|
48585
|
+
],
|
|
48586
|
+
"cost": {
|
|
48587
|
+
"input": 0,
|
|
48588
|
+
"output": 0,
|
|
48589
|
+
"cacheRead": 0,
|
|
48590
|
+
"cacheWrite": 0
|
|
48591
|
+
},
|
|
48592
|
+
"contextWindow": 1050000,
|
|
48593
|
+
"maxTokens": 128000
|
|
48594
|
+
},
|
|
48595
|
+
"openai/gpt-5.6-sol": {
|
|
48596
|
+
"id": "openai/gpt-5.6-sol",
|
|
48597
|
+
"name": "GPT-5.6 Sol",
|
|
48598
|
+
"api": "openai-completions",
|
|
48599
|
+
"provider": "nanogpt",
|
|
48600
|
+
"baseUrl": "https://nano-gpt.com/api/v1",
|
|
48601
|
+
"reasoning": true,
|
|
48602
|
+
"input": [
|
|
48603
|
+
"text",
|
|
48604
|
+
"image"
|
|
48605
|
+
],
|
|
48606
|
+
"cost": {
|
|
48607
|
+
"input": 5,
|
|
48608
|
+
"output": 30,
|
|
48609
|
+
"cacheRead": 0.5,
|
|
48610
|
+
"cacheWrite": 0
|
|
48611
|
+
},
|
|
48612
|
+
"contextWindow": 1050000,
|
|
48613
|
+
"maxTokens": 128000,
|
|
48614
|
+
"thinking": {
|
|
48615
|
+
"mode": "effort",
|
|
48616
|
+
"efforts": [
|
|
48617
|
+
"minimal",
|
|
48618
|
+
"low",
|
|
48619
|
+
"medium",
|
|
48620
|
+
"high",
|
|
48621
|
+
"xhigh"
|
|
48622
|
+
],
|
|
48623
|
+
"effortMap": {
|
|
48624
|
+
"minimal": "low",
|
|
48625
|
+
"low": "medium",
|
|
48626
|
+
"medium": "high",
|
|
48627
|
+
"high": "xhigh",
|
|
48628
|
+
"xhigh": "max"
|
|
48629
|
+
}
|
|
48630
|
+
}
|
|
48631
|
+
},
|
|
48632
|
+
"openai/gpt-5.6-sol-pro": {
|
|
48633
|
+
"id": "openai/gpt-5.6-sol-pro",
|
|
48634
|
+
"name": "GPT-5.6 Sol Pro",
|
|
48635
|
+
"api": "openai-completions",
|
|
48636
|
+
"provider": "nanogpt",
|
|
48637
|
+
"baseUrl": "https://nano-gpt.com/api/v1",
|
|
48638
|
+
"reasoning": false,
|
|
48639
|
+
"input": [
|
|
48640
|
+
"text"
|
|
48641
|
+
],
|
|
48642
|
+
"cost": {
|
|
48643
|
+
"input": 0,
|
|
48644
|
+
"output": 0,
|
|
48645
|
+
"cacheRead": 0,
|
|
48646
|
+
"cacheWrite": 0
|
|
48647
|
+
},
|
|
48648
|
+
"contextWindow": 1050000,
|
|
48649
|
+
"maxTokens": 128000
|
|
48650
|
+
},
|
|
48651
|
+
"openai/gpt-5.6-terra": {
|
|
48652
|
+
"id": "openai/gpt-5.6-terra",
|
|
48653
|
+
"name": "GPT-5.6 Terra",
|
|
48654
|
+
"api": "openai-completions",
|
|
48655
|
+
"provider": "nanogpt",
|
|
48656
|
+
"baseUrl": "https://nano-gpt.com/api/v1",
|
|
48657
|
+
"reasoning": true,
|
|
48658
|
+
"input": [
|
|
48659
|
+
"text",
|
|
48660
|
+
"image"
|
|
48661
|
+
],
|
|
48662
|
+
"cost": {
|
|
48663
|
+
"input": 2.5,
|
|
48664
|
+
"output": 15,
|
|
48665
|
+
"cacheRead": 0.25,
|
|
48666
|
+
"cacheWrite": 0
|
|
48667
|
+
},
|
|
48668
|
+
"contextWindow": 1050000,
|
|
48669
|
+
"maxTokens": 128000,
|
|
48670
|
+
"thinking": {
|
|
48671
|
+
"mode": "effort",
|
|
48672
|
+
"efforts": [
|
|
48673
|
+
"minimal",
|
|
48674
|
+
"low",
|
|
48675
|
+
"medium",
|
|
48676
|
+
"high",
|
|
48677
|
+
"xhigh"
|
|
48678
|
+
],
|
|
48679
|
+
"effortMap": {
|
|
48680
|
+
"minimal": "low",
|
|
48681
|
+
"low": "medium",
|
|
48682
|
+
"medium": "high",
|
|
48683
|
+
"high": "xhigh",
|
|
48684
|
+
"xhigh": "max"
|
|
48685
|
+
}
|
|
48686
|
+
}
|
|
48687
|
+
},
|
|
48688
|
+
"openai/gpt-5.6-terra-pro": {
|
|
48689
|
+
"id": "openai/gpt-5.6-terra-pro",
|
|
48690
|
+
"name": "GPT-5.6 Terra Pro",
|
|
48691
|
+
"api": "openai-completions",
|
|
48692
|
+
"provider": "nanogpt",
|
|
48693
|
+
"baseUrl": "https://nano-gpt.com/api/v1",
|
|
48694
|
+
"reasoning": false,
|
|
48695
|
+
"input": [
|
|
48696
|
+
"text"
|
|
48697
|
+
],
|
|
48698
|
+
"cost": {
|
|
48699
|
+
"input": 0,
|
|
48700
|
+
"output": 0,
|
|
48701
|
+
"cacheRead": 0,
|
|
48702
|
+
"cacheWrite": 0
|
|
48703
|
+
},
|
|
48704
|
+
"contextWindow": 1050000,
|
|
48705
|
+
"maxTokens": 128000
|
|
48706
|
+
},
|
|
48500
48707
|
"openai/gpt-chat-latest": {
|
|
48501
48708
|
"id": "openai/gpt-chat-latest",
|
|
48502
48709
|
"name": "GPT Chat Latest",
|
|
@@ -49105,41 +49312,61 @@
|
|
|
49105
49312
|
},
|
|
49106
49313
|
"poolside/laguna-m.1": {
|
|
49107
49314
|
"id": "poolside/laguna-m.1",
|
|
49108
|
-
"name": "
|
|
49315
|
+
"name": "Laguna M.1",
|
|
49109
49316
|
"api": "openai-completions",
|
|
49110
49317
|
"provider": "nanogpt",
|
|
49111
49318
|
"baseUrl": "https://nano-gpt.com/api/v1",
|
|
49112
|
-
"reasoning":
|
|
49319
|
+
"reasoning": true,
|
|
49113
49320
|
"input": [
|
|
49114
49321
|
"text"
|
|
49115
49322
|
],
|
|
49116
49323
|
"cost": {
|
|
49117
|
-
"input": 0,
|
|
49118
|
-
"output": 0,
|
|
49324
|
+
"input": 0.2,
|
|
49325
|
+
"output": 0.4,
|
|
49119
49326
|
"cacheRead": 0,
|
|
49120
49327
|
"cacheWrite": 0
|
|
49121
49328
|
},
|
|
49122
49329
|
"contextWindow": 262144,
|
|
49123
|
-
"maxTokens": 32768
|
|
49330
|
+
"maxTokens": 32768,
|
|
49331
|
+
"thinking": {
|
|
49332
|
+
"mode": "effort",
|
|
49333
|
+
"efforts": [
|
|
49334
|
+
"minimal",
|
|
49335
|
+
"low",
|
|
49336
|
+
"medium",
|
|
49337
|
+
"high",
|
|
49338
|
+
"xhigh"
|
|
49339
|
+
]
|
|
49340
|
+
}
|
|
49124
49341
|
},
|
|
49125
49342
|
"poolside/laguna-xs.2": {
|
|
49126
49343
|
"id": "poolside/laguna-xs.2",
|
|
49127
|
-
"name": "
|
|
49344
|
+
"name": "Laguna XS.2",
|
|
49128
49345
|
"api": "openai-completions",
|
|
49129
49346
|
"provider": "nanogpt",
|
|
49130
49347
|
"baseUrl": "https://nano-gpt.com/api/v1",
|
|
49131
|
-
"reasoning":
|
|
49348
|
+
"reasoning": true,
|
|
49132
49349
|
"input": [
|
|
49133
49350
|
"text"
|
|
49134
49351
|
],
|
|
49135
49352
|
"cost": {
|
|
49136
|
-
"input": 0,
|
|
49137
|
-
"output": 0,
|
|
49353
|
+
"input": 0.2,
|
|
49354
|
+
"output": 0.4,
|
|
49138
49355
|
"cacheRead": 0,
|
|
49139
49356
|
"cacheWrite": 0
|
|
49140
49357
|
},
|
|
49141
49358
|
"contextWindow": 262144,
|
|
49142
|
-
"maxTokens": 32768
|
|
49359
|
+
"maxTokens": 32768,
|
|
49360
|
+
"thinking": {
|
|
49361
|
+
"mode": "effort",
|
|
49362
|
+
"efforts": [
|
|
49363
|
+
"minimal",
|
|
49364
|
+
"low",
|
|
49365
|
+
"medium",
|
|
49366
|
+
"high",
|
|
49367
|
+
"xhigh"
|
|
49368
|
+
]
|
|
49369
|
+
}
|
|
49143
49370
|
},
|
|
49144
49371
|
"qvq-max": {
|
|
49145
49372
|
"id": "qvq-max",
|
|
@@ -60096,9 +60323,9 @@
|
|
|
60096
60323
|
},
|
|
60097
60324
|
"contextPromotionTarget": "openai/gpt-5.4"
|
|
60098
60325
|
},
|
|
60099
|
-
"gpt-5.6
|
|
60100
|
-
"id": "gpt-5.6
|
|
60101
|
-
"name": "GPT-5.6
|
|
60326
|
+
"gpt-5.6": {
|
|
60327
|
+
"id": "gpt-5.6",
|
|
60328
|
+
"name": "GPT-5.6",
|
|
60102
60329
|
"api": "openai-responses",
|
|
60103
60330
|
"provider": "openai",
|
|
60104
60331
|
"baseUrl": "https://api.openai.com/v1",
|
|
@@ -60108,10 +60335,10 @@
|
|
|
60108
60335
|
"image"
|
|
60109
60336
|
],
|
|
60110
60337
|
"cost": {
|
|
60111
|
-
"input":
|
|
60112
|
-
"output":
|
|
60113
|
-
"cacheRead": 0.
|
|
60114
|
-
"cacheWrite":
|
|
60338
|
+
"input": 5,
|
|
60339
|
+
"output": 30,
|
|
60340
|
+
"cacheRead": 0.5,
|
|
60341
|
+
"cacheWrite": 6.25
|
|
60115
60342
|
},
|
|
60116
60343
|
"contextWindow": 1050000,
|
|
60117
60344
|
"maxTokens": 128000,
|
|
@@ -60134,6 +60361,84 @@
|
|
|
60134
60361
|
}
|
|
60135
60362
|
}
|
|
60136
60363
|
},
|
|
60364
|
+
"gpt-5.6-luna": {
|
|
60365
|
+
"id": "gpt-5.6-luna",
|
|
60366
|
+
"name": "GPT-5.6 Luna",
|
|
60367
|
+
"api": "openai-responses",
|
|
60368
|
+
"provider": "openai",
|
|
60369
|
+
"baseUrl": "https://api.openai.com/v1",
|
|
60370
|
+
"reasoning": true,
|
|
60371
|
+
"input": [
|
|
60372
|
+
"text",
|
|
60373
|
+
"image"
|
|
60374
|
+
],
|
|
60375
|
+
"cost": {
|
|
60376
|
+
"input": 1,
|
|
60377
|
+
"output": 6,
|
|
60378
|
+
"cacheRead": 0.1,
|
|
60379
|
+
"cacheWrite": 1.25
|
|
60380
|
+
},
|
|
60381
|
+
"contextWindow": 1050000,
|
|
60382
|
+
"maxTokens": 128000,
|
|
60383
|
+
"applyPatchToolType": "freeform",
|
|
60384
|
+
"thinking": {
|
|
60385
|
+
"mode": "effort",
|
|
60386
|
+
"efforts": [
|
|
60387
|
+
"minimal",
|
|
60388
|
+
"low",
|
|
60389
|
+
"medium",
|
|
60390
|
+
"high",
|
|
60391
|
+
"xhigh"
|
|
60392
|
+
],
|
|
60393
|
+
"effortMap": {
|
|
60394
|
+
"minimal": "low",
|
|
60395
|
+
"low": "medium",
|
|
60396
|
+
"medium": "high",
|
|
60397
|
+
"high": "xhigh",
|
|
60398
|
+
"xhigh": "max"
|
|
60399
|
+
}
|
|
60400
|
+
}
|
|
60401
|
+
},
|
|
60402
|
+
"gpt-5.6-luna-pro": {
|
|
60403
|
+
"id": "gpt-5.6-luna-pro",
|
|
60404
|
+
"name": "GPT-5.6 Luna Pro",
|
|
60405
|
+
"api": "openai-responses",
|
|
60406
|
+
"provider": "openai",
|
|
60407
|
+
"baseUrl": "https://api.openai.com/v1",
|
|
60408
|
+
"reasoning": true,
|
|
60409
|
+
"input": [
|
|
60410
|
+
"text",
|
|
60411
|
+
"image"
|
|
60412
|
+
],
|
|
60413
|
+
"cost": {
|
|
60414
|
+
"input": 1,
|
|
60415
|
+
"output": 6,
|
|
60416
|
+
"cacheRead": 0.1,
|
|
60417
|
+
"cacheWrite": 1.25
|
|
60418
|
+
},
|
|
60419
|
+
"contextWindow": 1050000,
|
|
60420
|
+
"maxTokens": 128000,
|
|
60421
|
+
"requestModelId": "gpt-5.6-luna",
|
|
60422
|
+
"reasoningMode": "pro",
|
|
60423
|
+
"applyPatchToolType": "freeform",
|
|
60424
|
+
"thinking": {
|
|
60425
|
+
"mode": "effort",
|
|
60426
|
+
"efforts": [
|
|
60427
|
+
"minimal",
|
|
60428
|
+
"low",
|
|
60429
|
+
"medium",
|
|
60430
|
+
"high",
|
|
60431
|
+
"xhigh"
|
|
60432
|
+
],
|
|
60433
|
+
"effortMap": {
|
|
60434
|
+
"minimal": "low",
|
|
60435
|
+
"low": "medium",
|
|
60436
|
+
"medium": "high",
|
|
60437
|
+
"high": "xhigh",
|
|
60438
|
+
"xhigh": "max"
|
|
60439
|
+
}
|
|
60440
|
+
}
|
|
60441
|
+
},
|
|
60137
60442
|
"gpt-5.6-sol": {
|
|
60138
60443
|
"id": "gpt-5.6-sol",
|
|
60139
60444
|
"name": "GPT-5.6 Sol",
|
|
@@ -60172,6 +60477,46 @@
|
|
|
60172
60477
|
}
|
|
60173
60478
|
}
|
|
60174
60479
|
},
|
|
60480
|
+
"gpt-5.6-sol-pro": {
|
|
60481
|
+
"id": "gpt-5.6-sol-pro",
|
|
60482
|
+
"name": "GPT-5.6 Sol Pro",
|
|
60483
|
+
"api": "openai-responses",
|
|
60484
|
+
"provider": "openai",
|
|
60485
|
+
"baseUrl": "https://api.openai.com/v1",
|
|
60486
|
+
"reasoning": true,
|
|
60487
|
+
"input": [
|
|
60488
|
+
"text",
|
|
60489
|
+
"image"
|
|
60490
|
+
],
|
|
60491
|
+
"cost": {
|
|
60492
|
+
"input": 5,
|
|
60493
|
+
"output": 30,
|
|
60494
|
+
"cacheRead": 0.5,
|
|
60495
|
+
"cacheWrite": 6.25
|
|
60496
|
+
},
|
|
60497
|
+
"contextWindow": 1050000,
|
|
60498
|
+
"maxTokens": 128000,
|
|
60499
|
+
"requestModelId": "gpt-5.6-sol",
|
|
60500
|
+
"reasoningMode": "pro",
|
|
60501
|
+
"applyPatchToolType": "freeform",
|
|
60502
|
+
"thinking": {
|
|
60503
|
+
"mode": "effort",
|
|
60504
|
+
"efforts": [
|
|
60505
|
+
"minimal",
|
|
60506
|
+
"low",
|
|
60507
|
+
"medium",
|
|
60508
|
+
"high",
|
|
60509
|
+
"xhigh"
|
|
60510
|
+
],
|
|
60511
|
+
"effortMap": {
|
|
60512
|
+
"minimal": "low",
|
|
60513
|
+
"low": "medium",
|
|
60514
|
+
"medium": "high",
|
|
60515
|
+
"high": "xhigh",
|
|
60516
|
+
"xhigh": "max"
|
|
60517
|
+
}
|
|
60518
|
+
}
|
|
60519
|
+
},
|
|
60175
60520
|
"gpt-5.6-terra": {
|
|
60176
60521
|
"id": "gpt-5.6-terra",
|
|
60177
60522
|
"name": "GPT-5.6 Terra",
|
|
@@ -60210,6 +60555,46 @@
|
|
|
60210
60555
|
}
|
|
60211
60556
|
}
|
|
60212
60557
|
},
|
|
60558
|
+
"gpt-5.6-terra-pro": {
|
|
60559
|
+
"id": "gpt-5.6-terra-pro",
|
|
60560
|
+
"name": "GPT-5.6 Terra Pro",
|
|
60561
|
+
"api": "openai-responses",
|
|
60562
|
+
"provider": "openai",
|
|
60563
|
+
"baseUrl": "https://api.openai.com/v1",
|
|
60564
|
+
"reasoning": true,
|
|
60565
|
+
"input": [
|
|
60566
|
+
"text",
|
|
60567
|
+
"image"
|
|
60568
|
+
],
|
|
60569
|
+
"cost": {
|
|
60570
|
+
"input": 2.5,
|
|
60571
|
+
"output": 15,
|
|
60572
|
+
"cacheRead": 0.25,
|
|
60573
|
+
"cacheWrite": 3.125
|
|
60574
|
+
},
|
|
60575
|
+
"contextWindow": 1050000,
|
|
60576
|
+
"maxTokens": 128000,
|
|
60577
|
+
"requestModelId": "gpt-5.6-terra",
|
|
60578
|
+
"reasoningMode": "pro",
|
|
60579
|
+
"applyPatchToolType": "freeform",
|
|
60580
|
+
"thinking": {
|
|
60581
|
+
"mode": "effort",
|
|
60582
|
+
"efforts": [
|
|
60583
|
+
"minimal",
|
|
60584
|
+
"low",
|
|
60585
|
+
"medium",
|
|
60586
|
+
"high",
|
|
60587
|
+
"xhigh"
|
|
60588
|
+
],
|
|
60589
|
+
"effortMap": {
|
|
60590
|
+
"minimal": "low",
|
|
60591
|
+
"low": "medium",
|
|
60592
|
+
"medium": "high",
|
|
60593
|
+
"high": "xhigh",
|
|
60594
|
+
"xhigh": "max"
|
|
60595
|
+
}
|
|
60596
|
+
}
|
|
60597
|
+
},
|
|
60213
60598
|
"o1": {
|
|
60214
60599
|
"id": "o1",
|
|
60215
60600
|
"name": "o1",
|
|
@@ -61034,6 +61419,53 @@
|
|
|
61034
61419
|
}
|
|
61035
61420
|
}
|
|
61036
61421
|
},
|
|
61422
|
+
"gpt-5.6-luna-pro": {
|
|
61423
|
+
"id": "gpt-5.6-luna-pro",
|
|
61424
|
+
"name": "GPT-5.6 Luna Pro",
|
|
61425
|
+
"api": "openai-codex-responses",
|
|
61426
|
+
"provider": "openai-codex",
|
|
61427
|
+
"baseUrl": "https://chatgpt.com/backend-api",
|
|
61428
|
+
"reasoning": true,
|
|
61429
|
+
"input": [
|
|
61430
|
+
"text",
|
|
61431
|
+
"image"
|
|
61432
|
+
],
|
|
61433
|
+
"cost": {
|
|
61434
|
+
"input": 1,
|
|
61435
|
+
"output": 6,
|
|
61436
|
+
"cacheRead": 0.1,
|
|
61437
|
+
"cacheWrite": 1.25
|
|
61438
|
+
},
|
|
61439
|
+
"remoteCompaction": {
|
|
61440
|
+
"enabled": true,
|
|
61441
|
+
"api": "openai-codex-responses",
|
|
61442
|
+
"v2StreamingEnabled": true
|
|
61443
|
+
},
|
|
61444
|
+
"contextWindow": 372000,
|
|
61445
|
+
"maxTokens": 128000,
|
|
61446
|
+
"preferWebsockets": true,
|
|
61447
|
+
"priority": 3,
|
|
61448
|
+
"requestModelId": "gpt-5.6-luna",
|
|
61449
|
+
"reasoningMode": "pro",
|
|
61450
|
+
"applyPatchToolType": "freeform",
|
|
61451
|
+
"thinking": {
|
|
61452
|
+
"mode": "effort",
|
|
61453
|
+
"efforts": [
|
|
61454
|
+
"minimal",
|
|
61455
|
+
"low",
|
|
61456
|
+
"medium",
|
|
61457
|
+
"high",
|
|
61458
|
+
"xhigh"
|
|
61459
|
+
],
|
|
61460
|
+
"effortMap": {
|
|
61461
|
+
"minimal": "low",
|
|
61462
|
+
"low": "medium",
|
|
61463
|
+
"medium": "high",
|
|
61464
|
+
"high": "xhigh",
|
|
61465
|
+
"xhigh": "max"
|
|
61466
|
+
}
|
|
61467
|
+
}
|
|
61468
|
+
},
|
|
61037
61469
|
"gpt-5.6-sol": {
|
|
61038
61470
|
"id": "gpt-5.6-sol",
|
|
61039
61471
|
"name": "GPT-5.6 Sol",
|
|
@@ -61079,6 +61511,53 @@
|
|
|
61079
61511
|
}
|
|
61080
61512
|
}
|
|
61081
61513
|
},
|
|
61514
|
+
"gpt-5.6-sol-pro": {
|
|
61515
|
+
"id": "gpt-5.6-sol-pro",
|
|
61516
|
+
"name": "GPT-5.6 Sol Pro",
|
|
61517
|
+
"api": "openai-codex-responses",
|
|
61518
|
+
"provider": "openai-codex",
|
|
61519
|
+
"baseUrl": "https://chatgpt.com/backend-api",
|
|
61520
|
+
"reasoning": true,
|
|
61521
|
+
"input": [
|
|
61522
|
+
"text",
|
|
61523
|
+
"image"
|
|
61524
|
+
],
|
|
61525
|
+
"cost": {
|
|
61526
|
+
"input": 5,
|
|
61527
|
+
"output": 30,
|
|
61528
|
+
"cacheRead": 0.5,
|
|
61529
|
+
"cacheWrite": 6.25
|
|
61530
|
+
},
|
|
61531
|
+
"remoteCompaction": {
|
|
61532
|
+
"enabled": true,
|
|
61533
|
+
"api": "openai-codex-responses",
|
|
61534
|
+
"v2StreamingEnabled": true
|
|
61535
|
+
},
|
|
61536
|
+
"contextWindow": 372000,
|
|
61537
|
+
"maxTokens": 128000,
|
|
61538
|
+
"preferWebsockets": true,
|
|
61539
|
+
"priority": 1,
|
|
61540
|
+
"requestModelId": "gpt-5.6-sol",
|
|
61541
|
+
"reasoningMode": "pro",
|
|
61542
|
+
"applyPatchToolType": "freeform",
|
|
61543
|
+
"thinking": {
|
|
61544
|
+
"mode": "effort",
|
|
61545
|
+
"efforts": [
|
|
61546
|
+
"minimal",
|
|
61547
|
+
"low",
|
|
61548
|
+
"medium",
|
|
61549
|
+
"high",
|
|
61550
|
+
"xhigh"
|
|
61551
|
+
],
|
|
61552
|
+
"effortMap": {
|
|
61553
|
+
"minimal": "low",
|
|
61554
|
+
"low": "medium",
|
|
61555
|
+
"medium": "high",
|
|
61556
|
+
"high": "xhigh",
|
|
61557
|
+
"xhigh": "max"
|
|
61558
|
+
}
|
|
61559
|
+
}
|
|
61560
|
+
},
|
|
61082
61561
|
"gpt-5.6-terra": {
|
|
61083
61562
|
"id": "gpt-5.6-terra",
|
|
61084
61563
|
"name": "GPT-5.6 Terra",
|
|
@@ -61123,6 +61602,53 @@
|
|
|
61123
61602
|
"xhigh": "max"
|
|
61124
61603
|
}
|
|
61125
61604
|
}
|
|
61605
|
+
},
|
|
61606
|
+
"gpt-5.6-terra-pro": {
|
|
61607
|
+
"id": "gpt-5.6-terra-pro",
|
|
61608
|
+
"name": "GPT-5.6 Terra Pro",
|
|
61609
|
+
"api": "openai-codex-responses",
|
|
61610
|
+
"provider": "openai-codex",
|
|
61611
|
+
"baseUrl": "https://chatgpt.com/backend-api",
|
|
61612
|
+
"reasoning": true,
|
|
61613
|
+
"input": [
|
|
61614
|
+
"text",
|
|
61615
|
+
"image"
|
|
61616
|
+
],
|
|
61617
|
+
"cost": {
|
|
61618
|
+
"input": 2.5,
|
|
61619
|
+
"output": 15,
|
|
61620
|
+
"cacheRead": 0.25,
|
|
61621
|
+
"cacheWrite": 3.125
|
|
61622
|
+
},
|
|
61623
|
+
"remoteCompaction": {
|
|
61624
|
+
"enabled": true,
|
|
61625
|
+
"api": "openai-codex-responses",
|
|
61626
|
+
"v2StreamingEnabled": true
|
|
61627
|
+
},
|
|
61628
|
+
"contextWindow": 372000,
|
|
61629
|
+
"maxTokens": 128000,
|
|
61630
|
+
"preferWebsockets": true,
|
|
61631
|
+
"priority": 2,
|
|
61632
|
+
"requestModelId": "gpt-5.6-terra",
|
|
61633
|
+
"reasoningMode": "pro",
|
|
61634
|
+
"applyPatchToolType": "freeform",
|
|
61635
|
+
"thinking": {
|
|
61636
|
+
"mode": "effort",
|
|
61637
|
+
"efforts": [
|
|
61638
|
+
"minimal",
|
|
61639
|
+
"low",
|
|
61640
|
+
"medium",
|
|
61641
|
+
"high",
|
|
61642
|
+
"xhigh"
|
|
61643
|
+
],
|
|
61644
|
+
"effortMap": {
|
|
61645
|
+
"minimal": "low",
|
|
61646
|
+
"low": "medium",
|
|
61647
|
+
"medium": "high",
|
|
61648
|
+
"high": "xhigh",
|
|
61649
|
+
"xhigh": "max"
|
|
61650
|
+
}
|
|
61651
|
+
}
|
|
61126
61652
|
}
|
|
61127
61653
|
},
|
|
61128
61654
|
"opencode": {
|
|
@@ -64125,7 +64651,7 @@
|
|
|
64125
64651
|
"cost": {
|
|
64126
64652
|
"input": 0.65,
|
|
64127
64653
|
"output": 3.41,
|
|
64128
|
-
"cacheRead": 0.
|
|
64654
|
+
"cacheRead": 0.15,
|
|
64129
64655
|
"cacheWrite": 0
|
|
64130
64656
|
},
|
|
64131
64657
|
"contextWindow": 262144,
|
|
@@ -64155,7 +64681,7 @@
|
|
|
64155
64681
|
"input": 5,
|
|
64156
64682
|
"output": 30,
|
|
64157
64683
|
"cacheRead": 0.5,
|
|
64158
|
-
"cacheWrite":
|
|
64684
|
+
"cacheWrite": 6.25
|
|
64159
64685
|
},
|
|
64160
64686
|
"contextWindow": 1050000,
|
|
64161
64687
|
"maxTokens": 128000,
|
|
@@ -67262,7 +67788,7 @@
|
|
|
67262
67788
|
"cacheWrite": 0
|
|
67263
67789
|
},
|
|
67264
67790
|
"contextWindow": 1048576,
|
|
67265
|
-
"maxTokens":
|
|
67791
|
+
"maxTokens": 131072,
|
|
67266
67792
|
"thinking": {
|
|
67267
67793
|
"mode": "effort",
|
|
67268
67794
|
"efforts": [
|
|
@@ -67926,7 +68452,7 @@
|
|
|
67926
68452
|
"cost": {
|
|
67927
68453
|
"input": 0.65,
|
|
67928
68454
|
"output": 3.41,
|
|
67929
|
-
"cacheRead": 0.
|
|
68455
|
+
"cacheRead": 0.15,
|
|
67930
68456
|
"cacheWrite": 0
|
|
67931
68457
|
},
|
|
67932
68458
|
"contextWindow": 262144,
|
|
@@ -67983,8 +68509,8 @@
|
|
|
67983
68509
|
],
|
|
67984
68510
|
"cost": {
|
|
67985
68511
|
"input": 0.72,
|
|
67986
|
-
"output": 3.
|
|
67987
|
-
"cacheRead": 0.
|
|
68512
|
+
"output": 3.49,
|
|
68513
|
+
"cacheRead": 0.159,
|
|
67988
68514
|
"cacheWrite": 0
|
|
67989
68515
|
},
|
|
67990
68516
|
"contextWindow": 262144,
|
|
@@ -69547,7 +70073,7 @@
|
|
|
69547
70073
|
"input": 1,
|
|
69548
70074
|
"output": 6,
|
|
69549
70075
|
"cacheRead": 0.09999999999999999,
|
|
69550
|
-
"cacheWrite":
|
|
70076
|
+
"cacheWrite": 1.25
|
|
69551
70077
|
},
|
|
69552
70078
|
"contextWindow": 1050000,
|
|
69553
70079
|
"maxTokens": 128000,
|
|
@@ -69584,7 +70110,7 @@
|
|
|
69584
70110
|
"input": 1,
|
|
69585
70111
|
"output": 6,
|
|
69586
70112
|
"cacheRead": 0.09999999999999999,
|
|
69587
|
-
"cacheWrite":
|
|
70113
|
+
"cacheWrite": 1.25
|
|
69588
70114
|
},
|
|
69589
70115
|
"contextWindow": 1050000,
|
|
69590
70116
|
"maxTokens": 128000,
|
|
@@ -69621,7 +70147,7 @@
|
|
|
69621
70147
|
"input": 5,
|
|
69622
70148
|
"output": 30,
|
|
69623
70149
|
"cacheRead": 0.5,
|
|
69624
|
-
"cacheWrite":
|
|
70150
|
+
"cacheWrite": 6.25
|
|
69625
70151
|
},
|
|
69626
70152
|
"contextWindow": 1050000,
|
|
69627
70153
|
"maxTokens": 128000,
|
|
@@ -69658,7 +70184,7 @@
|
|
|
69658
70184
|
"input": 5,
|
|
69659
70185
|
"output": 30,
|
|
69660
70186
|
"cacheRead": 0.5,
|
|
69661
|
-
"cacheWrite":
|
|
70187
|
+
"cacheWrite": 6.25
|
|
69662
70188
|
},
|
|
69663
70189
|
"contextWindow": 1050000,
|
|
69664
70190
|
"maxTokens": 128000,
|
|
@@ -69695,7 +70221,7 @@
|
|
|
69695
70221
|
"input": 2.5,
|
|
69696
70222
|
"output": 15,
|
|
69697
70223
|
"cacheRead": 0.25,
|
|
69698
|
-
"cacheWrite":
|
|
70224
|
+
"cacheWrite": 3.125
|
|
69699
70225
|
},
|
|
69700
70226
|
"contextWindow": 1050000,
|
|
69701
70227
|
"maxTokens": 128000,
|
|
@@ -69732,7 +70258,7 @@
|
|
|
69732
70258
|
"input": 2.5,
|
|
69733
70259
|
"output": 15,
|
|
69734
70260
|
"cacheRead": 0.25,
|
|
69735
|
-
"cacheWrite":
|
|
70261
|
+
"cacheWrite": 3.125
|
|
69736
70262
|
},
|
|
69737
70263
|
"contextWindow": 1050000,
|
|
69738
70264
|
"maxTokens": 128000,
|
|
@@ -77243,6 +77769,138 @@
|
|
|
77243
77769
|
]
|
|
77244
77770
|
}
|
|
77245
77771
|
},
|
|
77772
|
+
"openai-gpt-56-luna": {
|
|
77773
|
+
"id": "openai-gpt-56-luna",
|
|
77774
|
+
"name": "openai-gpt-56-luna",
|
|
77775
|
+
"api": "openai-completions",
|
|
77776
|
+
"provider": "venice",
|
|
77777
|
+
"baseUrl": "https://api.venice.ai/api/v1",
|
|
77778
|
+
"reasoning": false,
|
|
77779
|
+
"input": [
|
|
77780
|
+
"text"
|
|
77781
|
+
],
|
|
77782
|
+
"cost": {
|
|
77783
|
+
"input": 0,
|
|
77784
|
+
"output": 0,
|
|
77785
|
+
"cacheRead": 0,
|
|
77786
|
+
"cacheWrite": 0
|
|
77787
|
+
},
|
|
77788
|
+
"contextWindow": 1000000,
|
|
77789
|
+
"maxTokens": 128000,
|
|
77790
|
+
"compat": {
|
|
77791
|
+
"supportsUsageInStreaming": false
|
|
77792
|
+
}
|
|
77793
|
+
},
|
|
77794
|
+
"openai-gpt-56-luna-pro": {
|
|
77795
|
+
"id": "openai-gpt-56-luna-pro",
|
|
77796
|
+
"name": "openai-gpt-56-luna-pro",
|
|
77797
|
+
"api": "openai-completions",
|
|
77798
|
+
"provider": "venice",
|
|
77799
|
+
"baseUrl": "https://api.venice.ai/api/v1",
|
|
77800
|
+
"reasoning": false,
|
|
77801
|
+
"input": [
|
|
77802
|
+
"text"
|
|
77803
|
+
],
|
|
77804
|
+
"cost": {
|
|
77805
|
+
"input": 0,
|
|
77806
|
+
"output": 0,
|
|
77807
|
+
"cacheRead": 0,
|
|
77808
|
+
"cacheWrite": 0
|
|
77809
|
+
},
|
|
77810
|
+
"contextWindow": 1000000,
|
|
77811
|
+
"maxTokens": 128000,
|
|
77812
|
+
"compat": {
|
|
77813
|
+
"supportsUsageInStreaming": false
|
|
77814
|
+
}
|
|
77815
|
+
},
|
|
77816
|
+
"openai-gpt-56-sol": {
|
|
77817
|
+
"id": "openai-gpt-56-sol",
|
|
77818
|
+
"name": "openai-gpt-56-sol",
|
|
77819
|
+
"api": "openai-completions",
|
|
77820
|
+
"provider": "venice",
|
|
77821
|
+
"baseUrl": "https://api.venice.ai/api/v1",
|
|
77822
|
+
"reasoning": false,
|
|
77823
|
+
"input": [
|
|
77824
|
+
"text"
|
|
77825
|
+
],
|
|
77826
|
+
"cost": {
|
|
77827
|
+
"input": 0,
|
|
77828
|
+
"output": 0,
|
|
77829
|
+
"cacheRead": 0,
|
|
77830
|
+
"cacheWrite": 0
|
|
77831
|
+
},
|
|
77832
|
+
"contextWindow": 1000000,
|
|
77833
|
+
"maxTokens": 128000,
|
|
77834
|
+
"compat": {
|
|
77835
|
+
"supportsUsageInStreaming": false
|
|
77836
|
+
}
|
|
77837
|
+
},
|
|
77838
|
+
"openai-gpt-56-sol-pro": {
|
|
77839
|
+
"id": "openai-gpt-56-sol-pro",
|
|
77840
|
+
"name": "openai-gpt-56-sol-pro",
|
|
77841
|
+
"api": "openai-completions",
|
|
77842
|
+
"provider": "venice",
|
|
77843
|
+
"baseUrl": "https://api.venice.ai/api/v1",
|
|
77844
|
+
"reasoning": false,
|
|
77845
|
+
"input": [
|
|
77846
|
+
"text"
|
|
77847
|
+
],
|
|
77848
|
+
"cost": {
|
|
77849
|
+
"input": 0,
|
|
77850
|
+
"output": 0,
|
|
77851
|
+
"cacheRead": 0,
|
|
77852
|
+
"cacheWrite": 0
|
|
77853
|
+
},
|
|
77854
|
+
"contextWindow": 1000000,
|
|
77855
|
+
"maxTokens": 128000,
|
|
77856
|
+
"compat": {
|
|
77857
|
+
"supportsUsageInStreaming": false
|
|
77858
|
+
}
|
|
77859
|
+
},
|
|
77860
|
+
"openai-gpt-56-terra": {
|
|
77861
|
+
"id": "openai-gpt-56-terra",
|
|
77862
|
+
"name": "openai-gpt-56-terra",
|
|
77863
|
+
"api": "openai-completions",
|
|
77864
|
+
"provider": "venice",
|
|
77865
|
+
"baseUrl": "https://api.venice.ai/api/v1",
|
|
77866
|
+
"reasoning": false,
|
|
77867
|
+
"input": [
|
|
77868
|
+
"text"
|
|
77869
|
+
],
|
|
77870
|
+
"cost": {
|
|
77871
|
+
"input": 0,
|
|
77872
|
+
"output": 0,
|
|
77873
|
+
"cacheRead": 0,
|
|
77874
|
+
"cacheWrite": 0
|
|
77875
|
+
},
|
|
77876
|
+
"contextWindow": 1000000,
|
|
77877
|
+
"maxTokens": 128000,
|
|
77878
|
+
"compat": {
|
|
77879
|
+
"supportsUsageInStreaming": false
|
|
77880
|
+
}
|
|
77881
|
+
},
|
|
77882
|
+
"openai-gpt-56-terra-pro": {
|
|
77883
|
+
"id": "openai-gpt-56-terra-pro",
|
|
77884
|
+
"name": "openai-gpt-56-terra-pro",
|
|
77885
|
+
"api": "openai-completions",
|
|
77886
|
+
"provider": "venice",
|
|
77887
|
+
"baseUrl": "https://api.venice.ai/api/v1",
|
|
77888
|
+
"reasoning": false,
|
|
77889
|
+
"input": [
|
|
77890
|
+
"text"
|
|
77891
|
+
],
|
|
77892
|
+
"cost": {
|
|
77893
|
+
"input": 0,
|
|
77894
|
+
"output": 0,
|
|
77895
|
+
"cacheRead": 0,
|
|
77896
|
+
"cacheWrite": 0
|
|
77897
|
+
},
|
|
77898
|
+
"contextWindow": 1000000,
|
|
77899
|
+
"maxTokens": 128000,
|
|
77900
|
+
"compat": {
|
|
77901
|
+
"supportsUsageInStreaming": false
|
|
77902
|
+
}
|
|
77903
|
+
},
|
|
77246
77904
|
"openai-gpt-oss-120b": {
|
|
77247
77905
|
"id": "openai-gpt-oss-120b",
|
|
77248
77906
|
"name": "OpenAI GPT OSS 120B",
|
|
@@ -80352,6 +81010,35 @@
|
|
|
80352
81010
|
"contextWindow": 128000,
|
|
80353
81011
|
"maxTokens": 8192
|
|
80354
81012
|
},
|
|
81013
|
+
"meta/muse-spark-1.1": {
|
|
81014
|
+
"id": "meta/muse-spark-1.1",
|
|
81015
|
+
"name": "Muse Spark 1.1",
|
|
81016
|
+
"api": "anthropic-messages",
|
|
81017
|
+
"provider": "vercel-ai-gateway",
|
|
81018
|
+
"baseUrl": "https://ai-gateway.vercel.sh",
|
|
81019
|
+
"reasoning": true,
|
|
81020
|
+
"input": [
|
|
81021
|
+
"text"
|
|
81022
|
+
],
|
|
81023
|
+
"cost": {
|
|
81024
|
+
"input": 1.25,
|
|
81025
|
+
"output": 4.25,
|
|
81026
|
+
"cacheRead": 0.15,
|
|
81027
|
+
"cacheWrite": 0
|
|
81028
|
+
},
|
|
81029
|
+
"contextWindow": 1048576,
|
|
81030
|
+
"maxTokens": 1048576,
|
|
81031
|
+
"thinking": {
|
|
81032
|
+
"mode": "budget",
|
|
81033
|
+
"efforts": [
|
|
81034
|
+
"minimal",
|
|
81035
|
+
"low",
|
|
81036
|
+
"medium",
|
|
81037
|
+
"high",
|
|
81038
|
+
"xhigh"
|
|
81039
|
+
]
|
|
81040
|
+
}
|
|
81041
|
+
},
|
|
80355
81042
|
"minimax/minimax-m2": {
|
|
80356
81043
|
"id": "minimax/minimax-m2",
|
|
80357
81044
|
"name": "MiniMax M2",
|
|
@@ -84999,6 +85686,34 @@
|
|
|
84999
85686
|
"omitReasoningEffort": false
|
|
85000
85687
|
}
|
|
85001
85688
|
},
|
|
85689
|
+
"grok-4.5": {
|
|
85690
|
+
"id": "grok-4.5",
|
|
85691
|
+
"name": "Grok 4.5",
|
|
85692
|
+
"api": "openai-responses",
|
|
85693
|
+
"provider": "xai-oauth",
|
|
85694
|
+
"baseUrl": "https://api.x.ai/v1",
|
|
85695
|
+
"reasoning": true,
|
|
85696
|
+
"input": [
|
|
85697
|
+
"text",
|
|
85698
|
+
"image"
|
|
85699
|
+
],
|
|
85700
|
+
"cost": {
|
|
85701
|
+
"input": 0,
|
|
85702
|
+
"output": 0,
|
|
85703
|
+
"cacheRead": 0,
|
|
85704
|
+
"cacheWrite": 0
|
|
85705
|
+
},
|
|
85706
|
+
"contextWindow": 500000,
|
|
85707
|
+
"maxTokens": 500000,
|
|
85708
|
+
"compat": {
|
|
85709
|
+
"reasoningEffortMap": {
|
|
85710
|
+
"minimal": "low"
|
|
85711
|
+
},
|
|
85712
|
+
"includeEncryptedReasoning": false,
|
|
85713
|
+
"filterReasoningHistory": true,
|
|
85714
|
+
"omitReasoningEffort": true
|
|
85715
|
+
}
|
|
85716
|
+
},
|
|
85002
85717
|
"grok-build": {
|
|
85003
85718
|
"id": "grok-build",
|
|
85004
85719
|
"name": "Grok Build",
|
|
@@ -821,6 +821,62 @@ export function openaiModelManagerOptions(config?: OpenAIModelManagerConfig): Mo
|
|
|
821
821
|
};
|
|
822
822
|
}
|
|
823
823
|
|
|
824
|
+
/** First-party gpt-5.6 SKUs that accept `reasoning: { mode: "pro" }` on the Responses APIs. */
|
|
825
|
+
const OPENAI_PRO_REASONING_BASE_IDS: Record<string, true> = {
|
|
826
|
+
"gpt-5.6-luna": true,
|
|
827
|
+
"gpt-5.6-sol": true,
|
|
828
|
+
"gpt-5.6-terra": true,
|
|
829
|
+
};
|
|
830
|
+
const OPENAI_PRO_REASONING_PROVIDERS: Record<string, true> = { openai: true, "openai-codex": true };
|
|
831
|
+
|
|
832
|
+
/**
|
|
833
|
+
* A row this generator pass owns: one of the derived `gpt-5.6-*-pro` alias ids
|
|
834
|
+
* on `openai`/`openai-codex` that carries the generated `reasoningMode` marker.
|
|
835
|
+
* A real upstream model occupying the same id has no `reasoningMode` and is
|
|
836
|
+
* never touched.
|
|
837
|
+
*/
|
|
838
|
+
function isGeneratedOpenAIProReasoningAlias(model: ModelSpec<Api>): boolean {
|
|
839
|
+
return (
|
|
840
|
+
OPENAI_PRO_REASONING_PROVIDERS[model.provider] === true &&
|
|
841
|
+
model.reasoningMode !== undefined &&
|
|
842
|
+
model.id.endsWith("-pro") &&
|
|
843
|
+
OPENAI_PRO_REASONING_BASE_IDS[model.id.slice(0, -"-pro".length)] === true
|
|
844
|
+
);
|
|
845
|
+
}
|
|
846
|
+
|
|
847
|
+
/**
|
|
848
|
+
* Re-derive the generated pro-reasoning aliases (`gpt-5.6-*-pro`) for the
|
|
849
|
+
* first-party `openai`/`openai-codex` gpt-5.6 rows. Each alias inherits the
|
|
850
|
+
* base row's metadata, requests the base wire id via `requestModelId`, and
|
|
851
|
+
* sets `reasoningMode: "pro"` so Responses-family request builders emit
|
|
852
|
+
* `reasoning: { mode: "pro" }`. Called by the models.json generator after all
|
|
853
|
+
* sources merge: stale copies of the owned aliases (previous snapshot) are
|
|
854
|
+
* dropped and re-projected from the current base rows so alias metadata always
|
|
855
|
+
* tracks the base, while a real upstream model that occupies an alias id wins
|
|
856
|
+
* and suppresses the projection.
|
|
857
|
+
*/
|
|
858
|
+
export function projectOpenAIProReasoningAliases(models: readonly ModelSpec<Api>[]): ModelSpec<Api>[] {
|
|
859
|
+
const kept = models.filter(model => !isGeneratedOpenAIProReasoningAlias(model));
|
|
860
|
+
const ids = new Set(kept.map(model => `${model.provider}/${model.id}`));
|
|
861
|
+
const out = [...kept];
|
|
862
|
+
for (const model of kept) {
|
|
863
|
+
if (!OPENAI_PRO_REASONING_PROVIDERS[model.provider]) continue;
|
|
864
|
+
if (!OPENAI_PRO_REASONING_BASE_IDS[model.id]) continue;
|
|
865
|
+
const aliasId = `${model.id}-pro`;
|
|
866
|
+
const aliasKey = `${model.provider}/${aliasId}`;
|
|
867
|
+
if (ids.has(aliasKey)) continue;
|
|
868
|
+
ids.add(aliasKey);
|
|
869
|
+
out.push({
|
|
870
|
+
...model,
|
|
871
|
+
id: aliasId,
|
|
872
|
+
name: `${model.name} Pro`,
|
|
873
|
+
requestModelId: model.id,
|
|
874
|
+
reasoningMode: "pro",
|
|
875
|
+
});
|
|
876
|
+
}
|
|
877
|
+
return out;
|
|
878
|
+
}
|
|
879
|
+
|
|
824
880
|
// ---------------------------------------------------------------------------
|
|
825
881
|
// 2. Groq
|
|
826
882
|
// ---------------------------------------------------------------------------
|
|
@@ -983,6 +1039,7 @@ export const XAI_OAUTH_CURATED_MODELS: readonly XAICuratedModel[] = [
|
|
|
983
1039
|
input: ["text", "image"],
|
|
984
1040
|
},
|
|
985
1041
|
{ id: "grok-4.3", contextWindow: 1_000_000, name: "Grok 4.3", input: ["text", "image"] },
|
|
1042
|
+
{ id: "grok-4.5", contextWindow: 500_000, name: "Grok 4.5", input: ["text", "image"] },
|
|
986
1043
|
// grok-4.20-multi-agent-0309 is text-only per the bundled catalog; omit `input` for the default.
|
|
987
1044
|
{ id: "grok-4.20-multi-agent-0309", contextWindow: 2_000_000, name: "Grok 4.20 (Multi-Agent)" },
|
|
988
1045
|
{
|
package/src/types.ts
CHANGED
|
@@ -691,6 +691,13 @@ export interface Model<TApi extends Api = Api> {
|
|
|
691
691
|
* everything local (selection, caching, usage attribution) keys on `id`.
|
|
692
692
|
*/
|
|
693
693
|
requestModelId?: string;
|
|
694
|
+
/**
|
|
695
|
+
* `reasoning.mode` to send on OpenAI Responses-family requests. Set on
|
|
696
|
+
* generated pro aliases (`gpt-5.6-*-pro` on `openai`/`openai-codex`) that
|
|
697
|
+
* pair a base wire id (`requestModelId`) with OpenAI's pro reasoning
|
|
698
|
+
* serving path. Absent everywhere else; providers omit the wire field.
|
|
699
|
+
*/
|
|
700
|
+
reasoningMode?: "pro";
|
|
694
701
|
name: string;
|
|
695
702
|
api: TApi;
|
|
696
703
|
provider: Provider;
|