@theokit/sdk 4.19.1 → 4.19.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.
@@ -0,0 +1,1295 @@
1
+ [
2
+ {
3
+ "id": "openai",
4
+ "displayName": "OpenAI",
5
+ "apiMode": "chat_completions",
6
+ "authType": "api_key",
7
+ "baseUrl": "https://api.openai.com/v1",
8
+ "envVars": ["OPENAI_API_KEY"],
9
+ "fallbackModels": ["gpt-4o-mini", "gpt-4o"],
10
+ "capabilities": {
11
+ "supportsToolUse": true,
12
+ "supportsVision": true,
13
+ "supportsStructuredOutput": true,
14
+ "supportsStreaming": true,
15
+ "supportsCacheControl": false
16
+ },
17
+ "aliases": ["openai", "openai-chatgpt"],
18
+ "models": {
19
+ "gpt-4o-mini": {
20
+ "name": "GPT-4o mini",
21
+ "release_date": "2024-07-18",
22
+ "attachment": true,
23
+ "reasoning": false,
24
+ "temperature": true,
25
+ "tool_call": true,
26
+ "structured_output": true,
27
+ "cost": {
28
+ "input": 0.15,
29
+ "output": 0.6,
30
+ "cache_read": 0.075
31
+ },
32
+ "limit": {
33
+ "context": 128000,
34
+ "output": 16384
35
+ },
36
+ "modalities": {
37
+ "input": ["text", "image"],
38
+ "output": ["text"]
39
+ },
40
+ "cache_control": false
41
+ },
42
+ "gpt-4o": {
43
+ "name": "GPT-4o",
44
+ "release_date": "2024-05-13",
45
+ "attachment": true,
46
+ "reasoning": false,
47
+ "temperature": true,
48
+ "tool_call": true,
49
+ "structured_output": true,
50
+ "cost": {
51
+ "input": 2.5,
52
+ "output": 10,
53
+ "cache_read": 1.25
54
+ },
55
+ "limit": {
56
+ "context": 128000,
57
+ "output": 16384
58
+ },
59
+ "modalities": {
60
+ "input": ["text", "image"],
61
+ "output": ["text"]
62
+ },
63
+ "cache_control": false
64
+ },
65
+ "gpt-4-turbo": {
66
+ "name": "GPT-4 Turbo",
67
+ "release_date": "2023-11-06",
68
+ "attachment": true,
69
+ "reasoning": false,
70
+ "temperature": true,
71
+ "tool_call": true,
72
+ "structured_output": false,
73
+ "cost": {
74
+ "input": 10,
75
+ "output": 30
76
+ },
77
+ "limit": {
78
+ "context": 128000,
79
+ "output": 4096
80
+ },
81
+ "modalities": {
82
+ "input": ["text", "image"],
83
+ "output": ["text"]
84
+ },
85
+ "cache_control": false
86
+ },
87
+ "o1": {
88
+ "name": "o1",
89
+ "release_date": "2024-12-05",
90
+ "attachment": true,
91
+ "reasoning": true,
92
+ "temperature": false,
93
+ "tool_call": true,
94
+ "structured_output": true,
95
+ "cost": {
96
+ "input": 15,
97
+ "output": 60,
98
+ "cache_read": 7.5
99
+ },
100
+ "limit": {
101
+ "context": 200000,
102
+ "output": 100000
103
+ },
104
+ "modalities": {
105
+ "input": ["text"],
106
+ "output": ["text"]
107
+ },
108
+ "cache_control": false
109
+ },
110
+ "o3": {
111
+ "name": "o3",
112
+ "release_date": "2025-04-16",
113
+ "attachment": true,
114
+ "reasoning": true,
115
+ "temperature": false,
116
+ "tool_call": true,
117
+ "structured_output": true,
118
+ "cost": {
119
+ "input": 2,
120
+ "output": 8,
121
+ "cache_read": 0.5
122
+ },
123
+ "limit": {
124
+ "context": 200000,
125
+ "output": 100000
126
+ },
127
+ "modalities": {
128
+ "input": ["text"],
129
+ "output": ["text"]
130
+ },
131
+ "cache_control": false
132
+ },
133
+ "gpt-4.1": {
134
+ "name": "GPT-4.1",
135
+ "release_date": "2025-04-14",
136
+ "attachment": true,
137
+ "reasoning": false,
138
+ "temperature": true,
139
+ "tool_call": true,
140
+ "structured_output": true,
141
+ "cost": {
142
+ "input": 2,
143
+ "output": 8,
144
+ "cache_read": 0.5
145
+ },
146
+ "limit": {
147
+ "context": 1047576,
148
+ "output": 32768
149
+ },
150
+ "modalities": {
151
+ "input": ["text", "image"],
152
+ "output": ["text"]
153
+ },
154
+ "cache_control": false
155
+ },
156
+ "gpt-5.4": {
157
+ "limit": {
158
+ "context": 400000,
159
+ "output": 128000
160
+ }
161
+ },
162
+ "gpt-5.4-mini": {
163
+ "limit": {
164
+ "context": 400000,
165
+ "output": 128000
166
+ }
167
+ },
168
+ "gpt-5.3": {
169
+ "limit": {
170
+ "context": 400000,
171
+ "output": 128000
172
+ }
173
+ },
174
+ "gpt-5.2": {
175
+ "limit": {
176
+ "context": 400000,
177
+ "output": 128000
178
+ }
179
+ }
180
+ }
181
+ },
182
+ {
183
+ "id": "anthropic",
184
+ "displayName": "Anthropic",
185
+ "apiMode": "anthropic_messages",
186
+ "authType": "api_key",
187
+ "baseUrl": "https://api.anthropic.com/v1",
188
+ "envVars": ["ANTHROPIC_API_KEY"],
189
+ "fallbackModels": ["claude-sonnet-4-20250514", "claude-3-5-haiku-latest"],
190
+ "capabilities": {
191
+ "supportsToolUse": true,
192
+ "supportsVision": true,
193
+ "supportsStructuredOutput": false,
194
+ "supportsStreaming": true,
195
+ "supportsCacheControl": true
196
+ },
197
+ "aliases": ["anthropic"],
198
+ "models": {
199
+ "claude-3-5-haiku-latest": {
200
+ "tool_call": true,
201
+ "structured_output": false,
202
+ "cache_control": true,
203
+ "modalities": {
204
+ "input": ["text"]
205
+ },
206
+ "limit": {
207
+ "context": 200000,
208
+ "output": 8192
209
+ }
210
+ },
211
+ "claude-opus-4-7": {
212
+ "name": "Claude Opus 4.7",
213
+ "release_date": "2026-04-14",
214
+ "attachment": true,
215
+ "reasoning": true,
216
+ "temperature": false,
217
+ "tool_call": true,
218
+ "structured_output": true,
219
+ "cost": {
220
+ "input": 5,
221
+ "output": 25,
222
+ "cache_read": 0.5,
223
+ "cache_write": 6.25
224
+ },
225
+ "limit": {
226
+ "context": 1000000,
227
+ "output": 128000
228
+ },
229
+ "modalities": {
230
+ "input": ["text", "image", "pdf"],
231
+ "output": ["text"]
232
+ },
233
+ "cache_control": true
234
+ },
235
+ "claude-sonnet-4-6": {
236
+ "name": "Claude Sonnet 4.6",
237
+ "release_date": "2026-02-17",
238
+ "attachment": true,
239
+ "reasoning": true,
240
+ "temperature": true,
241
+ "tool_call": true,
242
+ "structured_output": true,
243
+ "cost": {
244
+ "input": 3,
245
+ "output": 15,
246
+ "cache_read": 0.3,
247
+ "cache_write": 3.75
248
+ },
249
+ "limit": {
250
+ "context": 1000000,
251
+ "output": 128000
252
+ },
253
+ "modalities": {
254
+ "input": ["text", "image", "pdf"],
255
+ "output": ["text"]
256
+ },
257
+ "cache_control": true
258
+ },
259
+ "claude-haiku-4-5-20251001": {
260
+ "name": "Claude Haiku 4.5",
261
+ "release_date": "2025-10-15",
262
+ "attachment": true,
263
+ "reasoning": true,
264
+ "temperature": true,
265
+ "tool_call": true,
266
+ "structured_output": true,
267
+ "cost": {
268
+ "input": 1,
269
+ "output": 5,
270
+ "cache_read": 0.1,
271
+ "cache_write": 1.25
272
+ },
273
+ "limit": {
274
+ "context": 200000,
275
+ "output": 64000
276
+ },
277
+ "modalities": {
278
+ "input": ["text", "image", "pdf"],
279
+ "output": ["text"]
280
+ },
281
+ "cache_control": true
282
+ },
283
+ "claude-opus-4": {
284
+ "tool_call": true,
285
+ "structured_output": false,
286
+ "cache_control": true,
287
+ "modalities": {
288
+ "input": ["text", "image"]
289
+ },
290
+ "limit": {
291
+ "context": 200000,
292
+ "output": 32000
293
+ }
294
+ },
295
+ "claude-sonnet-4": {
296
+ "tool_call": true,
297
+ "structured_output": false,
298
+ "cache_control": true,
299
+ "modalities": {
300
+ "input": ["text", "image"]
301
+ },
302
+ "limit": {
303
+ "context": 200000,
304
+ "output": 16000
305
+ }
306
+ },
307
+ "claude-3-5-sonnet": {
308
+ "tool_call": true,
309
+ "structured_output": false,
310
+ "cache_control": true,
311
+ "modalities": {
312
+ "input": ["text", "image"]
313
+ },
314
+ "limit": {
315
+ "context": 200000,
316
+ "output": 8192
317
+ }
318
+ },
319
+ "claude-3-5-sonnet-latest": {
320
+ "tool_call": true,
321
+ "structured_output": false,
322
+ "cache_control": true,
323
+ "modalities": {
324
+ "input": ["text", "image"]
325
+ },
326
+ "limit": {
327
+ "context": 200000,
328
+ "output": 8192
329
+ }
330
+ },
331
+ "claude-3-haiku": {
332
+ "tool_call": true,
333
+ "structured_output": false,
334
+ "cache_control": true,
335
+ "modalities": {
336
+ "input": ["text", "image"]
337
+ },
338
+ "limit": {
339
+ "context": 200000,
340
+ "output": 4096
341
+ }
342
+ },
343
+ "claude-3-opus": {
344
+ "tool_call": true,
345
+ "structured_output": false,
346
+ "cache_control": true,
347
+ "modalities": {
348
+ "input": ["text", "image"]
349
+ },
350
+ "limit": {
351
+ "context": 200000,
352
+ "output": 4096
353
+ }
354
+ },
355
+ "claude-opus-4.1": {
356
+ "tool_call": true,
357
+ "structured_output": false,
358
+ "cache_control": true,
359
+ "modalities": {
360
+ "input": ["text", "image"]
361
+ },
362
+ "limit": {
363
+ "context": 200000,
364
+ "output": 32000
365
+ }
366
+ },
367
+ "claude-sonnet-4.5": {
368
+ "tool_call": true,
369
+ "structured_output": false,
370
+ "cache_control": true,
371
+ "modalities": {
372
+ "input": ["text", "image"]
373
+ },
374
+ "limit": {
375
+ "context": 200000,
376
+ "output": 16000
377
+ }
378
+ },
379
+ "claude-3.5-sonnet": {
380
+ "tool_call": true,
381
+ "structured_output": false,
382
+ "cache_control": true,
383
+ "modalities": {
384
+ "input": ["text", "image"]
385
+ },
386
+ "limit": {
387
+ "context": 200000,
388
+ "output": 8192
389
+ }
390
+ }
391
+ }
392
+ },
393
+ {
394
+ "id": "openrouter",
395
+ "displayName": "OpenRouter",
396
+ "apiMode": "chat_completions",
397
+ "authType": "api_key",
398
+ "baseUrl": "https://openrouter.ai/api/v1",
399
+ "envVars": ["OPENROUTER_API_KEY"],
400
+ "fallbackModels": ["openai/gpt-4o-mini"],
401
+ "capabilities": {
402
+ "supportsToolUse": true,
403
+ "supportsVision": true,
404
+ "supportsStructuredOutput": true,
405
+ "supportsStreaming": true,
406
+ "supportsCacheControl": false
407
+ },
408
+ "aliases": ["openrouter"]
409
+ },
410
+ {
411
+ "id": "groq",
412
+ "displayName": "Groq",
413
+ "apiMode": "chat_completions",
414
+ "authType": "api_key",
415
+ "baseUrl": "https://api.groq.com/openai/v1",
416
+ "envVars": ["GROQ_API_KEY"],
417
+ "fallbackModels": ["llama-3.3-70b-versatile"],
418
+ "capabilities": {
419
+ "supportsToolUse": true,
420
+ "supportsVision": true,
421
+ "supportsStructuredOutput": true,
422
+ "supportsStreaming": true,
423
+ "supportsCacheControl": false
424
+ },
425
+ "models": {
426
+ "llama-3.3-70b-versatile": {
427
+ "name": "Llama 3.3 70B",
428
+ "release_date": "2024-12-06",
429
+ "attachment": false,
430
+ "reasoning": false,
431
+ "temperature": true,
432
+ "tool_call": true,
433
+ "cost": {
434
+ "input": 0.59,
435
+ "output": 0.79
436
+ },
437
+ "limit": {
438
+ "context": 131072,
439
+ "output": 32768
440
+ },
441
+ "modalities": {
442
+ "input": ["text"],
443
+ "output": ["text"]
444
+ }
445
+ }
446
+ }
447
+ },
448
+ {
449
+ "id": "mistral",
450
+ "displayName": "Mistral AI",
451
+ "apiMode": "chat_completions",
452
+ "authType": "api_key",
453
+ "baseUrl": "https://api.mistral.ai/v1",
454
+ "envVars": ["MISTRAL_API_KEY"],
455
+ "fallbackModels": ["mistral-large-latest"],
456
+ "capabilities": {
457
+ "supportsToolUse": true,
458
+ "supportsVision": true,
459
+ "supportsStructuredOutput": true,
460
+ "supportsStreaming": true,
461
+ "supportsCacheControl": false
462
+ },
463
+ "models": {
464
+ "mistral-large-latest": {
465
+ "name": "Mistral Large (latest)",
466
+ "release_date": "2024-11-01",
467
+ "attachment": true,
468
+ "reasoning": false,
469
+ "temperature": true,
470
+ "tool_call": true,
471
+ "cost": {
472
+ "input": 0.5,
473
+ "output": 1.5
474
+ },
475
+ "limit": {
476
+ "context": 262144,
477
+ "output": 262144
478
+ },
479
+ "modalities": {
480
+ "input": ["text", "image"],
481
+ "output": ["text"]
482
+ }
483
+ }
484
+ }
485
+ },
486
+ {
487
+ "id": "deepseek",
488
+ "displayName": "DeepSeek",
489
+ "apiMode": "chat_completions",
490
+ "authType": "api_key",
491
+ "baseUrl": "https://api.deepseek.com/v1",
492
+ "envVars": ["DEEPSEEK_API_KEY"],
493
+ "fallbackModels": ["deepseek-chat"],
494
+ "capabilities": {
495
+ "supportsToolUse": true,
496
+ "supportsVision": false,
497
+ "supportsStructuredOutput": true,
498
+ "supportsStreaming": true,
499
+ "supportsCacheControl": false
500
+ },
501
+ "models": {
502
+ "deepseek-chat": {
503
+ "name": "DeepSeek Chat",
504
+ "release_date": "2025-12-01",
505
+ "attachment": true,
506
+ "reasoning": false,
507
+ "temperature": true,
508
+ "tool_call": true,
509
+ "cost": {
510
+ "input": 0.14,
511
+ "output": 0.28,
512
+ "cache_read": 0.0028
513
+ },
514
+ "limit": {
515
+ "context": 1000000,
516
+ "output": 384000
517
+ },
518
+ "modalities": {
519
+ "input": ["text"],
520
+ "output": ["text"]
521
+ }
522
+ },
523
+ "deepseek-v4-flash": {
524
+ "name": "DeepSeek V4 Flash",
525
+ "release_date": "2026-04-24",
526
+ "attachment": false,
527
+ "reasoning": true,
528
+ "temperature": true,
529
+ "tool_call": true,
530
+ "structured_output": false,
531
+ "cost": {
532
+ "input": 0.14,
533
+ "output": 0.28,
534
+ "cache_read": 0.0028
535
+ },
536
+ "limit": {
537
+ "context": 1048576,
538
+ "output": 8000
539
+ },
540
+ "modalities": {
541
+ "input": ["text"],
542
+ "output": ["text"]
543
+ },
544
+ "cache_control": false
545
+ },
546
+ "deepseek-v3.2": {
547
+ "tool_call": true,
548
+ "structured_output": false,
549
+ "cache_control": false,
550
+ "modalities": {
551
+ "input": ["text"]
552
+ },
553
+ "limit": {
554
+ "context": 131072,
555
+ "output": 8000
556
+ }
557
+ }
558
+ }
559
+ },
560
+ {
561
+ "id": "together",
562
+ "displayName": "Together AI",
563
+ "apiMode": "chat_completions",
564
+ "authType": "api_key",
565
+ "baseUrl": "https://api.together.xyz/v1",
566
+ "envVars": ["TOGETHER_API_KEY"],
567
+ "fallbackModels": ["meta-llama/Meta-Llama-3.1-70B-Instruct-Turbo"],
568
+ "capabilities": {
569
+ "supportsToolUse": true,
570
+ "supportsVision": true,
571
+ "supportsStructuredOutput": true,
572
+ "supportsStreaming": true,
573
+ "supportsCacheControl": false
574
+ }
575
+ },
576
+ {
577
+ "id": "fireworks",
578
+ "displayName": "Fireworks AI",
579
+ "apiMode": "chat_completions",
580
+ "authType": "api_key",
581
+ "baseUrl": "https://api.fireworks.ai/inference/v1",
582
+ "envVars": ["FIREWORKS_API_KEY"],
583
+ "fallbackModels": ["accounts/fireworks/models/llama-v3p1-70b-instruct"],
584
+ "capabilities": {
585
+ "supportsToolUse": true,
586
+ "supportsVision": true,
587
+ "supportsStructuredOutput": true,
588
+ "supportsStreaming": true,
589
+ "supportsCacheControl": false
590
+ }
591
+ },
592
+ {
593
+ "id": "google-gemini",
594
+ "displayName": "Google Gemini",
595
+ "apiMode": "chat_completions",
596
+ "authType": "api_key",
597
+ "baseUrl": "https://generativelanguage.googleapis.com/v1beta/openai",
598
+ "envVars": ["GOOGLE_API_KEY", "GEMINI_API_KEY"],
599
+ "fallbackModels": ["gemini-2.0-flash"],
600
+ "capabilities": {
601
+ "supportsToolUse": true,
602
+ "supportsVision": true,
603
+ "supportsStructuredOutput": true,
604
+ "supportsStreaming": true,
605
+ "supportsCacheControl": false
606
+ },
607
+ "aliases": ["gemini", "google"],
608
+ "models": {
609
+ "gemini-2.0-flash": {
610
+ "name": "Gemini 2.0 Flash",
611
+ "release_date": "2024-12-11",
612
+ "attachment": true,
613
+ "reasoning": false,
614
+ "temperature": true,
615
+ "tool_call": true,
616
+ "structured_output": true,
617
+ "cost": {
618
+ "input": 0.1,
619
+ "output": 0.4,
620
+ "cache_read": 0.025
621
+ },
622
+ "limit": {
623
+ "context": 1048576,
624
+ "output": 8192
625
+ },
626
+ "modalities": {
627
+ "input": ["text", "image", "audio", "video", "pdf"],
628
+ "output": ["text"]
629
+ },
630
+ "status": "deprecated"
631
+ },
632
+ "gemini-2.5-flash-lite": {
633
+ "name": "Gemini 2.5 Flash-Lite",
634
+ "release_date": "2025-06-17",
635
+ "attachment": true,
636
+ "reasoning": true,
637
+ "temperature": true,
638
+ "tool_call": true,
639
+ "structured_output": true,
640
+ "cost": {
641
+ "input": 0.1,
642
+ "output": 0.4,
643
+ "cache_read": 0.01
644
+ },
645
+ "limit": {
646
+ "context": 1048576,
647
+ "output": 8000
648
+ },
649
+ "modalities": {
650
+ "input": ["text", "image"],
651
+ "output": ["text"]
652
+ },
653
+ "cache_control": false
654
+ },
655
+ "gemini-2.5-pro": {
656
+ "name": "Gemini 2.5 Pro",
657
+ "release_date": "2025-06-17",
658
+ "attachment": true,
659
+ "reasoning": true,
660
+ "temperature": true,
661
+ "tool_call": true,
662
+ "structured_output": true,
663
+ "cost": {
664
+ "input": 1.25,
665
+ "output": 10,
666
+ "cache_read": 0.125
667
+ },
668
+ "limit": {
669
+ "context": 1048576,
670
+ "output": 8000
671
+ },
672
+ "modalities": {
673
+ "input": ["text", "image"],
674
+ "output": ["text"]
675
+ },
676
+ "cache_control": false
677
+ }
678
+ }
679
+ },
680
+ {
681
+ "id": "ollama",
682
+ "displayName": "Ollama",
683
+ "apiMode": "chat_completions",
684
+ "authType": "none",
685
+ "baseUrl": "http://localhost:11434/v1",
686
+ "envVars": [],
687
+ "fallbackModels": ["llama3.2"],
688
+ "capabilities": {
689
+ "supportsToolUse": true,
690
+ "supportsVision": true,
691
+ "supportsStructuredOutput": true,
692
+ "supportsStreaming": true,
693
+ "supportsCacheControl": false
694
+ },
695
+ "aliases": ["ollama"]
696
+ },
697
+ {
698
+ "id": "lmstudio",
699
+ "displayName": "LM Studio",
700
+ "apiMode": "chat_completions",
701
+ "authType": "none",
702
+ "baseUrl": "http://localhost:1234/v1",
703
+ "envVars": [],
704
+ "fallbackModels": ["lmstudio-community/default"],
705
+ "capabilities": {
706
+ "supportsToolUse": true,
707
+ "supportsVision": false,
708
+ "supportsStructuredOutput": true,
709
+ "supportsStreaming": true,
710
+ "supportsCacheControl": false
711
+ },
712
+ "aliases": ["lmstudio"]
713
+ },
714
+ {
715
+ "id": "llamacpp",
716
+ "displayName": "llama.cpp",
717
+ "apiMode": "chat_completions",
718
+ "authType": "none",
719
+ "baseUrl": "http://localhost:8080/v1",
720
+ "envVars": [],
721
+ "fallbackModels": ["default"],
722
+ "capabilities": {
723
+ "supportsToolUse": true,
724
+ "supportsVision": false,
725
+ "supportsStructuredOutput": false,
726
+ "supportsStreaming": true,
727
+ "supportsCacheControl": false
728
+ },
729
+ "aliases": ["llamacpp"]
730
+ },
731
+ {
732
+ "id": "bedrock",
733
+ "displayName": "AWS Bedrock",
734
+ "apiMode": "bedrock",
735
+ "authType": "aws_sdk",
736
+ "baseUrl": "https://bedrock-runtime.us-east-1.amazonaws.com",
737
+ "envVars": ["AWS_ACCESS_KEY_ID", "AWS_SECRET_ACCESS_KEY"],
738
+ "fallbackModels": ["anthropic.claude-3-5-sonnet-20241022-v2:0"],
739
+ "capabilities": {
740
+ "supportsToolUse": true,
741
+ "supportsVision": true,
742
+ "supportsStructuredOutput": false,
743
+ "supportsStreaming": true,
744
+ "supportsCacheControl": true
745
+ },
746
+ "aliases": ["bedrock"]
747
+ },
748
+ {
749
+ "id": "vertex",
750
+ "displayName": "Google Vertex AI",
751
+ "apiMode": "chat_completions",
752
+ "authType": "gcp_oauth",
753
+ "baseUrl": "https://us-central1-aiplatform.googleapis.com/v1",
754
+ "envVars": ["GOOGLE_APPLICATION_CREDENTIALS"],
755
+ "fallbackModels": ["gemini-1.5-pro"],
756
+ "capabilities": {
757
+ "supportsToolUse": true,
758
+ "supportsVision": true,
759
+ "supportsStructuredOutput": true,
760
+ "supportsStreaming": true,
761
+ "supportsCacheControl": false
762
+ },
763
+ "aliases": ["vertex"]
764
+ },
765
+ {
766
+ "id": "cohere",
767
+ "displayName": "Cohere",
768
+ "apiMode": "chat_completions",
769
+ "authType": "api_key",
770
+ "baseUrl": "https://api.cohere.com/v2",
771
+ "envVars": ["COHERE_API_KEY"],
772
+ "fallbackModels": ["command-r-plus"],
773
+ "capabilities": {
774
+ "supportsToolUse": true,
775
+ "supportsVision": false,
776
+ "supportsStructuredOutput": true,
777
+ "supportsStreaming": true,
778
+ "supportsCacheControl": false
779
+ }
780
+ },
781
+ {
782
+ "id": "perplexity",
783
+ "displayName": "Perplexity",
784
+ "apiMode": "chat_completions",
785
+ "authType": "api_key",
786
+ "baseUrl": "https://api.perplexity.ai",
787
+ "envVars": ["PERPLEXITY_API_KEY"],
788
+ "fallbackModels": ["llama-3.1-sonar-large-128k-online"],
789
+ "capabilities": {
790
+ "supportsToolUse": false,
791
+ "supportsVision": false,
792
+ "supportsStructuredOutput": false,
793
+ "supportsStreaming": true,
794
+ "supportsCacheControl": false
795
+ }
796
+ },
797
+ {
798
+ "id": "xai",
799
+ "displayName": "xAI (Grok)",
800
+ "apiMode": "chat_completions",
801
+ "authType": "api_key",
802
+ "baseUrl": "https://api.x.ai/v1",
803
+ "envVars": ["XAI_API_KEY"],
804
+ "fallbackModels": ["grok-2"],
805
+ "capabilities": {
806
+ "supportsToolUse": true,
807
+ "supportsVision": true,
808
+ "supportsStructuredOutput": true,
809
+ "supportsStreaming": true,
810
+ "supportsCacheControl": false
811
+ },
812
+ "aliases": ["grok"]
813
+ },
814
+ {
815
+ "id": "sambanova",
816
+ "displayName": "SambaNova",
817
+ "apiMode": "chat_completions",
818
+ "authType": "api_key",
819
+ "baseUrl": "https://api.sambanova.ai/v1",
820
+ "envVars": ["SAMBANOVA_API_KEY"],
821
+ "fallbackModels": ["Meta-Llama-3.1-70B-Instruct"],
822
+ "capabilities": {
823
+ "supportsToolUse": true,
824
+ "supportsVision": false,
825
+ "supportsStructuredOutput": true,
826
+ "supportsStreaming": true,
827
+ "supportsCacheControl": false
828
+ }
829
+ },
830
+ {
831
+ "id": "cerebras",
832
+ "displayName": "Cerebras",
833
+ "apiMode": "chat_completions",
834
+ "authType": "api_key",
835
+ "baseUrl": "https://api.cerebras.ai/v1",
836
+ "envVars": ["CEREBRAS_API_KEY"],
837
+ "fallbackModels": ["llama3.1-70b"],
838
+ "capabilities": {
839
+ "supportsToolUse": true,
840
+ "supportsVision": false,
841
+ "supportsStructuredOutput": true,
842
+ "supportsStreaming": true,
843
+ "supportsCacheControl": false
844
+ }
845
+ },
846
+ {
847
+ "id": "deepinfra",
848
+ "displayName": "DeepInfra",
849
+ "apiMode": "chat_completions",
850
+ "authType": "api_key",
851
+ "baseUrl": "https://api.deepinfra.com/v1/openai",
852
+ "envVars": ["DEEPINFRA_API_KEY"],
853
+ "fallbackModels": ["meta-llama/Meta-Llama-3.1-70B-Instruct"],
854
+ "capabilities": {
855
+ "supportsToolUse": true,
856
+ "supportsVision": true,
857
+ "supportsStructuredOutput": true,
858
+ "supportsStreaming": true,
859
+ "supportsCacheControl": false
860
+ }
861
+ },
862
+ {
863
+ "id": "huggingface",
864
+ "displayName": "Hugging Face",
865
+ "apiMode": "chat_completions",
866
+ "authType": "api_key",
867
+ "baseUrl": "https://api-inference.huggingface.co/v1",
868
+ "envVars": ["HF_TOKEN", "HUGGINGFACE_API_KEY"],
869
+ "fallbackModels": ["meta-llama/Llama-3.2-3B-Instruct"],
870
+ "capabilities": {
871
+ "supportsToolUse": true,
872
+ "supportsVision": false,
873
+ "supportsStructuredOutput": false,
874
+ "supportsStreaming": true,
875
+ "supportsCacheControl": false
876
+ }
877
+ },
878
+ {
879
+ "id": "nvidia",
880
+ "displayName": "NVIDIA NIM",
881
+ "apiMode": "chat_completions",
882
+ "authType": "api_key",
883
+ "baseUrl": "https://integrate.api.nvidia.com/v1",
884
+ "envVars": ["NVIDIA_API_KEY"],
885
+ "fallbackModels": ["meta/llama-3.1-70b-instruct"],
886
+ "capabilities": {
887
+ "supportsToolUse": true,
888
+ "supportsVision": true,
889
+ "supportsStructuredOutput": true,
890
+ "supportsStreaming": true,
891
+ "supportsCacheControl": false
892
+ }
893
+ },
894
+ {
895
+ "id": "lepton",
896
+ "displayName": "Lepton AI",
897
+ "apiMode": "chat_completions",
898
+ "authType": "api_key",
899
+ "baseUrl": "https://llama3-1-70b.lepton.run/api/v1",
900
+ "envVars": ["LEPTON_API_KEY"],
901
+ "fallbackModels": ["llama3-1-70b"],
902
+ "capabilities": {
903
+ "supportsToolUse": true,
904
+ "supportsVision": false,
905
+ "supportsStructuredOutput": false,
906
+ "supportsStreaming": true,
907
+ "supportsCacheControl": false
908
+ }
909
+ },
910
+ {
911
+ "id": "anyscale",
912
+ "displayName": "Anyscale",
913
+ "apiMode": "chat_completions",
914
+ "authType": "api_key",
915
+ "baseUrl": "https://api.endpoints.anyscale.com/v1",
916
+ "envVars": ["ANYSCALE_API_KEY"],
917
+ "fallbackModels": ["meta-llama/Meta-Llama-3-70B-Instruct"],
918
+ "capabilities": {
919
+ "supportsToolUse": true,
920
+ "supportsVision": false,
921
+ "supportsStructuredOutput": true,
922
+ "supportsStreaming": true,
923
+ "supportsCacheControl": false
924
+ }
925
+ },
926
+ {
927
+ "id": "replicate",
928
+ "displayName": "Replicate",
929
+ "apiMode": "chat_completions",
930
+ "authType": "api_key",
931
+ "baseUrl": "https://openai-proxy.replicate.com/v1",
932
+ "envVars": ["REPLICATE_API_TOKEN"],
933
+ "fallbackModels": ["meta/meta-llama-3-70b-instruct"],
934
+ "capabilities": {
935
+ "supportsToolUse": false,
936
+ "supportsVision": true,
937
+ "supportsStructuredOutput": false,
938
+ "supportsStreaming": true,
939
+ "supportsCacheControl": false
940
+ }
941
+ },
942
+ {
943
+ "id": "ai21",
944
+ "displayName": "AI21 Labs",
945
+ "apiMode": "chat_completions",
946
+ "authType": "api_key",
947
+ "baseUrl": "https://api.ai21.com/studio/v1",
948
+ "envVars": ["AI21_API_KEY"],
949
+ "fallbackModels": ["jamba-1.5-large"],
950
+ "capabilities": {
951
+ "supportsToolUse": true,
952
+ "supportsVision": false,
953
+ "supportsStructuredOutput": true,
954
+ "supportsStreaming": true,
955
+ "supportsCacheControl": false
956
+ }
957
+ },
958
+ {
959
+ "id": "aleph-alpha",
960
+ "displayName": "Aleph Alpha",
961
+ "apiMode": "chat_completions",
962
+ "authType": "api_key",
963
+ "baseUrl": "https://api.aleph-alpha.com/v1",
964
+ "envVars": ["ALEPH_ALPHA_API_KEY"],
965
+ "fallbackModels": ["luminous-extended"],
966
+ "capabilities": {
967
+ "supportsToolUse": false,
968
+ "supportsVision": false,
969
+ "supportsStructuredOutput": false,
970
+ "supportsStreaming": true,
971
+ "supportsCacheControl": false
972
+ }
973
+ },
974
+ {
975
+ "id": "cloudflare",
976
+ "displayName": "Cloudflare Workers AI",
977
+ "apiMode": "chat_completions",
978
+ "authType": "api_key",
979
+ "baseUrl": "https://api.cloudflare.com/client/v4/accounts/{account_id}/ai/v1",
980
+ "envVars": ["CLOUDFLARE_API_TOKEN", "CLOUDFLARE_ACCOUNT_ID"],
981
+ "fallbackModels": ["@cf/meta/llama-3.1-70b-instruct"],
982
+ "capabilities": {
983
+ "supportsToolUse": true,
984
+ "supportsVision": false,
985
+ "supportsStructuredOutput": false,
986
+ "supportsStreaming": true,
987
+ "supportsCacheControl": false
988
+ }
989
+ },
990
+ {
991
+ "id": "azure-openai",
992
+ "displayName": "Azure OpenAI",
993
+ "apiMode": "chat_completions",
994
+ "authType": "api_key",
995
+ "baseUrl": "https://{resource}.openai.azure.com/openai/deployments/{deployment}",
996
+ "envVars": ["AZURE_OPENAI_API_KEY", "AZURE_OPENAI_ENDPOINT"],
997
+ "fallbackModels": ["gpt-4o"],
998
+ "capabilities": {
999
+ "supportsToolUse": true,
1000
+ "supportsVision": true,
1001
+ "supportsStructuredOutput": true,
1002
+ "supportsStreaming": true,
1003
+ "supportsCacheControl": false
1004
+ }
1005
+ },
1006
+ {
1007
+ "id": "github-models",
1008
+ "displayName": "GitHub Models",
1009
+ "apiMode": "chat_completions",
1010
+ "authType": "api_key",
1011
+ "baseUrl": "https://models.inference.ai.azure.com",
1012
+ "envVars": ["GITHUB_TOKEN"],
1013
+ "fallbackModels": ["gpt-4o-mini"],
1014
+ "capabilities": {
1015
+ "supportsToolUse": true,
1016
+ "supportsVision": true,
1017
+ "supportsStructuredOutput": true,
1018
+ "supportsStreaming": true,
1019
+ "supportsCacheControl": false
1020
+ }
1021
+ },
1022
+ {
1023
+ "id": "hyperbolic",
1024
+ "displayName": "Hyperbolic",
1025
+ "apiMode": "chat_completions",
1026
+ "authType": "api_key",
1027
+ "baseUrl": "https://api.hyperbolic.xyz/v1",
1028
+ "envVars": ["HYPERBOLIC_API_KEY"],
1029
+ "fallbackModels": ["meta-llama/Meta-Llama-3.1-70B-Instruct"],
1030
+ "capabilities": {
1031
+ "supportsToolUse": true,
1032
+ "supportsVision": false,
1033
+ "supportsStructuredOutput": true,
1034
+ "supportsStreaming": true,
1035
+ "supportsCacheControl": false
1036
+ }
1037
+ },
1038
+ {
1039
+ "id": "novita",
1040
+ "displayName": "Novita AI",
1041
+ "apiMode": "chat_completions",
1042
+ "authType": "api_key",
1043
+ "baseUrl": "https://api.novita.ai/v3/openai",
1044
+ "envVars": ["NOVITA_API_KEY"],
1045
+ "fallbackModels": ["meta-llama/llama-3.1-70b-instruct"],
1046
+ "capabilities": {
1047
+ "supportsToolUse": true,
1048
+ "supportsVision": false,
1049
+ "supportsStructuredOutput": true,
1050
+ "supportsStreaming": true,
1051
+ "supportsCacheControl": false
1052
+ }
1053
+ },
1054
+ {
1055
+ "id": "moonshot",
1056
+ "displayName": "Moonshot (Kimi)",
1057
+ "apiMode": "chat_completions",
1058
+ "authType": "api_key",
1059
+ "baseUrl": "https://api.moonshot.cn/v1",
1060
+ "envVars": ["MOONSHOT_API_KEY"],
1061
+ "fallbackModels": ["moonshot-v1-8k"],
1062
+ "capabilities": {
1063
+ "supportsToolUse": true,
1064
+ "supportsVision": false,
1065
+ "supportsStructuredOutput": false,
1066
+ "supportsStreaming": true,
1067
+ "supportsCacheControl": false
1068
+ }
1069
+ },
1070
+ {
1071
+ "id": "qwen",
1072
+ "displayName": "Qwen (Alibaba)",
1073
+ "apiMode": "chat_completions",
1074
+ "authType": "api_key",
1075
+ "baseUrl": "https://dashscope.aliyuncs.com/compatible-mode/v1",
1076
+ "envVars": ["DASHSCOPE_API_KEY"],
1077
+ "fallbackModels": ["qwen-plus"],
1078
+ "capabilities": {
1079
+ "supportsToolUse": true,
1080
+ "supportsVision": true,
1081
+ "supportsStructuredOutput": true,
1082
+ "supportsStreaming": true,
1083
+ "supportsCacheControl": false
1084
+ },
1085
+ "aliases": ["dashscope"],
1086
+ "models": {
1087
+ "qwen3-coder-30b-a3b-instruct": {
1088
+ "tool_call": true,
1089
+ "structured_output": false,
1090
+ "cache_control": false,
1091
+ "modalities": {
1092
+ "input": ["text"]
1093
+ },
1094
+ "limit": {
1095
+ "context": 160000,
1096
+ "output": 8000
1097
+ }
1098
+ }
1099
+ }
1100
+ },
1101
+ {
1102
+ "id": "zhipu",
1103
+ "displayName": "Zhipu AI (GLM)",
1104
+ "apiMode": "chat_completions",
1105
+ "authType": "api_key",
1106
+ "baseUrl": "https://open.bigmodel.cn/api/paas/v4",
1107
+ "envVars": ["ZHIPU_API_KEY"],
1108
+ "fallbackModels": ["glm-4-plus"],
1109
+ "capabilities": {
1110
+ "supportsToolUse": true,
1111
+ "supportsVision": true,
1112
+ "supportsStructuredOutput": true,
1113
+ "supportsStreaming": true,
1114
+ "supportsCacheControl": false
1115
+ },
1116
+ "aliases": ["glm", "z-ai"],
1117
+ "models": {
1118
+ "glm-4.7-flash": {
1119
+ "name": "GLM-4.7-Flash",
1120
+ "release_date": "2026-01-19",
1121
+ "attachment": false,
1122
+ "reasoning": true,
1123
+ "temperature": true,
1124
+ "tool_call": true,
1125
+ "cost": {
1126
+ "input": 0,
1127
+ "output": 0,
1128
+ "cache_read": 0,
1129
+ "cache_write": 0
1130
+ },
1131
+ "limit": {
1132
+ "context": 202752,
1133
+ "output": 8000
1134
+ },
1135
+ "modalities": {
1136
+ "input": ["text"],
1137
+ "output": ["text"]
1138
+ },
1139
+ "structured_output": false,
1140
+ "cache_control": false
1141
+ }
1142
+ }
1143
+ },
1144
+ {
1145
+ "id": "minimax",
1146
+ "displayName": "MiniMax",
1147
+ "apiMode": "chat_completions",
1148
+ "authType": "api_key",
1149
+ "baseUrl": "https://api.minimax.chat/v1",
1150
+ "envVars": ["MINIMAX_API_KEY"],
1151
+ "fallbackModels": ["MiniMax-Text-01"],
1152
+ "capabilities": {
1153
+ "supportsToolUse": true,
1154
+ "supportsVision": false,
1155
+ "supportsStructuredOutput": false,
1156
+ "supportsStreaming": true,
1157
+ "supportsCacheControl": false
1158
+ }
1159
+ },
1160
+ {
1161
+ "id": "baichuan",
1162
+ "displayName": "Baichuan",
1163
+ "apiMode": "chat_completions",
1164
+ "authType": "api_key",
1165
+ "baseUrl": "https://api.baichuan-ai.com/v1",
1166
+ "envVars": ["BAICHUAN_API_KEY"],
1167
+ "fallbackModels": ["Baichuan4"],
1168
+ "capabilities": {
1169
+ "supportsToolUse": true,
1170
+ "supportsVision": false,
1171
+ "supportsStructuredOutput": false,
1172
+ "supportsStreaming": true,
1173
+ "supportsCacheControl": false
1174
+ }
1175
+ },
1176
+ {
1177
+ "id": "voyage",
1178
+ "displayName": "Voyage AI",
1179
+ "apiMode": "chat_completions",
1180
+ "authType": "api_key",
1181
+ "baseUrl": "https://api.voyageai.com/v1",
1182
+ "envVars": ["VOYAGE_API_KEY"],
1183
+ "fallbackModels": ["voyage-3"],
1184
+ "capabilities": {
1185
+ "supportsToolUse": false,
1186
+ "supportsVision": false,
1187
+ "supportsStructuredOutput": false,
1188
+ "supportsStreaming": false,
1189
+ "supportsCacheControl": false
1190
+ }
1191
+ },
1192
+ {
1193
+ "id": "jina",
1194
+ "displayName": "Jina AI",
1195
+ "apiMode": "chat_completions",
1196
+ "authType": "api_key",
1197
+ "baseUrl": "https://api.jina.ai/v1",
1198
+ "envVars": ["JINA_API_KEY"],
1199
+ "fallbackModels": ["jina-embeddings-v3"],
1200
+ "capabilities": {
1201
+ "supportsToolUse": false,
1202
+ "supportsVision": false,
1203
+ "supportsStructuredOutput": false,
1204
+ "supportsStreaming": false,
1205
+ "supportsCacheControl": false
1206
+ }
1207
+ },
1208
+ {
1209
+ "id": "helicone",
1210
+ "displayName": "Helicone (Gateway)",
1211
+ "apiMode": "chat_completions",
1212
+ "authType": "api_key",
1213
+ "baseUrl": "https://oai.helicone.ai/v1",
1214
+ "envVars": ["HELICONE_API_KEY", "OPENAI_API_KEY"],
1215
+ "fallbackModels": ["gpt-4o-mini"],
1216
+ "capabilities": {
1217
+ "supportsToolUse": true,
1218
+ "supportsVision": true,
1219
+ "supportsStructuredOutput": true,
1220
+ "supportsStreaming": true,
1221
+ "supportsCacheControl": false
1222
+ },
1223
+ "models": {
1224
+ "gpt-4o-mini": {
1225
+ "name": "OpenAI GPT-4o-mini",
1226
+ "release_date": "2024-07-18",
1227
+ "attachment": false,
1228
+ "reasoning": false,
1229
+ "temperature": true,
1230
+ "tool_call": true,
1231
+ "cost": {
1232
+ "input": 0.15,
1233
+ "output": 0.6,
1234
+ "cache_read": 0.075
1235
+ },
1236
+ "limit": {
1237
+ "context": 128000,
1238
+ "output": 16384
1239
+ },
1240
+ "modalities": {
1241
+ "input": ["text", "image"],
1242
+ "output": ["text"]
1243
+ }
1244
+ }
1245
+ }
1246
+ },
1247
+ {
1248
+ "id": "portkey",
1249
+ "displayName": "Portkey (Gateway)",
1250
+ "apiMode": "chat_completions",
1251
+ "authType": "api_key",
1252
+ "baseUrl": "https://api.portkey.ai/v1",
1253
+ "envVars": ["PORTKEY_API_KEY"],
1254
+ "fallbackModels": ["gpt-4o-mini"],
1255
+ "capabilities": {
1256
+ "supportsToolUse": true,
1257
+ "supportsVision": true,
1258
+ "supportsStructuredOutput": true,
1259
+ "supportsStreaming": true,
1260
+ "supportsCacheControl": false
1261
+ }
1262
+ },
1263
+ {
1264
+ "id": "baseten",
1265
+ "displayName": "Baseten",
1266
+ "apiMode": "chat_completions",
1267
+ "authType": "api_key",
1268
+ "baseUrl": "https://bridge.baseten.co/v1",
1269
+ "envVars": ["BASETEN_API_KEY"],
1270
+ "fallbackModels": ["meta-llama/Meta-Llama-3-70B-Instruct"],
1271
+ "capabilities": {
1272
+ "supportsToolUse": true,
1273
+ "supportsVision": false,
1274
+ "supportsStructuredOutput": true,
1275
+ "supportsStreaming": true,
1276
+ "supportsCacheControl": false
1277
+ }
1278
+ },
1279
+ {
1280
+ "id": "modal",
1281
+ "displayName": "Modal",
1282
+ "apiMode": "chat_completions",
1283
+ "authType": "api_key",
1284
+ "baseUrl": "https://api.modal.com/v1",
1285
+ "envVars": ["MODAL_TOKEN_ID", "MODAL_TOKEN_SECRET"],
1286
+ "fallbackModels": ["meta-llama/Meta-Llama-3-70B-Instruct"],
1287
+ "capabilities": {
1288
+ "supportsToolUse": true,
1289
+ "supportsVision": false,
1290
+ "supportsStructuredOutput": false,
1291
+ "supportsStreaming": true,
1292
+ "supportsCacheControl": false
1293
+ }
1294
+ }
1295
+ ]