@shop-os/modelkit 0.1.6 → 0.1.7
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 +1 -0
- package/dist/index.cjs +618 -78
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +29 -1
- package/dist/index.d.ts +29 -1
- package/dist/index.js +618 -78
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -83,6 +83,7 @@ var Catalog = class _Catalog {
|
|
|
83
83
|
|
|
84
84
|
// src/catalog/image.ts
|
|
85
85
|
var IMAGE_USAGE = { unit: "images", modality: "IMAGE" };
|
|
86
|
+
var IMAGE_GENERATE_EDIT = { imageGenerate: true, imageEdit: true };
|
|
86
87
|
var GEMINI_RATIOS = [
|
|
87
88
|
"1:1",
|
|
88
89
|
"2:3",
|
|
@@ -96,7 +97,7 @@ var GEMINI_RATIOS = [
|
|
|
96
97
|
"5:4",
|
|
97
98
|
"adaptive"
|
|
98
99
|
];
|
|
99
|
-
function geminiImage(id, label, aliases, sizes) {
|
|
100
|
+
function geminiImage(id, label, aliases, sizes, display) {
|
|
100
101
|
const model = {
|
|
101
102
|
id,
|
|
102
103
|
aliases,
|
|
@@ -112,22 +113,40 @@ function geminiImage(id, label, aliases, sizes) {
|
|
|
112
113
|
},
|
|
113
114
|
defaults: { size: "1K", aspectRatio: "1:1" },
|
|
114
115
|
usage: { ...IMAGE_USAGE },
|
|
115
|
-
pricingKind: "image_size"
|
|
116
|
+
pricingKind: "image_size",
|
|
117
|
+
display,
|
|
118
|
+
capabilities: { ...IMAGE_GENERATE_EDIT }
|
|
116
119
|
};
|
|
117
120
|
return model;
|
|
118
121
|
}
|
|
119
122
|
var IMAGE_MODELS = [
|
|
120
|
-
geminiImage("gemini-3-pro-image-preview", "Nano Banana Pro", ["nb-pro"], ["1K", "2K", "4K"]
|
|
123
|
+
geminiImage("gemini-3-pro-image-preview", "Nano Banana Pro", ["nb-pro"], ["1K", "2K", "4K"], {
|
|
124
|
+
provider: "google",
|
|
125
|
+
description: "Create stunning, production-quality visuals with exceptional realism, detail, and typography. Best for campaigns, e-commerce, product photography, and hero creatives.",
|
|
126
|
+
logo: "https://d31vvfpk2ppdyq.cloudfront.net/assets/image/192485d2-a76a-4657-9c06-930b2c70badd_compressed.png"
|
|
127
|
+
}),
|
|
121
128
|
geminiImage(
|
|
122
129
|
"gemini-3.1-flash-image-preview",
|
|
123
130
|
"Nano Banana Flash",
|
|
124
131
|
["nb-2"],
|
|
125
132
|
// Flash 3.1 is the only Gemini image model with the 512 tier.
|
|
126
|
-
["512", "1K", "2K", "4K"]
|
|
133
|
+
["512", "1K", "2K", "4K"],
|
|
134
|
+
{
|
|
135
|
+
provider: "google",
|
|
136
|
+
description: "Generate high-quality images at speed. Perfect for brainstorming, moodboards, concept testing, creative exploration, and large batch workflows.",
|
|
137
|
+
logo: "https://d31vvfpk2ppdyq.cloudfront.net/assets/image/192485d2-a76a-4657-9c06-930b2c70badd_compressed.png"
|
|
138
|
+
}
|
|
127
139
|
),
|
|
128
|
-
geminiImage("gemini-3.1-flash-lite-image", "Nano Banana Lite", ["nb-lite"], ["1K"]
|
|
140
|
+
geminiImage("gemini-3.1-flash-lite-image", "Nano Banana Lite", ["nb-lite"], ["1K"], {
|
|
141
|
+
provider: "google",
|
|
142
|
+
description: "The fastest and most affordable image model. Ideal for rapid drafts, bulk exploration, and iterative concept testing at 1K resolution.",
|
|
143
|
+
logo: "https://d31vvfpk2ppdyq.cloudfront.net/assets/image/192485d2-a76a-4657-9c06-930b2c70badd_compressed.png"
|
|
144
|
+
}),
|
|
129
145
|
// trigger-workflows validates 1K only; pricing seeds 2K/4K rows so allow all three.
|
|
130
|
-
geminiImage("gemini-2.5-flash-image", "Gemini 2.5 Flash Image", [], ["1K", "2K", "4K"]
|
|
146
|
+
geminiImage("gemini-2.5-flash-image", "Gemini 2.5 Flash Image", [], ["1K", "2K", "4K"], {
|
|
147
|
+
provider: "google",
|
|
148
|
+
description: "Nano Banana (legacy Gemini 2.5 Flash Image) native image generation and editing model for high-volume, low-latency creative workflows."
|
|
149
|
+
}),
|
|
131
150
|
{
|
|
132
151
|
// Cowork "auto" lets OpenAI pick the size; the canonical equivalent is adaptive.
|
|
133
152
|
id: "gpt-image-2",
|
|
@@ -145,7 +164,13 @@ var IMAGE_MODELS = [
|
|
|
145
164
|
},
|
|
146
165
|
defaults: { size: "1K", aspectRatio: "adaptive", quality: "auto" },
|
|
147
166
|
usage: { ...IMAGE_USAGE },
|
|
148
|
-
pricingKind: "image_size"
|
|
167
|
+
pricingKind: "image_size",
|
|
168
|
+
display: {
|
|
169
|
+
provider: "openai",
|
|
170
|
+
description: "The most capable model for image editing and complex creative instructions. Excels at text rendering, visual consistency, design generation, and iterative refinement.",
|
|
171
|
+
logo: "https://d31vvfpk2ppdyq.cloudfront.net/assets/image/1204b494-8962-4f7f-af5e-699a8bdc98e3_compressed.png"
|
|
172
|
+
},
|
|
173
|
+
capabilities: { ...IMAGE_GENERATE_EDIT }
|
|
149
174
|
},
|
|
150
175
|
{
|
|
151
176
|
// Same Images API surface as gpt-image-2 plus the "xhigh" and "max" quality tiers.
|
|
@@ -164,7 +189,12 @@ var IMAGE_MODELS = [
|
|
|
164
189
|
},
|
|
165
190
|
defaults: { size: "1K", aspectRatio: "adaptive", quality: "auto" },
|
|
166
191
|
usage: { ...IMAGE_USAGE },
|
|
167
|
-
pricingKind: "image_size"
|
|
192
|
+
pricingKind: "image_size",
|
|
193
|
+
display: {
|
|
194
|
+
provider: "openai",
|
|
195
|
+
description: "OpenAI's most capable GPT Image 2.5 tier, built for editing precision; takes text and image input and outputs images in low, medium, high, xhigh, or max quality."
|
|
196
|
+
},
|
|
197
|
+
capabilities: { ...IMAGE_GENERATE_EDIT }
|
|
168
198
|
},
|
|
169
199
|
{
|
|
170
200
|
// Same Images API surface as gpt-image-2 plus the "xhigh" and "max" quality tiers.
|
|
@@ -183,7 +213,12 @@ var IMAGE_MODELS = [
|
|
|
183
213
|
},
|
|
184
214
|
defaults: { size: "1K", aspectRatio: "adaptive", quality: "auto" },
|
|
185
215
|
usage: { ...IMAGE_USAGE },
|
|
186
|
-
pricingKind: "image_size"
|
|
216
|
+
pricingKind: "image_size",
|
|
217
|
+
display: {
|
|
218
|
+
provider: "openai",
|
|
219
|
+
description: "OpenAI's fastest GPT Image 2.5 tier for high-quality everyday image generation and editing; takes text and image input and outputs images."
|
|
220
|
+
},
|
|
221
|
+
capabilities: { ...IMAGE_GENERATE_EDIT }
|
|
187
222
|
},
|
|
188
223
|
{
|
|
189
224
|
// Cowork allows 7 ratios; trigger-workflows allows 9 (adds 3:2, 9:21, drops 4:5/5:4).
|
|
@@ -215,7 +250,13 @@ var IMAGE_MODELS = [
|
|
|
215
250
|
},
|
|
216
251
|
defaults: { size: "1K", aspectRatio: "1:1", outputFormat: "png", count: 1 },
|
|
217
252
|
usage: { ...IMAGE_USAGE },
|
|
218
|
-
pricingKind: "image_size"
|
|
253
|
+
pricingKind: "image_size",
|
|
254
|
+
display: {
|
|
255
|
+
provider: "meta",
|
|
256
|
+
description: "Meta's image model with built-in world knowledge and strong prompt adherence. Great for concept-rich scenes, realistic compositions, and reference-guided edits.",
|
|
257
|
+
logo: "https://d31vvfpk2ppdyq.cloudfront.net/assets/characters/1787909065794-k9a7zz.png"
|
|
258
|
+
},
|
|
259
|
+
capabilities: { ...IMAGE_GENERATE_EDIT }
|
|
219
260
|
},
|
|
220
261
|
{
|
|
221
262
|
id: "seedream-5-0-pro",
|
|
@@ -235,7 +276,12 @@ var IMAGE_MODELS = [
|
|
|
235
276
|
},
|
|
236
277
|
defaults: { size: "1K", aspectRatio: "1:1" },
|
|
237
278
|
usage: { ...IMAGE_USAGE },
|
|
238
|
-
pricingKind: "image_size"
|
|
279
|
+
pricingKind: "image_size",
|
|
280
|
+
display: {
|
|
281
|
+
provider: "bytedance",
|
|
282
|
+
description: "ByteDance Seedream 5.0 Pro text-to-image and multi-reference image-to-image (up to 10 inputs) with region editing; outputs 1K, 1.5K, or 2K."
|
|
283
|
+
},
|
|
284
|
+
capabilities: { ...IMAGE_GENERATE_EDIT }
|
|
239
285
|
},
|
|
240
286
|
{
|
|
241
287
|
id: "seedream-4.5",
|
|
@@ -267,7 +313,12 @@ var IMAGE_MODELS = [
|
|
|
267
313
|
},
|
|
268
314
|
defaults: { size: "1K", aspectRatio: "1:1" },
|
|
269
315
|
usage: { ...IMAGE_USAGE },
|
|
270
|
-
pricingKind: "image_size"
|
|
316
|
+
pricingKind: "image_size",
|
|
317
|
+
display: {
|
|
318
|
+
provider: "bytedance",
|
|
319
|
+
description: "ByteDance Seedream 4.5 text-to-image and image-to-image with up to 14 reference images and batch image-set generation; outputs 2K or 4K."
|
|
320
|
+
},
|
|
321
|
+
capabilities: { ...IMAGE_GENERATE_EDIT }
|
|
271
322
|
},
|
|
272
323
|
{
|
|
273
324
|
id: "flux-2-pro",
|
|
@@ -285,7 +336,12 @@ var IMAGE_MODELS = [
|
|
|
285
336
|
},
|
|
286
337
|
defaults: { size: "1K", aspectRatio: "1:1" },
|
|
287
338
|
usage: { ...IMAGE_USAGE },
|
|
288
|
-
pricingKind: "image_size"
|
|
339
|
+
pricingKind: "image_size",
|
|
340
|
+
display: {
|
|
341
|
+
provider: "black-forest-labs",
|
|
342
|
+
description: "Black Forest Labs FLUX.2 [pro] text-to-image and multi-reference editing model served via Prodia; takes a prompt and up to 8 input images and outputs up to 4096x4096."
|
|
343
|
+
},
|
|
344
|
+
capabilities: { ...IMAGE_GENERATE_EDIT }
|
|
289
345
|
},
|
|
290
346
|
{
|
|
291
347
|
// Prodia's gemini-3-pro jobs take aspect_ratio + resolution (1K/2K/4K), not
|
|
@@ -306,7 +362,12 @@ var IMAGE_MODELS = [
|
|
|
306
362
|
},
|
|
307
363
|
defaults: { size: "1K", aspectRatio: "1:1" },
|
|
308
364
|
usage: { ...IMAGE_USAGE },
|
|
309
|
-
pricingKind: "image_size"
|
|
365
|
+
pricingKind: "image_size",
|
|
366
|
+
display: {
|
|
367
|
+
provider: "google",
|
|
368
|
+
description: "Google Gemini 3 Pro image generation and editing served via Prodia; takes a prompt plus up to 3 reference images and outputs 1K, 2K, or 4K."
|
|
369
|
+
},
|
|
370
|
+
capabilities: { ...IMAGE_GENERATE_EDIT }
|
|
310
371
|
},
|
|
311
372
|
{
|
|
312
373
|
// Nano Banana (img2img.v2) is flat-rate with aspect_ratio only; 3:2, 4:5,
|
|
@@ -326,7 +387,12 @@ var IMAGE_MODELS = [
|
|
|
326
387
|
},
|
|
327
388
|
defaults: { size: "1K", aspectRatio: "1:1" },
|
|
328
389
|
usage: { ...IMAGE_USAGE },
|
|
329
|
-
pricingKind: "image_size"
|
|
390
|
+
pricingKind: "image_size",
|
|
391
|
+
display: {
|
|
392
|
+
provider: "google",
|
|
393
|
+
description: "Google Nano Banana image generation and editing served via Prodia; takes a prompt plus 1-3 input images and matches the first input's aspect ratio in roughly 8 seconds."
|
|
394
|
+
},
|
|
395
|
+
capabilities: { ...IMAGE_GENERATE_EDIT }
|
|
330
396
|
},
|
|
331
397
|
{
|
|
332
398
|
// WAN 2.7 takes `images` (up to 9) and a `size` enum whose exact values
|
|
@@ -347,7 +413,12 @@ var IMAGE_MODELS = [
|
|
|
347
413
|
},
|
|
348
414
|
defaults: { size: "1K", aspectRatio: "1:1" },
|
|
349
415
|
usage: { unit: "compute_seconds", modality: "IMAGE" },
|
|
350
|
-
pricingKind: "image_size"
|
|
416
|
+
pricingKind: "image_size",
|
|
417
|
+
display: {
|
|
418
|
+
provider: "alibaba",
|
|
419
|
+
description: "Alibaba Wan 2.7 Image Pro text-to-image and image-editing model; takes a prompt plus up to 9 reference images and generates up to 4K (4096x4096)."
|
|
420
|
+
},
|
|
421
|
+
capabilities: { ...IMAGE_GENERATE_EDIT }
|
|
351
422
|
},
|
|
352
423
|
{
|
|
353
424
|
// Qwen Image 2 Pro has aspect_ratio but no size input; resolution follows
|
|
@@ -369,7 +440,12 @@ var IMAGE_MODELS = [
|
|
|
369
440
|
},
|
|
370
441
|
defaults: { aspectRatio: "1:1" },
|
|
371
442
|
usage: { unit: "compute_seconds", modality: "IMAGE" },
|
|
372
|
-
pricingKind: "image_size"
|
|
443
|
+
pricingKind: "image_size",
|
|
444
|
+
display: {
|
|
445
|
+
provider: "alibaba",
|
|
446
|
+
description: "Alibaba Qwen Image 2 Pro unified text-to-image and editing model; takes a prompt plus an optional single reference image and generates native 2K output."
|
|
447
|
+
},
|
|
448
|
+
capabilities: { ...IMAGE_GENERATE_EDIT }
|
|
373
449
|
},
|
|
374
450
|
{
|
|
375
451
|
// Qwen Image Edit Plus takes aspect_ratio (or match_input_image) and
|
|
@@ -391,7 +467,12 @@ var IMAGE_MODELS = [
|
|
|
391
467
|
},
|
|
392
468
|
defaults: { outputFormat: "png" },
|
|
393
469
|
usage: { unit: "compute_seconds", modality: "IMAGE" },
|
|
394
|
-
pricingKind: "image_size"
|
|
470
|
+
pricingKind: "image_size",
|
|
471
|
+
display: {
|
|
472
|
+
provider: "alibaba",
|
|
473
|
+
description: "Alibaba Qwen Image Edit Plus with Lightning and a skin-retouching LoRA; takes one or more reference images plus an edit prompt and outputs webp, jpg, or png."
|
|
474
|
+
},
|
|
475
|
+
capabilities: { ...IMAGE_GENERATE_EDIT }
|
|
395
476
|
}
|
|
396
477
|
];
|
|
397
478
|
|
|
@@ -412,7 +493,11 @@ var OTHER_MODELS = [
|
|
|
412
493
|
},
|
|
413
494
|
defaults: {},
|
|
414
495
|
usage: { unit: "images", modality: "AUDIO" },
|
|
415
|
-
pricingKind: "flat"
|
|
496
|
+
pricingKind: "flat",
|
|
497
|
+
display: {
|
|
498
|
+
provider: "google",
|
|
499
|
+
description: "Google Lyria 3 Clip short music clips, loops, and previews; takes text and up to 10 image prompts and returns a fixed 30-second MP3 plus lyrics."
|
|
500
|
+
}
|
|
416
501
|
},
|
|
417
502
|
{
|
|
418
503
|
id: "lyria-3-pro-preview",
|
|
@@ -428,7 +513,11 @@ var OTHER_MODELS = [
|
|
|
428
513
|
},
|
|
429
514
|
defaults: {},
|
|
430
515
|
usage: { unit: "images", modality: "AUDIO" },
|
|
431
|
-
pricingKind: "flat"
|
|
516
|
+
pricingKind: "flat",
|
|
517
|
+
display: {
|
|
518
|
+
provider: "google",
|
|
519
|
+
description: "Google Lyria 3 Pro flagship music model for full-length songs with verses, choruses, and bridges; takes text and up to 10 image prompts and returns MP3 plus lyrics."
|
|
520
|
+
}
|
|
432
521
|
},
|
|
433
522
|
{
|
|
434
523
|
id: "google/lyria-2",
|
|
@@ -444,7 +533,11 @@ var OTHER_MODELS = [
|
|
|
444
533
|
},
|
|
445
534
|
defaults: {},
|
|
446
535
|
usage: { unit: "compute_seconds", modality: "AUDIO" },
|
|
447
|
-
pricingKind: "flat"
|
|
536
|
+
pricingKind: "flat",
|
|
537
|
+
display: {
|
|
538
|
+
provider: "google",
|
|
539
|
+
description: "Lyria 2 music generation on Replicate; produces 30 seconds of 48 kHz stereo audio from a text prompt."
|
|
540
|
+
}
|
|
448
541
|
},
|
|
449
542
|
{
|
|
450
543
|
id: "mmaudio",
|
|
@@ -461,7 +554,11 @@ var OTHER_MODELS = [
|
|
|
461
554
|
},
|
|
462
555
|
defaults: { durationSeconds: 8 },
|
|
463
556
|
usage: { unit: "compute_seconds", modality: "AUDIO" },
|
|
464
|
-
pricingKind: "flat"
|
|
557
|
+
pricingKind: "flat",
|
|
558
|
+
display: {
|
|
559
|
+
provider: "mmaudio",
|
|
560
|
+
description: "MMAudio V2 video-to-audio model on Replicate; takes a source video and prompt and synthesizes synchronized environmental, action, and speech-like audio."
|
|
561
|
+
}
|
|
465
562
|
},
|
|
466
563
|
{
|
|
467
564
|
id: "elevenlabs-music",
|
|
@@ -478,7 +575,11 @@ var OTHER_MODELS = [
|
|
|
478
575
|
defaults: { durationSeconds: 15, instrumental: true },
|
|
479
576
|
// Replicate's run() does not report predict_time; billed by generated length.
|
|
480
577
|
usage: { unit: "seconds", modality: "AUDIO" },
|
|
481
|
-
pricingKind: "flat"
|
|
578
|
+
pricingKind: "flat",
|
|
579
|
+
display: {
|
|
580
|
+
provider: "elevenlabs",
|
|
581
|
+
description: "ElevenLabs Music text-to-music on Replicate; generates full songs, instrumental or with vocals, up to 5 minutes long at up to 44.1 kHz."
|
|
582
|
+
}
|
|
482
583
|
},
|
|
483
584
|
{
|
|
484
585
|
id: "topaz",
|
|
@@ -495,7 +596,12 @@ var OTHER_MODELS = [
|
|
|
495
596
|
},
|
|
496
597
|
defaults: { scaleFactor: 2, outputFormat: "png" },
|
|
497
598
|
usage: { unit: "compute_seconds", modality: "IMAGE" },
|
|
498
|
-
pricingKind: "flat"
|
|
599
|
+
pricingKind: "flat",
|
|
600
|
+
display: {
|
|
601
|
+
provider: "topaz",
|
|
602
|
+
description: "Topaz Labs AI image upscaling on Replicate; takes one input image and upscales up to 6x with selectable enhancement models and optional face enhancement."
|
|
603
|
+
},
|
|
604
|
+
capabilities: { imageEdit: true }
|
|
499
605
|
},
|
|
500
606
|
{
|
|
501
607
|
id: "bg-remove",
|
|
@@ -512,7 +618,12 @@ var OTHER_MODELS = [
|
|
|
512
618
|
},
|
|
513
619
|
defaults: {},
|
|
514
620
|
usage: { unit: "images", modality: "IMAGE" },
|
|
515
|
-
pricingKind: "flat"
|
|
621
|
+
pricingKind: "flat",
|
|
622
|
+
display: {
|
|
623
|
+
provider: "prodia",
|
|
624
|
+
description: "Prodia background removal; takes one input image and returns a PNG cut-out of the subject plus an optional black-and-white mask."
|
|
625
|
+
},
|
|
626
|
+
capabilities: { imageEdit: true }
|
|
516
627
|
}
|
|
517
628
|
];
|
|
518
629
|
|
|
@@ -535,22 +646,112 @@ function text(id, label, providerModelId, extra) {
|
|
|
535
646
|
};
|
|
536
647
|
}
|
|
537
648
|
var TEXT_MODELS = [
|
|
538
|
-
text("gpt-4o", "GPT-4o", "gpt-4o"
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
649
|
+
text("gpt-4o", "GPT-4o", "gpt-4o", {
|
|
650
|
+
display: {
|
|
651
|
+
provider: "openai",
|
|
652
|
+
description: "OpenAI GPT-4o flagship multimodal model; text and image input, 128K-token context."
|
|
653
|
+
},
|
|
654
|
+
capabilities: { vision: true, tools: true, structuredOutput: true, contextWindow: 128e3 }
|
|
655
|
+
}),
|
|
656
|
+
text("gpt-4o-mini", "GPT-4o mini", "gpt-4o-mini", {
|
|
657
|
+
display: {
|
|
658
|
+
provider: "openai",
|
|
659
|
+
description: "OpenAI GPT-4o mini fast, low-cost multimodal model; text and image input, 128K-token context."
|
|
660
|
+
},
|
|
661
|
+
capabilities: { vision: true, tools: true, structuredOutput: true, contextWindow: 128e3 }
|
|
662
|
+
}),
|
|
663
|
+
text("gpt-5.1", "GPT-5.1", "gpt-5.1", {
|
|
664
|
+
display: {
|
|
665
|
+
provider: "openai",
|
|
666
|
+
description: "OpenAI GPT-5.1 reasoning model for coding and agentic tasks; text and image input, 400K-token context."
|
|
667
|
+
},
|
|
668
|
+
capabilities: { vision: true, tools: true, structuredOutput: true, contextWindow: 4e5 }
|
|
669
|
+
}),
|
|
670
|
+
text("gpt-5.2", "GPT-5.2", "gpt-5.2", {
|
|
671
|
+
display: {
|
|
672
|
+
provider: "openai",
|
|
673
|
+
description: "OpenAI GPT-5.2 reasoning model for complex professional work; text and image input, 400K-token context."
|
|
674
|
+
},
|
|
675
|
+
capabilities: { vision: true, tools: true, structuredOutput: true, contextWindow: 4e5 }
|
|
676
|
+
}),
|
|
677
|
+
// 1.05M-token context: https://platform.openai.com/docs/models/gpt-5.4
|
|
678
|
+
text("gpt-5.4", "GPT-5.4", "gpt-5.4", {
|
|
679
|
+
display: {
|
|
680
|
+
provider: "openai",
|
|
681
|
+
description: "OpenAI GPT-5.4 flagship reasoning model; text and image input, 1.05M-token context."
|
|
682
|
+
},
|
|
683
|
+
capabilities: {
|
|
684
|
+
vision: true,
|
|
685
|
+
tools: true,
|
|
686
|
+
structuredOutput: true,
|
|
687
|
+
contextWindow: 105e4
|
|
688
|
+
}
|
|
689
|
+
}),
|
|
543
690
|
// OpenAI never shipped gpt-5.1-mini or gpt-5.2-mini; callers that still send them get 5.4 mini.
|
|
544
691
|
text("gpt-5.4-mini", "GPT-5.4 mini", "gpt-5.4-mini", {
|
|
545
|
-
aliases: ["gpt-5.1-mini", "gpt-5.2-mini"]
|
|
692
|
+
aliases: ["gpt-5.1-mini", "gpt-5.2-mini"],
|
|
693
|
+
display: {
|
|
694
|
+
provider: "openai",
|
|
695
|
+
description: "OpenAI GPT-5.4 mini efficient reasoning model for high-volume workloads; text and image input, 400K-token context."
|
|
696
|
+
},
|
|
697
|
+
capabilities: { vision: true, tools: true, structuredOutput: true, contextWindow: 4e5 }
|
|
698
|
+
}),
|
|
699
|
+
text("gpt-5.5", "GPT-5.5", "gpt-5.5", {
|
|
700
|
+
display: {
|
|
701
|
+
provider: "openai",
|
|
702
|
+
description: "OpenAI GPT-5.5 flagship reasoning model for the most complex professional and coding work; text and image input, 1.05M-token context."
|
|
703
|
+
},
|
|
704
|
+
capabilities: {
|
|
705
|
+
vision: true,
|
|
706
|
+
tools: true,
|
|
707
|
+
structuredOutput: true,
|
|
708
|
+
contextWindow: 105e4
|
|
709
|
+
}
|
|
710
|
+
}),
|
|
711
|
+
text("gpt-5.6-luna", "GPT-5.6 Luna", "gpt-5.6-luna", {
|
|
712
|
+
display: {
|
|
713
|
+
provider: "openai",
|
|
714
|
+
description: "OpenAI GPT-5.6 Luna cost-optimized tier of the GPT-5.6 reasoning family; text and image input, 1.05M-token context."
|
|
715
|
+
},
|
|
716
|
+
capabilities: {
|
|
717
|
+
vision: true,
|
|
718
|
+
tools: true,
|
|
719
|
+
structuredOutput: true,
|
|
720
|
+
contextWindow: 105e4
|
|
721
|
+
}
|
|
722
|
+
}),
|
|
723
|
+
text("gpt-5.6-terra", "GPT-5.6 Terra", "gpt-5.6-terra", {
|
|
724
|
+
display: {
|
|
725
|
+
provider: "openai",
|
|
726
|
+
description: "OpenAI GPT-5.6 Terra balanced tier of the GPT-5.6 reasoning family; text and image input, 1.05M-token context."
|
|
727
|
+
},
|
|
728
|
+
capabilities: {
|
|
729
|
+
vision: true,
|
|
730
|
+
tools: true,
|
|
731
|
+
structuredOutput: true,
|
|
732
|
+
contextWindow: 105e4
|
|
733
|
+
}
|
|
734
|
+
}),
|
|
735
|
+
text("gpt-5.6-sol", "GPT-5.6 Sol", "gpt-5.6-sol", {
|
|
736
|
+
display: {
|
|
737
|
+
provider: "openai",
|
|
738
|
+
description: "OpenAI GPT-5.6 Sol flagship tier of the GPT-5.6 reasoning family; text and image input, 1.05M-token context."
|
|
739
|
+
},
|
|
740
|
+
capabilities: {
|
|
741
|
+
vision: true,
|
|
742
|
+
tools: true,
|
|
743
|
+
structuredOutput: true,
|
|
744
|
+
contextWindow: 105e4
|
|
745
|
+
}
|
|
546
746
|
}),
|
|
547
|
-
text("gpt-5.5", "GPT-5.5", "gpt-5.5"),
|
|
548
|
-
text("gpt-5.6-luna", "GPT-5.6 Luna", "gpt-5.6-luna"),
|
|
549
|
-
text("gpt-5.6-terra", "GPT-5.6 Terra", "gpt-5.6-terra"),
|
|
550
|
-
text("gpt-5.6-sol", "GPT-5.6 Sol", "gpt-5.6-sol"),
|
|
551
747
|
// Library key "claude-sonnet-4.5" maps to the SDK id "claude-sonnet-4-5".
|
|
552
748
|
text("claude-sonnet-4-5", "Claude Sonnet 4.5", "claude-sonnet-4-5", {
|
|
553
|
-
aliases: ["claude-sonnet-4.5", "claude-sonnet-4-5-20250929"]
|
|
749
|
+
aliases: ["claude-sonnet-4.5", "claude-sonnet-4-5-20250929"],
|
|
750
|
+
display: {
|
|
751
|
+
provider: "anthropic",
|
|
752
|
+
description: "Anthropic Claude Sonnet 4.5 (legacy) balanced model; text and image input, 200K-token context."
|
|
753
|
+
},
|
|
754
|
+
capabilities: { vision: true, tools: true, structuredOutput: true, contextWindow: 2e5 }
|
|
554
755
|
}),
|
|
555
756
|
// Anthropic retired the dated 4.0 ids; callers that still send them get 4.6.
|
|
556
757
|
text("claude-sonnet-4-6", "Claude Sonnet 4.6", "claude-sonnet-4-6", {
|
|
@@ -559,42 +760,280 @@ var TEXT_MODELS = [
|
|
|
559
760
|
"claude-sonnet-4",
|
|
560
761
|
"claude-sonnet-4.0",
|
|
561
762
|
"claude-sonnet-4-20250514"
|
|
562
|
-
]
|
|
763
|
+
],
|
|
764
|
+
display: {
|
|
765
|
+
provider: "anthropic",
|
|
766
|
+
description: "Anthropic Claude Sonnet 4.6 (legacy) balanced model; text and image input, 1M-token context."
|
|
767
|
+
},
|
|
768
|
+
capabilities: {
|
|
769
|
+
vision: true,
|
|
770
|
+
tools: true,
|
|
771
|
+
structuredOutput: true,
|
|
772
|
+
contextWindow: 1e6
|
|
773
|
+
}
|
|
774
|
+
}),
|
|
775
|
+
text("claude-sonnet-5", "Claude Sonnet 5", "claude-sonnet-5", {
|
|
776
|
+
display: {
|
|
777
|
+
provider: "anthropic",
|
|
778
|
+
description: "Anthropic Claude Sonnet 5 current balanced model; text and image input, 1M-token context."
|
|
779
|
+
},
|
|
780
|
+
capabilities: {
|
|
781
|
+
vision: true,
|
|
782
|
+
tools: true,
|
|
783
|
+
structuredOutput: true,
|
|
784
|
+
contextWindow: 1e6
|
|
785
|
+
}
|
|
563
786
|
}),
|
|
564
|
-
text("claude-sonnet-5", "Claude Sonnet 5", "claude-sonnet-5"),
|
|
565
787
|
text("claude-opus-4-8", "Claude Opus 4.8", "claude-opus-4-8", {
|
|
566
|
-
aliases: ["claude-opus-4.8", "claude-opus-4", "claude-opus-4.0", "claude-opus-4-20250514"]
|
|
788
|
+
aliases: ["claude-opus-4.8", "claude-opus-4", "claude-opus-4.0", "claude-opus-4-20250514"],
|
|
789
|
+
display: {
|
|
790
|
+
provider: "anthropic",
|
|
791
|
+
description: "Anthropic Claude Opus 4.8 (legacy) frontier model; text and image input, 1M-token context."
|
|
792
|
+
},
|
|
793
|
+
capabilities: {
|
|
794
|
+
vision: true,
|
|
795
|
+
tools: true,
|
|
796
|
+
structuredOutput: true,
|
|
797
|
+
contextWindow: 1e6
|
|
798
|
+
}
|
|
567
799
|
}),
|
|
568
800
|
text("claude-haiku-4-5", "Claude Haiku 4.5", "claude-haiku-4-5", {
|
|
569
|
-
aliases: ["claude-haiku-4.5", "claude-haiku-4-5-20251001", "claude-haiku-4"]
|
|
801
|
+
aliases: ["claude-haiku-4.5", "claude-haiku-4-5-20251001", "claude-haiku-4"],
|
|
802
|
+
display: {
|
|
803
|
+
provider: "anthropic",
|
|
804
|
+
description: "Anthropic Claude Haiku 4.5 fast model with near-frontier intelligence; text and image input, 200K-token context."
|
|
805
|
+
},
|
|
806
|
+
capabilities: { vision: true, tools: true, structuredOutput: true, contextWindow: 2e5 }
|
|
570
807
|
}),
|
|
571
808
|
text("claude-opus-5", "Claude Opus 5", "claude-opus-5", {
|
|
572
|
-
aliases: ["claude-opus-5.0"]
|
|
809
|
+
aliases: ["claude-opus-5.0"],
|
|
810
|
+
display: {
|
|
811
|
+
provider: "anthropic",
|
|
812
|
+
description: "Anthropic Claude Opus 5 current frontier model for agentic coding and enterprise work; text and image input, 1M-token context."
|
|
813
|
+
},
|
|
814
|
+
capabilities: {
|
|
815
|
+
vision: true,
|
|
816
|
+
tools: true,
|
|
817
|
+
structuredOutput: true,
|
|
818
|
+
contextWindow: 1e6
|
|
819
|
+
}
|
|
820
|
+
}),
|
|
821
|
+
text("claude-fable-5", "Claude Fable 5", "claude-fable-5", {
|
|
822
|
+
display: {
|
|
823
|
+
provider: "anthropic",
|
|
824
|
+
description: "Anthropic Claude Fable 5 (legacy) model for demanding reasoning and long-horizon agentic work; text and image input, 1M-token context."
|
|
825
|
+
},
|
|
826
|
+
capabilities: {
|
|
827
|
+
vision: true,
|
|
828
|
+
tools: true,
|
|
829
|
+
structuredOutput: true,
|
|
830
|
+
contextWindow: 1e6
|
|
831
|
+
}
|
|
832
|
+
}),
|
|
833
|
+
text("gemini-2.5-flash", "Gemini 2.5 Flash", "gemini-2.5-flash", {
|
|
834
|
+
display: {
|
|
835
|
+
provider: "google",
|
|
836
|
+
description: "Google Gemini 2.5 Flash low-latency multimodal model for high-volume reasoning over text, images, video, and audio; 1M-token context."
|
|
837
|
+
},
|
|
838
|
+
capabilities: {
|
|
839
|
+
vision: true,
|
|
840
|
+
tools: true,
|
|
841
|
+
structuredOutput: true,
|
|
842
|
+
contextWindow: 1048576
|
|
843
|
+
}
|
|
844
|
+
}),
|
|
845
|
+
text("gemini-2.5-pro", "Gemini 2.5 Pro", "gemini-2.5-pro", {
|
|
846
|
+
display: {
|
|
847
|
+
provider: "google",
|
|
848
|
+
description: "Google Gemini 2.5 Pro thinking model for complex reasoning over code, math, and documents; text, image, video, audio, and PDF input, 1M-token context."
|
|
849
|
+
},
|
|
850
|
+
capabilities: {
|
|
851
|
+
vision: true,
|
|
852
|
+
tools: true,
|
|
853
|
+
structuredOutput: true,
|
|
854
|
+
contextWindow: 1048576
|
|
855
|
+
}
|
|
856
|
+
}),
|
|
857
|
+
text("gemini-3.1-pro-preview", "Gemini 3.1 Pro (preview)", "gemini-3.1-pro-preview", {
|
|
858
|
+
display: {
|
|
859
|
+
provider: "google",
|
|
860
|
+
description: "Google Gemini 3.1 Pro preview reasoning model for software engineering, tool use, and reliable agentic workflows; 1M-token context."
|
|
861
|
+
},
|
|
862
|
+
capabilities: {
|
|
863
|
+
vision: true,
|
|
864
|
+
tools: true,
|
|
865
|
+
structuredOutput: true,
|
|
866
|
+
contextWindow: 1048576
|
|
867
|
+
}
|
|
868
|
+
}),
|
|
869
|
+
text("gemini-3.5-flash", "Gemini 3.5 Flash", "gemini-3.5-flash", {
|
|
870
|
+
display: {
|
|
871
|
+
provider: "google",
|
|
872
|
+
description: "Google Gemini 3.5 Flash high-throughput model for frontier-level agentic tasks; text, image, video, audio, and PDF input, 1M-token context."
|
|
873
|
+
},
|
|
874
|
+
capabilities: {
|
|
875
|
+
vision: true,
|
|
876
|
+
tools: true,
|
|
877
|
+
structuredOutput: true,
|
|
878
|
+
contextWindow: 1048576
|
|
879
|
+
}
|
|
880
|
+
}),
|
|
881
|
+
text("gemini-3.6-flash", "Gemini 3.6 Flash", "gemini-3.6-flash", {
|
|
882
|
+
display: {
|
|
883
|
+
provider: "google",
|
|
884
|
+
description: "Google Gemini 3.6 Flash general-purpose multimodal agentic model balancing speed and capability; 1M-token context."
|
|
885
|
+
},
|
|
886
|
+
capabilities: {
|
|
887
|
+
vision: true,
|
|
888
|
+
tools: true,
|
|
889
|
+
structuredOutput: true,
|
|
890
|
+
contextWindow: 1048576
|
|
891
|
+
}
|
|
892
|
+
}),
|
|
893
|
+
text("gemini-3.7-flash", "Gemini 3.7 Flash", "gemini-3.7-flash", {
|
|
894
|
+
display: {
|
|
895
|
+
provider: "google",
|
|
896
|
+
description: "Google Gemini 3.7 Flash natively multimodal reasoning model for coding, agentic workflows, and multi-step execution; 1M-token context."
|
|
897
|
+
},
|
|
898
|
+
capabilities: {
|
|
899
|
+
vision: true,
|
|
900
|
+
tools: true,
|
|
901
|
+
structuredOutput: true,
|
|
902
|
+
contextWindow: 1048576
|
|
903
|
+
}
|
|
904
|
+
}),
|
|
905
|
+
text("gemini-3.8-flash", "Gemini 3.8 Flash", "gemini-3.8-flash", {
|
|
906
|
+
display: {
|
|
907
|
+
provider: "google",
|
|
908
|
+
description: "Google Gemini 3.8 Flash frontier model for long-horizon software engineering, autonomous agents, and enterprise workflows; 1M-token context."
|
|
909
|
+
},
|
|
910
|
+
capabilities: {
|
|
911
|
+
vision: true,
|
|
912
|
+
tools: true,
|
|
913
|
+
structuredOutput: true,
|
|
914
|
+
contextWindow: 1048576
|
|
915
|
+
}
|
|
573
916
|
}),
|
|
574
|
-
text("claude-fable-5", "Claude Fable 5", "claude-fable-5"),
|
|
575
|
-
text("gemini-2.5-flash", "Gemini 2.5 Flash", "gemini-2.5-flash"),
|
|
576
|
-
text("gemini-2.5-pro", "Gemini 2.5 Pro", "gemini-2.5-pro"),
|
|
577
|
-
text("gemini-3.1-pro-preview", "Gemini 3.1 Pro (preview)", "gemini-3.1-pro-preview"),
|
|
578
|
-
text("gemini-3.5-flash", "Gemini 3.5 Flash", "gemini-3.5-flash"),
|
|
579
|
-
text("gemini-3.6-flash", "Gemini 3.6 Flash", "gemini-3.6-flash"),
|
|
580
|
-
text("gemini-3.7-flash", "Gemini 3.7 Flash", "gemini-3.7-flash"),
|
|
581
|
-
text("gemini-3.8-flash", "Gemini 3.8 Flash", "gemini-3.8-flash"),
|
|
582
917
|
// Renamed to gemini-3.6-flash in vibe-shared model-migration.ts.
|
|
583
918
|
text("gemini-3-flash-preview", "Gemini 3 Flash (preview)", "gemini-3-flash-preview", {
|
|
584
919
|
lifecycle: "deprecated",
|
|
585
920
|
replacedBy: "gemini-3.6-flash"
|
|
586
921
|
}),
|
|
587
|
-
text("gemini-3.1-flash-lite", "Gemini 3.1 Flash Lite", "gemini-3.1-flash-lite"
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
922
|
+
text("gemini-3.1-flash-lite", "Gemini 3.1 Flash Lite", "gemini-3.1-flash-lite", {
|
|
923
|
+
display: {
|
|
924
|
+
provider: "google",
|
|
925
|
+
description: "Google Gemini 3.1 Flash-Lite low-latency multimodal model for high-volume agentic, translation, and data-extraction tasks; 1M-token context."
|
|
926
|
+
},
|
|
927
|
+
capabilities: {
|
|
928
|
+
vision: true,
|
|
929
|
+
tools: true,
|
|
930
|
+
structuredOutput: true,
|
|
931
|
+
contextWindow: 1048576
|
|
932
|
+
}
|
|
933
|
+
}),
|
|
934
|
+
text("sonar", "Sonar", "sonar", {
|
|
935
|
+
display: {
|
|
936
|
+
provider: "perplexity",
|
|
937
|
+
description: "Perplexity Sonar lightweight web-grounded search model returning cited answers; 128K-token context."
|
|
938
|
+
},
|
|
939
|
+
capabilities: {
|
|
940
|
+
vision: true,
|
|
941
|
+
tools: false,
|
|
942
|
+
structuredOutput: true,
|
|
943
|
+
contextWindow: 128e3
|
|
944
|
+
}
|
|
945
|
+
}),
|
|
946
|
+
text("sonar-pro", "Sonar Pro", "sonar-pro", {
|
|
947
|
+
display: {
|
|
948
|
+
provider: "perplexity",
|
|
949
|
+
description: "Perplexity Sonar Pro advanced web-grounded search model for complex multi-step queries; 200K-token context."
|
|
950
|
+
},
|
|
951
|
+
capabilities: {
|
|
952
|
+
vision: true,
|
|
953
|
+
tools: false,
|
|
954
|
+
structuredOutput: true,
|
|
955
|
+
contextWindow: 2e5
|
|
956
|
+
}
|
|
957
|
+
}),
|
|
958
|
+
text("sonar-reasoning-pro", "Sonar Reasoning Pro", "sonar-reasoning-pro", {
|
|
959
|
+
display: {
|
|
960
|
+
provider: "perplexity",
|
|
961
|
+
description: "Perplexity Sonar Reasoning Pro chain-of-thought web-grounded search model for complex problem-solving; 128K-token context."
|
|
962
|
+
},
|
|
963
|
+
capabilities: {
|
|
964
|
+
vision: true,
|
|
965
|
+
tools: false,
|
|
966
|
+
structuredOutput: true,
|
|
967
|
+
contextWindow: 128e3
|
|
968
|
+
}
|
|
969
|
+
}),
|
|
970
|
+
text("deepseek-v4-flash", "DeepSeek V4 Flash", "deepseek-v4-flash", {
|
|
971
|
+
display: {
|
|
972
|
+
provider: "deepseek",
|
|
973
|
+
description: "DeepSeek V4 Flash thinking/non-thinking model with vision, tool calls, and JSON output; 1M-token context and up to 384K output tokens."
|
|
974
|
+
},
|
|
975
|
+
capabilities: {
|
|
976
|
+
vision: true,
|
|
977
|
+
tools: true,
|
|
978
|
+
structuredOutput: true,
|
|
979
|
+
contextWindow: 1e6
|
|
980
|
+
}
|
|
981
|
+
}),
|
|
982
|
+
text("deepseek-v4-pro", "DeepSeek V4 Pro", "deepseek-v4-pro", {
|
|
983
|
+
display: {
|
|
984
|
+
provider: "deepseek",
|
|
985
|
+
description: "DeepSeek V4 Pro thinking/non-thinking text model with tool calls and JSON output (no vision); 1M-token context and up to 384K output tokens."
|
|
986
|
+
},
|
|
987
|
+
capabilities: {
|
|
988
|
+
vision: false,
|
|
989
|
+
tools: true,
|
|
990
|
+
structuredOutput: true,
|
|
991
|
+
contextWindow: 1e6
|
|
992
|
+
}
|
|
993
|
+
}),
|
|
994
|
+
// 1M-token context: https://docs.x.ai/docs/models/grok-4.3
|
|
995
|
+
text("grok-4.3", "Grok 4.3", "grok-4.3", {
|
|
996
|
+
display: {
|
|
997
|
+
provider: "xai",
|
|
998
|
+
description: "xAI Grok 4.3 reasoning model with tool calling and structured outputs; text and image input, 1M-token context."
|
|
999
|
+
},
|
|
1000
|
+
capabilities: {
|
|
1001
|
+
vision: true,
|
|
1002
|
+
tools: true,
|
|
1003
|
+
structuredOutput: true,
|
|
1004
|
+
contextWindow: 1e6
|
|
1005
|
+
}
|
|
1006
|
+
}),
|
|
1007
|
+
// Moonshot retired kimi-k2.5 on 2026-08-31 and no longer publishes its specs.
|
|
1008
|
+
text("kimi-k2.5", "Kimi K2.5", "kimi-k2.5", {
|
|
1009
|
+
display: {
|
|
1010
|
+
provider: "moonshot",
|
|
1011
|
+
description: "Moonshot Kimi K2.5; the provider retired the model on 2026-08-31 and calls now return a model-not-found error."
|
|
1012
|
+
},
|
|
1013
|
+
capabilities: {}
|
|
1014
|
+
}),
|
|
1015
|
+
text("kimi-k3", "Kimi K3", "kimi-k3", {
|
|
1016
|
+
display: {
|
|
1017
|
+
provider: "moonshot",
|
|
1018
|
+
description: "Moonshot Kimi K3 flagship model with native visual understanding and always-on thinking; text, image, and video input, 1M-token context."
|
|
1019
|
+
},
|
|
1020
|
+
capabilities: {
|
|
1021
|
+
vision: true,
|
|
1022
|
+
tools: true,
|
|
1023
|
+
structuredOutput: true,
|
|
1024
|
+
contextWindow: 1e6
|
|
1025
|
+
}
|
|
1026
|
+
}),
|
|
596
1027
|
// Cowork calls the provider "MiniMax-M3"; the pricing key is lowercase.
|
|
597
|
-
|
|
1028
|
+
// 1M-token context: https://platform.minimax.io/docs/api-reference/text-openai-api
|
|
1029
|
+
text("minimax-m3", "MiniMax M3", "MiniMax-M3", {
|
|
1030
|
+
aliases: ["MiniMax-M3"],
|
|
1031
|
+
display: {
|
|
1032
|
+
provider: "minimax",
|
|
1033
|
+
description: "MiniMax M3 frontier multimodal model for agentic reasoning, tool use, and coding; text, image, and video input, 1M-token context."
|
|
1034
|
+
},
|
|
1035
|
+
capabilities: { vision: true, tools: true, contextWindow: 1e6 }
|
|
1036
|
+
})
|
|
598
1037
|
];
|
|
599
1038
|
|
|
600
1039
|
// src/catalog/video.ts
|
|
@@ -606,6 +1045,8 @@ var GROK_RATIOS = ["1:1", "16:9", "9:16", "4:3", "3:4", "3:2", "2:3"];
|
|
|
606
1045
|
var H3_RATIOS = ["21:9", "16:9", "4:3", "1:1", "3:4", "9:16"];
|
|
607
1046
|
var H3_REFERENCE_RATIOS = ["adaptive", ...H3_RATIOS];
|
|
608
1047
|
var NEGATIVE_PROMPT = "blur, distort, and low quality";
|
|
1048
|
+
var FRAMES_EXCLUDE_REFERENCES = { framesExcludeReferences: true };
|
|
1049
|
+
var GOOGLE_LOGO = "https://d31vvfpk2ppdyq.cloudfront.net/assets/image/192485d2-a76a-4657-9c06-930b2c70badd_compressed.png";
|
|
609
1050
|
var VIDEO_MODELS = [
|
|
610
1051
|
{
|
|
611
1052
|
id: "veo-3.1",
|
|
@@ -629,7 +1070,13 @@ var VIDEO_MODELS = [
|
|
|
629
1070
|
},
|
|
630
1071
|
defaults: { durationSeconds: 8, resolution: "720p", aspectRatio: "16:9" },
|
|
631
1072
|
usage: { ...VIDEO_USAGE },
|
|
632
|
-
pricingKind: "video_per_second"
|
|
1073
|
+
pricingKind: "video_per_second",
|
|
1074
|
+
display: {
|
|
1075
|
+
provider: "google",
|
|
1076
|
+
description: "Google's highest-quality video generation model. Supports up to 4K resolution and 8-second clips with reference image conditioning.",
|
|
1077
|
+
logo: GOOGLE_LOGO
|
|
1078
|
+
},
|
|
1079
|
+
capabilities: { ...FRAMES_EXCLUDE_REFERENCES }
|
|
633
1080
|
},
|
|
634
1081
|
{
|
|
635
1082
|
id: "veo-3.1-fast",
|
|
@@ -652,7 +1099,12 @@ var VIDEO_MODELS = [
|
|
|
652
1099
|
},
|
|
653
1100
|
defaults: { durationSeconds: 8, resolution: "720p", aspectRatio: "16:9" },
|
|
654
1101
|
usage: { ...VIDEO_USAGE },
|
|
655
|
-
pricingKind: "video_per_second"
|
|
1102
|
+
pricingKind: "video_per_second",
|
|
1103
|
+
display: {
|
|
1104
|
+
provider: "google",
|
|
1105
|
+
description: "Faster variant of Google Veo 3.1; text- and image-to-video with natively generated audio at 4 or 8 seconds."
|
|
1106
|
+
},
|
|
1107
|
+
capabilities: { ...FRAMES_EXCLUDE_REFERENCES }
|
|
656
1108
|
},
|
|
657
1109
|
{
|
|
658
1110
|
id: "veo-3.1-lite",
|
|
@@ -675,7 +1127,12 @@ var VIDEO_MODELS = [
|
|
|
675
1127
|
},
|
|
676
1128
|
defaults: { durationSeconds: 8, resolution: "720p", aspectRatio: "16:9" },
|
|
677
1129
|
usage: { ...VIDEO_USAGE },
|
|
678
|
-
pricingKind: "video_per_second"
|
|
1130
|
+
pricingKind: "video_per_second",
|
|
1131
|
+
display: {
|
|
1132
|
+
provider: "google",
|
|
1133
|
+
description: "Efficiency-focused Google Veo 3.1 Lite for high-volume video generation and editing; text and image input, with no 4K output or video extension."
|
|
1134
|
+
},
|
|
1135
|
+
capabilities: { ...FRAMES_EXCLUDE_REFERENCES }
|
|
679
1136
|
},
|
|
680
1137
|
{
|
|
681
1138
|
id: "gemini-omni-flash",
|
|
@@ -702,7 +1159,13 @@ var VIDEO_MODELS = [
|
|
|
702
1159
|
},
|
|
703
1160
|
defaults: {},
|
|
704
1161
|
usage: { ...VIDEO_USAGE },
|
|
705
|
-
pricingKind: "video_per_second"
|
|
1162
|
+
pricingKind: "video_per_second",
|
|
1163
|
+
display: {
|
|
1164
|
+
provider: "google",
|
|
1165
|
+
description: "Google's conversational video model with native audio, human support, and natural language editing. Aspect ratio only \u2014 resolution and duration are model-determined.",
|
|
1166
|
+
logo: GOOGLE_LOGO
|
|
1167
|
+
},
|
|
1168
|
+
capabilities: { acceptsSourceVideo: true }
|
|
706
1169
|
},
|
|
707
1170
|
{
|
|
708
1171
|
id: "gemini-omni-1.1-flash",
|
|
@@ -721,7 +1184,12 @@ var VIDEO_MODELS = [
|
|
|
721
1184
|
},
|
|
722
1185
|
defaults: {},
|
|
723
1186
|
usage: { ...VIDEO_USAGE },
|
|
724
|
-
pricingKind: "video_per_second"
|
|
1187
|
+
pricingKind: "video_per_second",
|
|
1188
|
+
display: {
|
|
1189
|
+
provider: "google",
|
|
1190
|
+
description: "Google Gemini Omni Flash 1.1 conversational video generation and editing; text, image, and up to 10-second video input, 3-10 second output at up to 4K and 24 FPS."
|
|
1191
|
+
},
|
|
1192
|
+
capabilities: { acceptsSourceVideo: true }
|
|
725
1193
|
},
|
|
726
1194
|
{
|
|
727
1195
|
// vibe-triggers and Space Builder drop the ratio when a frame is wired; Cowork always sends it.
|
|
@@ -747,7 +1215,13 @@ var VIDEO_MODELS = [
|
|
|
747
1215
|
generateAudio: true
|
|
748
1216
|
},
|
|
749
1217
|
usage: { ...VIDEO_USAGE },
|
|
750
|
-
pricingKind: "video_per_second"
|
|
1218
|
+
pricingKind: "video_per_second",
|
|
1219
|
+
display: {
|
|
1220
|
+
provider: "bytedance",
|
|
1221
|
+
description: "High-quality AI video generation with reference image conditioning. Supports 4-15 second clips with human preprocessing.",
|
|
1222
|
+
logo: "https://d31vvfpk2ppdyq.cloudfront.net/assets/image/3bba5d81-4e57-4e71-911b-cdfa05acca2c_compressed.png"
|
|
1223
|
+
},
|
|
1224
|
+
capabilities: { acceptsSourceVideo: true, ...FRAMES_EXCLUDE_REFERENCES }
|
|
751
1225
|
},
|
|
752
1226
|
{
|
|
753
1227
|
id: "seedance-2.0-fast",
|
|
@@ -772,7 +1246,12 @@ var VIDEO_MODELS = [
|
|
|
772
1246
|
generateAudio: true
|
|
773
1247
|
},
|
|
774
1248
|
usage: { ...VIDEO_USAGE },
|
|
775
|
-
pricingKind: "video_per_second"
|
|
1249
|
+
pricingKind: "video_per_second",
|
|
1250
|
+
display: {
|
|
1251
|
+
provider: "bytedance",
|
|
1252
|
+
description: "Speed- and cost-optimized ByteDance Seedance 2.0 Fast; text plus image, video, and audio references to generate or edit 4-15 second clips."
|
|
1253
|
+
},
|
|
1254
|
+
capabilities: { acceptsSourceVideo: true, ...FRAMES_EXCLUDE_REFERENCES }
|
|
776
1255
|
},
|
|
777
1256
|
{
|
|
778
1257
|
// generateAudio defaults to false here (trigger-workflows); Space Builder defaults it to true.
|
|
@@ -798,7 +1277,12 @@ var VIDEO_MODELS = [
|
|
|
798
1277
|
generateAudio: false
|
|
799
1278
|
},
|
|
800
1279
|
usage: { ...VIDEO_USAGE },
|
|
801
|
-
pricingKind: "video_per_second"
|
|
1280
|
+
pricingKind: "video_per_second",
|
|
1281
|
+
display: {
|
|
1282
|
+
provider: "bytedance",
|
|
1283
|
+
description: "ByteDance Seedance 2.5 for long-form storytelling and omni-reference generation/editing; up to 50 reference assets and 4-30 second clips at up to 1080p."
|
|
1284
|
+
},
|
|
1285
|
+
capabilities: { acceptsSourceVideo: true, ...FRAMES_EXCLUDE_REFERENCES }
|
|
802
1286
|
},
|
|
803
1287
|
{
|
|
804
1288
|
// Cowork allows 7 reference images and durations 4/6/8/10; Space Builder allows 5 and 1-15s.
|
|
@@ -819,7 +1303,13 @@ var VIDEO_MODELS = [
|
|
|
819
1303
|
// No resolution default: xAI picks its own unless the caller asks.
|
|
820
1304
|
defaults: { durationSeconds: 8, aspectRatio: "16:9" },
|
|
821
1305
|
usage: { unit: "reported_cost_usd", modality: "VIDEO" },
|
|
822
|
-
pricingKind: "video_per_second"
|
|
1306
|
+
pricingKind: "video_per_second",
|
|
1307
|
+
display: {
|
|
1308
|
+
provider: "xai",
|
|
1309
|
+
description: "xAI's reference-to-video model. Generates short clips conditioned on up to 7 reference images with flexible aspect ratios.",
|
|
1310
|
+
logo: "https://d31vvfpk2ppdyq.cloudfront.net/assets/image/858b7fcc-9bd5-411d-aea1-a7b35ecfffab_compressed.png"
|
|
1311
|
+
},
|
|
1312
|
+
capabilities: { ...FRAMES_EXCLUDE_REFERENCES }
|
|
823
1313
|
},
|
|
824
1314
|
{
|
|
825
1315
|
id: "kling-2.5",
|
|
@@ -842,7 +1332,12 @@ var VIDEO_MODELS = [
|
|
|
842
1332
|
negativePrompt: NEGATIVE_PROMPT
|
|
843
1333
|
},
|
|
844
1334
|
usage: { ...VIDEO_USAGE },
|
|
845
|
-
pricingKind: "video_per_second"
|
|
1335
|
+
pricingKind: "video_per_second",
|
|
1336
|
+
display: {
|
|
1337
|
+
provider: "kuaishou",
|
|
1338
|
+
description: "Kuaishou Kling 2.5 Turbo Pro image-to-video; animates a single input image from a text prompt with an optional end image, 5- or 10-second clips."
|
|
1339
|
+
},
|
|
1340
|
+
capabilities: { ...FRAMES_EXCLUDE_REFERENCES }
|
|
846
1341
|
},
|
|
847
1342
|
{
|
|
848
1343
|
// trigger-workflows validates 5/10 only; Space Builder allows 3-15s (Kling30Input).
|
|
@@ -866,7 +1361,12 @@ var VIDEO_MODELS = [
|
|
|
866
1361
|
negativePrompt: NEGATIVE_PROMPT
|
|
867
1362
|
},
|
|
868
1363
|
usage: { ...VIDEO_USAGE },
|
|
869
|
-
pricingKind: "video_per_second"
|
|
1364
|
+
pricingKind: "video_per_second",
|
|
1365
|
+
display: {
|
|
1366
|
+
provider: "kuaishou",
|
|
1367
|
+
description: "Kuaishou Kling 3.0 Pro image-to-video; a required start image plus a text prompt (or multi-shot prompts) with optional end image and native audio, 3-15 second clips."
|
|
1368
|
+
},
|
|
1369
|
+
capabilities: { ...FRAMES_EXCLUDE_REFERENCES }
|
|
870
1370
|
},
|
|
871
1371
|
{
|
|
872
1372
|
// mode standard/pro selects 720p/1080p; the endpoint takes no separate resolution.
|
|
@@ -897,7 +1397,12 @@ var VIDEO_MODELS = [
|
|
|
897
1397
|
},
|
|
898
1398
|
defaults: { durationSeconds: 5, aspectRatio: "16:9", generateAudio: false, mode: "pro" },
|
|
899
1399
|
usage: { unit: "compute_seconds", modality: "VIDEO" },
|
|
900
|
-
pricingKind: "video_per_second"
|
|
1400
|
+
pricingKind: "video_per_second",
|
|
1401
|
+
display: {
|
|
1402
|
+
provider: "kuaishou",
|
|
1403
|
+
description: "Kuaishou Kling Video 3.0 Omni unified generation and editing from text, start/end images, up to 7 reference images, and reference video; up to 15 seconds at up to 1080p."
|
|
1404
|
+
},
|
|
1405
|
+
capabilities: {}
|
|
901
1406
|
},
|
|
902
1407
|
{
|
|
903
1408
|
id: "minimax-h3",
|
|
@@ -920,7 +1425,12 @@ var VIDEO_MODELS = [
|
|
|
920
1425
|
promptExpansion: "balanced"
|
|
921
1426
|
},
|
|
922
1427
|
usage: { ...VIDEO_USAGE },
|
|
923
|
-
pricingKind: "video_per_second"
|
|
1428
|
+
pricingKind: "video_per_second",
|
|
1429
|
+
display: {
|
|
1430
|
+
provider: "minimax",
|
|
1431
|
+
description: "MiniMax H3 multimodal video model for text-to-video, image-to-video (first/last frame), and reference-to-video with native audio, up to 2K."
|
|
1432
|
+
},
|
|
1433
|
+
capabilities: { ...FRAMES_EXCLUDE_REFERENCES }
|
|
924
1434
|
},
|
|
925
1435
|
{
|
|
926
1436
|
id: "minimax-h3-max",
|
|
@@ -943,7 +1453,12 @@ var VIDEO_MODELS = [
|
|
|
943
1453
|
promptExpansion: "balanced"
|
|
944
1454
|
},
|
|
945
1455
|
usage: { ...VIDEO_USAGE },
|
|
946
|
-
pricingKind: "video_per_second"
|
|
1456
|
+
pricingKind: "video_per_second",
|
|
1457
|
+
display: {
|
|
1458
|
+
provider: "minimax",
|
|
1459
|
+
description: "High-speed MiniMax H3 Max variant for text-to-video and image-to-video (first/last frame) only, up to 768p."
|
|
1460
|
+
},
|
|
1461
|
+
capabilities: { ...FRAMES_EXCLUDE_REFERENCES }
|
|
947
1462
|
},
|
|
948
1463
|
{
|
|
949
1464
|
id: "minimax-h3-reference",
|
|
@@ -967,7 +1482,12 @@ var VIDEO_MODELS = [
|
|
|
967
1482
|
promptExpansion: "balanced"
|
|
968
1483
|
},
|
|
969
1484
|
usage: { ...VIDEO_USAGE },
|
|
970
|
-
pricingKind: "video_per_second"
|
|
1485
|
+
pricingKind: "video_per_second",
|
|
1486
|
+
display: {
|
|
1487
|
+
provider: "minimax",
|
|
1488
|
+
description: "MiniMax H3 reference-to-video mode guided by up to 9 reference images, 3 reference videos, and 3 audio clips; reference and image-to-video inputs cannot be mixed."
|
|
1489
|
+
},
|
|
1490
|
+
capabilities: {}
|
|
971
1491
|
},
|
|
972
1492
|
{
|
|
973
1493
|
id: "minimax-h3-max-reference",
|
|
@@ -991,7 +1511,12 @@ var VIDEO_MODELS = [
|
|
|
991
1511
|
promptExpansion: "balanced"
|
|
992
1512
|
},
|
|
993
1513
|
usage: { ...VIDEO_USAGE },
|
|
994
|
-
pricingKind: "video_per_second"
|
|
1514
|
+
pricingKind: "video_per_second",
|
|
1515
|
+
display: {
|
|
1516
|
+
provider: "minimax",
|
|
1517
|
+
description: "MiniMax H3 Max reference-to-video on fal; conditions on reference images, videos, and audio. MiniMax's own docs do not list a reference mode for H3 Max."
|
|
1518
|
+
},
|
|
1519
|
+
capabilities: {}
|
|
995
1520
|
},
|
|
996
1521
|
{
|
|
997
1522
|
// Duration 3-10s per trigger-workflows mapDuration; the endpoint takes no resolution.
|
|
@@ -1010,7 +1535,12 @@ var VIDEO_MODELS = [
|
|
|
1010
1535
|
},
|
|
1011
1536
|
defaults: { durationSeconds: 5, aspectRatio: "16:9" },
|
|
1012
1537
|
usage: { ...VIDEO_USAGE },
|
|
1013
|
-
pricingKind: "video_per_second"
|
|
1538
|
+
pricingKind: "video_per_second",
|
|
1539
|
+
display: {
|
|
1540
|
+
provider: "kuaishou",
|
|
1541
|
+
description: "Kuaishou Kling O1 Reference Video-to-Video; a prompt plus a 3-10 second reference video (optional reference images) generates 3-10 second clips preserving motion and camera language."
|
|
1542
|
+
},
|
|
1543
|
+
capabilities: { acceptsSourceVideo: true }
|
|
1014
1544
|
},
|
|
1015
1545
|
{
|
|
1016
1546
|
id: "hailuo-02",
|
|
@@ -1027,7 +1557,12 @@ var VIDEO_MODELS = [
|
|
|
1027
1557
|
},
|
|
1028
1558
|
defaults: { durationSeconds: 6, resolution: "768p" },
|
|
1029
1559
|
usage: { unit: "compute_seconds", modality: "VIDEO" },
|
|
1030
|
-
pricingKind: "video_per_second"
|
|
1560
|
+
pricingKind: "video_per_second",
|
|
1561
|
+
display: {
|
|
1562
|
+
provider: "minimax",
|
|
1563
|
+
description: "MiniMax Hailuo 02 text-to-video and image-to-video model with realistic physics and strong prompt following; outputs 768p at 6 or 10 seconds."
|
|
1564
|
+
},
|
|
1565
|
+
capabilities: {}
|
|
1031
1566
|
},
|
|
1032
1567
|
{
|
|
1033
1568
|
id: "higgsfield-dop-preview",
|
|
@@ -1043,7 +1578,12 @@ var VIDEO_MODELS = [
|
|
|
1043
1578
|
},
|
|
1044
1579
|
defaults: {},
|
|
1045
1580
|
usage: { ...VIDEO_USAGE },
|
|
1046
|
-
pricingKind: "video_per_second"
|
|
1581
|
+
pricingKind: "video_per_second",
|
|
1582
|
+
display: {
|
|
1583
|
+
provider: "higgsfield",
|
|
1584
|
+
description: "Higgsfield DOP image-to-video model; animates a required first-frame image from a text prompt with an optional last-frame image and motion controls."
|
|
1585
|
+
},
|
|
1586
|
+
capabilities: {}
|
|
1047
1587
|
}
|
|
1048
1588
|
];
|
|
1049
1589
|
|