co-mono/packages/ai/src/models.generated.ts
Mario Zechner cff766d3e2 fix(ai): Fix OpenAI Responses provider multi-turn conversation support
- Added contentSignature tracking for assistant messages
- Fixed message format in convertToResponsesFormat (output_text instead of input_text)
- Properly preserve message IDs for multi-turn conversations
- Added proper ResponseOutputMessage type satisfaction
- Updated tests to cover more providers and multi-turn scenarios
2025-08-30 22:55:29 +02:00

2896 lines
68 KiB
TypeScript

// This file is auto-generated by scripts/generate-models.ts
// Do not edit manually - run 'npm run generate-models' to update
import type { Model } from "./types.js";
export const PROVIDERS = {
groq: {
models: {
"llama-3.1-8b-instant": {
id: "llama-3.1-8b-instant",
name: "Llama 3.1 8B Instant",
provider: "groq",
baseUrl: "https://api.groq.com/openai/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.05,
output: 0.08,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 8192,
} satisfies Model,
"qwen-qwq-32b": {
id: "qwen-qwq-32b",
name: "Qwen QwQ 32B",
provider: "groq",
baseUrl: "https://api.groq.com/openai/v1",
reasoning: true,
input: ["text"],
cost: {
input: 0.29,
output: 0.39,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 16384,
} satisfies Model,
"llama3-70b-8192": {
id: "llama3-70b-8192",
name: "Llama 3 70B",
provider: "groq",
baseUrl: "https://api.groq.com/openai/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.59,
output: 0.79,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 8192,
maxTokens: 8192,
} satisfies Model,
"deepseek-r1-distill-llama-70b": {
id: "deepseek-r1-distill-llama-70b",
name: "DeepSeek R1 Distill Llama 70B",
provider: "groq",
baseUrl: "https://api.groq.com/openai/v1",
reasoning: true,
input: ["text"],
cost: {
input: 0.75,
output: 0.99,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 8192,
} satisfies Model,
"llama3-8b-8192": {
id: "llama3-8b-8192",
name: "Llama 3 8B",
provider: "groq",
baseUrl: "https://api.groq.com/openai/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.05,
output: 0.08,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 8192,
maxTokens: 8192,
} satisfies Model,
"gemma2-9b-it": {
id: "gemma2-9b-it",
name: "Gemma 2 9B",
provider: "groq",
baseUrl: "https://api.groq.com/openai/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.2,
output: 0.2,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 8192,
maxTokens: 8192,
} satisfies Model,
"llama-3.3-70b-versatile": {
id: "llama-3.3-70b-versatile",
name: "Llama 3.3 70B Versatile",
provider: "groq",
baseUrl: "https://api.groq.com/openai/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.59,
output: 0.79,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 32768,
} satisfies Model,
"mistral-saba-24b": {
id: "mistral-saba-24b",
name: "Mistral Saba 24B",
provider: "groq",
baseUrl: "https://api.groq.com/openai/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.79,
output: 0.79,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 32768,
maxTokens: 32768,
} satisfies Model,
"openai/gpt-oss-20b": {
id: "openai/gpt-oss-20b",
name: "GPT OSS 20B",
provider: "groq",
baseUrl: "https://api.groq.com/openai/v1",
reasoning: true,
input: ["text"],
cost: {
input: 0.1,
output: 0.5,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 32768,
} satisfies Model,
"openai/gpt-oss-120b": {
id: "openai/gpt-oss-120b",
name: "GPT OSS 120B",
provider: "groq",
baseUrl: "https://api.groq.com/openai/v1",
reasoning: true,
input: ["text"],
cost: {
input: 0.15,
output: 0.75,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 32768,
} satisfies Model,
"meta-llama/llama-4-maverick-17b-128e-instruct": {
id: "meta-llama/llama-4-maverick-17b-128e-instruct",
name: "Llama 4 Maverick 17B",
provider: "groq",
baseUrl: "https://api.groq.com/openai/v1",
reasoning: false,
input: ["text", "image"],
cost: {
input: 0.2,
output: 0.6,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 8192,
} satisfies Model,
"meta-llama/llama-4-scout-17b-16e-instruct": {
id: "meta-llama/llama-4-scout-17b-16e-instruct",
name: "Llama 4 Scout 17B",
provider: "groq",
baseUrl: "https://api.groq.com/openai/v1",
reasoning: false,
input: ["text", "image"],
cost: {
input: 0.11,
output: 0.34,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 8192,
} satisfies Model,
"qwen/qwen3-32b": {
id: "qwen/qwen3-32b",
name: "Qwen3 32B",
provider: "groq",
baseUrl: "https://api.groq.com/openai/v1",
reasoning: true,
input: ["text"],
cost: {
input: 0.29,
output: 0.59,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 16384,
} satisfies Model,
"moonshotai/kimi-k2-instruct": {
id: "moonshotai/kimi-k2-instruct",
name: "Kimi K2 Instruct",
provider: "groq",
baseUrl: "https://api.groq.com/openai/v1",
reasoning: false,
input: ["text"],
cost: {
input: 1,
output: 3,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 16384,
} satisfies Model,
},
},
cerebras: {
models: {
"qwen-3-235b-a22b-instruct-2507": {
id: "qwen-3-235b-a22b-instruct-2507",
name: "Qwen 3 235B Instruct",
provider: "cerebras",
baseUrl: "https://api.cerebras.ai/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.6,
output: 1.2,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131000,
maxTokens: 32000,
} satisfies Model,
"gpt-oss-120b": {
id: "gpt-oss-120b",
name: "GPT OSS 120B",
provider: "cerebras",
baseUrl: "https://api.cerebras.ai/v1",
reasoning: true,
input: ["text"],
cost: {
input: 0.25,
output: 0.69,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 32768,
} satisfies Model,
"qwen-3-coder-480b": {
id: "qwen-3-coder-480b",
name: "Qwen 3 Coder 480B",
provider: "cerebras",
baseUrl: "https://api.cerebras.ai/v1",
reasoning: false,
input: ["text"],
cost: {
input: 2,
output: 2,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131000,
maxTokens: 32000,
} satisfies Model,
},
},
openrouter: {
models: {
"qwen/qwen3-30b-a3b-thinking-2507": {
id: "qwen/qwen3-30b-a3b-thinking-2507",
name: "Qwen: Qwen3 30B A3B Thinking 2507",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: true,
input: ["text"],
cost: {
input: 0.0713,
output: 0.2852,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 262144,
maxTokens: 262144,
} satisfies Model,
"nousresearch/hermes-4-70b": {
id: "nousresearch/hermes-4-70b",
name: "Nous: Hermes 4 70B",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: true,
input: ["text"],
cost: {
input: 0.09329544,
output: 0.3733632,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 4096,
} satisfies Model,
"nousresearch/hermes-4-405b": {
id: "nousresearch/hermes-4-405b",
name: "Nous: Hermes 4 405B",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: true,
input: ["text"],
cost: {
input: 0.1999188,
output: 0.800064,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 4096,
} satisfies Model,
"deepseek/deepseek-chat-v3.1:free": {
id: "deepseek/deepseek-chat-v3.1:free",
name: "DeepSeek: DeepSeek V3.1 (free)",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: true,
input: ["text"],
cost: {
input: 0,
output: 0,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 64000,
maxTokens: 4096,
} satisfies Model,
"deepseek/deepseek-chat-v3.1": {
id: "deepseek/deepseek-chat-v3.1",
name: "DeepSeek: DeepSeek V3.1",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: true,
input: ["text"],
cost: {
input: 0.19999999999999998,
output: 0.7999999999999999,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 163840,
maxTokens: 4096,
} satisfies Model,
"mistralai/mistral-medium-3.1": {
id: "mistralai/mistral-medium-3.1",
name: "Mistral: Mistral Medium 3.1",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text", "image"],
cost: {
input: 0.39999999999999997,
output: 2,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 4096,
} satisfies Model,
"z-ai/glm-4.5v": {
id: "z-ai/glm-4.5v",
name: "Z.AI: GLM 4.5V",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: true,
input: ["text", "image"],
cost: {
input: 0.5,
output: 1.7999999999999998,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 65536,
maxTokens: 65536,
} satisfies Model,
"ai21/jamba-mini-1.7": {
id: "ai21/jamba-mini-1.7",
name: "AI21: Jamba Mini 1.7",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.19999999999999998,
output: 0.39999999999999997,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 256000,
maxTokens: 4096,
} satisfies Model,
"ai21/jamba-large-1.7": {
id: "ai21/jamba-large-1.7",
name: "AI21: Jamba Large 1.7",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 2,
output: 8,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 256000,
maxTokens: 4096,
} satisfies Model,
"mistralai/codestral-2508": {
id: "mistralai/codestral-2508",
name: "Mistral: Codestral 2508",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.3,
output: 0.8999999999999999,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 256000,
maxTokens: 4096,
} satisfies Model,
"qwen/qwen3-coder-30b-a3b-instruct": {
id: "qwen/qwen3-coder-30b-a3b-instruct",
name: "Qwen: Qwen3 Coder 30B A3B Instruct",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.051830799999999996,
output: 0.207424,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 262144,
maxTokens: 4096,
} satisfies Model,
"qwen/qwen3-30b-a3b-instruct-2507": {
id: "qwen/qwen3-30b-a3b-instruct-2507",
name: "Qwen: Qwen3 30B A3B Instruct 2507",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.051830799999999996,
output: 0.207424,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 262144,
maxTokens: 4096,
} satisfies Model,
"z-ai/glm-4.5": {
id: "z-ai/glm-4.5",
name: "Z.AI: GLM 4.5",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: true,
input: ["text"],
cost: {
input: 0.1999188,
output: 0.800064,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 4096,
} satisfies Model,
"z-ai/glm-4.5-air:free": {
id: "z-ai/glm-4.5-air:free",
name: "Z.AI: GLM 4.5 Air (free)",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: true,
input: ["text"],
cost: {
input: 0,
output: 0,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 4096,
} satisfies Model,
"z-ai/glm-4.5-air": {
id: "z-ai/glm-4.5-air",
name: "Z.AI: GLM 4.5 Air",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: true,
input: ["text"],
cost: {
input: 0.14,
output: 0.86,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 131072,
} satisfies Model,
"qwen/qwen3-235b-a22b-thinking-2507": {
id: "qwen/qwen3-235b-a22b-thinking-2507",
name: "Qwen: Qwen3 235B A22B Thinking 2507",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: true,
input: ["text"],
cost: {
input: 0.077968332,
output: 0.31202496,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 262144,
maxTokens: 4096,
} satisfies Model,
"z-ai/glm-4-32b": {
id: "z-ai/glm-4-32b",
name: "Z.AI: GLM 4 32B ",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.09999999999999999,
output: 0.09999999999999999,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 128000,
maxTokens: 4096,
} satisfies Model,
"qwen/qwen3-coder:free": {
id: "qwen/qwen3-coder:free",
name: "Qwen: Qwen3 Coder 480B A35B (free)",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0,
output: 0,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 262144,
maxTokens: 4096,
} satisfies Model,
"qwen/qwen3-coder": {
id: "qwen/qwen3-coder",
name: "Qwen: Qwen3 Coder 480B A35B",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.19999999999999998,
output: 0.7999999999999999,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 262144,
maxTokens: 4096,
} satisfies Model,
"qwen/qwen3-235b-a22b-2507": {
id: "qwen/qwen3-235b-a22b-2507",
name: "Qwen: Qwen3 235B A22B Instruct 2507",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.077968332,
output: 0.31202496,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 262144,
maxTokens: 4096,
} satisfies Model,
"moonshotai/kimi-k2:free": {
id: "moonshotai/kimi-k2:free",
name: "MoonshotAI: Kimi K2 (free)",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0,
output: 0,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 32768,
maxTokens: 4096,
} satisfies Model,
"moonshotai/kimi-k2": {
id: "moonshotai/kimi-k2",
name: "MoonshotAI: Kimi K2",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.14,
output: 2.4899999999999998,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 63000,
maxTokens: 63000,
} satisfies Model,
"mistralai/devstral-medium": {
id: "mistralai/devstral-medium",
name: "Mistral: Devstral Medium",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.39999999999999997,
output: 2,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 4096,
} satisfies Model,
"mistralai/devstral-small": {
id: "mistralai/devstral-small",
name: "Mistral: Devstral Small 1.1",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.07,
output: 0.28,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 128000,
maxTokens: 4096,
} satisfies Model,
"inception/mercury": {
id: "inception/mercury",
name: "Inception: Mercury",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.25,
output: 1,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 128000,
maxTokens: 16384,
} satisfies Model,
"mistralai/mistral-small-3.2-24b-instruct:free": {
id: "mistralai/mistral-small-3.2-24b-instruct:free",
name: "Mistral: Mistral Small 3.2 24B (free)",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text", "image"],
cost: {
input: 0,
output: 0,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 4096,
} satisfies Model,
"mistralai/mistral-small-3.2-24b-instruct": {
id: "mistralai/mistral-small-3.2-24b-instruct",
name: "Mistral: Mistral Small 3.2 24B",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text", "image"],
cost: {
input: 0.049999999999999996,
output: 0.09999999999999999,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 128000,
maxTokens: 4096,
} satisfies Model,
"minimax/minimax-m1": {
id: "minimax/minimax-m1",
name: "MiniMax: MiniMax M1",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: true,
input: ["text"],
cost: {
input: 0.3,
output: 1.6500000000000001,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 1000000,
maxTokens: 40000,
} satisfies Model,
"mistralai/magistral-small-2506": {
id: "mistralai/magistral-small-2506",
name: "Mistral: Magistral Small 2506",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: true,
input: ["text"],
cost: {
input: 0.5,
output: 1.5,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 40000,
maxTokens: 40000,
} satisfies Model,
"mistralai/magistral-medium-2506": {
id: "mistralai/magistral-medium-2506",
name: "Mistral: Magistral Medium 2506",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: true,
input: ["text"],
cost: {
input: 2,
output: 5,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 40960,
maxTokens: 40000,
} satisfies Model,
"mistralai/magistral-medium-2506:thinking": {
id: "mistralai/magistral-medium-2506:thinking",
name: "Mistral: Magistral Medium 2506 (thinking)",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: true,
input: ["text"],
cost: {
input: 2,
output: 5,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 40960,
maxTokens: 40000,
} satisfies Model,
"deepseek/deepseek-r1-0528": {
id: "deepseek/deepseek-r1-0528",
name: "DeepSeek: R1 0528",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: true,
input: ["text"],
cost: {
input: 0.1999188,
output: 0.800064,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 163840,
maxTokens: 4096,
} satisfies Model,
"mistralai/devstral-small-2505:free": {
id: "mistralai/devstral-small-2505:free",
name: "Mistral: Devstral Small 2505 (free)",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0,
output: 0,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 32768,
maxTokens: 4096,
} satisfies Model,
"mistralai/devstral-small-2505": {
id: "mistralai/devstral-small-2505",
name: "Mistral: Devstral Small 2505",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.01999188,
output: 0.0800064,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 4096,
} satisfies Model,
"meta-llama/llama-3.3-8b-instruct:free": {
id: "meta-llama/llama-3.3-8b-instruct:free",
name: "Meta: Llama 3.3 8B Instruct (free)",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0,
output: 0,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 128000,
maxTokens: 4028,
} satisfies Model,
"mistralai/mistral-medium-3": {
id: "mistralai/mistral-medium-3",
name: "Mistral: Mistral Medium 3",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text", "image"],
cost: {
input: 0.39999999999999997,
output: 2,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 4096,
} satisfies Model,
"arcee-ai/virtuoso-large": {
id: "arcee-ai/virtuoso-large",
name: "Arcee AI: Virtuoso Large",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.75,
output: 1.2,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 64000,
} satisfies Model,
"inception/mercury-coder": {
id: "inception/mercury-coder",
name: "Inception: Mercury Coder",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.25,
output: 1,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 128000,
maxTokens: 16384,
} satisfies Model,
"qwen/qwen3-4b:free": {
id: "qwen/qwen3-4b:free",
name: "Qwen: Qwen3 4B (free)",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: true,
input: ["text"],
cost: {
input: 0,
output: 0,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 40960,
maxTokens: 4096,
} satisfies Model,
"qwen/qwen3-30b-a3b": {
id: "qwen/qwen3-30b-a3b",
name: "Qwen: Qwen3 30B A3B",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: true,
input: ["text"],
cost: {
input: 0.01999188,
output: 0.0800064,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 40960,
maxTokens: 4096,
} satisfies Model,
"qwen/qwen3-14b": {
id: "qwen/qwen3-14b",
name: "Qwen: Qwen3 14B",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: true,
input: ["text"],
cost: {
input: 0.06,
output: 0.24,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 40960,
maxTokens: 40960,
} satisfies Model,
"qwen/qwen3-32b": {
id: "qwen/qwen3-32b",
name: "Qwen: Qwen3 32B",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: true,
input: ["text"],
cost: {
input: 0.017992691999999998,
output: 0.07200576,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 40960,
maxTokens: 4096,
} satisfies Model,
"qwen/qwen3-235b-a22b:free": {
id: "qwen/qwen3-235b-a22b:free",
name: "Qwen: Qwen3 235B A22B (free)",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: true,
input: ["text"],
cost: {
input: 0,
output: 0,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 4096,
} satisfies Model,
"qwen/qwen3-235b-a22b": {
id: "qwen/qwen3-235b-a22b",
name: "Qwen: Qwen3 235B A22B",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: true,
input: ["text"],
cost: {
input: 0.13,
output: 0.6,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 40960,
maxTokens: 40960,
} satisfies Model,
"meta-llama/llama-4-maverick:free": {
id: "meta-llama/llama-4-maverick:free",
name: "Meta: Llama 4 Maverick (free)",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text", "image"],
cost: {
input: 0,
output: 0,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 128000,
maxTokens: 4028,
} satisfies Model,
"meta-llama/llama-4-maverick": {
id: "meta-llama/llama-4-maverick",
name: "Meta: Llama 4 Maverick",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text", "image"],
cost: {
input: 0.15,
output: 0.6,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 1048576,
maxTokens: 16384,
} satisfies Model,
"meta-llama/llama-4-scout:free": {
id: "meta-llama/llama-4-scout:free",
name: "Meta: Llama 4 Scout (free)",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text", "image"],
cost: {
input: 0,
output: 0,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 128000,
maxTokens: 4028,
} satisfies Model,
"meta-llama/llama-4-scout": {
id: "meta-llama/llama-4-scout",
name: "Meta: Llama 4 Scout",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text", "image"],
cost: {
input: 0.08,
output: 0.3,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 1048576,
maxTokens: 1048576,
} satisfies Model,
"deepseek/deepseek-chat-v3-0324:free": {
id: "deepseek/deepseek-chat-v3-0324:free",
name: "DeepSeek: DeepSeek V3 0324 (free)",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0,
output: 0,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 163840,
maxTokens: 4096,
} satisfies Model,
"deepseek/deepseek-chat-v3-0324": {
id: "deepseek/deepseek-chat-v3-0324",
name: "DeepSeek: DeepSeek V3 0324",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.1999188,
output: 0.800064,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 163840,
maxTokens: 4096,
} satisfies Model,
"mistralai/mistral-small-3.1-24b-instruct:free": {
id: "mistralai/mistral-small-3.1-24b-instruct:free",
name: "Mistral: Mistral Small 3.1 24B (free)",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text", "image"],
cost: {
input: 0,
output: 0,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 128000,
maxTokens: 4096,
} satisfies Model,
"mistralai/mistral-small-3.1-24b-instruct": {
id: "mistralai/mistral-small-3.1-24b-instruct",
name: "Mistral: Mistral Small 3.1 24B",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text", "image"],
cost: {
input: 0.01999188,
output: 0.0800064,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 96000,
} satisfies Model,
"qwen/qwq-32b": {
id: "qwen/qwq-32b",
name: "Qwen: QwQ 32B",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: true,
input: ["text"],
cost: {
input: 0.075,
output: 0.15,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 4096,
} satisfies Model,
"mistralai/mistral-saba": {
id: "mistralai/mistral-saba",
name: "Mistral: Saba",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.19999999999999998,
output: 0.6,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 32768,
maxTokens: 4096,
} satisfies Model,
"qwen/qwen-turbo": {
id: "qwen/qwen-turbo",
name: "Qwen: Qwen-Turbo",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.049999999999999996,
output: 0.19999999999999998,
cacheRead: 0.02,
cacheWrite: 0,
},
contextWindow: 1000000,
maxTokens: 8192,
} satisfies Model,
"qwen/qwen-plus": {
id: "qwen/qwen-plus",
name: "Qwen: Qwen-Plus",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.39999999999999997,
output: 1.2,
cacheRead: 0.16,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 8192,
} satisfies Model,
"qwen/qwen-max": {
id: "qwen/qwen-max",
name: "Qwen: Qwen-Max ",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 1.5999999999999999,
output: 6.3999999999999995,
cacheRead: 0.64,
cacheWrite: 0,
},
contextWindow: 32768,
maxTokens: 8192,
} satisfies Model,
"mistralai/mistral-small-24b-instruct-2501": {
id: "mistralai/mistral-small-24b-instruct-2501",
name: "Mistral: Mistral Small 3",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.01999188,
output: 0.0800064,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 32768,
maxTokens: 4096,
} satisfies Model,
"deepseek/deepseek-r1-distill-llama-70b": {
id: "deepseek/deepseek-r1-distill-llama-70b",
name: "DeepSeek: R1 Distill Llama 70B",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: true,
input: ["text"],
cost: {
input: 0.025915399999999998,
output: 0.103712,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 4096,
} satisfies Model,
"deepseek/deepseek-r1": {
id: "deepseek/deepseek-r1",
name: "DeepSeek: R1",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: true,
input: ["text"],
cost: {
input: 0.39999999999999997,
output: 2,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 163840,
maxTokens: 163840,
} satisfies Model,
"mistralai/codestral-2501": {
id: "mistralai/codestral-2501",
name: "Mistral: Codestral 2501",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.3,
output: 0.8999999999999999,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 262144,
maxTokens: 4096,
} satisfies Model,
"deepseek/deepseek-chat": {
id: "deepseek/deepseek-chat",
name: "DeepSeek: DeepSeek V3",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.1999188,
output: 0.800064,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 163840,
maxTokens: 4096,
} satisfies Model,
"meta-llama/llama-3.3-70b-instruct:free": {
id: "meta-llama/llama-3.3-70b-instruct:free",
name: "Meta: Llama 3.3 70B Instruct (free)",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0,
output: 0,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 65536,
maxTokens: 4096,
} satisfies Model,
"meta-llama/llama-3.3-70b-instruct": {
id: "meta-llama/llama-3.3-70b-instruct",
name: "Meta: Llama 3.3 70B Instruct",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.038000000000000006,
output: 0.12,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 16384,
} satisfies Model,
"amazon/nova-lite-v1": {
id: "amazon/nova-lite-v1",
name: "Amazon: Nova Lite 1.0",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text", "image"],
cost: {
input: 0.06,
output: 0.24,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 300000,
maxTokens: 5120,
} satisfies Model,
"amazon/nova-micro-v1": {
id: "amazon/nova-micro-v1",
name: "Amazon: Nova Micro 1.0",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.035,
output: 0.14,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 128000,
maxTokens: 5120,
} satisfies Model,
"amazon/nova-pro-v1": {
id: "amazon/nova-pro-v1",
name: "Amazon: Nova Pro 1.0",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text", "image"],
cost: {
input: 0.7999999999999999,
output: 3.1999999999999997,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 300000,
maxTokens: 5120,
} satisfies Model,
"mistralai/mistral-large-2411": {
id: "mistralai/mistral-large-2411",
name: "Mistral Large 2411",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 2,
output: 6,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 4096,
} satisfies Model,
"mistralai/mistral-large-2407": {
id: "mistralai/mistral-large-2407",
name: "Mistral Large 2407",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 2,
output: 6,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 4096,
} satisfies Model,
"mistralai/pixtral-large-2411": {
id: "mistralai/pixtral-large-2411",
name: "Mistral: Pixtral Large 2411",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text", "image"],
cost: {
input: 2,
output: 6,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 4096,
} satisfies Model,
"thedrummer/unslopnemo-12b": {
id: "thedrummer/unslopnemo-12b",
name: "TheDrummer: UnslopNemo 12B",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.39999999999999997,
output: 0.39999999999999997,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 32768,
maxTokens: 4096,
} satisfies Model,
"mistralai/ministral-8b": {
id: "mistralai/ministral-8b",
name: "Mistral: Ministral 8B",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.09999999999999999,
output: 0.09999999999999999,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 128000,
maxTokens: 4096,
} satisfies Model,
"nvidia/llama-3.1-nemotron-70b-instruct": {
id: "nvidia/llama-3.1-nemotron-70b-instruct",
name: "NVIDIA: Llama 3.1 Nemotron 70B Instruct",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.12,
output: 0.3,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 16384,
} satisfies Model,
"thedrummer/rocinante-12b": {
id: "thedrummer/rocinante-12b",
name: "TheDrummer: Rocinante 12B",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.16999999999999998,
output: 0.43,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 32768,
maxTokens: 4096,
} satisfies Model,
"meta-llama/llama-3.2-3b-instruct": {
id: "meta-llama/llama-3.2-3b-instruct",
name: "Meta: Llama 3.2 3B Instruct",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.003,
output: 0.006,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 20000,
maxTokens: 20000,
} satisfies Model,
"qwen/qwen-2.5-72b-instruct": {
id: "qwen/qwen-2.5-72b-instruct",
name: "Qwen2.5 72B Instruct",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.051830799999999996,
output: 0.207424,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 32768,
maxTokens: 4096,
} satisfies Model,
"mistralai/pixtral-12b": {
id: "mistralai/pixtral-12b",
name: "Mistral: Pixtral 12B",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text", "image"],
cost: {
input: 0.09999999999999999,
output: 0.09999999999999999,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 32768,
maxTokens: 4096,
} satisfies Model,
"cohere/command-r-plus-08-2024": {
id: "cohere/command-r-plus-08-2024",
name: "Cohere: Command R+ (08-2024)",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 2.5,
output: 10,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 128000,
maxTokens: 4000,
} satisfies Model,
"cohere/command-r-08-2024": {
id: "cohere/command-r-08-2024",
name: "Cohere: Command R (08-2024)",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.15,
output: 0.6,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 128000,
maxTokens: 4000,
} satisfies Model,
"microsoft/phi-3.5-mini-128k-instruct": {
id: "microsoft/phi-3.5-mini-128k-instruct",
name: "Microsoft: Phi-3.5 Mini 128K Instruct",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.09999999999999999,
output: 0.09999999999999999,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 128000,
maxTokens: 4096,
} satisfies Model,
"nousresearch/hermes-3-llama-3.1-70b": {
id: "nousresearch/hermes-3-llama-3.1-70b",
name: "Nous: Hermes 3 70B Instruct",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.09999999999999999,
output: 0.28,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 4096,
} satisfies Model,
"meta-llama/llama-3.1-8b-instruct": {
id: "meta-llama/llama-3.1-8b-instruct",
name: "Meta: Llama 3.1 8B Instruct",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.015,
output: 0.02,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 16384,
} satisfies Model,
"meta-llama/llama-3.1-70b-instruct": {
id: "meta-llama/llama-3.1-70b-instruct",
name: "Meta: Llama 3.1 70B Instruct",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.09999999999999999,
output: 0.28,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 16384,
} satisfies Model,
"meta-llama/llama-3.1-405b-instruct": {
id: "meta-llama/llama-3.1-405b-instruct",
name: "Meta: Llama 3.1 405B Instruct",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.7999999999999999,
output: 0.7999999999999999,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 32768,
maxTokens: 16384,
} satisfies Model,
"mistralai/mistral-nemo": {
id: "mistralai/mistral-nemo",
name: "Mistral: Mistral Nemo",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.0075,
output: 0.049999999999999996,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 32000,
maxTokens: 4096,
} satisfies Model,
"mistralai/mistral-7b-instruct-v0.3": {
id: "mistralai/mistral-7b-instruct-v0.3",
name: "Mistral: Mistral 7B Instruct v0.3",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.028,
output: 0.054,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 32768,
maxTokens: 16384,
} satisfies Model,
"mistralai/mistral-7b-instruct:free": {
id: "mistralai/mistral-7b-instruct:free",
name: "Mistral: Mistral 7B Instruct (free)",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0,
output: 0,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 32768,
maxTokens: 16384,
} satisfies Model,
"mistralai/mistral-7b-instruct": {
id: "mistralai/mistral-7b-instruct",
name: "Mistral: Mistral 7B Instruct",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.028,
output: 0.054,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 32768,
maxTokens: 16384,
} satisfies Model,
"microsoft/phi-3-mini-128k-instruct": {
id: "microsoft/phi-3-mini-128k-instruct",
name: "Microsoft: Phi-3 Mini 128K Instruct",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.09999999999999999,
output: 0.09999999999999999,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 128000,
maxTokens: 4096,
} satisfies Model,
"microsoft/phi-3-medium-128k-instruct": {
id: "microsoft/phi-3-medium-128k-instruct",
name: "Microsoft: Phi-3 Medium 128K Instruct",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 1,
output: 1,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 128000,
maxTokens: 4096,
} satisfies Model,
"meta-llama/llama-3-70b-instruct": {
id: "meta-llama/llama-3-70b-instruct",
name: "Meta: Llama 3 70B Instruct",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.3,
output: 0.39999999999999997,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 8192,
maxTokens: 16384,
} satisfies Model,
"meta-llama/llama-3-8b-instruct": {
id: "meta-llama/llama-3-8b-instruct",
name: "Meta: Llama 3 8B Instruct",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.03,
output: 0.06,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 8192,
maxTokens: 16384,
} satisfies Model,
"mistralai/mixtral-8x22b-instruct": {
id: "mistralai/mixtral-8x22b-instruct",
name: "Mistral: Mixtral 8x22B Instruct",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.8999999999999999,
output: 0.8999999999999999,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 65536,
maxTokens: 4096,
} satisfies Model,
"cohere/command-r-plus": {
id: "cohere/command-r-plus",
name: "Cohere: Command R+",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 3,
output: 15,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 128000,
maxTokens: 4000,
} satisfies Model,
"cohere/command-r-plus-04-2024": {
id: "cohere/command-r-plus-04-2024",
name: "Cohere: Command R+ (04-2024)",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 3,
output: 15,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 128000,
maxTokens: 4000,
} satisfies Model,
"cohere/command-r": {
id: "cohere/command-r",
name: "Cohere: Command R",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.5,
output: 1.5,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 128000,
maxTokens: 4000,
} satisfies Model,
"cohere/command-r-03-2024": {
id: "cohere/command-r-03-2024",
name: "Cohere: Command R (03-2024)",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.5,
output: 1.5,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 128000,
maxTokens: 4000,
} satisfies Model,
"mistralai/mistral-large": {
id: "mistralai/mistral-large",
name: "Mistral Large",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 2,
output: 6,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 128000,
maxTokens: 4096,
} satisfies Model,
"mistralai/mistral-tiny": {
id: "mistralai/mistral-tiny",
name: "Mistral Tiny",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.25,
output: 0.25,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 32768,
maxTokens: 4096,
} satisfies Model,
"mistralai/mistral-small": {
id: "mistralai/mistral-small",
name: "Mistral Small",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.19999999999999998,
output: 0.6,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 32768,
maxTokens: 4096,
} satisfies Model,
"mistralai/mixtral-8x7b-instruct": {
id: "mistralai/mixtral-8x7b-instruct",
name: "Mistral: Mixtral 8x7B Instruct",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.08,
output: 0.24,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 32768,
maxTokens: 16384,
} satisfies Model,
"mistralai/mistral-7b-instruct-v0.1": {
id: "mistralai/mistral-7b-instruct-v0.1",
name: "Mistral: Mistral 7B Instruct v0.1",
provider: "openrouter",
baseUrl: "https://openrouter.ai/api/v1",
reasoning: false,
input: ["text"],
cost: {
input: 0.11,
output: 0.19,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 2824,
maxTokens: 4096,
} satisfies Model,
},
},
xai: {
models: {
"grok-code-fast-1": {
id: "grok-code-fast-1",
name: "xAI: Grok Code Fast 1",
provider: "xai",
baseUrl: "https://api.x.ai/v1",
reasoning: true,
input: ["text"],
cost: {
input: 0.19999999999999998,
output: 1.5,
cacheRead: 0.02,
cacheWrite: 0,
},
contextWindow: 256000,
maxTokens: 10000,
} satisfies Model,
"grok-4": {
id: "grok-4",
name: "xAI: Grok 4",
provider: "xai",
baseUrl: "https://api.x.ai/v1",
reasoning: true,
input: ["text", "image"],
cost: {
input: 3,
output: 15,
cacheRead: 0.75,
cacheWrite: 0,
},
contextWindow: 256000,
maxTokens: 4096,
} satisfies Model,
"grok-3-mini": {
id: "grok-3-mini",
name: "xAI: Grok 3 Mini",
provider: "xai",
baseUrl: "https://api.x.ai/v1",
reasoning: true,
input: ["text"],
cost: {
input: 0.3,
output: 0.5,
cacheRead: 0.075,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 4096,
} satisfies Model,
"grok-3": {
id: "grok-3",
name: "xAI: Grok 3",
provider: "xai",
baseUrl: "https://api.x.ai/v1",
reasoning: false,
input: ["text"],
cost: {
input: 3,
output: 15,
cacheRead: 0.75,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 4096,
} satisfies Model,
"grok-3-mini-beta": {
id: "grok-3-mini-beta",
name: "xAI: Grok 3 Mini Beta",
provider: "xai",
baseUrl: "https://api.x.ai/v1",
reasoning: true,
input: ["text"],
cost: {
input: 0.3,
output: 0.5,
cacheRead: 0.075,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 4096,
} satisfies Model,
"grok-3-beta": {
id: "grok-3-beta",
name: "xAI: Grok 3 Beta",
provider: "xai",
baseUrl: "https://api.x.ai/v1",
reasoning: false,
input: ["text"],
cost: {
input: 3,
output: 15,
cacheRead: 0.75,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 4096,
} satisfies Model,
"grok-2-1212": {
id: "grok-2-1212",
name: "xAI: Grok 2 1212",
provider: "xai",
baseUrl: "https://api.x.ai/v1",
reasoning: false,
input: ["text"],
cost: {
input: 2,
output: 10,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131072,
maxTokens: 4096,
} satisfies Model,
},
},
openai: {
models: {
"gpt-4o-audio-preview": {
id: "gpt-4o-audio-preview",
name: "OpenAI: GPT-4o Audio",
provider: "openai",
reasoning: false,
input: ["text"],
cost: {
input: 2.5,
output: 10,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 128000,
maxTokens: 16384,
} satisfies Model,
"gpt-5": {
id: "gpt-5",
name: "OpenAI: GPT-5",
provider: "openai",
reasoning: true,
input: ["text", "image"],
cost: {
input: 1.25,
output: 10,
cacheRead: 0.125,
cacheWrite: 0,
},
contextWindow: 400000,
maxTokens: 128000,
} satisfies Model,
"gpt-5-mini": {
id: "gpt-5-mini",
name: "OpenAI: GPT-5 Mini",
provider: "openai",
reasoning: true,
input: ["text", "image"],
cost: {
input: 0.25,
output: 2,
cacheRead: 0.024999999999999998,
cacheWrite: 0,
},
contextWindow: 400000,
maxTokens: 128000,
} satisfies Model,
"gpt-5-nano": {
id: "gpt-5-nano",
name: "OpenAI: GPT-5 Nano",
provider: "openai",
reasoning: true,
input: ["text", "image"],
cost: {
input: 0.049999999999999996,
output: 0.39999999999999997,
cacheRead: 0.005,
cacheWrite: 0,
},
contextWindow: 400000,
maxTokens: 128000,
} satisfies Model,
"gpt-oss-120b": {
id: "gpt-oss-120b",
name: "OpenAI: gpt-oss-120b",
provider: "openai",
reasoning: true,
input: ["text"],
cost: {
input: 0.072,
output: 0.28,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131000,
maxTokens: 131000,
} satisfies Model,
"gpt-oss-20b": {
id: "gpt-oss-20b",
name: "OpenAI: gpt-oss-20b",
provider: "openai",
reasoning: true,
input: ["text"],
cost: {
input: 0.04,
output: 0.15,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 131000,
maxTokens: 131000,
} satisfies Model,
"o3-pro": {
id: "o3-pro",
name: "OpenAI: o3 Pro",
provider: "openai",
reasoning: true,
input: ["text", "image"],
cost: {
input: 20,
output: 80,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 200000,
maxTokens: 100000,
} satisfies Model,
"codex-mini": {
id: "codex-mini",
name: "OpenAI: Codex Mini",
provider: "openai",
reasoning: true,
input: ["text", "image"],
cost: {
input: 1.5,
output: 6,
cacheRead: 0.375,
cacheWrite: 0,
},
contextWindow: 200000,
maxTokens: 100000,
} satisfies Model,
"o4-mini-high": {
id: "o4-mini-high",
name: "OpenAI: o4 Mini High",
provider: "openai",
reasoning: true,
input: ["text", "image"],
cost: {
input: 1.1,
output: 4.4,
cacheRead: 0.275,
cacheWrite: 0,
},
contextWindow: 200000,
maxTokens: 100000,
} satisfies Model,
o3: {
id: "o3",
name: "OpenAI: o3",
provider: "openai",
reasoning: true,
input: ["text", "image"],
cost: {
input: 2,
output: 8,
cacheRead: 0.5,
cacheWrite: 0,
},
contextWindow: 200000,
maxTokens: 100000,
} satisfies Model,
"o4-mini": {
id: "o4-mini",
name: "OpenAI: o4 Mini",
provider: "openai",
reasoning: true,
input: ["text", "image"],
cost: {
input: 1.1,
output: 4.4,
cacheRead: 0.275,
cacheWrite: 0,
},
contextWindow: 200000,
maxTokens: 100000,
} satisfies Model,
"gpt-4.1": {
id: "gpt-4.1",
name: "OpenAI: GPT-4.1",
provider: "openai",
reasoning: false,
input: ["text", "image"],
cost: {
input: 2,
output: 8,
cacheRead: 0.5,
cacheWrite: 0,
},
contextWindow: 1047576,
maxTokens: 32768,
} satisfies Model,
"gpt-4.1-mini": {
id: "gpt-4.1-mini",
name: "OpenAI: GPT-4.1 Mini",
provider: "openai",
reasoning: false,
input: ["text", "image"],
cost: {
input: 0.39999999999999997,
output: 1.5999999999999999,
cacheRead: 0.09999999999999999,
cacheWrite: 0,
},
contextWindow: 1047576,
maxTokens: 32768,
} satisfies Model,
"gpt-4.1-nano": {
id: "gpt-4.1-nano",
name: "OpenAI: GPT-4.1 Nano",
provider: "openai",
reasoning: false,
input: ["text", "image"],
cost: {
input: 0.09999999999999999,
output: 0.39999999999999997,
cacheRead: 0.024999999999999998,
cacheWrite: 0,
},
contextWindow: 1047576,
maxTokens: 32768,
} satisfies Model,
"o3-mini-high": {
id: "o3-mini-high",
name: "OpenAI: o3 Mini High",
provider: "openai",
reasoning: false,
input: ["text"],
cost: {
input: 1.1,
output: 4.4,
cacheRead: 0.55,
cacheWrite: 0,
},
contextWindow: 200000,
maxTokens: 100000,
} satisfies Model,
"o3-mini": {
id: "o3-mini",
name: "OpenAI: o3 Mini",
provider: "openai",
reasoning: false,
input: ["text"],
cost: {
input: 1.1,
output: 4.4,
cacheRead: 0.55,
cacheWrite: 0,
},
contextWindow: 200000,
maxTokens: 100000,
} satisfies Model,
o1: {
id: "o1",
name: "OpenAI: o1",
provider: "openai",
reasoning: false,
input: ["text", "image"],
cost: {
input: 15,
output: 60,
cacheRead: 7.5,
cacheWrite: 0,
},
contextWindow: 200000,
maxTokens: 100000,
} satisfies Model,
"gpt-4o-2024-11-20": {
id: "gpt-4o-2024-11-20",
name: "OpenAI: GPT-4o (2024-11-20)",
provider: "openai",
reasoning: false,
input: ["text", "image"],
cost: {
input: 2.5,
output: 10,
cacheRead: 1.25,
cacheWrite: 0,
},
contextWindow: 128000,
maxTokens: 16384,
} satisfies Model,
"gpt-4o-2024-08-06": {
id: "gpt-4o-2024-08-06",
name: "OpenAI: GPT-4o (2024-08-06)",
provider: "openai",
reasoning: false,
input: ["text", "image"],
cost: {
input: 2.5,
output: 10,
cacheRead: 1.25,
cacheWrite: 0,
},
contextWindow: 128000,
maxTokens: 16384,
} satisfies Model,
"gpt-4o-mini": {
id: "gpt-4o-mini",
name: "OpenAI: GPT-4o-mini",
provider: "openai",
reasoning: false,
input: ["text", "image"],
cost: {
input: 0.15,
output: 0.6,
cacheRead: 0.075,
cacheWrite: 0,
},
contextWindow: 128000,
maxTokens: 16384,
} satisfies Model,
"gpt-4o-mini-2024-07-18": {
id: "gpt-4o-mini-2024-07-18",
name: "OpenAI: GPT-4o-mini (2024-07-18)",
provider: "openai",
reasoning: false,
input: ["text", "image"],
cost: {
input: 0.15,
output: 0.6,
cacheRead: 0.075,
cacheWrite: 0,
},
contextWindow: 128000,
maxTokens: 16384,
} satisfies Model,
"gpt-4o": {
id: "gpt-4o",
name: "OpenAI: GPT-4o",
provider: "openai",
reasoning: false,
input: ["text", "image"],
cost: {
input: 2.5,
output: 10,
cacheRead: 1.25,
cacheWrite: 0,
},
contextWindow: 128000,
maxTokens: 16384,
} satisfies Model,
"gpt-4o:extended": {
id: "gpt-4o:extended",
name: "OpenAI: GPT-4o (extended)",
provider: "openai",
reasoning: false,
input: ["text", "image"],
cost: {
input: 6,
output: 18,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 128000,
maxTokens: 64000,
} satisfies Model,
"gpt-4o-2024-05-13": {
id: "gpt-4o-2024-05-13",
name: "OpenAI: GPT-4o (2024-05-13)",
provider: "openai",
reasoning: false,
input: ["text", "image"],
cost: {
input: 5,
output: 15,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 128000,
maxTokens: 4096,
} satisfies Model,
"gpt-4-turbo": {
id: "gpt-4-turbo",
name: "OpenAI: GPT-4 Turbo",
provider: "openai",
reasoning: false,
input: ["text", "image"],
cost: {
input: 10,
output: 30,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 128000,
maxTokens: 4096,
} satisfies Model,
"gpt-3.5-turbo-0613": {
id: "gpt-3.5-turbo-0613",
name: "OpenAI: GPT-3.5 Turbo (older v0613)",
provider: "openai",
reasoning: false,
input: ["text"],
cost: {
input: 1,
output: 2,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 4095,
maxTokens: 4096,
} satisfies Model,
"gpt-4-turbo-preview": {
id: "gpt-4-turbo-preview",
name: "OpenAI: GPT-4 Turbo Preview",
provider: "openai",
reasoning: false,
input: ["text"],
cost: {
input: 10,
output: 30,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 128000,
maxTokens: 4096,
} satisfies Model,
"gpt-4-1106-preview": {
id: "gpt-4-1106-preview",
name: "OpenAI: GPT-4 Turbo (older v1106)",
provider: "openai",
reasoning: false,
input: ["text"],
cost: {
input: 10,
output: 30,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 128000,
maxTokens: 4096,
} satisfies Model,
"gpt-3.5-turbo-16k": {
id: "gpt-3.5-turbo-16k",
name: "OpenAI: GPT-3.5 Turbo 16k",
provider: "openai",
reasoning: false,
input: ["text"],
cost: {
input: 3,
output: 4,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 16385,
maxTokens: 4096,
} satisfies Model,
"gpt-4": {
id: "gpt-4",
name: "OpenAI: GPT-4",
provider: "openai",
reasoning: false,
input: ["text"],
cost: {
input: 30,
output: 60,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 8191,
maxTokens: 4096,
} satisfies Model,
"gpt-4-0314": {
id: "gpt-4-0314",
name: "OpenAI: GPT-4 (older v0314)",
provider: "openai",
reasoning: false,
input: ["text"],
cost: {
input: 30,
output: 60,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 8191,
maxTokens: 4096,
} satisfies Model,
"gpt-3.5-turbo": {
id: "gpt-3.5-turbo",
name: "OpenAI: GPT-3.5 Turbo",
provider: "openai",
reasoning: false,
input: ["text"],
cost: {
input: 0.5,
output: 1.5,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 16385,
maxTokens: 4096,
} satisfies Model,
},
},
anthropic: {
models: {
"claude-opus-4-1": {
id: "claude-opus-4-1",
name: "Anthropic: Claude Opus 4.1",
provider: "anthropic",
reasoning: true,
input: ["text", "image"],
cost: {
input: 15,
output: 75,
cacheRead: 1.5,
cacheWrite: 18.75,
},
contextWindow: 200000,
maxTokens: 32000,
} satisfies Model,
"claude-opus-4-0": {
id: "claude-opus-4-0",
name: "Anthropic: Claude Opus 4",
provider: "anthropic",
reasoning: true,
input: ["text", "image"],
cost: {
input: 15,
output: 75,
cacheRead: 1.5,
cacheWrite: 18.75,
},
contextWindow: 200000,
maxTokens: 32000,
} satisfies Model,
"claude-sonnet-4-0": {
id: "claude-sonnet-4-0",
name: "Anthropic: Claude Sonnet 4",
provider: "anthropic",
reasoning: true,
input: ["text", "image"],
cost: {
input: 3,
output: 15,
cacheRead: 0.3,
cacheWrite: 3.75,
},
contextWindow: 1000000,
maxTokens: 64000,
} satisfies Model,
"claude-3-7-sonnet-latest": {
id: "claude-3-7-sonnet-latest",
name: "Anthropic: Claude 3.7 Sonnet",
provider: "anthropic",
reasoning: true,
input: ["text", "image"],
cost: {
input: 3,
output: 15,
cacheRead: 0.3,
cacheWrite: 3.75,
},
contextWindow: 200000,
maxTokens: 64000,
} satisfies Model,
"claude-3-7-sonnet-latest:thinking": {
id: "claude-3-7-sonnet-latest:thinking",
name: "Anthropic: Claude 3.7 Sonnet (thinking)",
provider: "anthropic",
reasoning: true,
input: ["text", "image"],
cost: {
input: 3,
output: 15,
cacheRead: 0.3,
cacheWrite: 3.75,
},
contextWindow: 200000,
maxTokens: 64000,
} satisfies Model,
"claude-3-5-haiku-20241022": {
id: "claude-3-5-haiku-20241022",
name: "Anthropic: Claude 3.5 Haiku (2024-10-22)",
provider: "anthropic",
reasoning: false,
input: ["text", "image"],
cost: {
input: 0.7999999999999999,
output: 4,
cacheRead: 0.08,
cacheWrite: 1,
},
contextWindow: 200000,
maxTokens: 8192,
} satisfies Model,
"claude-3-5-haiku-latest": {
id: "claude-3-5-haiku-latest",
name: "Anthropic: Claude 3.5 Haiku",
provider: "anthropic",
reasoning: false,
input: ["text", "image"],
cost: {
input: 0.7999999999999999,
output: 4,
cacheRead: 0.08,
cacheWrite: 1,
},
contextWindow: 200000,
maxTokens: 8192,
} satisfies Model,
"claude-3-5-sonnet-latest": {
id: "claude-3-5-sonnet-latest",
name: "Anthropic: Claude 3.5 Sonnet",
provider: "anthropic",
reasoning: false,
input: ["text", "image"],
cost: {
input: 3,
output: 15,
cacheRead: 0.3,
cacheWrite: 3.75,
},
contextWindow: 200000,
maxTokens: 8192,
} satisfies Model,
"claude-3-5-sonnet-20240620": {
id: "claude-3-5-sonnet-20240620",
name: "Anthropic: Claude 3.5 Sonnet (2024-06-20)",
provider: "anthropic",
reasoning: false,
input: ["text", "image"],
cost: {
input: 3,
output: 15,
cacheRead: 0.3,
cacheWrite: 3.75,
},
contextWindow: 200000,
maxTokens: 8192,
} satisfies Model,
"claude-3-haiku-20240307": {
id: "claude-3-haiku-20240307",
name: "Anthropic: Claude 3 Haiku",
provider: "anthropic",
reasoning: false,
input: ["text", "image"],
cost: {
input: 0.25,
output: 1.25,
cacheRead: 0.03,
cacheWrite: 0.3,
},
contextWindow: 200000,
maxTokens: 4096,
} satisfies Model,
"claude-3-opus-20240229": {
id: "claude-3-opus-20240229",
name: "Anthropic: Claude 3 Opus",
provider: "anthropic",
reasoning: false,
input: ["text", "image"],
cost: {
input: 15,
output: 75,
cacheRead: 1.5,
cacheWrite: 18.75,
},
contextWindow: 200000,
maxTokens: 4096,
} satisfies Model,
},
},
google: {
models: {
"gemini-2.5-flash-lite": {
id: "gemini-2.5-flash-lite",
name: "Google: Gemini 2.5 Flash Lite",
provider: "google",
reasoning: true,
input: ["text", "image"],
cost: {
input: 0.09999999999999999,
output: 0.39999999999999997,
cacheRead: 0.024999999999999998,
cacheWrite: 0.18330000000000002,
},
contextWindow: 1048576,
maxTokens: 65535,
} satisfies Model,
"gemini-2.5-flash-lite-preview-06-17": {
id: "gemini-2.5-flash-lite-preview-06-17",
name: "Google: Gemini 2.5 Flash Lite Preview 06-17",
provider: "google",
reasoning: true,
input: ["text", "image"],
cost: {
input: 0.09999999999999999,
output: 0.39999999999999997,
cacheRead: 0.024999999999999998,
cacheWrite: 0.18330000000000002,
},
contextWindow: 1048576,
maxTokens: 65535,
} satisfies Model,
"gemini-2.5-flash": {
id: "gemini-2.5-flash",
name: "Google: Gemini 2.5 Flash",
provider: "google",
reasoning: true,
input: ["text", "image"],
cost: {
input: 0.3,
output: 2.5,
cacheRead: 0.075,
cacheWrite: 0.3833,
},
contextWindow: 1048576,
maxTokens: 65535,
} satisfies Model,
"gemini-2.5-pro": {
id: "gemini-2.5-pro",
name: "Google: Gemini 2.5 Pro",
provider: "google",
reasoning: true,
input: ["text", "image"],
cost: {
input: 1.25,
output: 10,
cacheRead: 0.31,
cacheWrite: 1.625,
},
contextWindow: 1048576,
maxTokens: 65536,
} satisfies Model,
"gemini-2.5-pro-preview": {
id: "gemini-2.5-pro-preview",
name: "Google: Gemini 2.5 Pro Preview 06-05",
provider: "google",
reasoning: true,
input: ["text", "image"],
cost: {
input: 1.25,
output: 10,
cacheRead: 0.31,
cacheWrite: 1.625,
},
contextWindow: 1048576,
maxTokens: 65536,
} satisfies Model,
"gemini-2.5-pro-preview-05-06": {
id: "gemini-2.5-pro-preview-05-06",
name: "Google: Gemini 2.5 Pro Preview 05-06",
provider: "google",
reasoning: true,
input: ["text", "image"],
cost: {
input: 1.25,
output: 10,
cacheRead: 0.31,
cacheWrite: 1.625,
},
contextWindow: 1048576,
maxTokens: 65535,
} satisfies Model,
"gemini-2.5-pro-exp-03-25": {
id: "gemini-2.5-pro-exp-03-25",
name: "Google: Gemini 2.5 Pro Experimental",
provider: "google",
reasoning: false,
input: ["text", "image"],
cost: {
input: 0,
output: 0,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 1048576,
maxTokens: 65535,
} satisfies Model,
"gemini-2.0-flash-lite-001": {
id: "gemini-2.0-flash-lite-001",
name: "Google: Gemini 2.0 Flash Lite",
provider: "google",
reasoning: false,
input: ["text", "image"],
cost: {
input: 0.075,
output: 0.3,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 1048576,
maxTokens: 8192,
} satisfies Model,
"gemini-2.0-flash-001": {
id: "gemini-2.0-flash-001",
name: "Google: Gemini 2.0 Flash",
provider: "google",
reasoning: false,
input: ["text", "image"],
cost: {
input: 0.09999999999999999,
output: 0.39999999999999997,
cacheRead: 0.024999999999999998,
cacheWrite: 0.18330000000000002,
},
contextWindow: 1048576,
maxTokens: 8192,
} satisfies Model,
"gemini-2.0-flash-exp:free": {
id: "gemini-2.0-flash-exp:free",
name: "Google: Gemini 2.0 Flash Experimental (free)",
provider: "google",
reasoning: false,
input: ["text", "image"],
cost: {
input: 0,
output: 0,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 1048576,
maxTokens: 8192,
} satisfies Model,
"gemini-flash-1.5-8b": {
id: "gemini-flash-1.5-8b",
name: "Google: Gemini 1.5 Flash 8B",
provider: "google",
reasoning: false,
input: ["text", "image"],
cost: {
input: 0.0375,
output: 0.15,
cacheRead: 0.01,
cacheWrite: 0.0583,
},
contextWindow: 1000000,
maxTokens: 8192,
} satisfies Model,
"gemini-flash-1.5": {
id: "gemini-flash-1.5",
name: "Google: Gemini 1.5 Flash ",
provider: "google",
reasoning: false,
input: ["text", "image"],
cost: {
input: 0.075,
output: 0.3,
cacheRead: 0.01875,
cacheWrite: 0.1583,
},
contextWindow: 1000000,
maxTokens: 8192,
} satisfies Model,
"gemini-pro-1.5": {
id: "gemini-pro-1.5",
name: "Google: Gemini 1.5 Pro",
provider: "google",
reasoning: false,
input: ["text", "image"],
cost: {
input: 1.25,
output: 5,
cacheRead: 0,
cacheWrite: 0,
},
contextWindow: 2000000,
maxTokens: 8192,
} satisfies Model,
},
},
} as const;
// Helper type to extract models for each provider
export type ProviderModels = {
[K in keyof typeof PROVIDERS]: (typeof PROVIDERS)[K]["models"];
};