aimodels 0.3.9 → 0.3.11

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/dist/index.js CHANGED
@@ -41,6 +41,48 @@ var ModelCollection = class _ModelCollection extends Array {
41
41
  can(...capabilities) {
42
42
  return this.filter((model) => capabilities.every((cap) => model.can.includes(cap)));
43
43
  }
44
+ /**
45
+ * Fluent capability filters for better readability
46
+ * Each method filters models by a specific capability
47
+ */
48
+ // Basic capabilities
49
+ canChat() {
50
+ return this.can("chat");
51
+ }
52
+ canReason() {
53
+ return this.can("reason");
54
+ }
55
+ // Text capabilities
56
+ canRead() {
57
+ return this.can("txt-in");
58
+ }
59
+ canWrite() {
60
+ return this.can("txt-out");
61
+ }
62
+ // Image capabilities
63
+ canSee() {
64
+ return this.can("img-in");
65
+ }
66
+ canGenerateImages() {
67
+ return this.can("img-out");
68
+ }
69
+ // Audio capabilities
70
+ canHear() {
71
+ return this.can("audio-in");
72
+ }
73
+ canSpeak() {
74
+ return this.can("audio-out");
75
+ }
76
+ // Output capabilities
77
+ canOutputJSON() {
78
+ return this.can("json-out");
79
+ }
80
+ canCallFunctions() {
81
+ return this.can("fn-out");
82
+ }
83
+ canGenerateEmbeddings() {
84
+ return this.can("vec-out");
85
+ }
44
86
  /** Filter models by one or more languages (all must be supported) */
45
87
  know(...languages) {
46
88
  return this.filter((model) => languages.every((lang) => model.languages?.includes(lang)));
@@ -84,6 +126,13 @@ var ModelCollection = class _ModelCollection extends Array {
84
126
  return context.total >= tokens;
85
127
  });
86
128
  }
129
+ /** Get all providers from all models in the collection deduplicated */
130
+ getProviders() {
131
+ return [...new Set(this.flatMap((model) => model.providers))];
132
+ }
133
+ getCreators() {
134
+ return [...new Set(this.map((model) => model.creator))];
135
+ }
87
136
  };
88
137
 
89
138
  // src/data/models/openai-models.json
@@ -100,10 +149,10 @@ var openai_models_default = {
100
149
  ],
101
150
  can: [
102
151
  "chat",
103
- "text-in",
104
- "text-out",
152
+ "txt-in",
153
+ "txt-out",
105
154
  "json-out",
106
- "function-out"
155
+ "fn-out"
107
156
  ],
