aimodels 0.3.10 → 0.3.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +30 -21
- package/dist/index.d.mts +36 -20
- package/dist/index.d.ts +36 -20
- package/dist/index.js +243 -138
- package/dist/index.mjs +243 -138
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -12,6 +12,48 @@ var ModelCollection = class _ModelCollection extends Array {
|
|
|
12
12
|
can(...capabilities) {
|
|
13
13
|
return this.filter((model) => capabilities.every((cap) => model.can.includes(cap)));
|
|
14
14
|
}
|
|
15
|
+
/**
|
|
16
|
+
* Fluent capability filters for better readability
|
|
17
|
+
* Each method filters models by a specific capability
|
|
18
|
+
*/
|
|
19
|
+
// Basic capabilities
|
|
20
|
+
canChat() {
|
|
21
|
+
return this.can("chat");
|
|
22
|
+
}
|
|
23
|
+
canReason() {
|
|
24
|
+
return this.can("reason");
|
|
25
|
+
}
|
|
26
|
+
// Text capabilities
|
|
27
|
+
canRead() {
|
|
28
|
+
return this.can("txt-in");
|
|
29
|
+
}
|
|
30
|
+
canWrite() {
|
|
31
|
+
return this.can("txt-out");
|
|
32
|
+
}
|
|
33
|
+
// Image capabilities
|
|
34
|
+
canSee() {
|
|
35
|
+
return this.can("img-in");
|
|
36
|
+
}
|
|
37
|
+
canGenerateImages() {
|
|
38
|
+
return this.can("img-out");
|
|
39
|
+
}
|
|
40
|
+
// Audio capabilities
|
|
41
|
+
canHear() {
|
|
42
|
+
return this.can("audio-in");
|
|
43
|
+
}
|
|
44
|
+
canSpeak() {
|
|
45
|
+
return this.can("audio-out");
|
|
46
|
+
}
|
|
47
|
+
// Output capabilities
|
|
48
|
+
canOutputJSON() {
|
|
49
|
+
return this.can("json-out");
|
|
50
|
+
}
|
|
51
|
+
canCallFunctions() {
|
|
52
|
+
return this.can("fn-out");
|
|
53
|
+
}
|
|
54
|
+
canGenerateEmbeddings() {
|
|
55
|
+
return this.can("vec-out");
|
|
56
|
+
}
|
|
15
57
|
/** Filter models by one or more languages (all must be supported) */
|
|
16
58
|
know(...languages) {
|
|
17
59
|
return this.filter((model) => languages.every((lang) => model.languages?.includes(lang)));
|
|
@@ -59,6 +101,9 @@ var ModelCollection = class _ModelCollection extends Array {
|
|
|
59
101
|
getProviders() {
|
|
60
102
|
return [...new Set(this.flatMap((model) => model.providers))];
|
|
61
103
|
}
|
|
104
|
+
getCreators() {
|
|
105
|
+
return [...new Set(this.map((model) => model.creator))];
|
|
106
|
+
}
|
|
62
107
|
};
|
|
63
108
|
|
|
64
109
|
// src/data/models/openai-models.json
|
|
@@ -75,10 +120,10 @@ var openai_models_default = {
|
|
|
75
120
|
],
|
|
76
121
|
can: [
|
|
77
122
|
"chat",
|
|
78
|
-
"
|
|
79
|
-
"
|
|
123
|
+
"txt-in",
|
|
124
|
+
"txt-out",
|
|
80
125
|
"json-out",
|
|
81
|
-
"
|
|
126
|
+
"fn-out"
|
|
82
127
|
],
|
|
83
128
|
context: {
|
|
84
129
|
type: "token",
|
|
@@ -108,10 +153,10 @@ var openai_models_default = {
|
|
|
108
153
|
],
|
|
109
154
|
can: [
|
|
110
155
|
"chat",
|
|
111
|
-
"
|
|
112
|
-
"
|
|
156
|
+
"txt-in",
|
|
157
|
+
"txt-out",
|
|
113
158
|
"json-out",
|
|
114
|
-
"
|
|
159
|
+
"fn-out"
|
|
115
160
|
],
|
|
116
161
|
context: {
|
|
117
162
|
type: "token",
|
|
@@ -140,8 +185,8 @@ var openai_models_default = {
|
|
|
140
185
|
"azure"
|
|
141
186
|
],
|
|
142
187
|
can: [
|
|
143
|
-
"
|
|
144
|
-
"
|
|
188
|
+
"txt-in",
|
|
189
|
+
"txt-out"
|
|
145
190
|
],
|
|
146
191
|
context: {
|
|
147
192
|
type: "token",
|
|
@@ -159,11 +204,11 @@ var openai_models_default = {
|
|
|
159
204
|
],
|
|
160
205
|
can: [
|
|
161
206
|
"chat",
|
|
162
|
-
"
|
|
163
|
-
"
|
|
207
|
+
"txt-in",
|
|
208
|
+
"txt-out",
|
|
164
209
|
"img-in",
|
|
165
210
|
"json-out",
|
|
166
|
-
"
|
|
211
|
+
"fn-out"
|
|
167
212
|
],
|
|
168
213
|
context: {
|
|
169
214
|
type: "token",
|
|
@@ -223,11 +268,11 @@ var openai_models_default = {
|
|
|
223
268
|
name: "GPT-4o Audio",
|
|
224
269
|
can: [
|
|
225
270
|
"chat",
|
|
226
|
-
"
|
|
227
|
-
"
|
|
228
|
-
"
|
|
271
|
+
"txt-in",
|
|
272
|
+
"txt-out",
|
|
273
|
+
"audio-in",
|
|
229
274
|
"json-out",
|
|
230
|
-
"
|
|
275
|
+
"fn-out"
|
|
231
276
|
],
|
|
232
277
|
context: {
|
|
233
278
|
type: "token",
|
|
@@ -257,12 +302,12 @@ var openai_models_default = {
|
|
|
257
302
|
name: "GPT-4o Mini Audio",
|
|
258
303
|
can: [
|
|
259
304
|
"chat",
|
|
260
|
-
"
|
|
261
|
-
"
|
|
262
|
-
"
|
|
263
|
-
"
|
|
305
|
+
"txt-in",
|
|
306
|
+
"txt-out",
|
|
307
|
+
"audio-in",
|
|
308
|
+
"audio-out",
|
|
264
309
|
"json-out",
|
|
265
|
-
"
|
|
310
|
+
"fn-out"
|
|
266
311
|
],
|
|
267
312
|
context: {
|
|
268
313
|
type: "token",
|
|
@@ -285,11 +330,11 @@ var openai_models_default = {
|
|
|
285
330
|
name: "GPT-4o Realtime",
|
|
286
331
|
can: [
|
|
287
332
|
"chat",
|
|
288
|
-
"
|
|
289
|
-
"
|
|
290
|
-
"
|
|
333
|
+
"txt-in",
|
|
334
|
+
"txt-out",
|
|
335
|
+
"audio-in",
|
|
291
336
|
"json-out",
|
|
292
|
-
"
|
|
337
|
+
"fn-out"
|
|
293
338
|
],
|
|
294
339
|
context: {
|
|
295
340
|
type: "token",
|
|
@@ -319,11 +364,11 @@ var openai_models_default = {
|
|
|
319
364
|
name: "GPT-4o Mini Realtime",
|
|
320
365
|
can: [
|
|
321
366
|
"chat",
|
|
322
|
-
"
|
|
323
|
-
"
|
|
324
|
-
"
|
|
367
|
+
"txt-in",
|
|
368
|
+
"txt-out",
|
|
369
|
+
"audio-in",
|
|
325
370
|
"json-out",
|
|
326
|
-
"
|
|
371
|
+
"fn-out"
|
|
327
372
|
],
|
|
328
373
|
context: {
|
|
329
374
|
type: "token",
|
|
@@ -349,11 +394,11 @@ var openai_models_default = {
|
|
|
349
394
|
],
|
|
350
395
|
can: [
|
|
351
396
|
"chat",
|
|
352
|
-
"
|
|
353
|
-
"
|
|
397
|
+
"txt-in",
|
|
398
|
+
"txt-out",
|
|
354
399
|
"img-in",
|
|
355
400
|
"json-out",
|
|
356
|
-
"
|
|
401
|
+
"fn-out",
|
|
357
402
|
"reason"
|
|
358
403
|
],
|
|
359
404
|
context: {
|
|
@@ -376,10 +421,10 @@ var openai_models_default = {
|
|
|
376
421
|
name: "OpenAI O1 Mini",
|
|
377
422
|
can: [
|
|
378
423
|
"chat",
|
|
379
|
-
"
|
|
380
|
-
"
|
|
424
|
+
"txt-in",
|
|
425
|
+
"txt-out",
|
|
381
426
|
"json-out",
|
|
382
|
-
"
|
|
427
|
+
"fn-out",
|
|
383
428
|
"reason"
|
|
384
429
|
],
|
|
385
430
|
context: {
|
|
@@ -425,10 +470,10 @@ var openai_models_default = {
|
|
|
425
470
|
],
|
|
426
471
|
can: [
|
|
427
472
|
"chat",
|
|
428
|
-
"
|
|
429
|
-
"
|
|
473
|
+
"txt-in",
|
|
474
|
+
"txt-out",
|
|
430
475
|
"json-out",
|
|
431
|
-
"
|
|
476
|
+
"fn-out",
|
|
432
477
|
"reason"
|
|
433
478
|
],
|
|
434
479
|
context: {
|
|
@@ -453,8 +498,8 @@ var openai_models_default = {
|
|
|
453
498
|
"azure"
|
|
454
499
|
],
|
|
455
500
|
can: [
|
|
456
|
-
"
|
|
457
|
-
"
|
|
501
|
+
"audio-in",
|
|
502
|
+
"txt-out"
|
|
458
503
|
],
|
|
459
504
|
context: {
|
|
460
505
|
type: "audio-in",
|
|
@@ -471,8 +516,8 @@ var openai_models_default = {
|
|
|
471
516
|
"azure"
|
|
472
517
|
],
|
|
473
518
|
can: [
|
|
474
|
-
"
|
|
475
|
-
"
|
|
519
|
+
"txt-in",
|
|
520
|
+
"audio-out"
|
|
476
521
|
],
|
|
477
522
|
context: {
|
|
478
523
|
type: "audio-out",
|
|
@@ -519,7 +564,7 @@ var openai_models_default = {
|
|
|
519
564
|
"azure"
|
|
520
565
|
],
|
|
521
566
|
can: [
|
|
522
|
-
"
|
|
567
|
+
"txt-in",
|
|
523
568
|
"img-out"
|
|
524
569
|
],
|
|
525
570
|
context: {
|
|
@@ -544,8 +589,8 @@ var openai_models_default = {
|
|
|
544
589
|
"azure"
|
|
545
590
|
],
|
|
546
591
|
can: [
|
|
547
|
-
"
|
|
548
|
-
"
|
|
592
|
+
"txt-in",
|
|
593
|
+
"vec-out"
|
|
549
594
|
],
|
|
550
595
|
context: {
|
|
551
596
|
type: "embedding",
|
|
@@ -565,8 +610,8 @@ var openai_models_default = {
|
|
|
565
610
|
"azure"
|
|
566
611
|
],
|
|
567
612
|
can: [
|
|
568
|
-
"
|
|
569
|
-
"
|
|
613
|
+
"txt-in",
|
|
614
|
+
"vec-out"
|
|
570
615
|
],
|
|
571
616
|
context: {
|
|
572
617
|
type: "embedding",
|
|
@@ -586,8 +631,8 @@ var openai_models_default = {
|
|
|
586
631
|
"azure"
|
|
587
632
|
],
|
|
588
633
|
can: [
|
|
589
|
-
"
|
|
590
|
-
"
|
|
634
|
+
"txt-in",
|
|
635
|
+
"vec-out"
|
|
591
636
|
],
|
|
592
637
|
context: {
|
|
593
638
|
type: "embedding",
|
|
@@ -612,11 +657,11 @@ var anthropic_models_default = {
|
|
|
612
657
|
providers: ["anthropic", "aws", "google"],
|
|
613
658
|
can: [
|
|
614
659
|
"chat",
|
|
615
|
-
"
|
|
616
|
-
"
|
|
660
|
+
"txt-in",
|
|
661
|
+
"txt-out",
|
|
617
662
|
"img-in",
|
|
618
663
|
"json-out",
|
|
619
|
-
"
|
|
664
|
+
"fn-out"
|
|
620
665
|
],
|
|
621
666
|
context: {
|
|
622
667
|
type: "token",
|
|
@@ -633,11 +678,11 @@ var anthropic_models_default = {
|
|
|
633
678
|
providers: ["anthropic", "aws", "google"],
|
|
634
679
|
can: [
|
|
635
680
|
"chat",
|
|
636
|
-
"
|
|
637
|
-
"
|
|
681
|
+
"txt-in",
|
|
682
|
+
"txt-out",
|
|
638
683
|
"img-in",
|
|
639
684
|
"json-out",
|
|
640
|
-
"
|
|
685
|
+
"fn-out"
|
|
641
686
|
],
|
|
642
687
|
context: {
|
|
643
688
|
type: "token",
|
|
@@ -654,11 +699,11 @@ var anthropic_models_default = {
|
|
|
654
699
|
providers: ["anthropic", "aws", "google"],
|
|
655
700
|
can: [
|
|
656
701
|
"chat",
|
|
657
|
-
"
|
|
658
|
-
"
|
|
702
|
+
"txt-in",
|
|
703
|
+
"txt-out",
|
|
659
704
|
"img-in",
|
|
660
705
|
"json-out",
|
|
661
|
-
"
|
|
706
|
+
"fn-out"
|
|
662
707
|
],
|
|
663
708
|
context: {
|
|
664
709
|
type: "token",
|
|
@@ -675,11 +720,11 @@ var anthropic_models_default = {
|
|
|
675
720
|
providers: ["anthropic", "aws", "google"],
|
|
676
721
|
can: [
|
|
677
722
|
"chat",
|
|
678
|
-
"
|
|
679
|
-
"
|
|
723
|
+
"txt-in",
|
|
724
|
+
"txt-out",
|
|
680
725
|
"img-in",
|
|
681
726
|
"json-out",
|
|
682
|
-
"
|
|
727
|
+
"fn-out"
|
|
683
728
|
],
|
|
684
729
|
context: {
|
|
685
730
|
type: "token",
|
|
@@ -696,11 +741,11 @@ var anthropic_models_default = {
|
|
|
696
741
|
providers: ["anthropic", "aws", "google"],
|
|
697
742
|
can: [
|
|
698
743
|
"chat",
|
|
699
|
-
"
|
|
700
|
-
"
|
|
744
|
+
"txt-in",
|
|
745
|
+
"txt-out",
|
|
701
746
|
"img-in",
|
|
702
747
|
"json-out",
|
|
703
|
-
"
|
|
748
|
+
"fn-out"
|
|
704
749
|
],
|
|
705
750
|
context: {
|
|
706
751
|
type: "token",
|
|
@@ -716,10 +761,10 @@ var anthropic_models_default = {
|
|
|
716
761
|
providers: ["anthropic", "aws", "google"],
|
|
717
762
|
can: [
|
|
718
763
|
"chat",
|
|
719
|
-
"
|
|
720
|
-
"
|
|
764
|
+
"txt-in",
|
|
765
|
+
"txt-out",
|
|
721
766
|
"json-out",
|
|
722
|
-
"
|
|
767
|
+
"fn-out"
|
|
723
768
|
],
|
|
724
769
|
context: {
|
|
725
770
|
type: "token",
|
|
@@ -736,11 +781,11 @@ var anthropic_models_default = {
|
|
|
736
781
|
providers: ["anthropic", "aws", "google"],
|
|
737
782
|
can: [
|
|
738
783
|
"chat",
|
|
739
|
-
"
|
|
740
|
-
"
|
|
784
|
+
"txt-in",
|
|
785
|
+
"txt-out",
|
|
741
786
|
"img-in",
|
|
742
787
|
"json-out",
|
|
743
|
-
"
|
|
788
|
+
"fn-out",
|
|
744
789
|
"reason"
|
|
745
790
|
],
|
|
746
791
|
context: {
|
|
@@ -771,7 +816,7 @@ var meta_models_default = {
|
|
|
771
816
|
name: "Llama 3 70B",
|
|
772
817
|
license: "llama-3-community",
|
|
773
818
|
providers: ["groq"],
|
|
774
|
-
can: ["chat", "
|
|
819
|
+
can: ["chat", "txt-in", "txt-out", "json-out", "fn-out"],
|
|
775
820
|
context: {
|
|
776
821
|
type: "token",
|
|
777
822
|
total: 8192,
|
|
@@ -783,7 +828,7 @@ var meta_models_default = {
|
|
|
783
828
|
name: "Llama 3 8B",
|
|
784
829
|
license: "llama-3-community",
|
|
785
830
|
providers: ["groq"],
|
|
786
|
-
can: ["chat", "
|
|
831
|
+
can: ["chat", "txt-in", "txt-out", "json-out", "fn-out"],
|
|
787
832
|
context: {
|
|
788
833
|
type: "token",
|
|
789
834
|
total: 8192,
|
|
@@ -795,7 +840,7 @@ var meta_models_default = {
|
|
|
795
840
|
name: "Llama 3.2 11B Vision",
|
|
796
841
|
license: "llama-3-community",
|
|
797
842
|
providers: ["groq"],
|
|
798
|
-
can: ["chat", "
|
|
843
|
+
can: ["chat", "txt-in", "txt-out", "img-in"],
|
|
799
844
|
context: {
|
|
800
845
|
type: "token",
|
|
801
846
|
total: 4096,
|
|
@@ -807,7 +852,7 @@ var meta_models_default = {
|
|
|
807
852
|
name: "Llama 3.2 90B Vision",
|
|
808
853
|
license: "llama-3-community",
|
|
809
854
|
providers: ["groq"],
|
|
810
|
-
can: ["chat", "
|
|
855
|
+
can: ["chat", "txt-in", "txt-out", "img-in"],
|
|
811
856
|
context: {
|
|
812
857
|
type: "token",
|
|
813
858
|
total: 4096,
|
|
@@ -819,7 +864,7 @@ var meta_models_default = {
|
|
|
819
864
|
name: "LlamaGuard 3 8B",
|
|
820
865
|
license: "llama-3-community",
|
|
821
866
|
providers: ["groq"],
|
|
822
|
-
can: ["chat", "
|
|
867
|
+
can: ["chat", "txt-in", "txt-out"],
|
|
823
868
|
context: {
|
|
824
869
|
type: "token",
|
|
825
870
|
total: 4096,
|
|
@@ -840,10 +885,10 @@ var mistral_models_default = {
|
|
|
840
885
|
providers: ["mistral", "azure"],
|
|
841
886
|
can: [
|
|
842
887
|
"chat",
|
|
843
|
-
"
|
|
844
|
-
"
|
|
888
|
+
"txt-in",
|
|
889
|
+
"txt-out",
|
|
845
890
|
"json-out",
|
|
846
|
-
"
|
|
891
|
+
"fn-out"
|
|
847
892
|
],
|
|
848
893
|
context: {
|
|
849
894
|
type: "token",
|
|
@@ -858,10 +903,10 @@ var mistral_models_default = {
|
|
|
858
903
|
providers: ["mistral", "azure"],
|
|
859
904
|
can: [
|
|
860
905
|
"chat",
|
|
861
|
-
"
|
|
862
|
-
"
|
|
906
|
+
"txt-in",
|
|
907
|
+
"txt-out",
|
|
863
908
|
"json-out",
|
|
864
|
-
"
|
|
909
|
+
"fn-out"
|
|
865
910
|
],
|
|
866
911
|
context: {
|
|
867
912
|
type: "token",
|
|
@@ -876,8 +921,8 @@ var mistral_models_default = {
|
|
|
876
921
|
providers: ["mistral"],
|
|
877
922
|
can: [
|
|
878
923
|
"chat",
|
|
879
|
-
"
|
|
880
|
-
"
|
|
924
|
+
"txt-in",
|
|
925
|
+
"txt-out"
|
|
881
926
|
],
|
|
882
927
|
context: {
|
|
883
928
|
type: "token",
|
|
@@ -892,8 +937,8 @@ var mistral_models_default = {
|
|
|
892
937
|
providers: ["mistral", "groq"],
|
|
893
938
|
can: [
|
|
894
939
|
"chat",
|
|
895
|
-
"
|
|
896
|
-
"
|
|
940
|
+
"txt-in",
|
|
941
|
+
"txt-out"
|
|
897
942
|
],
|
|
898
943
|
context: {
|
|
899
944
|
type: "token",
|
|
@@ -908,8 +953,8 @@ var mistral_models_default = {
|
|
|
908
953
|
providers: ["mistral", "groq"],
|
|
909
954
|
can: [
|
|
910
955
|
"chat",
|
|
911
|
-
"
|
|
912
|
-
"
|
|
956
|
+
"txt-in",
|
|
957
|
+
"txt-out"
|
|
913
958
|
],
|
|
914
959
|
context: {
|
|
915
960
|
type: "token",
|
|
@@ -929,7 +974,7 @@ var google_models_default = {
|
|
|
929
974
|
name: "Gemini 2.0 Flash",
|
|
930
975
|
license: "proprietary",
|
|
931
976
|
providers: ["google"],
|
|
932
|
-
can: ["chat", "
|
|
977
|
+
can: ["chat", "txt-in", "txt-out", "json-out", "fn-out", "img-in", "audio-in", "reason"],
|
|
933
978
|
context: {
|
|
934
979
|
type: "token",
|
|
935
980
|
total: 1048576,
|
|
@@ -942,7 +987,7 @@ var google_models_default = {
|
|
|
942
987
|
name: "Gemini 2.0 Flash Lite",
|
|
943
988
|
license: "proprietary",
|
|
944
989
|
providers: ["google"],
|
|
945
|
-
can: ["chat", "
|
|
990
|
+
can: ["chat", "txt-in", "txt-out", "json-out", "fn-out", "img-in", "audio-in"],
|
|
946
991
|
context: {
|
|
947
992
|
type: "token",
|
|
948
993
|
total: 1048576,
|
|
@@ -955,7 +1000,7 @@ var google_models_default = {
|
|
|
955
1000
|
name: "Gemini 1.5 Flash",
|
|
956
1001
|
license: "proprietary",
|
|
957
1002
|
providers: ["google"],
|
|
958
|
-
can: ["chat", "
|
|
1003
|
+
can: ["chat", "txt-in", "txt-out", "json-out", "fn-out", "img-in", "audio-in"],
|
|
959
1004
|
context: {
|
|
960
1005
|
type: "token",
|
|
961
1006
|
total: 2097152,
|
|
@@ -967,7 +1012,7 @@ var google_models_default = {
|
|
|
967
1012
|
name: "Gemini 1.5 Flash 8B",
|
|
968
1013
|
license: "proprietary",
|
|
969
1014
|
providers: ["google"],
|
|
970
|
-
can: ["chat", "
|
|
1015
|
+
can: ["chat", "txt-in", "txt-out", "json-out", "fn-out", "img-in", "audio-in"],
|
|
971
1016
|
context: {
|
|
972
1017
|
type: "token",
|
|
973
1018
|
total: 2097152,
|
|
@@ -979,7 +1024,7 @@ var google_models_default = {
|
|
|
979
1024
|
name: "Gemini 1.5 Pro",
|
|
980
1025
|
license: "proprietary",
|
|
981
1026
|
providers: ["google"],
|
|
982
|
-
can: ["chat", "
|
|
1027
|
+
can: ["chat", "txt-in", "txt-out", "json-out", "fn-out", "img-in", "audio-in", "reason"],
|
|
983
1028
|
context: {
|
|
984
1029
|
type: "token",
|
|
985
1030
|
total: 2097152,
|
|
@@ -992,7 +1037,7 @@ var google_models_default = {
|
|
|
992
1037
|
name: "Text Embedding 004",
|
|
993
1038
|
license: "proprietary",
|
|
994
1039
|
providers: ["google"],
|
|
995
|
-
can: ["
|
|
1040
|
+
can: ["txt-in", "vec-out"],
|
|
996
1041
|
context: {
|
|
997
1042
|
type: "token",
|
|
998
1043
|
total: 2048,
|
|
@@ -1004,7 +1049,7 @@ var google_models_default = {
|
|
|
1004
1049
|
name: "Gemma 7B Instruct",
|
|
1005
1050
|
license: "apache-2.0",
|
|
1006
1051
|
providers: ["google"],
|
|
1007
|
-
can: ["chat", "
|
|
1052
|
+
can: ["chat", "txt-in", "txt-out", "json-out", "fn-out"],
|
|
1008
1053
|
context: {
|
|
1009
1054
|
type: "token",
|
|
1010
1055
|
total: 8192,
|
|
@@ -1016,7 +1061,7 @@ var google_models_default = {
|
|
|
1016
1061
|
name: "Gemma 2B Instruct",
|
|
1017
1062
|
license: "apache-2.0",
|
|
1018
1063
|
providers: ["google"],
|
|
1019
|
-
can: ["chat", "
|
|
1064
|
+
can: ["chat", "txt-in", "txt-out", "json-out", "fn-out"],
|
|
1020
1065
|
context: {
|
|
1021
1066
|
type: "token",
|
|
1022
1067
|
total: 8192,
|
|
@@ -1037,10 +1082,10 @@ var deepseek_models_default = {
|
|
|
1037
1082
|
providers: ["deepseek"],
|
|
1038
1083
|
can: [
|
|
1039
1084
|
"chat",
|
|
1040
|
-
"
|
|
1041
|
-
"
|
|
1085
|
+
"txt-in",
|
|
1086
|
+
"txt-out",
|
|
1042
1087
|
"json-out",
|
|
1043
|
-
"
|
|
1088
|
+
"fn-out"
|
|
1044
1089
|
],
|
|
1045
1090
|
context: {
|
|
1046
1091
|
type: "token",
|
|
@@ -1055,10 +1100,10 @@ var deepseek_models_default = {
|
|
|
1055
1100
|
providers: ["deepseek"],
|
|
1056
1101
|
can: [
|
|
1057
1102
|
"chat",
|
|
1058
|
-
"
|
|
1059
|
-
"
|
|
1103
|
+
"txt-in",
|
|
1104
|
+
"txt-out",
|
|
1060
1105
|
"json-out",
|
|
1061
|
-
"
|
|
1106
|
+
"fn-out",
|
|
1062
1107
|
"reason"
|
|
1063
1108
|
],
|
|
1064
1109
|
context: {
|
|
@@ -1080,7 +1125,7 @@ var xai_models_default = {
|
|
|
1080
1125
|
creator: "xai",
|
|
1081
1126
|
license: "proprietary",
|
|
1082
1127
|
providers: ["xai"],
|
|
1083
|
-
can: ["chat", "
|
|
1128
|
+
can: ["chat", "txt-in", "txt-out", "img-in"],
|
|
1084
1129
|
context: {
|
|
1085
1130
|
type: "token",
|
|
1086
1131
|
total: 32768,
|
|
@@ -1094,7 +1139,7 @@ var xai_models_default = {
|
|
|
1094
1139
|
creator: "xai",
|
|
1095
1140
|
license: "proprietary",
|
|
1096
1141
|
providers: ["xai"],
|
|
1097
|
-
can: ["chat", "
|
|
1142
|
+
can: ["chat", "txt-in", "txt-out"],
|
|
1098
1143
|
context: {
|
|
1099
1144
|
type: "token",
|
|
1100
1145
|
total: 131072,
|
|
@@ -1108,7 +1153,7 @@ var xai_models_default = {
|
|
|
1108
1153
|
creator: "xai",
|
|
1109
1154
|
license: "proprietary",
|
|
1110
1155
|
providers: ["xai"],
|
|
1111
|
-
can: ["chat", "
|
|
1156
|
+
can: ["chat", "txt-in", "txt-out", "img-in"],
|
|
1112
1157
|
context: {
|
|
1113
1158
|
type: "token",
|
|
1114
1159
|
total: 8192,
|
|
@@ -1121,7 +1166,7 @@ var xai_models_default = {
|
|
|
1121
1166
|
creator: "xai",
|
|
1122
1167
|
license: "proprietary",
|
|
1123
1168
|
providers: ["xai"],
|
|
1124
|
-
can: ["chat", "
|
|
1169
|
+
can: ["chat", "txt-in", "txt-out"],
|
|
1125
1170
|
context: {
|
|
1126
1171
|
type: "token",
|
|
1127
1172
|
total: 131072,
|
|
@@ -1145,9 +1190,10 @@ var cohere_models_default = {
|
|
|
1145
1190
|
],
|
|
1146
1191
|
can: [
|
|
1147
1192
|
"chat",
|
|
1148
|
-
"
|
|
1149
|
-
"
|
|
1150
|
-
"
|
|
1193
|
+
"txt-in",
|
|
1194
|
+
"txt-out",
|
|
1195
|
+
"json-out",
|
|
1196
|
+
"fn-out"
|
|
1151
1197
|
],
|
|
1152
1198
|
context: {
|
|
1153
1199
|
type: "token",
|
|
@@ -1168,9 +1214,10 @@ var cohere_models_default = {
|
|
|
1168
1214
|
],
|
|
1169
1215
|
can: [
|
|
1170
1216
|
"chat",
|
|
1171
|
-
"
|
|
1172
|
-
"
|
|
1173
|
-
"
|
|
1217
|
+
"txt-in",
|
|
1218
|
+
"txt-out",
|
|
1219
|
+
"json-out",
|
|
1220
|
+
"fn-out"
|
|
1174
1221
|
],
|
|
1175
1222
|
context: {
|
|
1176
1223
|
type: "token",
|
|
@@ -1194,10 +1241,11 @@ var cohere_models_default = {
|
|
|
1194
1241
|
],
|
|
1195
1242
|
can: [
|
|
1196
1243
|
"chat",
|
|
1197
|
-
"
|
|
1198
|
-
"
|
|
1244
|
+
"txt-in",
|
|
1245
|
+
"txt-out",
|
|
1199
1246
|
"reason",
|
|
1200
|
-
"
|
|
1247
|
+
"json-out",
|
|
1248
|
+
"fn-out"
|
|
1201
1249
|
],
|
|
1202
1250
|
context: {
|
|
1203
1251
|
type: "token",
|
|
@@ -1220,8 +1268,8 @@ var cohere_models_default = {
|
|
|
1220
1268
|
],
|
|
1221
1269
|
can: [
|
|
1222
1270
|
"chat",
|
|
1223
|
-
"
|
|
1224
|
-
"
|
|
1271
|
+
"txt-in",
|
|
1272
|
+
"txt-out"
|
|
1225
1273
|
],
|
|
1226
1274
|
context: {
|
|
1227
1275
|
type: "token",
|
|
@@ -1241,8 +1289,8 @@ var cohere_models_default = {
|
|
|
1241
1289
|
],
|
|
1242
1290
|
can: [
|
|
1243
1291
|
"chat",
|
|
1244
|
-
"
|
|
1245
|
-
"
|
|
1292
|
+
"txt-in",
|
|
1293
|
+
"txt-out"
|
|
1246
1294
|
],
|
|
1247
1295
|
context: {
|
|
1248
1296
|
type: "token",
|
|
@@ -1262,9 +1310,9 @@ var cohere_models_default = {
|
|
|
1262
1310
|
"oracle"
|
|
1263
1311
|
],
|
|
1264
1312
|
can: [
|
|
1265
|
-
"
|
|
1313
|
+
"txt-in",
|
|
1266
1314
|
"img-in",
|
|
1267
|
-
"
|
|
1315
|
+
"vec-out"
|
|
1268
1316
|
],
|
|
1269
1317
|
context: {
|
|
1270
1318
|
type: "token",
|
|
@@ -1282,9 +1330,9 @@ var cohere_models_default = {
|
|
|
1282
1330
|
"oracle"
|
|
1283
1331
|
],
|
|
1284
1332
|
can: [
|
|
1285
|
-
"
|
|
1333
|
+
"txt-in",
|
|
1286
1334
|
"img-in",
|
|
1287
|
-
"
|
|
1335
|
+
"vec-out"
|
|
1288
1336
|
],
|
|
1289
1337
|
context: {
|
|
1290
1338
|
type: "token",
|
|
@@ -1304,9 +1352,9 @@ var cohere_models_default = {
|
|
|
1304
1352
|
"oracle"
|
|
1305
1353
|
],
|
|
1306
1354
|
can: [
|
|
1307
|
-
"
|
|
1355
|
+
"txt-in",
|
|
1308
1356
|
"img-in",
|
|
1309
|
-
"
|
|
1357
|
+
"vec-out"
|
|
1310
1358
|
],
|
|
1311
1359
|
context: {
|
|
1312
1360
|
type: "token",
|
|
@@ -1324,9 +1372,9 @@ var cohere_models_default = {
|
|
|
1324
1372
|
"oracle"
|
|
1325
1373
|
],
|
|
1326
1374
|
can: [
|
|
1327
|
-
"
|
|
1375
|
+
"txt-in",
|
|
1328
1376
|
"img-in",
|
|
1329
|
-
"
|
|
1377
|
+
"vec-out"
|
|
1330
1378
|
],
|
|
1331
1379
|
context: {
|
|
1332
1380
|
type: "token",
|
|
@@ -1345,8 +1393,8 @@ var cohere_models_default = {
|
|
|
1345
1393
|
"azure"
|
|
1346
1394
|
],
|
|
1347
1395
|
can: [
|
|
1348
|
-
"
|
|
1349
|
-
"
|
|
1396
|
+
"txt-in",
|
|
1397
|
+
"txt-out"
|
|
1350
1398
|
],
|
|
1351
1399
|
context: {
|
|
1352
1400
|
type: "token",
|
|
@@ -1364,8 +1412,8 @@ var cohere_models_default = {
|
|
|
1364
1412
|
"azure"
|
|
1365
1413
|
],
|
|
1366
1414
|
can: [
|
|
1367
|
-
"
|
|
1368
|
-
"
|
|
1415
|
+
"txt-in",
|
|
1416
|
+
"txt-out"
|
|
1369
1417
|
],
|
|
1370
1418
|
context: {
|
|
1371
1419
|
type: "token",
|
|
@@ -1383,8 +1431,8 @@ var cohere_models_default = {
|
|
|
1383
1431
|
"azure"
|
|
1384
1432
|
],
|
|
1385
1433
|
can: [
|
|
1386
|
-
"
|
|
1387
|
-
"
|
|
1434
|
+
"txt-in",
|
|
1435
|
+
"txt-out"
|
|
1388
1436
|
],
|
|
1389
1437
|
context: {
|
|
1390
1438
|
type: "token",
|
|
@@ -1432,15 +1480,15 @@ function validateModel(raw) {
|
|
|
1432
1480
|
const validCapabilities = [
|
|
1433
1481
|
"chat",
|
|
1434
1482
|
"reason",
|
|
1435
|
-
"
|
|
1436
|
-
"
|
|
1483
|
+
"txt-in",
|
|
1484
|
+
"txt-out",
|
|
1437
1485
|
"img-in",
|
|
1438
1486
|
"img-out",
|
|
1439
|
-
"
|
|
1440
|
-
"
|
|
1487
|
+
"audio-in",
|
|
1488
|
+
"audio-out",
|
|
1441
1489
|
"json-out",
|
|
1442
|
-
"
|
|
1443
|
-
"
|
|
1490
|
+
"fn-out",
|
|
1491
|
+
"vec-out"
|
|
1444
1492
|
];
|
|
1445
1493
|
if (!model.can.every((c) => validCapabilities.includes(c))) {
|
|
1446
1494
|
throw new Error(`Model has invalid capabilities: ${model.can.join(", ")}`);
|
|
@@ -2040,6 +2088,62 @@ var groq_provider_default = {
|
|
|
2040
2088
|
}
|
|
2041
2089
|
};
|
|
2042
2090
|
|
|
2091
|
+
// src/data/providers/azure-provider.json
|
|
2092
|
+
var azure_provider_default = {
|
|
2093
|
+
id: "azure",
|
|
2094
|
+
name: "Azure OpenAI",
|
|
2095
|
+
websiteUrl: "https://azure.microsoft.com/en-us/products/ai-services/openai-service",
|
|
2096
|
+
apiUrl: "https://learn.microsoft.com/en-us/azure/ai-services/openai/reference",
|
|
2097
|
+
defaultModel: "gpt-4",
|
|
2098
|
+
models: {
|
|
2099
|
+
"gpt-4": {
|
|
2100
|
+
type: "token",
|
|
2101
|
+
input: 0,
|
|
2102
|
+
output: 0
|
|
2103
|
+
},
|
|
2104
|
+
"gpt-4-32k": {
|
|
2105
|
+
type: "token",
|
|
2106
|
+
input: 0,
|
|
2107
|
+
output: 0
|
|
2108
|
+
},
|
|
2109
|
+
"gpt-4-vision": {
|
|
2110
|
+
type: "token",
|
|
2111
|
+
input: 0,
|
|
2112
|
+
output: 0
|
|
2113
|
+
},
|
|
2114
|
+
"gpt-4o": {
|
|
2115
|
+
type: "token",
|
|
2116
|
+
input: 0,
|
|
2117
|
+
output: 0
|
|
2118
|
+
},
|
|
2119
|
+
"gpt-3.5-turbo": {
|
|
2120
|
+
type: "token",
|
|
2121
|
+
input: 0,
|
|
2122
|
+
output: 0
|
|
2123
|
+
},
|
|
2124
|
+
"gpt-3.5-turbo-16k": {
|
|
2125
|
+
type: "token",
|
|
2126
|
+
input: 0,
|
|
2127
|
+
output: 0
|
|
2128
|
+
},
|
|
2129
|
+
"text-embedding-ada-002": {
|
|
2130
|
+
type: "token",
|
|
2131
|
+
input: 0,
|
|
2132
|
+
output: 0
|
|
2133
|
+
},
|
|
2134
|
+
whisper: {
|
|
2135
|
+
type: "minute",
|
|
2136
|
+
price: 0
|
|
2137
|
+
},
|
|
2138
|
+
"dall-e-3": {
|
|
2139
|
+
type: "image",
|
|
2140
|
+
price: 0,
|
|
2141
|
+
size: "1024x1024",
|
|
2142
|
+
unit: "per_image"
|
|
2143
|
+
}
|
|
2144
|
+
}
|
|
2145
|
+
};
|
|
2146
|
+
|
|
2043
2147
|
// src/builders/providers.ts
|
|
2044
2148
|
function isTokenPrice(price) {
|
|
2045
2149
|
return typeof price === "object" && price !== null && "type" in price && price.type === "token" && "input" in price && typeof price.input === "number" && "output" in price && typeof price.output === "number";
|
|
@@ -2099,7 +2203,8 @@ function buildAllProviders() {
|
|
|
2099
2203
|
validateProvider(xai_provider_default),
|
|
2100
2204
|
validateProvider(google_provider_default),
|
|
2101
2205
|
validateProvider(deepseek_provider_default),
|
|
2102
|
-
validateProvider(groq_provider_default)
|
|
2206
|
+
validateProvider(groq_provider_default),
|
|
2207
|
+
validateProvider(azure_provider_default)
|
|
2103
2208
|
];
|
|
2104
2209
|
}
|
|
2105
2210
|
function buildProvidersData() {
|