pi-ollama-cloud 0.4.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,1353 @@
1
+ // Auto-generated by scripts/generate-models.ts
2
+ // Do not edit manually.
3
+ // Generated: 2026-05-19T20:41:09.610Z
4
+ // Model count: 36
5
+
6
+ import type { ProviderModelConfig } from "@earendil-works/pi-coding-agent";
7
+
8
+ export const GENERATED_MODELS: ProviderModelConfig[] = [
9
+ {
10
+ id: "ministral-3:14b",
11
+ name: "ministral-3:14b",
12
+ reasoning: false,
13
+ input: ["text", "image"],
14
+ cost: {
15
+ input: 0,
16
+ output: 0,
17
+ cacheRead: 0,
18
+ cacheWrite: 0,
19
+ },
20
+ contextWindow: 262144,
21
+ maxTokens: 32768,
22
+ compat: {
23
+ supportsDeveloperRole: false,
24
+ supportsReasoningEffort: true,
25
+ supportsStore: false,
26
+ maxTokensField: "max_tokens",
27
+ supportsUsageInStreaming: true,
28
+ requiresToolResultName: false,
29
+ requiresAssistantAfterToolResult: false,
30
+ requiresThinkingAsText: false,
31
+ requiresReasoningContentOnAssistantMessages: false,
32
+ thinkingFormat: "openai",
33
+ supportsStrictMode: false,
34
+ sendSessionAffinityHeaders: false,
35
+ supportsLongCacheRetention: false,
36
+ zaiToolStream: false,
37
+ openRouterRouting: {},
38
+ vercelGatewayRouting: {},
39
+ },
40
+ },
41
+ {
42
+ id: "devstral-small-2:24b",
43
+ name: "devstral-small-2:24b",
44
+ reasoning: false,
45
+ input: ["text", "image"],
46
+ cost: {
47
+ input: 0,
48
+ output: 0,
49
+ cacheRead: 0,
50
+ cacheWrite: 0,
51
+ },
52
+ contextWindow: 262144,
53
+ maxTokens: 32768,
54
+ compat: {
55
+ supportsDeveloperRole: false,
56
+ supportsReasoningEffort: true,
57
+ supportsStore: false,
58
+ maxTokensField: "max_tokens",
59
+ supportsUsageInStreaming: true,
60
+ requiresToolResultName: false,
61
+ requiresAssistantAfterToolResult: false,
62
+ requiresThinkingAsText: false,
63
+ requiresReasoningContentOnAssistantMessages: false,
64
+ thinkingFormat: "openai",
65
+ supportsStrictMode: false,
66
+ sendSessionAffinityHeaders: false,
67
+ supportsLongCacheRetention: false,
68
+ zaiToolStream: false,
69
+ openRouterRouting: {},
70
+ vercelGatewayRouting: {},
71
+ },
72
+ },
73
+ {
74
+ id: "glm-5.1",
75
+ name: "glm-5.1",
76
+ reasoning: true,
77
+ thinkingLevelMap: {
78
+ off: "none",
79
+ minimal: null,
80
+ low: "low",
81
+ medium: "medium",
82
+ high: "high",
83
+ xhigh: "max",
84
+ },
85
+ input: ["text"],
86
+ cost: {
87
+ input: 0,
88
+ output: 0,
89
+ cacheRead: 0,
90
+ cacheWrite: 0,
91
+ },
92
+ contextWindow: 202752,
93
+ maxTokens: 32768,
94
+ compat: {
95
+ supportsDeveloperRole: false,
96
+ supportsReasoningEffort: true,
97
+ supportsStore: false,
98
+ maxTokensField: "max_tokens",
99
+ supportsUsageInStreaming: true,
100
+ requiresToolResultName: false,
101
+ requiresAssistantAfterToolResult: false,
102
+ requiresThinkingAsText: false,
103
+ requiresReasoningContentOnAssistantMessages: false,
104
+ thinkingFormat: "openai",
105
+ supportsStrictMode: false,
106
+ sendSessionAffinityHeaders: false,
107
+ supportsLongCacheRetention: false,
108
+ zaiToolStream: false,
109
+ openRouterRouting: {},
110
+ vercelGatewayRouting: {},
111
+ },
112
+ },
113
+ {
114
+ id: "qwen3-vl:235b-instruct",
115
+ name: "qwen3-vl:235b-instruct",
116
+ reasoning: false,
117
+ input: ["text", "image"],
118
+ cost: {
119
+ input: 0,
120
+ output: 0,
121
+ cacheRead: 0,
122
+ cacheWrite: 0,
123
+ },
124
+ contextWindow: 262144,
125
+ maxTokens: 32768,
126
+ compat: {
127
+ supportsDeveloperRole: false,
128
+ supportsReasoningEffort: true,
129
+ supportsStore: false,
130
+ maxTokensField: "max_tokens",
131
+ supportsUsageInStreaming: true,
132
+ requiresToolResultName: false,
133
+ requiresAssistantAfterToolResult: false,
134
+ requiresThinkingAsText: false,
135
+ requiresReasoningContentOnAssistantMessages: false,
136
+ thinkingFormat: "openai",
137
+ supportsStrictMode: false,
138
+ sendSessionAffinityHeaders: false,
139
+ supportsLongCacheRetention: false,
140
+ zaiToolStream: false,
141
+ openRouterRouting: {},
142
+ vercelGatewayRouting: {},
143
+ },
144
+ },
145
+ {
146
+ id: "qwen3.5:397b",
147
+ name: "qwen3.5:397b",
148
+ reasoning: true,
149
+ thinkingLevelMap: {
150
+ off: "none",
151
+ minimal: null,
152
+ low: null,
153
+ medium: "medium",
154
+ high: null,
155
+ xhigh: null,
156
+ },
157
+ input: ["text", "image"],
158
+ cost: {
159
+ input: 0,
160
+ output: 0,
161
+ cacheRead: 0,
162
+ cacheWrite: 0,
163
+ },
164
+ contextWindow: 262144,
165
+ maxTokens: 32768,
166
+ compat: {
167
+ supportsDeveloperRole: false,
168
+ supportsReasoningEffort: true,
169
+ supportsStore: false,
170
+ maxTokensField: "max_tokens",
171
+ supportsUsageInStreaming: true,
172
+ requiresToolResultName: false,
173
+ requiresAssistantAfterToolResult: false,
174
+ requiresThinkingAsText: false,
175
+ requiresReasoningContentOnAssistantMessages: false,
176
+ thinkingFormat: "openai",
177
+ supportsStrictMode: false,
178
+ sendSessionAffinityHeaders: false,
179
+ supportsLongCacheRetention: false,
180
+ zaiToolStream: false,
181
+ openRouterRouting: {},
182
+ vercelGatewayRouting: {},
183
+ },
184
+ },
185
+ {
186
+ id: "glm-4.7",
187
+ name: "glm-4.7",
188
+ reasoning: true,
189
+ thinkingLevelMap: {
190
+ off: "none",
191
+ minimal: null,
192
+ low: "low",
193
+ medium: "medium",
194
+ high: "high",
195
+ xhigh: "max",
196
+ },
197
+ input: ["text"],
198
+ cost: {
199
+ input: 0,
200
+ output: 0,
201
+ cacheRead: 0,
202
+ cacheWrite: 0,
203
+ },
204
+ contextWindow: 202752,
205
+ maxTokens: 32768,
206
+ compat: {
207
+ supportsDeveloperRole: false,
208
+ supportsReasoningEffort: true,
209
+ supportsStore: false,
210
+ maxTokensField: "max_tokens",
211
+ supportsUsageInStreaming: true,
212
+ requiresToolResultName: false,
213
+ requiresAssistantAfterToolResult: false,
214
+ requiresThinkingAsText: false,
215
+ requiresReasoningContentOnAssistantMessages: false,
216
+ thinkingFormat: "openai",
217
+ supportsStrictMode: false,
218
+ sendSessionAffinityHeaders: false,
219
+ supportsLongCacheRetention: false,
220
+ zaiToolStream: false,
221
+ openRouterRouting: {},
222
+ vercelGatewayRouting: {},
223
+ },
224
+ },
225
+ {
226
+ id: "qwen3-next:80b",
227
+ name: "qwen3-next:80b",
228
+ reasoning: true,
229
+ thinkingLevelMap: {
230
+ off: "none",
231
+ minimal: null,
232
+ low: null,
233
+ medium: "medium",
234
+ high: null,
235
+ xhigh: null,
236
+ },
237
+ input: ["text"],
238
+ cost: {
239
+ input: 0,
240
+ output: 0,
241
+ cacheRead: 0,
242
+ cacheWrite: 0,
243
+ },
244
+ contextWindow: 262144,
245
+ maxTokens: 32768,
246
+ compat: {
247
+ supportsDeveloperRole: false,
248
+ supportsReasoningEffort: true,
249
+ supportsStore: false,
250
+ maxTokensField: "max_tokens",
251
+ supportsUsageInStreaming: true,
252
+ requiresToolResultName: false,
253
+ requiresAssistantAfterToolResult: false,
254
+ requiresThinkingAsText: false,
255
+ requiresReasoningContentOnAssistantMessages: false,
256
+ thinkingFormat: "openai",
257
+ supportsStrictMode: false,
258
+ sendSessionAffinityHeaders: false,
259
+ supportsLongCacheRetention: false,
260
+ zaiToolStream: false,
261
+ openRouterRouting: {},
262
+ vercelGatewayRouting: {},
263
+ },
264
+ },
265
+ {
266
+ id: "deepseek-v3.2",
267
+ name: "deepseek-v3.2",
268
+ reasoning: true,
269
+ thinkingLevelMap: {
270
+ off: "none",
271
+ minimal: null,
272
+ low: "low",
273
+ medium: "medium",
274
+ high: "high",
275
+ xhigh: "max",
276
+ },
277
+ input: ["text"],
278
+ cost: {
279
+ input: 0,
280
+ output: 0,
281
+ cacheRead: 0,
282
+ cacheWrite: 0,
283
+ },
284
+ contextWindow: 163840,
285
+ maxTokens: 32768,
286
+ compat: {
287
+ supportsDeveloperRole: false,
288
+ supportsReasoningEffort: true,
289
+ supportsStore: false,
290
+ maxTokensField: "max_tokens",
291
+ supportsUsageInStreaming: true,
292
+ requiresToolResultName: false,
293
+ requiresAssistantAfterToolResult: false,
294
+ requiresThinkingAsText: false,
295
+ requiresReasoningContentOnAssistantMessages: false,
296
+ thinkingFormat: "openai",
297
+ supportsStrictMode: false,
298
+ sendSessionAffinityHeaders: false,
299
+ supportsLongCacheRetention: false,
300
+ zaiToolStream: false,
301
+ openRouterRouting: {},
302
+ vercelGatewayRouting: {},
303
+ },
304
+ },
305
+ {
306
+ id: "deepseek-v4-pro",
307
+ name: "deepseek-v4-pro",
308
+ reasoning: true,
309
+ thinkingLevelMap: {
310
+ off: "none",
311
+ minimal: null,
312
+ low: "low",
313
+ medium: "medium",
314
+ high: "high",
315
+ xhigh: "max",
316
+ },
317
+ input: ["text"],
318
+ cost: {
319
+ input: 0,
320
+ output: 0,
321
+ cacheRead: 0,
322
+ cacheWrite: 0,
323
+ },
324
+ contextWindow: 1048576,
325
+ maxTokens: 32768,
326
+ compat: {
327
+ supportsDeveloperRole: false,
328
+ supportsReasoningEffort: true,
329
+ supportsStore: false,
330
+ maxTokensField: "max_tokens",
331
+ supportsUsageInStreaming: true,
332
+ requiresToolResultName: false,
333
+ requiresAssistantAfterToolResult: false,
334
+ requiresThinkingAsText: false,
335
+ requiresReasoningContentOnAssistantMessages: false,
336
+ thinkingFormat: "openai",
337
+ supportsStrictMode: false,
338
+ sendSessionAffinityHeaders: false,
339
+ supportsLongCacheRetention: false,
340
+ zaiToolStream: false,
341
+ openRouterRouting: {},
342
+ vercelGatewayRouting: {},
343
+ },
344
+ },
345
+ {
346
+ id: "gpt-oss:20b",
347
+ name: "gpt-oss:20b",
348
+ reasoning: true,
349
+ thinkingLevelMap: {
350
+ off: null,
351
+ minimal: null,
352
+ low: "low",
353
+ medium: "medium",
354
+ high: "high",
355
+ xhigh: null,
356
+ },
357
+ input: ["text"],
358
+ cost: {
359
+ input: 0,
360
+ output: 0,
361
+ cacheRead: 0,
362
+ cacheWrite: 0,
363
+ },
364
+ contextWindow: 131072,
365
+ maxTokens: 32768,
366
+ compat: {
367
+ supportsDeveloperRole: false,
368
+ supportsReasoningEffort: true,
369
+ supportsStore: false,
370
+ maxTokensField: "max_tokens",
371
+ supportsUsageInStreaming: true,
372
+ requiresToolResultName: false,
373
+ requiresAssistantAfterToolResult: false,
374
+ requiresThinkingAsText: false,
375
+ requiresReasoningContentOnAssistantMessages: false,
376
+ thinkingFormat: "openai",
377
+ supportsStrictMode: false,
378
+ sendSessionAffinityHeaders: false,
379
+ supportsLongCacheRetention: false,
380
+ zaiToolStream: false,
381
+ openRouterRouting: {},
382
+ vercelGatewayRouting: {},
383
+ },
384
+ },
385
+ {
386
+ id: "ministral-3:3b",
387
+ name: "ministral-3:3b",
388
+ reasoning: false,
389
+ input: ["text", "image"],
390
+ cost: {
391
+ input: 0,
392
+ output: 0,
393
+ cacheRead: 0,
394
+ cacheWrite: 0,
395
+ },
396
+ contextWindow: 262144,
397
+ maxTokens: 32768,
398
+ compat: {
399
+ supportsDeveloperRole: false,
400
+ supportsReasoningEffort: true,
401
+ supportsStore: false,
402
+ maxTokensField: "max_tokens",
403
+ supportsUsageInStreaming: true,
404
+ requiresToolResultName: false,
405
+ requiresAssistantAfterToolResult: false,
406
+ requiresThinkingAsText: false,
407
+ requiresReasoningContentOnAssistantMessages: false,
408
+ thinkingFormat: "openai",
409
+ supportsStrictMode: false,
410
+ sendSessionAffinityHeaders: false,
411
+ supportsLongCacheRetention: false,
412
+ zaiToolStream: false,
413
+ openRouterRouting: {},
414
+ vercelGatewayRouting: {},
415
+ },
416
+ },
417
+ {
418
+ id: "gemini-3-flash-preview",
419
+ name: "gemini-3-flash-preview",
420
+ reasoning: true,
421
+ thinkingLevelMap: {
422
+ off: "none",
423
+ minimal: null,
424
+ low: "low",
425
+ medium: "medium",
426
+ high: "high",
427
+ xhigh: "max",
428
+ },
429
+ input: ["text", "image"],
430
+ cost: {
431
+ input: 0,
432
+ output: 0,
433
+ cacheRead: 0,
434
+ cacheWrite: 0,
435
+ },
436
+ contextWindow: 1048576,
437
+ maxTokens: 32768,
438
+ compat: {
439
+ supportsDeveloperRole: false,
440
+ supportsReasoningEffort: true,
441
+ supportsStore: false,
442
+ maxTokensField: "max_tokens",
443
+ supportsUsageInStreaming: true,
444
+ requiresToolResultName: false,
445
+ requiresAssistantAfterToolResult: false,
446
+ requiresThinkingAsText: false,
447
+ requiresReasoningContentOnAssistantMessages: false,
448
+ thinkingFormat: "openai",
449
+ supportsStrictMode: false,
450
+ sendSessionAffinityHeaders: false,
451
+ supportsLongCacheRetention: false,
452
+ zaiToolStream: false,
453
+ openRouterRouting: {},
454
+ vercelGatewayRouting: {},
455
+ },
456
+ },
457
+ {
458
+ id: "kimi-k2:1t",
459
+ name: "kimi-k2:1t",
460
+ reasoning: false,
461
+ input: ["text"],
462
+ cost: {
463
+ input: 0,
464
+ output: 0,
465
+ cacheRead: 0,
466
+ cacheWrite: 0,
467
+ },
468
+ contextWindow: 262144,
469
+ maxTokens: 32768,
470
+ compat: {
471
+ supportsDeveloperRole: false,
472
+ supportsReasoningEffort: true,
473
+ supportsStore: false,
474
+ maxTokensField: "max_tokens",
475
+ supportsUsageInStreaming: true,
476
+ requiresToolResultName: false,
477
+ requiresAssistantAfterToolResult: false,
478
+ requiresThinkingAsText: false,
479
+ requiresReasoningContentOnAssistantMessages: false,
480
+ thinkingFormat: "openai",
481
+ supportsStrictMode: false,
482
+ sendSessionAffinityHeaders: false,
483
+ supportsLongCacheRetention: false,
484
+ zaiToolStream: false,
485
+ openRouterRouting: {},
486
+ vercelGatewayRouting: {},
487
+ },
488
+ },
489
+ {
490
+ id: "kimi-k2-thinking",
491
+ name: "kimi-k2-thinking",
492
+ reasoning: true,
493
+ thinkingLevelMap: {
494
+ off: null,
495
+ minimal: null,
496
+ low: "low",
497
+ medium: "medium",
498
+ high: "high",
499
+ xhigh: "max",
500
+ },
501
+ input: ["text"],
502
+ cost: {
503
+ input: 0,
504
+ output: 0,
505
+ cacheRead: 0,
506
+ cacheWrite: 0,
507
+ },
508
+ contextWindow: 262144,
509
+ maxTokens: 32768,
510
+ compat: {
511
+ supportsDeveloperRole: false,
512
+ supportsReasoningEffort: true,
513
+ supportsStore: false,
514
+ maxTokensField: "max_tokens",
515
+ supportsUsageInStreaming: true,
516
+ requiresToolResultName: false,
517
+ requiresAssistantAfterToolResult: false,
518
+ requiresThinkingAsText: false,
519
+ requiresReasoningContentOnAssistantMessages: false,
520
+ thinkingFormat: "openai",
521
+ supportsStrictMode: false,
522
+ sendSessionAffinityHeaders: false,
523
+ supportsLongCacheRetention: false,
524
+ zaiToolStream: false,
525
+ openRouterRouting: {},
526
+ vercelGatewayRouting: {},
527
+ },
528
+ },
529
+ {
530
+ id: "qwen3-vl:235b",
531
+ name: "qwen3-vl:235b",
532
+ reasoning: true,
533
+ thinkingLevelMap: {
534
+ off: null,
535
+ minimal: null,
536
+ low: "low",
537
+ medium: "medium",
538
+ high: "high",
539
+ xhigh: "max",
540
+ },
541
+ input: ["text", "image"],
542
+ cost: {
543
+ input: 0,
544
+ output: 0,
545
+ cacheRead: 0,
546
+ cacheWrite: 0,
547
+ },
548
+ contextWindow: 262144,
549
+ maxTokens: 32768,
550
+ compat: {
551
+ supportsDeveloperRole: false,
552
+ supportsReasoningEffort: true,
553
+ supportsStore: false,
554
+ maxTokensField: "max_tokens",
555
+ supportsUsageInStreaming: true,
556
+ requiresToolResultName: false,
557
+ requiresAssistantAfterToolResult: false,
558
+ requiresThinkingAsText: false,
559
+ requiresReasoningContentOnAssistantMessages: false,
560
+ thinkingFormat: "openai",
561
+ supportsStrictMode: false,
562
+ sendSessionAffinityHeaders: false,
563
+ supportsLongCacheRetention: false,
564
+ zaiToolStream: false,
565
+ openRouterRouting: {},
566
+ vercelGatewayRouting: {},
567
+ },
568
+ },
569
+ {
570
+ id: "minimax-m2",
571
+ name: "minimax-m2",
572
+ reasoning: false,
573
+ input: ["text"],
574
+ cost: {
575
+ input: 0,
576
+ output: 0,
577
+ cacheRead: 0,
578
+ cacheWrite: 0,
579
+ },
580
+ contextWindow: 204800,
581
+ maxTokens: 32768,
582
+ compat: {
583
+ supportsDeveloperRole: false,
584
+ supportsReasoningEffort: true,
585
+ supportsStore: false,
586
+ maxTokensField: "max_tokens",
587
+ supportsUsageInStreaming: true,
588
+ requiresToolResultName: false,
589
+ requiresAssistantAfterToolResult: false,
590
+ requiresThinkingAsText: false,
591
+ requiresReasoningContentOnAssistantMessages: false,
592
+ thinkingFormat: "openai",
593
+ supportsStrictMode: false,
594
+ sendSessionAffinityHeaders: false,
595
+ supportsLongCacheRetention: false,
596
+ zaiToolStream: false,
597
+ openRouterRouting: {},
598
+ vercelGatewayRouting: {},
599
+ },
600
+ },
601
+ {
602
+ id: "gemma4:31b",
603
+ name: "gemma4:31b",
604
+ reasoning: true,
605
+ thinkingLevelMap: {
606
+ off: "none",
607
+ minimal: null,
608
+ low: "low",
609
+ medium: "medium",
610
+ high: "high",
611
+ xhigh: "max",
612
+ },
613
+ input: ["text", "image"],
614
+ cost: {
615
+ input: 0,
616
+ output: 0,
617
+ cacheRead: 0,
618
+ cacheWrite: 0,
619
+ },
620
+ contextWindow: 262144,
621
+ maxTokens: 32768,
622
+ compat: {
623
+ supportsDeveloperRole: false,
624
+ supportsReasoningEffort: true,
625
+ supportsStore: false,
626
+ maxTokensField: "max_tokens",
627
+ supportsUsageInStreaming: true,
628
+ requiresToolResultName: false,
629
+ requiresAssistantAfterToolResult: false,
630
+ requiresThinkingAsText: false,
631
+ requiresReasoningContentOnAssistantMessages: false,
632
+ thinkingFormat: "openai",
633
+ supportsStrictMode: false,
634
+ sendSessionAffinityHeaders: false,
635
+ supportsLongCacheRetention: false,
636
+ zaiToolStream: false,
637
+ openRouterRouting: {},
638
+ vercelGatewayRouting: {},
639
+ },
640
+ },
641
+ {
642
+ id: "rnj-1:8b",
643
+ name: "rnj-1:8b",
644
+ reasoning: false,
645
+ input: ["text"],
646
+ cost: {
647
+ input: 0,
648
+ output: 0,
649
+ cacheRead: 0,
650
+ cacheWrite: 0,
651
+ },
652
+ contextWindow: 32768,
653
+ maxTokens: 32768,
654
+ compat: {
655
+ supportsDeveloperRole: false,
656
+ supportsReasoningEffort: true,
657
+ supportsStore: false,
658
+ maxTokensField: "max_tokens",
659
+ supportsUsageInStreaming: true,
660
+ requiresToolResultName: false,
661
+ requiresAssistantAfterToolResult: false,
662
+ requiresThinkingAsText: false,
663
+ requiresReasoningContentOnAssistantMessages: false,
664
+ thinkingFormat: "openai",
665
+ supportsStrictMode: false,
666
+ sendSessionAffinityHeaders: false,
667
+ supportsLongCacheRetention: false,
668
+ zaiToolStream: false,
669
+ openRouterRouting: {},
670
+ vercelGatewayRouting: {},
671
+ },
672
+ },
673
+ {
674
+ id: "cogito-2.1:671b",
675
+ name: "cogito-2.1:671b",
676
+ reasoning: true,
677
+ thinkingLevelMap: {
678
+ off: "none",
679
+ minimal: null,
680
+ low: "low",
681
+ medium: "medium",
682
+ high: "high",
683
+ xhigh: "max",
684
+ },
685
+ input: ["text"],
686
+ cost: {
687
+ input: 0,
688
+ output: 0,
689
+ cacheRead: 0,
690
+ cacheWrite: 0,
691
+ },
692
+ contextWindow: 163840,
693
+ maxTokens: 32768,
694
+ compat: {
695
+ supportsDeveloperRole: false,
696
+ supportsReasoningEffort: true,
697
+ supportsStore: false,
698
+ maxTokensField: "max_tokens",
699
+ supportsUsageInStreaming: true,
700
+ requiresToolResultName: false,
701
+ requiresAssistantAfterToolResult: false,
702
+ requiresThinkingAsText: false,
703
+ requiresReasoningContentOnAssistantMessages: false,
704
+ thinkingFormat: "openai",
705
+ supportsStrictMode: false,
706
+ sendSessionAffinityHeaders: false,
707
+ supportsLongCacheRetention: false,
708
+ zaiToolStream: false,
709
+ openRouterRouting: {},
710
+ vercelGatewayRouting: {},
711
+ },
712
+ },
713
+ {
714
+ id: "glm-5",
715
+ name: "glm-5",
716
+ reasoning: true,
717
+ thinkingLevelMap: {
718
+ off: "none",
719
+ minimal: null,
720
+ low: "low",
721
+ medium: "medium",
722
+ high: "high",
723
+ xhigh: "max",
724
+ },
725
+ input: ["text"],
726
+ cost: {
727
+ input: 0,
728
+ output: 0,
729
+ cacheRead: 0,
730
+ cacheWrite: 0,
731
+ },
732
+ contextWindow: 202752,
733
+ maxTokens: 32768,
734
+ compat: {
735
+ supportsDeveloperRole: false,
736
+ supportsReasoningEffort: true,
737
+ supportsStore: false,
738
+ maxTokensField: "max_tokens",
739
+ supportsUsageInStreaming: true,
740
+ requiresToolResultName: false,
741
+ requiresAssistantAfterToolResult: false,
742
+ requiresThinkingAsText: false,
743
+ requiresReasoningContentOnAssistantMessages: false,
744
+ thinkingFormat: "openai",
745
+ supportsStrictMode: false,
746
+ sendSessionAffinityHeaders: false,
747
+ supportsLongCacheRetention: false,
748
+ zaiToolStream: false,
749
+ openRouterRouting: {},
750
+ vercelGatewayRouting: {},
751
+ },
752
+ },
753
+ {
754
+ id: "nemotron-3-nano:30b",
755
+ name: "nemotron-3-nano:30b",
756
+ reasoning: true,
757
+ thinkingLevelMap: {
758
+ off: "none",
759
+ minimal: null,
760
+ low: "low",
761
+ medium: "medium",
762
+ high: "high",
763
+ xhigh: "max",
764
+ },
765
+ input: ["text"],
766
+ cost: {
767
+ input: 0,
768
+ output: 0,
769
+ cacheRead: 0,
770
+ cacheWrite: 0,
771
+ },
772
+ contextWindow: 262144,
773
+ maxTokens: 32768,
774
+ compat: {
775
+ supportsDeveloperRole: false,
776
+ supportsReasoningEffort: true,
777
+ supportsStore: false,
778
+ maxTokensField: "max_tokens",
779
+ supportsUsageInStreaming: true,
780
+ requiresToolResultName: false,
781
+ requiresAssistantAfterToolResult: false,
782
+ requiresThinkingAsText: false,
783
+ requiresReasoningContentOnAssistantMessages: false,
784
+ thinkingFormat: "openai",
785
+ supportsStrictMode: false,
786
+ sendSessionAffinityHeaders: false,
787
+ supportsLongCacheRetention: false,
788
+ zaiToolStream: false,
789
+ openRouterRouting: {},
790
+ vercelGatewayRouting: {},
791
+ },
792
+ },
793
+ {
794
+ id: "minimax-m2.7",
795
+ name: "minimax-m2.7",
796
+ reasoning: true,
797
+ thinkingLevelMap: {
798
+ off: null,
799
+ minimal: null,
800
+ low: "low",
801
+ medium: "medium",
802
+ high: "high",
803
+ xhigh: "max",
804
+ },
805
+ input: ["text"],
806
+ cost: {
807
+ input: 0,
808
+ output: 0,
809
+ cacheRead: 0,
810
+ cacheWrite: 0,
811
+ },
812
+ contextWindow: 196608,
813
+ maxTokens: 32768,
814
+ compat: {
815
+ supportsDeveloperRole: false,
816
+ supportsReasoningEffort: true,
817
+ supportsStore: false,
818
+ maxTokensField: "max_tokens",
819
+ supportsUsageInStreaming: true,
820
+ requiresToolResultName: false,
821
+ requiresAssistantAfterToolResult: false,
822
+ requiresThinkingAsText: false,
823
+ requiresReasoningContentOnAssistantMessages: false,
824
+ thinkingFormat: "openai",
825
+ supportsStrictMode: false,
826
+ sendSessionAffinityHeaders: false,
827
+ supportsLongCacheRetention: false,
828
+ zaiToolStream: false,
829
+ openRouterRouting: {},
830
+ vercelGatewayRouting: {},
831
+ },
832
+ },
833
+ {
834
+ id: "mistral-large-3:675b",
835
+ name: "mistral-large-3:675b",
836
+ reasoning: false,
837
+ input: ["text", "image"],
838
+ cost: {
839
+ input: 0,
840
+ output: 0,
841
+ cacheRead: 0,
842
+ cacheWrite: 0,
843
+ },
844
+ contextWindow: 262144,
845
+ maxTokens: 32768,
846
+ compat: {
847
+ supportsDeveloperRole: false,
848
+ supportsReasoningEffort: true,
849
+ supportsStore: false,
850
+ maxTokensField: "max_tokens",
851
+ supportsUsageInStreaming: true,
852
+ requiresToolResultName: false,
853
+ requiresAssistantAfterToolResult: false,
854
+ requiresThinkingAsText: false,
855
+ requiresReasoningContentOnAssistantMessages: false,
856
+ thinkingFormat: "openai",
857
+ supportsStrictMode: false,
858
+ sendSessionAffinityHeaders: false,
859
+ supportsLongCacheRetention: false,
860
+ zaiToolStream: false,
861
+ openRouterRouting: {},
862
+ vercelGatewayRouting: {},
863
+ },
864
+ },
865
+ {
866
+ id: "devstral-2:123b",
867
+ name: "devstral-2:123b",
868
+ reasoning: false,
869
+ input: ["text"],
870
+ cost: {
871
+ input: 0,
872
+ output: 0,
873
+ cacheRead: 0,
874
+ cacheWrite: 0,
875
+ },
876
+ contextWindow: 262144,
877
+ maxTokens: 32768,
878
+ compat: {
879
+ supportsDeveloperRole: false,
880
+ supportsReasoningEffort: true,
881
+ supportsStore: false,
882
+ maxTokensField: "max_tokens",
883
+ supportsUsageInStreaming: true,
884
+ requiresToolResultName: false,
885
+ requiresAssistantAfterToolResult: false,
886
+ requiresThinkingAsText: false,
887
+ requiresReasoningContentOnAssistantMessages: false,
888
+ thinkingFormat: "openai",
889
+ supportsStrictMode: false,
890
+ sendSessionAffinityHeaders: false,
891
+ supportsLongCacheRetention: false,
892
+ zaiToolStream: false,
893
+ openRouterRouting: {},
894
+ vercelGatewayRouting: {},
895
+ },
896
+ },
897
+ {
898
+ id: "qwen3-coder-next",
899
+ name: "qwen3-coder-next",
900
+ reasoning: false,
901
+ input: ["text"],
902
+ cost: {
903
+ input: 0,
904
+ output: 0,
905
+ cacheRead: 0,
906
+ cacheWrite: 0,
907
+ },
908
+ contextWindow: 262144,
909
+ maxTokens: 32768,
910
+ compat: {
911
+ supportsDeveloperRole: false,
912
+ supportsReasoningEffort: true,
913
+ supportsStore: false,
914
+ maxTokensField: "max_tokens",
915
+ supportsUsageInStreaming: true,
916
+ requiresToolResultName: false,
917
+ requiresAssistantAfterToolResult: false,
918
+ requiresThinkingAsText: false,
919
+ requiresReasoningContentOnAssistantMessages: false,
920
+ thinkingFormat: "openai",
921
+ supportsStrictMode: false,
922
+ sendSessionAffinityHeaders: false,
923
+ supportsLongCacheRetention: false,
924
+ zaiToolStream: false,
925
+ openRouterRouting: {},
926
+ vercelGatewayRouting: {},
927
+ },
928
+ },
929
+ {
930
+ id: "deepseek-v4-flash",
931
+ name: "deepseek-v4-flash",
932
+ reasoning: true,
933
+ thinkingLevelMap: {
934
+ off: "none",
935
+ minimal: null,
936
+ low: "low",
937
+ medium: "medium",
938
+ high: "high",
939
+ xhigh: "max",
940
+ },
941
+ input: ["text"],
942
+ cost: {
943
+ input: 0,
944
+ output: 0,
945
+ cacheRead: 0,
946
+ cacheWrite: 0,
947
+ },
948
+ contextWindow: 1048576,
949
+ maxTokens: 32768,
950
+ compat: {
951
+ supportsDeveloperRole: false,
952
+ supportsReasoningEffort: true,
953
+ supportsStore: false,
954
+ maxTokensField: "max_tokens",
955
+ supportsUsageInStreaming: true,
956
+ requiresToolResultName: false,
957
+ requiresAssistantAfterToolResult: false,
958
+ requiresThinkingAsText: false,
959
+ requiresReasoningContentOnAssistantMessages: false,
960
+ thinkingFormat: "openai",
961
+ supportsStrictMode: false,
962
+ sendSessionAffinityHeaders: false,
963
+ supportsLongCacheRetention: false,
964
+ zaiToolStream: false,
965
+ openRouterRouting: {},
966
+ vercelGatewayRouting: {},
967
+ },
968
+ },
969
+ {
970
+ id: "minimax-m2.1",
971
+ name: "minimax-m2.1",
972
+ reasoning: true,
973
+ thinkingLevelMap: {
974
+ off: null,
975
+ minimal: null,
976
+ low: "low",
977
+ medium: "medium",
978
+ high: "high",
979
+ xhigh: "max",
980
+ },
981
+ input: ["text"],
982
+ cost: {
983
+ input: 0,
984
+ output: 0,
985
+ cacheRead: 0,
986
+ cacheWrite: 0,
987
+ },
988
+ contextWindow: 204800,
989
+ maxTokens: 32768,
990
+ compat: {
991
+ supportsDeveloperRole: false,
992
+ supportsReasoningEffort: true,
993
+ supportsStore: false,
994
+ maxTokensField: "max_tokens",
995
+ supportsUsageInStreaming: true,
996
+ requiresToolResultName: false,
997
+ requiresAssistantAfterToolResult: false,
998
+ requiresThinkingAsText: false,
999
+ requiresReasoningContentOnAssistantMessages: false,
1000
+ thinkingFormat: "openai",
1001
+ supportsStrictMode: false,
1002
+ sendSessionAffinityHeaders: false,
1003
+ supportsLongCacheRetention: false,
1004
+ zaiToolStream: false,
1005
+ openRouterRouting: {},
1006
+ vercelGatewayRouting: {},
1007
+ },
1008
+ },
1009
+ {
1010
+ id: "nemotron-3-super",
1011
+ name: "nemotron-3-super",
1012
+ reasoning: true,
1013
+ thinkingLevelMap: {
1014
+ off: "none",
1015
+ minimal: null,
1016
+ low: "low",
1017
+ medium: "medium",
1018
+ high: "high",
1019
+ xhigh: "max",
1020
+ },
1021
+ input: ["text"],
1022
+ cost: {
1023
+ input: 0,
1024
+ output: 0,
1025
+ cacheRead: 0,
1026
+ cacheWrite: 0,
1027
+ },
1028
+ contextWindow: 262144,
1029
+ maxTokens: 32768,
1030
+ compat: {
1031
+ supportsDeveloperRole: false,
1032
+ supportsReasoningEffort: true,
1033
+ supportsStore: false,
1034
+ maxTokensField: "max_tokens",
1035
+ supportsUsageInStreaming: true,
1036
+ requiresToolResultName: false,
1037
+ requiresAssistantAfterToolResult: false,
1038
+ requiresThinkingAsText: false,
1039
+ requiresReasoningContentOnAssistantMessages: false,
1040
+ thinkingFormat: "openai",
1041
+ supportsStrictMode: false,
1042
+ sendSessionAffinityHeaders: false,
1043
+ supportsLongCacheRetention: false,
1044
+ zaiToolStream: false,
1045
+ openRouterRouting: {},
1046
+ vercelGatewayRouting: {},
1047
+ },
1048
+ },
1049
+ {
1050
+ id: "deepseek-v3.1:671b",
1051
+ name: "deepseek-v3.1:671b",
1052
+ reasoning: true,
1053
+ thinkingLevelMap: {
1054
+ off: "none",
1055
+ minimal: null,
1056
+ low: "low",
1057
+ medium: "medium",
1058
+ high: "high",
1059
+ xhigh: "max",
1060
+ },
1061
+ input: ["text"],
1062
+ cost: {
1063
+ input: 0,
1064
+ output: 0,
1065
+ cacheRead: 0,
1066
+ cacheWrite: 0,
1067
+ },
1068
+ contextWindow: 163840,
1069
+ maxTokens: 32768,
1070
+ compat: {
1071
+ supportsDeveloperRole: false,
1072
+ supportsReasoningEffort: true,
1073
+ supportsStore: false,
1074
+ maxTokensField: "max_tokens",
1075
+ supportsUsageInStreaming: true,
1076
+ requiresToolResultName: false,
1077
+ requiresAssistantAfterToolResult: false,
1078
+ requiresThinkingAsText: false,
1079
+ requiresReasoningContentOnAssistantMessages: false,
1080
+ thinkingFormat: "openai",
1081
+ supportsStrictMode: false,
1082
+ sendSessionAffinityHeaders: false,
1083
+ supportsLongCacheRetention: false,
1084
+ zaiToolStream: false,
1085
+ openRouterRouting: {},
1086
+ vercelGatewayRouting: {},
1087
+ },
1088
+ },
1089
+ {
1090
+ id: "minimax-m2.5",
1091
+ name: "minimax-m2.5",
1092
+ reasoning: true,
1093
+ thinkingLevelMap: {
1094
+ off: null,
1095
+ minimal: null,
1096
+ low: "low",
1097
+ medium: "medium",
1098
+ high: "high",
1099
+ xhigh: "max",
1100
+ },
1101
+ input: ["text"],
1102
+ cost: {
1103
+ input: 0,
1104
+ output: 0,
1105
+ cacheRead: 0,
1106
+ cacheWrite: 0,
1107
+ },
1108
+ contextWindow: 196608,
1109
+ maxTokens: 32768,
1110
+ compat: {
1111
+ supportsDeveloperRole: false,
1112
+ supportsReasoningEffort: true,
1113
+ supportsStore: false,
1114
+ maxTokensField: "max_tokens",
1115
+ supportsUsageInStreaming: true,
1116
+ requiresToolResultName: false,
1117
+ requiresAssistantAfterToolResult: false,
1118
+ requiresThinkingAsText: false,
1119
+ requiresReasoningContentOnAssistantMessages: false,
1120
+ thinkingFormat: "openai",
1121
+ supportsStrictMode: false,
1122
+ sendSessionAffinityHeaders: false,
1123
+ supportsLongCacheRetention: false,
1124
+ zaiToolStream: false,
1125
+ openRouterRouting: {},
1126
+ vercelGatewayRouting: {},
1127
+ },
1128
+ },
1129
+ {
1130
+ id: "glm-4.6",
1131
+ name: "glm-4.6",
1132
+ reasoning: true,
1133
+ thinkingLevelMap: {
1134
+ off: "none",
1135
+ minimal: null,
1136
+ low: "low",
1137
+ medium: "medium",
1138
+ high: "high",
1139
+ xhigh: "max",
1140
+ },
1141
+ input: ["text"],
1142
+ cost: {
1143
+ input: 0,
1144
+ output: 0,
1145
+ cacheRead: 0,
1146
+ cacheWrite: 0,
1147
+ },
1148
+ contextWindow: 202752,
1149
+ maxTokens: 32768,
1150
+ compat: {
1151
+ supportsDeveloperRole: false,
1152
+ supportsReasoningEffort: true,
1153
+ supportsStore: false,
1154
+ maxTokensField: "max_tokens",
1155
+ supportsUsageInStreaming: true,
1156
+ requiresToolResultName: false,
1157
+ requiresAssistantAfterToolResult: false,
1158
+ requiresThinkingAsText: false,
1159
+ requiresReasoningContentOnAssistantMessages: false,
1160
+ thinkingFormat: "openai",
1161
+ supportsStrictMode: false,
1162
+ sendSessionAffinityHeaders: false,
1163
+ supportsLongCacheRetention: false,
1164
+ zaiToolStream: false,
1165
+ openRouterRouting: {},
1166
+ vercelGatewayRouting: {},
1167
+ },
1168
+ },
1169
+ {
1170
+ id: "kimi-k2.5",
1171
+ name: "kimi-k2.5",
1172
+ reasoning: true,
1173
+ thinkingLevelMap: {
1174
+ off: "none",
1175
+ minimal: null,
1176
+ low: "low",
1177
+ medium: "medium",
1178
+ high: "high",
1179
+ xhigh: "max",
1180
+ },
1181
+ input: ["text", "image"],
1182
+ cost: {
1183
+ input: 0,
1184
+ output: 0,
1185
+ cacheRead: 0,
1186
+ cacheWrite: 0,
1187
+ },
1188
+ contextWindow: 262144,
1189
+ maxTokens: 32768,
1190
+ compat: {
1191
+ supportsDeveloperRole: false,
1192
+ supportsReasoningEffort: true,
1193
+ supportsStore: false,
1194
+ maxTokensField: "max_tokens",
1195
+ supportsUsageInStreaming: true,
1196
+ requiresToolResultName: false,
1197
+ requiresAssistantAfterToolResult: false,
1198
+ requiresThinkingAsText: false,
1199
+ requiresReasoningContentOnAssistantMessages: false,
1200
+ thinkingFormat: "openai",
1201
+ supportsStrictMode: false,
1202
+ sendSessionAffinityHeaders: false,
1203
+ supportsLongCacheRetention: false,
1204
+ zaiToolStream: false,
1205
+ openRouterRouting: {},
1206
+ vercelGatewayRouting: {},
1207
+ },
1208
+ },
1209
+ {
1210
+ id: "kimi-k2.6",
1211
+ name: "kimi-k2.6",
1212
+ reasoning: true,
1213
+ thinkingLevelMap: {
1214
+ off: "none",
1215
+ minimal: null,
1216
+ low: "low",
1217
+ medium: "medium",
1218
+ high: "high",
1219
+ xhigh: "max",
1220
+ },
1221
+ input: ["text", "image"],
1222
+ cost: {
1223
+ input: 0,
1224
+ output: 0,
1225
+ cacheRead: 0,
1226
+ cacheWrite: 0,
1227
+ },
1228
+ contextWindow: 262144,
1229
+ maxTokens: 32768,
1230
+ compat: {
1231
+ supportsDeveloperRole: false,
1232
+ supportsReasoningEffort: true,
1233
+ supportsStore: false,
1234
+ maxTokensField: "max_tokens",
1235
+ supportsUsageInStreaming: true,
1236
+ requiresToolResultName: false,
1237
+ requiresAssistantAfterToolResult: false,
1238
+ requiresThinkingAsText: false,
1239
+ requiresReasoningContentOnAssistantMessages: false,
1240
+ thinkingFormat: "openai",
1241
+ supportsStrictMode: false,
1242
+ sendSessionAffinityHeaders: false,
1243
+ supportsLongCacheRetention: false,
1244
+ zaiToolStream: false,
1245
+ openRouterRouting: {},
1246
+ vercelGatewayRouting: {},
1247
+ },
1248
+ },
1249
+ {
1250
+ id: "qwen3-coder:480b",
1251
+ name: "qwen3-coder:480b",
1252
+ reasoning: false,
1253
+ input: ["text"],
1254
+ cost: {
1255
+ input: 0,
1256
+ output: 0,
1257
+ cacheRead: 0,
1258
+ cacheWrite: 0,
1259
+ },
1260
+ contextWindow: 262144,
1261
+ maxTokens: 32768,
1262
+ compat: {
1263
+ supportsDeveloperRole: false,
1264
+ supportsReasoningEffort: true,
1265
+ supportsStore: false,
1266
+ maxTokensField: "max_tokens",
1267
+ supportsUsageInStreaming: true,
1268
+ requiresToolResultName: false,
1269
+ requiresAssistantAfterToolResult: false,
1270
+ requiresThinkingAsText: false,
1271
+ requiresReasoningContentOnAssistantMessages: false,
1272
+ thinkingFormat: "openai",
1273
+ supportsStrictMode: false,
1274
+ sendSessionAffinityHeaders: false,
1275
+ supportsLongCacheRetention: false,
1276
+ zaiToolStream: false,
1277
+ openRouterRouting: {},
1278
+ vercelGatewayRouting: {},
1279
+ },
1280
+ },
1281
+ {
1282
+ id: "gpt-oss:120b",
1283
+ name: "gpt-oss:120b",
1284
+ reasoning: true,
1285
+ thinkingLevelMap: {
1286
+ off: null,
1287
+ minimal: null,
1288
+ low: "low",
1289
+ medium: "medium",
1290
+ high: "high",
1291
+ xhigh: null,
1292
+ },
1293
+ input: ["text"],
1294
+ cost: {
1295
+ input: 0,
1296
+ output: 0,
1297
+ cacheRead: 0,
1298
+ cacheWrite: 0,
1299
+ },
1300
+ contextWindow: 131072,
1301
+ maxTokens: 32768,
1302
+ compat: {
1303
+ supportsDeveloperRole: false,
1304
+ supportsReasoningEffort: true,
1305
+ supportsStore: false,
1306
+ maxTokensField: "max_tokens",
1307
+ supportsUsageInStreaming: true,
1308
+ requiresToolResultName: false,
1309
+ requiresAssistantAfterToolResult: false,
1310
+ requiresThinkingAsText: false,
1311
+ requiresReasoningContentOnAssistantMessages: false,
1312
+ thinkingFormat: "openai",
1313
+ supportsStrictMode: false,
1314
+ sendSessionAffinityHeaders: false,
1315
+ supportsLongCacheRetention: false,
1316
+ zaiToolStream: false,
1317
+ openRouterRouting: {},
1318
+ vercelGatewayRouting: {},
1319
+ },
1320
+ },
1321
+ {
1322
+ id: "ministral-3:8b",
1323
+ name: "ministral-3:8b",
1324
+ reasoning: false,
1325
+ input: ["text", "image"],
1326
+ cost: {
1327
+ input: 0,
1328
+ output: 0,
1329
+ cacheRead: 0,
1330
+ cacheWrite: 0,
1331
+ },
1332
+ contextWindow: 262144,
1333
+ maxTokens: 32768,
1334
+ compat: {
1335
+ supportsDeveloperRole: false,
1336
+ supportsReasoningEffort: true,
1337
+ supportsStore: false,
1338
+ maxTokensField: "max_tokens",
1339
+ supportsUsageInStreaming: true,
1340
+ requiresToolResultName: false,
1341
+ requiresAssistantAfterToolResult: false,
1342
+ requiresThinkingAsText: false,
1343
+ requiresReasoningContentOnAssistantMessages: false,
1344
+ thinkingFormat: "openai",
1345
+ supportsStrictMode: false,
1346
+ sendSessionAffinityHeaders: false,
1347
+ supportsLongCacheRetention: false,
1348
+ zaiToolStream: false,
1349
+ openRouterRouting: {},
1350
+ vercelGatewayRouting: {},
1351
+ },
1352
+ },
1353
+ ];