108
157
  context: {
109
158
  type: "token",
@@ -133,10 +182,10 @@ var openai_models_default = {
133
182
  ],
134
183
  can: [
135
184
  "chat",
136
- "text-in",
137
- "text-out",
185
+ "txt-in",
186
+ "txt-out",
138
187
  "json-out",
139
- "function-out"
188
+ "fn-out"
140
189
  ],
141
190
  context: {
142
191
  type: "token",
@@ -165,8 +214,8 @@ var openai_models_default = {
165
214
  "azure"
166
215
  ],
167
216
  can: [
168
- "text-in",
169
- "text-out"
217
+ "txt-in",
218
+ "txt-out"
170
219
  ],
171
220
  context: {
172
221
  type: "token",
@@ -184,11 +233,11 @@ var openai_models_default = {
184
233
  ],
185
234
  can: [
186
235
  "chat",
187
- "text-in",
188
- "text-out",
236
+ "txt-in",
237
+ "txt-out",
189
238
  "img-in",
190
239
  "json-out",
191
- "function-out"
240
+ "fn-out"
192
241
  ],
193
242
  context: {
194
243
  type: "token",
@@ -248,11 +297,11 @@ var openai_models_default = {
248
297
  name: "GPT-4o Audio",
249
298
  can: [
250
299
  "chat",
251
- "text-in",
252
- "text-out",
253
- "sound-in",
300
+ "txt-in",
301
+ "txt-out",
302
+ "audio-in",
254
303
  "json-out",
255
- "function-out"
304
+ "fn-out"
256
305
  ],
257
306
  context: {
258
307
  type: "token",
@@ -282,12 +331,12 @@ var openai_models_default = {
282
331
  name: "GPT-4o Mini Audio",
283
332
  can: [
284
333
  "chat",
285
- "text-in",
286
- "text-out",
287
- "sound-in",
288
- "sound-out",
334
+ "txt-in",
335
+ "txt-out",
336
+ "audio-in",
337
+ "audio-out",
289
338
  "json-out",
290
- "function-out"
339
+ "fn-out"
291
340
  ],
292
341
  context: {
293
342
  type: "token",
@@ -310,11 +359,11 @@ var openai_models_default = {
310
359
  name: "GPT-4o Realtime",
311
360
  can: [
312
361
  "chat",
313
- "text-in",
314
- "text-out",
315
- "sound-in",
362
+ "txt-in",
363
+ "txt-out",
364
+ "audio-in",
316
365
  "json-out",
317
- "function-out"
366
+ "fn-out"
318
367
  ],
319
368
  context: {
320
369
  type: "token",
@@ -344,11 +393,11 @@ var openai_models_default = {
344
393
  name: "GPT-4o Mini Realtime",
345
394
  can: [
346
395
  "chat",
347
- "text-in",
348
- "text-out",
349
- "sound-in",
396
+ "txt-in",
397
+ "txt-out",
398
+ "audio-in",
350
399
  "json-out",
351
- "function-out"
400
+ "fn-out"
352
401
  ],
353
402
  context: {
354
403
  type: "token",
@@ -374,11 +423,11 @@ var openai_models_default = {
374
423
  ],
375
424
  can: [
376
425
  "chat",
377
- "text-in",
378
- "text-out",
426
+ "txt-in",
427
+ "txt-out",
379
428
  "img-in",
380
429
  "json-out",
381
- "function-out",
430
+ "fn-out",
382
431
  "reason"
383
432
  ],
384
433
  context: {
@@ -401,10 +450,10 @@ var openai_models_default = {
401
450
  name: "OpenAI O1 Mini",
402
451
  can: [
403
452
  "chat",
404
- "text-in",
405
- "text-out",
453
+ "txt-in",
454
+ "txt-out",
406
455
  "json-out",
407
- "function-out",
456
+ "fn-out",
408
457
  "reason"
409
458
  ],
410
459
  context: {
@@ -450,10 +499,10 @@ var openai_models_default = {
450
499
  ],
451
500
  can: [
452
501
  "chat",
453
- "text-in",
454
- "text-out",
502
+ "txt-in",
503
+ "txt-out",
455
504
  "json-out",
456
- "function-out",
505
+ "fn-out",
457
506
  "reason"
458
507
  ],
459
508
  context: {
@@ -478,8 +527,8 @@ var openai_models_default = {
478
527
  "azure"
479
528
  ],
480
529
  can: [
481
- "sound-in",
482
- "text-out"
530
+ "audio-in",
531
+ "txt-out"
483
532
  ],
484
533
  context: {
485
534
  type: "audio-in",
@@ -496,8 +545,8 @@ var openai_models_default = {
496
545
  "azure"
497
546
  ],
498
547
  can: [
499
- "text-in",
500
- "sound-out"
548
+ "txt-in",
549
+ "audio-out"
501
550
  ],
502
551
  context: {
503
552
  type: "audio-out",
@@ -544,7 +593,7 @@ var openai_models_default = {
544
593
  "azure"
545
594
  ],
546
595
  can: [
547
- "text-in",
596
+ "txt-in",
548
597
  "img-out"
549
598
  ],
550
599
  context: {
@@ -569,8 +618,8 @@ var openai_models_default = {
569
618
  "azure"
570
619
  ],
571
620
  can: [
572
- "text-in",
573
- "vectors-out"
621
+ "txt-in",
622
+ "vec-out"
574
623
  ],
575
624
  context: {
576
625
  type: "embedding",
@@ -590,8 +639,8 @@ var openai_models_default = {
590
639
  "azure"
591
640
  ],
592
641
  can: [
593
- "text-in",
594
- "vectors-out"
642
+ "txt-in",
643
+ "vec-out"
595
644
  ],
596
645
  context: {
597
646
  type: "embedding",
@@ -611,8 +660,8 @@ var openai_models_default = {
611
660
  "azure"
612
661
  ],
613
662
  can: [
614
- "text-in",
615
- "vectors-out"
663
+ "txt-in",
664
+ "vec-out"
616
665
  ],
617
666
  context: {
618
667
  type: "embedding",
@@ -637,11 +686,11 @@ var anthropic_models_default = {
637
686
  providers: ["anthropic", "aws", "google"],
638
687
  can: [
639
688
  "chat",
640
- "text-in",
641
- "text-out",
689
+ "txt-in",
690
+ "txt-out",
642
691
  "img-in",
643
692
  "json-out",
644
- "function-out"
693
+ "fn-out"
645
694
  ],
646
695
  context: {
647
696
  type: "token",
@@ -658,11 +707,11 @@ var anthropic_models_default = {
658
707
  providers: ["anthropic", "aws", "google"],
659
708
  can: [
660
709
  "chat",
661
- "text-in",
662
- "text-out",
710
+ "txt-in",
711
+ "txt-out",
663
712
  "img-in",
664
713
  "json-out",
665
- "function-out"
714
+ "fn-out"
666
715
  ],
667
716
  context: {
668
717
  type: "token",
@@ -679,11 +728,11 @@ var anthropic_models_default = {
679
728
  providers: ["anthropic", "aws", "google"],
680
729
  can: [
681
730
  "chat",
682
- "text-in",
683
- "text-out",
731
+ "txt-in",
732
+ "txt-out",
684
733
  "img-in",
685
734
  "json-out",
686
- "function-out"
735
+ "fn-out"
687
736
  ],
688
737
  context: {
689
738
  type: "token",
@@ -700,11 +749,11 @@ var anthropic_models_default = {
700
749
  providers: ["anthropic", "aws", "google"],
701
750
  can: [
702
751
  "chat",
703
- "text-in",
704
- "text-out",
752
+ "txt-in",
753
+ "txt-out",
705
754
  "img-in",
706
755
  "json-out",
707
- "function-out"
756
+ "fn-out"
708
757
  ],
709
758
  context: {
710
759
  type: "token",
@@ -721,11 +770,11 @@ var anthropic_models_default = {
721
770
  providers: ["anthropic", "aws", "google"],
722
771
  can: [
723
772
  "chat",
724
- "text-in",
725
- "text-out",
773
+ "txt-in",
774
+ "txt-out",
726
775
  "img-in",
727
776
  "json-out",
728
- "function-out"
777
+ "fn-out"
729
778
  ],
730
779
  context: {
731
780
  type: "token",
@@ -741,10 +790,10 @@ var anthropic_models_default = {
741
790
  providers: ["anthropic", "aws", "google"],
742
791
  can: [
743
792
  "chat",
744
- "text-in",
745
- "text-out",
793
+ "txt-in",
794
+ "txt-out",
746
795
  "json-out",
747
- "function-out"
796
+ "fn-out"
748
797
  ],
749
798
  context: {
750
799
  type: "token",
@@ -761,11 +810,11 @@ var anthropic_models_default = {
761
810
  providers: ["anthropic", "aws", "google"],
762
811
  can: [
763
812
  "chat",
764
- "text-in",
765
- "text-out",
813
+ "txt-in",
814
+ "txt-out",
766
815
  "img-in",
767
816
  "json-out",
768
- "function-out",
817
+ "fn-out",
769
818
  "reason"
770
819
  ],
771
820
  context: {
@@ -796,7 +845,7 @@ var meta_models_default = {
796
845
  name: "Llama 3 70B",
797
846
  license: "llama-3-community",
798
847
  providers: ["groq"],
799
- can: ["chat", "text-in", "text-out", "json-out", "function-out"],
848
+ can: ["chat", "txt-in", "txt-out", "json-out", "fn-out"],
800
849
  context: {
801
850
  type: "token",
802
851
  total: 8192,
@@ -808,7 +857,7 @@ var meta_models_default = {
808
857
  name: "Llama 3 8B",
809
858
  license: "llama-3-community",
810
859
  providers: ["groq"],
811
- can: ["chat", "text-in", "text-out", "json-out", "function-out"],
860
+ can: ["chat", "txt-in", "txt-out", "json-out", "fn-out"],
812
861
  context: {
813
862
  type: "token",
814
863
  total: 8192,
@@ -820,7 +869,7 @@ var meta_models_default = {
820
869
  name: "Llama 3.2 11B Vision",
821
870
  license: "llama-3-community",
822
871
  providers: ["groq"],
823
- can: ["chat", "text-in", "text-out", "img-in"],
872
+ can: ["chat", "txt-in", "txt-out", "img-in"],
824
873
  context: {
825
874
  type: "token",
826
875
  total: 4096,
@@ -832,7 +881,7 @@ var meta_models_default = {
832
881
  name: "Llama 3.2 90B Vision",
833
882
  license: "llama-3-community",
834
883
  providers: ["groq"],
835
- can: ["chat", "text-in", "text-out", "img-in"],
884
+ can: ["chat", "txt-in", "txt-out", "img-in"],
836
885
  context: {
837
886
  type: "token",
838
887
  total: 4096,
@@ -844,7 +893,7 @@ var meta_models_default = {
844
893
  name: "LlamaGuard 3 8B",
845
894
  license: "llama-3-community",
846
895
  providers: ["groq"],
847
- can: ["chat", "text-in", "text-out"],
896
+ can: ["chat", "txt-in", "txt-out"],
848
897
  context: {
849
898
  type: "token",
850
899
  total: 4096,
@@ -865,10 +914,10 @@ var mistral_models_default = {
865
914
  providers: ["mistral", "azure"],
866
915
  can: [
867
916
  "chat",
868
- "text-in",
869
- "text-out",
917
+ "txt-in",
918
+ "txt-out",
870
919
  "json-out",
871
- "function-out"
920
+ "fn-out"
872
921
  ],
873
922
  context: {
874
923
  type: "token",
@@ -883,10 +932,10 @@ var mistral_models_default = {
883
932
  providers: ["mistral", "azure"],
884
933
  can: [
885
934
  "chat",
886
- "text-in",
887
- "text-out",
935
+ "txt-in",
936
+ "txt-out",
888
937
  "json-out",
889
- "function-out"
938
+ "fn-out"
890
939
  ],
891
940
  context: {
892
941
  type: "token",
@@ -901,8 +950,8 @@ var mistral_models_default = {
901
950
  providers: ["mistral"],
902
951
  can: [
903
952
  "chat",
904
- "text-in",
905
- "text-out"
953
+ "txt-in",
954
+ "txt-out"
906
955
  ],
907
956
  context: {
908
957
  type: "token",
@@ -917,8 +966,8 @@ var mistral_models_default = {
917
966
  providers: ["mistral", "groq"],
918
967
  can: [
919
968
  "chat",
920
- "text-in",
921
- "text-out"
969
+ "txt-in",
970
+ "txt-out"
922
971
  ],
923
972
  context: {
924
973
  type: "token",
@@ -933,8 +982,8 @@ var mistral_models_default = {
933
982
  providers: ["mistral", "groq"],
934
983
  can: [
935
984
  "chat",
936
- "text-in",
937
- "text-out"
985
+ "txt-in",
986
+ "txt-out"
938
987
  ],
939
988
  context: {
940
989
  type: "token",
@@ -954,7 +1003,7 @@ var google_models_default = {
954
1003
  name: "Gemini 2.0 Flash",
955
1004
  license: "proprietary",
956
1005
  providers: ["google"],
957
- can: ["chat", "text-in", "text-out", "json-out", "function-out", "img-in", "sound-in", "reason"],
1006
+ can: ["chat", "txt-in", "txt-out", "json-out", "fn-out", "img-in", "audio-in", "reason"],
958
1007
  context: {
959
1008
  type: "token",
960
1009
  total: 1048576,
@@ -967,7 +1016,7 @@ var google_models_default = {
967
1016
  name: "Gemini 2.0 Flash Lite",
968
1017
  license: "proprietary",
969
1018
  providers: ["google"],
970
- can: ["chat", "text-in", "text-out", "json-out", "function-out", "img-in", "sound-in"],
1019
+ can: ["chat", "txt-in", "txt-out", "json-out", "fn-out", "img-in", "audio-in"],
971
1020
  context: {
972
1021
  type: "token",
973
1022
  total: 1048576,
@@ -980,7 +1029,7 @@ var google_models_default = {
980
1029
  name: "Gemini 1.5 Flash",
981
1030
  license: "proprietary",
982
1031
  providers: ["google"],
983
- can: ["chat", "text-in", "text-out", "json-out", "function-out", "img-in", "sound-in"],
1032
+ can: ["chat", "txt-in", "txt-out", "json-out", "fn-out", "img-in", "audio-in"],
984
1033
  context: {
985
1034
  type: "token",
986
1035
  total: 2097152,
@@ -992,7 +1041,7 @@ var google_models_default = {
992
1041
  name: "Gemini 1.5 Flash 8B",
993
1042
  license: "proprietary",
994
1043
  providers: ["google"],
995
- can: ["chat", "text-in", "text-out", "json-out", "function-out", "img-in", "sound-in"],
1044
+ can: ["chat", "txt-in", "txt-out", "json-out", "fn-out", "img-in", "audio-in"],
996
1045
  context: {
997
1046
  type: "token",
998
1047
  total: 2097152,
@@ -1004,7 +1053,7 @@ var google_models_default = {
1004
1053
  name: "Gemini 1.5 Pro",
1005
1054
  license: "proprietary",
1006
1055
  providers: ["google"],
1007
- can: ["chat", "text-in", "text-out", "json-out", "function-out", "img-in", "sound-in", "reason"],
1056
+ can: ["chat", "txt-in", "txt-out", "json-out", "fn-out", "img-in", "audio-in", "reason"],
1008
1057
  context: {
1009
1058
  type: "token",
1010
1059
  total: 2097152,
@@ -1017,7 +1066,7 @@ var google_models_default = {
1017
1066
  name: "Text Embedding 004",
1018
1067
  license: "proprietary",
1019
1068
  providers: ["google"],
1020
- can: ["text-in", "vectors-out"],
1069
+ can: ["txt-in", "vec-out"],
1021
1070
  context: {
1022
1071
  type: "token",
1023
1072
  total: 2048,
@@ -1029,7 +1078,7 @@ var google_models_default = {
1029
1078
  name: "Gemma 7B Instruct",
1030
1079
  license: "apache-2.0",
1031
1080
  providers: ["google"],
1032
- can: ["chat", "text-in", "text-out", "json-out", "function-out"],
1081
+ can: ["chat", "txt-in", "txt-out", "json-out", "fn-out"],
1033
1082
  context: {
1034
1083
  type: "token",
1035
1084
  total: 8192,
@@ -1041,7 +1090,7 @@ var google_models_default = {
1041
1090
  name: "Gemma 2B Instruct",
1042
1091
  license: "apache-2.0",
1043
1092
  providers: ["google"],
1044
- can: ["chat", "text-in", "text-out", "json-out", "function-out"],
1093
+ can: ["chat", "txt-in", "txt-out", "json-out", "fn-out"],
1045
1094
  context: {
1046
1095
  type: "token",
1047
1096
  total: 8192,
@@ -1062,10 +1111,10 @@ var deepseek_models_default = {
1062
1111
  providers: ["deepseek"],
1063
1112
  can: [
1064
1113
  "chat",
1065
- "text-in",
1066
- "text-out",
1114
+ "txt-in",
1115
+ "txt-out",
1067
1116
  "json-out",
1068
- "function-out"
1117
+ "fn-out"
1069
1118
  ],
1070
1119
  context: {
1071
1120
  type: "token",
@@ -1080,10 +1129,10 @@ var deepseek_models_default = {
1080
1129
  providers: ["deepseek"],
1081
1130
  can: [
1082
1131
  "chat",
1083
- "text-in",
1084
- "text-out",
1132
+ "txt-in",
1133
+ "txt-out",
1085
1134
  "json-out",
1086
- "function-out",
1135
+ "fn-out",
1087
1136
  "reason"
1088
1137
  ],
1089
1138
  context: {
@@ -1105,7 +1154,7 @@ var xai_models_default = {
1105
1154
  creator: "xai",
1106
1155
  license: "proprietary",
1107
1156
  providers: ["xai"],
1108
- can: ["chat", "text-in", "text-out", "img-in"],
1157
+ can: ["chat", "txt-in", "txt-out", "img-in"],
1109
1158
  context: {
1110
1159
  type: "token",
1111
1160
  total: 32768,
@@ -1119,7 +1168,7 @@ var xai_models_default = {
1119
1168
  creator: "xai",
1120
1169
  license: "proprietary",
1121
1170
  providers: ["xai"],
1122
- can: ["chat", "text-in", "text-out"],
1171
+ can: ["chat", "txt-in", "txt-out"],
1123
1172
  context: {
1124
1173
  type: "token",
1125
1174
  total: 131072,
@@ -1133,7 +1182,7 @@ var xai_models_default = {
1133
1182
  creator: "xai",
1134
1183
  license: "proprietary",
1135
1184
  providers: ["xai"],
1136
- can: ["chat", "text-in", "text-out", "img-in"],
1185
+ can: ["chat", "txt-in", "txt-out", "img-in"],
1137
1186
  context: {
1138
1187
  type: "token",
1139
1188
  total: 8192,
@@ -1146,7 +1195,7 @@ var xai_models_default = {
1146
1195
  creator: "xai",
1147
1196
  license: "proprietary",
1148
1197
  providers: ["xai"],
1149
- can: ["chat", "text-in", "text-out"],
1198
+ can: ["chat", "txt-in", "txt-out"],
1150
1199
  context: {
1151
1200
  type: "token",
1152
1201
  total: 131072,
@@ -1170,9 +1219,10 @@ var cohere_models_default = {
1170
1219
  ],
1171
1220
  can: [
1172
1221
  "chat",
1173
- "text-in",
1174
- "text-out",
1175
- "function-out"
1222
+ "txt-in",
1223
+ "txt-out",
1224
+ "json-out",
1225
+ "fn-out"
1176
1226
  ],
1177
1227
  context: {
1178
1228
  type: "token",
@@ -1193,10 +1243,10 @@ var cohere_models_default = {
1193
1243
  ],
1194
1244
  can: [
1195
1245
  "chat",
1196
- "text-in",
1197
- "text-out",
1198
- "reason",
1199
- "function-out"
1246
+ "txt-in",
1247
+ "txt-out",
1248
+ "json-out",
1249
+ "fn-out"
1200
1250
  ],
1201
1251
  context: {
1202
1252
  type: "token",
@@ -1220,10 +1270,11 @@ var cohere_models_default = {
1220
1270
  ],
1221
1271
  can: [
1222
1272
  "chat",
1223
- "text-in",
1224
- "text-out",
1273
+ "txt-in",
1274
+ "txt-out",
1225
1275
  "reason",
1226
- "function-out"
1276
+ "json-out",
1277
+ "fn-out"
1227
1278
  ],
1228
1279
  context: {
1229
1280
  type: "token",
@@ -1246,8 +1297,8 @@ var cohere_models_default = {
1246
1297
  ],
1247
1298
  can: [
1248
1299
  "chat",
1249
- "text-in",
1250
- "text-out"
1300
+ "txt-in",
1301
+ "txt-out"
1251
1302
  ],
1252
1303
  context: {
1253
1304
  type: "token",
@@ -1267,8 +1318,8 @@ var cohere_models_default = {
1267
1318
  ],
1268
1319
  can: [
1269
1320
  "chat",
1270
- "text-in",
1271
- "text-out"
1321
+ "txt-in",
1322
+ "txt-out"
1272
1323
  ],
1273
1324
  context: {
1274
1325
  type: "token",
@@ -1288,9 +1339,9 @@ var cohere_models_default = {
1288
1339
  "oracle"
1289
1340
  ],
1290
1341
  can: [
1291
- "text-in",
1342
+ "txt-in",
1292
1343
  "img-in",
1293
- "vectors-out"
1344
+ "vec-out"
1294
1345
  ],
1295
1346
  context: {
1296
1347
  type: "token",
@@ -1308,9 +1359,9 @@ var cohere_models_default = {
1308
1359
  "oracle"
1309
1360
  ],
1310
1361
  can: [
1311
- "text-in",
1362
+ "txt-in",
1312
1363
  "img-in",
1313
- "vectors-out"
1364
+ "vec-out"
1314
1365
  ],
1315
1366
  context: {
1316
1367
  type: "token",
@@ -1330,9 +1381,9 @@ var cohere_models_default = {
1330
1381
  "oracle"
1331
1382
  ],
1332
1383
  can: [
1333
- "text-in",
1384
+ "txt-in",
1334
1385
  "img-in",
1335
- "vectors-out"
1386
+ "vec-out"
1336
1387
  ],
1337
1388
  context: {
1338
1389
  type: "token",
@@ -1350,9 +1401,9 @@ var cohere_models_default = {
1350
1401
  "oracle"
1351
1402
  ],
1352
1403
  can: [
1353
- "text-in",
1404
+ "txt-in",
1354
1405
  "img-in",
1355
- "vectors-out"
1406
+ "vec-out"
1356
1407
  ],
1357
1408
  context: {
1358
1409
  type: "token",
@@ -1371,8 +1422,8 @@ var cohere_models_default = {
1371
1422
  "azure"
1372
1423
  ],
1373
1424
  can: [
1374
- "text-in",
1375
- "text-out"
1425
+ "txt-in",
1426
+ "txt-out"
1376
1427
  ],
1377
1428
  context: {
1378
1429
  type: "token",
@@ -1390,8 +1441,8 @@ var cohere_models_default = {
1390
1441
  "azure"
1391
1442
  ],
1392
1443
  can: [
1393
- "text-in",
1394
- "text-out"
1444
+ "txt-in",
1445
+ "txt-out"
1395
1446
  ],
1396
1447
  context: {
1397
1448
  type: "token",
@@ -1409,8 +1460,8 @@ var cohere_models_default = {
1409
1460
  "azure"
1410
1461
  ],
1411
1462
  can: [
1412
- "text-in",
1413
- "text-out"
1463
+ "txt-in",
1464
+ "txt-out"
1414
1465
  ],
1415
1466
  context: {
1416
1467
  type: "token",
@@ -1458,15 +1509,15 @@ function validateModel(raw) {
1458
1509
  const validCapabilities = [
1459
1510
  "chat",
1460
1511
  "reason",
1461
- "text-in",
1462
- "text-out",
1512
+ "txt-in",
1513
+ "txt-out",
1463
1514
  "img-in",
1464
1515
  "img-out",
1465
- "sound-in",
1466
- "sound-out",
1516
+ "audio-in",
1517
+ "audio-out",
1467
1518
  "json-out",
1468
- "function-out",
1469
- "vectors-out"
1519
+ "fn-out",
1520
+ "vec-out"
1470
1521
  ];
1471
1522
  if (!model.can.every((c) => validCapabilities.includes(c))) {
1472
1523
  throw new Error(`Model has invalid capabilities: ${model.can.join(", ")}`);