460 lines
12 KiB
TypeScript
460 lines
12 KiB
TypeScript
// This file is auto-generated by scripts/generate-image-models.ts
|
|
// Do not edit manually - run 'npm run generate-image-models' to update
|
|
|
|
import type { ImagesApi, ImagesModel } from "./types.ts";
|
|
|
|
export const IMAGE_MODELS = {
|
|
openrouter: {
|
|
"black-forest-labs/flux.2-flex": {
|
|
id: "black-forest-labs/flux.2-flex",
|
|
name: "Black Forest Labs: FLUX.2 Flex",
|
|
api: "openrouter-images",
|
|
provider: "openrouter",
|
|
baseUrl: "https://openrouter.ai/api/v1",
|
|
input: ["text", "image"],
|
|
output: ["image"],
|
|
cost: {
|
|
input: 0,
|
|
output: 0,
|
|
cacheRead: 0,
|
|
cacheWrite: 0,
|
|
},
|
|
} satisfies ImagesModel<"openrouter-images">,
|
|
"black-forest-labs/flux.2-klein-4b": {
|
|
id: "black-forest-labs/flux.2-klein-4b",
|
|
name: "Black Forest Labs: FLUX.2 Klein 4B",
|
|
api: "openrouter-images",
|
|
provider: "openrouter",
|
|
baseUrl: "https://openrouter.ai/api/v1",
|
|
input: ["text", "image"],
|
|
output: ["image"],
|
|
cost: {
|
|
input: 0,
|
|
output: 0,
|
|
cacheRead: 0,
|
|
cacheWrite: 0,
|
|
},
|
|
} satisfies ImagesModel<"openrouter-images">,
|
|
"black-forest-labs/flux.2-max": {
|
|
id: "black-forest-labs/flux.2-max",
|
|
name: "Black Forest Labs: FLUX.2 Max",
|
|
api: "openrouter-images",
|
|
provider: "openrouter",
|
|
baseUrl: "https://openrouter.ai/api/v1",
|
|
input: ["text", "image"],
|
|
output: ["image"],
|
|
cost: {
|
|
input: 0,
|
|
output: 0,
|
|
cacheRead: 0,
|
|
cacheWrite: 0,
|
|
},
|
|
} satisfies ImagesModel<"openrouter-images">,
|
|
"black-forest-labs/flux.2-pro": {
|
|
id: "black-forest-labs/flux.2-pro",
|
|
name: "Black Forest Labs: FLUX.2 Pro",
|
|
api: "openrouter-images",
|
|
provider: "openrouter",
|
|
baseUrl: "https://openrouter.ai/api/v1",
|
|
input: ["text", "image"],
|
|
output: ["image"],
|
|
cost: {
|
|
input: 0,
|
|
output: 0,
|
|
cacheRead: 0,
|
|
cacheWrite: 0,
|
|
},
|
|
} satisfies ImagesModel<"openrouter-images">,
|
|
"bytedance-seed/seedream-4.5": {
|
|
id: "bytedance-seed/seedream-4.5",
|
|
name: "ByteDance Seed: Seedream 4.5",
|
|
api: "openrouter-images",
|
|
provider: "openrouter",
|
|
baseUrl: "https://openrouter.ai/api/v1",
|
|
input: ["image", "text"],
|
|
output: ["image"],
|
|
cost: {
|
|
input: 0,
|
|
output: 0,
|
|
cacheRead: 0,
|
|
cacheWrite: 0,
|
|
},
|
|
} satisfies ImagesModel<"openrouter-images">,
|
|
"google/gemini-2.5-flash-image": {
|
|
id: "google/gemini-2.5-flash-image",
|
|
name: "Google: Nano Banana (Gemini 2.5 Flash Image)",
|
|
api: "openrouter-images",
|
|
provider: "openrouter",
|
|
baseUrl: "https://openrouter.ai/api/v1",
|
|
input: ["image", "text"],
|
|
output: ["image", "text"],
|
|
cost: {
|
|
input: 0.3,
|
|
output: 2.5,
|
|
cacheRead: 0.03,
|
|
cacheWrite: 0.08333333333333334,
|
|
},
|
|
} satisfies ImagesModel<"openrouter-images">,
|
|
"google/gemini-3-pro-image-preview": {
|
|
id: "google/gemini-3-pro-image-preview",
|
|
name: "Google: Nano Banana Pro (Gemini 3 Pro Image Preview)",
|
|
api: "openrouter-images",
|
|
provider: "openrouter",
|
|
baseUrl: "https://openrouter.ai/api/v1",
|
|
input: ["image", "text"],
|
|
output: ["image", "text"],
|
|
cost: {
|
|
input: 2,
|
|
output: 12,
|
|
cacheRead: 0.19999999999999998,
|
|
cacheWrite: 0.375,
|
|
},
|
|
} satisfies ImagesModel<"openrouter-images">,
|
|
"google/gemini-3.1-flash-image-preview": {
|
|
id: "google/gemini-3.1-flash-image-preview",
|
|
name: "Google: Nano Banana 2 (Gemini 3.1 Flash Image Preview)",
|
|
api: "openrouter-images",
|
|
provider: "openrouter",
|
|
baseUrl: "https://openrouter.ai/api/v1",
|
|
input: ["image", "text"],
|
|
output: ["image", "text"],
|
|
cost: {
|
|
input: 0.5,
|
|
output: 3,
|
|
cacheRead: 0,
|
|
cacheWrite: 0,
|
|
},
|
|
} satisfies ImagesModel<"openrouter-images">,
|
|
"microsoft/mai-image-2.5": {
|
|
id: "microsoft/mai-image-2.5",
|
|
name: "Microsoft: MAI-Image-2.5",
|
|
api: "openrouter-images",
|
|
provider: "openrouter",
|
|
baseUrl: "https://openrouter.ai/api/v1",
|
|
input: ["text", "image"],
|
|
output: ["image"],
|
|
cost: {
|
|
input: 5,
|
|
output: 0,
|
|
cacheRead: 0,
|
|
cacheWrite: 0,
|
|
},
|
|
} satisfies ImagesModel<"openrouter-images">,
|
|
"openai/gpt-5-image": {
|
|
id: "openai/gpt-5-image",
|
|
name: "OpenAI: GPT-5 Image",
|
|
api: "openrouter-images",
|
|
provider: "openrouter",
|
|
baseUrl: "https://openrouter.ai/api/v1",
|
|
input: ["image", "text"],
|
|
output: ["image", "text"],
|
|
cost: {
|
|
input: 10,
|
|
output: 10,
|
|
cacheRead: 1.25,
|
|
cacheWrite: 0,
|
|
},
|
|
} satisfies ImagesModel<"openrouter-images">,
|
|
"openai/gpt-5-image-mini": {
|
|
id: "openai/gpt-5-image-mini",
|
|
name: "OpenAI: GPT-5 Image Mini",
|
|
api: "openrouter-images",
|
|
provider: "openrouter",
|
|
baseUrl: "https://openrouter.ai/api/v1",
|
|
input: ["image", "text"],
|
|
output: ["image", "text"],
|
|
cost: {
|
|
input: 2.5,
|
|
output: 2,
|
|
cacheRead: 0.25,
|
|
cacheWrite: 0,
|
|
},
|
|
} satisfies ImagesModel<"openrouter-images">,
|
|
"openai/gpt-5.4-image-2": {
|
|
id: "openai/gpt-5.4-image-2",
|
|
name: "OpenAI: GPT-5.4 Image 2",
|
|
api: "openrouter-images",
|
|
provider: "openrouter",
|
|
baseUrl: "https://openrouter.ai/api/v1",
|
|
input: ["image", "text"],
|
|
output: ["image", "text"],
|
|
cost: {
|
|
input: 8,
|
|
output: 15,
|
|
cacheRead: 2,
|
|
cacheWrite: 0,
|
|
},
|
|
} satisfies ImagesModel<"openrouter-images">,
|
|
"openrouter/auto": {
|
|
id: "openrouter/auto",
|
|
name: "Auto Router",
|
|
api: "openrouter-images",
|
|
provider: "openrouter",
|
|
baseUrl: "https://openrouter.ai/api/v1",
|
|
input: ["text", "image"],
|
|
output: ["text", "image"],
|
|
cost: {
|
|
input: -1000000,
|
|
output: -1000000,
|
|
cacheRead: 0,
|
|
cacheWrite: 0,
|
|
},
|
|
} satisfies ImagesModel<"openrouter-images">,
|
|
"recraft/recraft-v3": {
|
|
id: "recraft/recraft-v3",
|
|
name: "Recraft: Recraft V3",
|
|
api: "openrouter-images",
|
|
provider: "openrouter",
|
|
baseUrl: "https://openrouter.ai/api/v1",
|
|
input: ["text", "image"],
|
|
output: ["image"],
|
|
cost: {
|
|
input: 0,
|
|
output: 0,
|
|
cacheRead: 0,
|
|
cacheWrite: 0,
|
|
},
|
|
} satisfies ImagesModel<"openrouter-images">,
|
|
"recraft/recraft-v4": {
|
|
id: "recraft/recraft-v4",
|
|
name: "Recraft: Recraft V4",
|
|
api: "openrouter-images",
|
|
provider: "openrouter",
|
|
baseUrl: "https://openrouter.ai/api/v1",
|
|
input: ["text", "image"],
|
|
output: ["image"],
|
|
cost: {
|
|
input: 0,
|
|
output: 0,
|
|
cacheRead: 0,
|
|
cacheWrite: 0,
|
|
},
|
|
} satisfies ImagesModel<"openrouter-images">,
|
|
"recraft/recraft-v4-pro": {
|
|
id: "recraft/recraft-v4-pro",
|
|
name: "Recraft: Recraft V4 Pro",
|
|
api: "openrouter-images",
|
|
provider: "openrouter",
|
|
baseUrl: "https://openrouter.ai/api/v1",
|
|
input: ["text", "image"],
|
|
output: ["image"],
|
|
cost: {
|
|
input: 0,
|
|
output: 0,
|
|
cacheRead: 0,
|
|
cacheWrite: 0,
|
|
},
|
|
} satisfies ImagesModel<"openrouter-images">,
|
|
"recraft/recraft-v4-pro-vector": {
|
|
id: "recraft/recraft-v4-pro-vector",
|
|
name: "Recraft: Recraft V4 Pro Vector",
|
|
api: "openrouter-images",
|
|
provider: "openrouter",
|
|
baseUrl: "https://openrouter.ai/api/v1",
|
|
input: ["text", "image"],
|
|
output: ["image"],
|
|
cost: {
|
|
input: 0,
|
|
output: 0,
|
|
cacheRead: 0,
|
|
cacheWrite: 0,
|
|
},
|
|
} satisfies ImagesModel<"openrouter-images">,
|
|
"recraft/recraft-v4-vector": {
|
|
id: "recraft/recraft-v4-vector",
|
|
name: "Recraft: Recraft V4 Vector",
|
|
api: "openrouter-images",
|
|
provider: "openrouter",
|
|
baseUrl: "https://openrouter.ai/api/v1",
|
|
input: ["text", "image"],
|
|
output: ["image"],
|
|
cost: {
|
|
input: 0,
|
|
output: 0,
|
|
cacheRead: 0,
|
|
cacheWrite: 0,
|
|
},
|
|
} satisfies ImagesModel<"openrouter-images">,
|
|
"recraft/recraft-v4.1": {
|
|
id: "recraft/recraft-v4.1",
|
|
name: "Recraft: Recraft V4.1",
|
|
api: "openrouter-images",
|
|
provider: "openrouter",
|
|
baseUrl: "https://openrouter.ai/api/v1",
|
|
input: ["text", "image"],
|
|
output: ["image"],
|
|
cost: {
|
|
input: 0,
|
|
output: 0,
|
|
cacheRead: 0,
|
|
cacheWrite: 0,
|
|
},
|
|
} satisfies ImagesModel<"openrouter-images">,
|
|
"recraft/recraft-v4.1-pro": {
|
|
id: "recraft/recraft-v4.1-pro",
|
|
name: "Recraft: Recraft V4.1 Pro",
|
|
api: "openrouter-images",
|
|
provider: "openrouter",
|
|
baseUrl: "https://openrouter.ai/api/v1",
|
|
input: ["text", "image"],
|
|
output: ["image"],
|
|
cost: {
|
|
input: 0,
|
|
output: 0,
|
|
cacheRead: 0,
|
|
cacheWrite: 0,
|
|
},
|
|
} satisfies ImagesModel<"openrouter-images">,
|
|
"recraft/recraft-v4.1-pro-vector": {
|
|
id: "recraft/recraft-v4.1-pro-vector",
|
|
name: "Recraft: Recraft V4.1 Pro Vector",
|
|
api: "openrouter-images",
|
|
provider: "openrouter",
|
|
baseUrl: "https://openrouter.ai/api/v1",
|
|
input: ["text", "image"],
|
|
output: ["image"],
|
|
cost: {
|
|
input: 0,
|
|
output: 0,
|
|
cacheRead: 0,
|
|
cacheWrite: 0,
|
|
},
|
|
} satisfies ImagesModel<"openrouter-images">,
|
|
"recraft/recraft-v4.1-utility": {
|
|
id: "recraft/recraft-v4.1-utility",
|
|
name: "Recraft: Recraft V4.1 Utility",
|
|
api: "openrouter-images",
|
|
provider: "openrouter",
|
|
baseUrl: "https://openrouter.ai/api/v1",
|
|
input: ["text", "image"],
|
|
output: ["image"],
|
|
cost: {
|
|
input: 0,
|
|
output: 0,
|
|
cacheRead: 0,
|
|
cacheWrite: 0,
|
|
},
|
|
} satisfies ImagesModel<"openrouter-images">,
|
|
"recraft/recraft-v4.1-utility-pro": {
|
|
id: "recraft/recraft-v4.1-utility-pro",
|
|
name: "Recraft: Recraft V4.1 Utility Pro",
|
|
api: "openrouter-images",
|
|
provider: "openrouter",
|
|
baseUrl: "https://openrouter.ai/api/v1",
|
|
input: ["text", "image"],
|
|
output: ["image"],
|
|
cost: {
|
|
input: 0,
|
|
output: 0,
|
|
cacheRead: 0,
|
|
cacheWrite: 0,
|
|
},
|
|
} satisfies ImagesModel<"openrouter-images">,
|
|
"recraft/recraft-v4.1-vector": {
|
|
id: "recraft/recraft-v4.1-vector",
|
|
name: "Recraft: Recraft V4.1 Vector",
|
|
api: "openrouter-images",
|
|
provider: "openrouter",
|
|
baseUrl: "https://openrouter.ai/api/v1",
|
|
input: ["text", "image"],
|
|
output: ["image"],
|
|
cost: {
|
|
input: 0,
|
|
output: 0,
|
|
cacheRead: 0,
|
|
cacheWrite: 0,
|
|
},
|
|
} satisfies ImagesModel<"openrouter-images">,
|
|
"sourceful/riverflow-v2-fast": {
|
|
id: "sourceful/riverflow-v2-fast",
|
|
name: "Sourceful: Riverflow V2 Fast",
|
|
api: "openrouter-images",
|
|
provider: "openrouter",
|
|
baseUrl: "https://openrouter.ai/api/v1",
|
|
input: ["text", "image"],
|
|
output: ["image"],
|
|
cost: {
|
|
input: 0,
|
|
output: 0,
|
|
cacheRead: 0,
|
|
cacheWrite: 0,
|
|
},
|
|
} satisfies ImagesModel<"openrouter-images">,
|
|
"sourceful/riverflow-v2-fast-preview": {
|
|
id: "sourceful/riverflow-v2-fast-preview",
|
|
name: "Sourceful: Riverflow V2 Fast Preview",
|
|
api: "openrouter-images",
|
|
provider: "openrouter",
|
|
baseUrl: "https://openrouter.ai/api/v1",
|
|
input: ["text", "image"],
|
|
output: ["image"],
|
|
cost: {
|
|
input: 0,
|
|
output: 0,
|
|
cacheRead: 0,
|
|
cacheWrite: 0,
|
|
},
|
|
} satisfies ImagesModel<"openrouter-images">,
|
|
"sourceful/riverflow-v2-max-preview": {
|
|
id: "sourceful/riverflow-v2-max-preview",
|
|
name: "Sourceful: Riverflow V2 Max Preview",
|
|
api: "openrouter-images",
|
|
provider: "openrouter",
|
|
baseUrl: "https://openrouter.ai/api/v1",
|
|
input: ["text", "image"],
|
|
output: ["image"],
|
|
cost: {
|
|
input: 0,
|
|
output: 0,
|
|
cacheRead: 0,
|
|
cacheWrite: 0,
|
|
},
|
|
} satisfies ImagesModel<"openrouter-images">,
|
|
"sourceful/riverflow-v2-pro": {
|
|
id: "sourceful/riverflow-v2-pro",
|
|
name: "Sourceful: Riverflow V2 Pro",
|
|
api: "openrouter-images",
|
|
provider: "openrouter",
|
|
baseUrl: "https://openrouter.ai/api/v1",
|
|
input: ["text", "image"],
|
|
output: ["image"],
|
|
cost: {
|
|
input: 0,
|
|
output: 0,
|
|
cacheRead: 0,
|
|
cacheWrite: 0,
|
|
},
|
|
} satisfies ImagesModel<"openrouter-images">,
|
|
"sourceful/riverflow-v2-standard-preview": {
|
|
id: "sourceful/riverflow-v2-standard-preview",
|
|
name: "Sourceful: Riverflow V2 Standard Preview",
|
|
api: "openrouter-images",
|
|
provider: "openrouter",
|
|
baseUrl: "https://openrouter.ai/api/v1",
|
|
input: ["text", "image"],
|
|
output: ["image"],
|
|
cost: {
|
|
input: 0,
|
|
output: 0,
|
|
cacheRead: 0,
|
|
cacheWrite: 0,
|
|
},
|
|
} satisfies ImagesModel<"openrouter-images">,
|
|
"x-ai/grok-imagine-image-quality": {
|
|
id: "x-ai/grok-imagine-image-quality",
|
|
name: "xAI: Grok Imagine Image Quality",
|
|
api: "openrouter-images",
|
|
provider: "openrouter",
|
|
baseUrl: "https://openrouter.ai/api/v1",
|
|
input: ["text", "image"],
|
|
output: ["image"],
|
|
cost: {
|
|
input: 0,
|
|
output: 0,
|
|
cacheRead: 0,
|
|
cacheWrite: 0,
|
|
},
|
|
} satisfies ImagesModel<"openrouter-images">,
|
|
},
|
|
} as const satisfies Record<string, Record<string, ImagesModel<ImagesApi>>>;
|