// Auto-generated by scripts/generate-models.ts // Do not edit manually. // Generated: 2026-06-16T13:33:11.614Z // Model count: 136 import type { ProviderModelConfig } from "@earendil-works/pi-coding-agent"; export const GENERATED_MODELS: ProviderModelConfig[] = [ { id: "anthropic/claude-haiku-4.5", name: "Anthropic: Claude Haiku 4.5", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 200000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.000001, output: 0.000005, }, input: ["text", "image"], maxTokens: 64000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "anthropic/claude-opus-4", name: "Anthropic: Claude Opus 4", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 200000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.000015, output: 0.000075, }, input: ["text", "image"], maxTokens: 32000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "anthropic/claude-opus-4.1", name: "Anthropic: Claude Opus 4.1", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 200000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.000015, output: 0.000075, }, input: ["text", "image"], maxTokens: 32000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "anthropic/claude-opus-4.5", name: "Anthropic: Claude Opus 4.5", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 200000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.000005, output: 0.000025, }, input: ["text", "image"], maxTokens: 64000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "anthropic/claude-opus-4.6", name: "Anthropic: Claude Opus 4.6", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1000000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.000005, output: 0.000025, }, input: ["text", "image"], maxTokens: 128000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "anthropic/claude-opus-4.7", name: "Anthropic: Claude Opus 4.7", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1000000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.000005, output: 0.000025, }, input: ["text", "image"], maxTokens: 128000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "anthropic/claude-opus-4.8", name: "Anthropic: Claude Opus 4.8", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1000000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.000005, output: 0.000025, }, input: ["text", "image"], maxTokens: 128000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "anthropic/claude-sonnet-4", name: "Anthropic: Claude Sonnet 4", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1000000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.000003, output: 0.000015, }, input: ["text", "image"], maxTokens: 64000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "anthropic/claude-sonnet-4.5", name: "Anthropic: Claude Sonnet 4.5", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1000000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.000003, output: 0.000015, }, input: ["text", "image"], maxTokens: 64000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "anthropic/claude-sonnet-4.6", name: "Anthropic: Claude Sonnet 4.6", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1000000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.000003, output: 0.000015, }, input: ["text", "image"], maxTokens: 64000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "deepseek/deepseek-chat", name: "DeepSeek: DeepSeek V3", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1048576, cost: { cacheRead: 0, cacheWrite: 0, input: 1.47e-7, output: 2.94e-7, }, input: ["text"], maxTokens: 384000, reasoning: false, }, { id: "deepseek/deepseek-reasoner", name: "deepseek/deepseek-reasoner", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1048576, cost: { cacheRead: 0, cacheWrite: 0, input: 4.35e-7, output: 8.7e-7, }, input: ["text"], maxTokens: 384000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "deepseek/deepseek-v4-flash", name: "DeepSeek: DeepSeek V4 Flash", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1048576, cost: { cacheRead: 0, cacheWrite: 0, input: 1.47e-7, output: 2.94e-7, }, input: ["text"], maxTokens: 384000, reasoning: false, }, { id: "deepseek/deepseek-v4-pro", name: "DeepSeek: DeepSeek V4 Pro", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1048576, cost: { cacheRead: 0, cacheWrite: 0, input: 4.56e-7, output: 9.1e-7, }, input: ["text"], maxTokens: 384000, reasoning: false, }, { id: "google/gemini-2.5-flash", name: "Google: Gemini 2.5 Flash", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1048576, cost: { cacheRead: 0, cacheWrite: 0, input: 3e-7, output: 0.0000025, }, input: ["text", "image"], maxTokens: 65536, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "google/gemini-2.5-flash-lite", name: "Google: Gemini 2.5 Flash Lite", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1048576, cost: { cacheRead: 0, cacheWrite: 0, input: 1e-7, output: 4e-7, }, input: ["text", "image"], maxTokens: 65536, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "google/gemini-2.5-flash-preview-tts", name: "google/gemini-2.5-flash-preview-tts", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 128000, cost: { cacheRead: 0, cacheWrite: 0, input: 5e-7, output: 0.00001, }, input: ["text"], maxTokens: 32768, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "google/gemini-2.5-pro", name: "Google: Gemini 2.5 Pro", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1048576, cost: { cacheRead: 0, cacheWrite: 0, input: 0.0000025, output: 0.000015, }, input: ["text", "image"], maxTokens: 65536, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "google/gemini-2.5-pro-preview-tts", name: "google/gemini-2.5-pro-preview-tts", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 128000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.000001, output: 0.00002, }, input: ["text"], maxTokens: 32768, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "google/gemini-3-flash-preview", name: "Google: Gemini 3 Flash Preview", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1048576, cost: { cacheRead: 0, cacheWrite: 0, input: 5e-7, output: 0.000003, }, input: ["text", "image"], maxTokens: 65536, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "google/gemini-3.1-flash-lite-preview", name: "Google: Gemini 3.1 Flash Lite Preview", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1048576, cost: { cacheRead: 0, cacheWrite: 0, input: 2.5e-7, output: 0.0000015, }, input: ["text", "image"], maxTokens: 65536, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "google/gemini-3.1-flash-tts-preview", name: "google/gemini-3.1-flash-tts-preview", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 128000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.000001, output: 0.00002, }, input: ["text"], maxTokens: 32768, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "google/gemini-3.1-pro-preview", name: "Google: Gemini 3.1 Pro Preview", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1048576, cost: { cacheRead: 0, cacheWrite: 0, input: 0.000002, output: 0.000012, }, input: ["text", "image"], maxTokens: 65536, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "google/gemini-3.1-pro-preview-customtools", name: "Google: Gemini 3.1 Pro Preview Custom Tools", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1048576, cost: { cacheRead: 0, cacheWrite: 0, input: 0.000004, output: 0.000018, }, input: ["text", "image"], maxTokens: 65536, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "google/gemini-3.5-flash", name: "Gemini 3.5 Flash", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1048576, cost: { cacheRead: 0, cacheWrite: 0, input: 0.0000015, output: 0.000009, }, input: ["text", "image"], maxTokens: 65536, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "google/gemini-flash-latest", name: "google/gemini-flash-latest", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 0, cost: { cacheRead: 0, cacheWrite: 0, input: 5e-7, output: 0.000003, }, input: ["text", "image"], maxTokens: 65536, reasoning: false, }, { id: "google/gemini-flash-lite-latest", name: "google/gemini-flash-lite-latest", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 0, cost: { cacheRead: 0, cacheWrite: 0, input: 2.5e-7, output: 0.0000015, }, input: ["text", "image"], maxTokens: 65536, reasoning: false, }, { id: "google/gemini-pro-latest", name: "google/gemini-pro-latest", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 0, cost: { cacheRead: 0, cacheWrite: 0, input: 0.000004, output: 0.000018, }, input: ["text", "image"], maxTokens: 65536, reasoning: false, }, { id: "google/gemini-robotics-er-1.6-preview", name: "google/gemini-robotics-er-1.6-preview", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 0, cost: { cacheRead: 0, cacheWrite: 0, input: 0.000001, output: 0.000005, }, input: ["text", "image"], maxTokens: 65536, reasoning: false, }, { id: "google/gemma-4-26b-a4b-it", name: "Google: Gemma 4 26B A4B ", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 262144, cost: { cacheRead: 0, cacheWrite: 0, input: 6e-8, output: 3.3e-7, }, input: ["text", "image"], maxTokens: 0, reasoning: false, }, { id: "grok/grok-4.3", name: "grok/grok-4.3", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1000000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.00000125, output: 0.0000025, }, input: ["text", "image"], maxTokens: 0, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "kimi/kimi-k2.5", name: "kimi/kimi-k2.5", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 262144, cost: { cacheRead: 0, cacheWrite: 0, input: 6e-7, output: 0.000003, }, input: ["text", "image"], maxTokens: 32768, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "kimi/kimi-k2.6", name: "kimi/kimi-k2.6", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 262144, cost: { cacheRead: 0, cacheWrite: 0, input: 9.5e-7, output: 0.000004, }, input: ["text", "image"], maxTokens: 32768, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "kimi/kimi-k2.7-code", name: "MoonshotAI: Kimi K2.7 Code", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 262144, cost: { cacheRead: 0, cacheWrite: 0, input: 9.5e-7, output: 0.000004, }, input: ["text", "image"], maxTokens: 262144, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "minimax/minimax-m2.5", name: "MiniMax: MiniMax M2.5", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 204800, cost: { cacheRead: 0, cacheWrite: 0, input: 3e-7, output: 0.0000012, }, input: ["text"], maxTokens: 2048, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "minimax/minimax-m2.5-highspeed", name: "MiniMax M2.5 highspeed", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 204800, cost: { cacheRead: 0, cacheWrite: 0, input: 6e-7, output: 0.0000024, }, input: ["text"], maxTokens: 2048, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "minimax/minimax-m2.7", name: "MiniMax: MiniMax M2.7", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 204800, cost: { cacheRead: 0, cacheWrite: 0, input: 3e-7, output: 0.0000012, }, input: ["text"], maxTokens: 2048, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "minimax/minimax-m2.7-highspeed", name: "MiniMax M2.7 highspeed", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 204800, cost: { cacheRead: 0, cacheWrite: 0, input: 6e-7, output: 0.0000024, }, input: ["text"], maxTokens: 2048, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "openai/gpt-3.5-turbo", name: "OpenAI: GPT-3.5 Turbo", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 16385, cost: { cacheRead: 0, cacheWrite: 0, input: 5e-7, output: 0.0000015, }, input: ["text"], maxTokens: 4096, reasoning: false, }, { id: "openai/gpt-3.5-turbo-0125", name: "openai/gpt-3.5-turbo-0125", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 0, cost: { cacheRead: 0, cacheWrite: 0, input: 5e-7, output: 0.0000015, }, input: ["text"], maxTokens: 4096, reasoning: false, }, { id: "openai/gpt-3.5-turbo-1106", name: "openai/gpt-3.5-turbo-1106", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 0, cost: { cacheRead: 0, cacheWrite: 0, input: 0.000001, output: 0.000002, }, input: ["text"], maxTokens: 4096, reasoning: false, }, { id: "openai/gpt-3.5-turbo-16k", name: "OpenAI: GPT-3.5 Turbo 16k", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 16385, cost: { cacheRead: 0, cacheWrite: 0, input: 0.000003, output: 0.000004, }, input: ["text"], maxTokens: 4096, reasoning: false, }, { id: "openai/gpt-4", name: "OpenAI: GPT-4", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 8191, cost: { cacheRead: 0, cacheWrite: 0, input: 0.00003, output: 0.00006, }, input: ["text"], maxTokens: 8192, reasoning: false, }, { id: "openai/gpt-4-0613", name: "openai/gpt-4-0613", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 0, cost: { cacheRead: 0, cacheWrite: 0, input: 0.00003, output: 0.00006, }, input: ["text"], maxTokens: 8192, reasoning: false, }, { id: "openai/gpt-4-turbo", name: "OpenAI: GPT-4 Turbo", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 128000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.00001, output: 0.00003, }, input: ["text", "image"], maxTokens: 4096, reasoning: false, }, { id: "openai/gpt-4-turbo-2024-04-09", name: "openai/gpt-4-turbo-2024-04-09", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 128000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.00001, output: 0.00003, }, input: ["text", "image"], maxTokens: 4096, reasoning: false, }, { id: "openai/gpt-4.1", name: "OpenAI: GPT-4.1", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1047576, cost: { cacheRead: 0, cacheWrite: 0, input: 0.000002, output: 0.000008, }, input: ["text", "image"], maxTokens: 32768, reasoning: false, }, { id: "openai/gpt-4.1-2025-04-14", name: "openai/gpt-4.1-2025-04-14", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1047576, cost: { cacheRead: 0, cacheWrite: 0, input: 0.000002, output: 0.000008, }, input: ["text", "image"], maxTokens: 32768, reasoning: false, }, { id: "openai/gpt-4.1-mini", name: "OpenAI: GPT-4.1 Mini", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1047576, cost: { cacheRead: 0, cacheWrite: 0, input: 4e-7, output: 0.0000016, }, input: ["text", "image"], maxTokens: 32768, reasoning: false, }, { id: "openai/gpt-4.1-mini-2025-04-14", name: "openai/gpt-4.1-mini-2025-04-14", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1047576, cost: { cacheRead: 0, cacheWrite: 0, input: 4e-7, output: 0.0000016, }, input: ["text", "image"], maxTokens: 32768, reasoning: false, }, { id: "openai/gpt-4.1-nano", name: "OpenAI: GPT-4.1 Nano", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1047576, cost: { cacheRead: 0, cacheWrite: 0, input: 1e-7, output: 4e-7, }, input: ["text", "image"], maxTokens: 32768, reasoning: false, }, { id: "openai/gpt-4.1-nano-2025-04-14", name: "openai/gpt-4.1-nano-2025-04-14", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1047576, cost: { cacheRead: 0, cacheWrite: 0, input: 1e-7, output: 4e-7, }, input: ["text", "image"], maxTokens: 32768, reasoning: false, }, { id: "openai/gpt-4o", name: "OpenAI: GPT-4o", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 128000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.0000025, output: 0.00001, }, input: ["text", "image"], maxTokens: 16384, reasoning: false, }, { id: "openai/gpt-4o-2024-05-13", name: "OpenAI: GPT-4o (2024-05-13)", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 128000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.000005, output: 0.000015, }, input: ["text", "image"], maxTokens: 16384, reasoning: false, }, { id: "openai/gpt-4o-2024-08-06", name: "OpenAI: GPT-4o (2024-08-06)", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 128000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.0000025, output: 0.00001, }, input: ["text", "image"], maxTokens: 16384, reasoning: false, }, { id: "openai/gpt-4o-2024-11-20", name: "OpenAI: GPT-4o (2024-11-20)", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 128000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.0000025, output: 0.00001, }, input: ["text", "image"], maxTokens: 16384, reasoning: false, }, { id: "openai/gpt-4o-mini", name: "OpenAI: GPT-4o-mini", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 128000, cost: { cacheRead: 0, cacheWrite: 0, input: 1.5e-7, output: 6e-7, }, input: ["text", "image"], maxTokens: 16384, reasoning: false, }, { id: "openai/gpt-4o-mini-2024-07-18", name: "OpenAI: GPT-4o-mini (2024-07-18)", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 128000, cost: { cacheRead: 0, cacheWrite: 0, input: 1.5e-7, output: 6e-7, }, input: ["text", "image"], maxTokens: 16384, reasoning: false, }, { id: "openai/gpt-4o-mini-search-preview", name: "OpenAI: GPT-4o-mini Search Preview", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 128000, cost: { cacheRead: 0, cacheWrite: 0, input: 1.5e-7, output: 6e-7, }, input: ["text"], maxTokens: 16384, reasoning: false, }, { id: "openai/gpt-4o-mini-search-preview-2025-03-11", name: "openai/gpt-4o-mini-search-preview-2025-03-11", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 128000, cost: { cacheRead: 0, cacheWrite: 0, input: 1.5e-7, output: 6e-7, }, input: ["text"], maxTokens: 16384, reasoning: false, }, { id: "openai/gpt-4o-mini-tts", name: "openai/gpt-4o-mini-tts", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 128000, cost: { cacheRead: 0, cacheWrite: 0, input: 6e-7, output: 0.000012, }, input: ["text"], maxTokens: 32768, reasoning: false, }, { id: "openai/gpt-4o-mini-tts-2025-03-20", name: "openai/gpt-4o-mini-tts-2025-03-20", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 128000, cost: { cacheRead: 0, cacheWrite: 0, input: 6e-7, output: 0.000012, }, input: ["text"], maxTokens: 32768, reasoning: false, }, { id: "openai/gpt-4o-mini-tts-2025-12-15", name: "openai/gpt-4o-mini-tts-2025-12-15", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 128000, cost: { cacheRead: 0, cacheWrite: 0, input: 6e-7, output: 0.000012, }, input: ["text"], maxTokens: 32768, reasoning: false, }, { id: "openai/gpt-4o-search-preview", name: "OpenAI: GPT-4o Search Preview", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 128000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.0000025, output: 0.00001, }, input: ["text"], maxTokens: 16384, reasoning: false, }, { id: "openai/gpt-4o-search-preview-2025-03-11", name: "openai/gpt-4o-search-preview-2025-03-11", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 128000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.0000025, output: 0.00001, }, input: ["text"], maxTokens: 16384, reasoning: false, }, { id: "openai/gpt-5", name: "OpenAI: GPT-5", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 400000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.00000125, output: 0.00001, }, input: ["text", "image"], maxTokens: 128000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5-2025-08-07", name: "openai/gpt-5-2025-08-07", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 400000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.00000125, output: 0.00001, }, input: ["text", "image"], maxTokens: 128000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5-chat-latest", name: "openai/gpt-5-chat-latest", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 0, cost: { cacheRead: 0, cacheWrite: 0, input: 0.00000125, output: 0.00001, }, input: ["text", "image"], maxTokens: 100000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5-codex", name: "OpenAI: GPT-5 Codex", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 400000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.00000125, output: 0.00001, }, input: ["text", "image"], maxTokens: 128000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5-mini", name: "OpenAI: GPT-5 Mini", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 400000, cost: { cacheRead: 0, cacheWrite: 0, input: 2.5e-7, output: 0.000002, }, input: ["text", "image"], maxTokens: 128000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5-mini-2025-08-07", name: "openai/gpt-5-mini-2025-08-07", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 400000, cost: { cacheRead: 0, cacheWrite: 0, input: 2.5e-7, output: 0.000002, }, input: ["text", "image"], maxTokens: 128000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5-nano", name: "OpenAI: GPT-5 Nano", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 400000, cost: { cacheRead: 0, cacheWrite: 0, input: 5e-8, output: 4e-7, }, input: ["text", "image"], maxTokens: 128000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5-nano-2025-08-07", name: "openai/gpt-5-nano-2025-08-07", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 400000, cost: { cacheRead: 0, cacheWrite: 0, input: 5e-8, output: 4e-7, }, input: ["text", "image"], maxTokens: 128000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5-pro", name: "OpenAI: GPT-5 Pro", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 400000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.000015, output: 0.00012, }, input: ["text", "image"], maxTokens: 272000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5-pro-2025-10-06", name: "openai/gpt-5-pro-2025-10-06", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 400000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.000015, output: 0.00012, }, input: ["text", "image"], maxTokens: 272000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5-search-api", name: "openai/gpt-5-search-api", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 0, cost: { cacheRead: 0, cacheWrite: 0, input: 0.00000125, output: 0.00001, }, input: ["text", "image"], maxTokens: 128000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5-search-api-2025-10-14", name: "openai/gpt-5-search-api-2025-10-14", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 0, cost: { cacheRead: 0, cacheWrite: 0, input: 0.00000125, output: 0.00001, }, input: ["text", "image"], maxTokens: 128000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5.1", name: "OpenAI: GPT-5.1", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 400000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.00000125, output: 0.00001, }, input: ["text", "image"], maxTokens: 128000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5.1-2025-11-13", name: "openai/gpt-5.1-2025-11-13", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 400000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.00000125, output: 0.00001, }, input: ["text", "image"], maxTokens: 128000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5.1-chat-latest", name: "openai/gpt-5.1-chat-latest", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 0, cost: { cacheRead: 0, cacheWrite: 0, input: 0.00000125, output: 0.00001, }, input: ["text", "image"], maxTokens: 16384, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5.1-codex", name: "OpenAI: GPT-5.1-Codex", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 400000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.00000125, output: 0.00001, }, input: ["text", "image"], maxTokens: 128000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5.1-codex-mini", name: "OpenAI: GPT-5.1-Codex-Mini", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 400000, cost: { cacheRead: 0, cacheWrite: 0, input: 2.5e-7, output: 0.000002, }, input: ["text", "image"], maxTokens: 128000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5.2", name: "OpenAI: GPT-5.2", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 400000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.00000175, output: 0.000014, }, input: ["text", "image"], maxTokens: 128000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5.2-2025-12-11", name: "openai/gpt-5.2-2025-12-11", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 400000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.00000175, output: 0.000014, }, input: ["text", "image"], maxTokens: 128000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5.2-chat-latest", name: "openai/gpt-5.2-chat-latest", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 0, cost: { cacheRead: 0, cacheWrite: 0, input: 0.00000175, output: 0.000014, }, input: ["text", "image"], maxTokens: 16384, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5.2-codex", name: "OpenAI: GPT-5.2-Codex", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 400000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.00000175, output: 0.000014, }, input: ["text", "image"], maxTokens: 128000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5.2-pro", name: "OpenAI: GPT-5.2 Pro", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 400000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.000021, output: 0.000168, }, input: ["text", "image"], maxTokens: 128000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5.2-pro-2025-12-11", name: "openai/gpt-5.2-pro-2025-12-11", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 400000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.000021, output: 0.000168, }, input: ["text", "image"], maxTokens: 128000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5.3-chat-latest", name: "openai/gpt-5.3-chat-latest", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 0, cost: { cacheRead: 0, cacheWrite: 0, input: 0.00000175, output: 0.000014, }, input: ["text", "image"], maxTokens: 16384, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5.3-codex", name: "OpenAI: GPT-5.3-Codex", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 400000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.00000175, output: 0.000014, }, input: ["text", "image"], maxTokens: 128000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5.4", name: "OpenAI: GPT-5.4", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1050000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.000005, output: 0.0000225, }, input: ["text", "image"], maxTokens: 128000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5.4-2026-03-05", name: "openai/gpt-5.4-2026-03-05", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1050000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.000005, output: 0.0000225, }, input: ["text", "image"], maxTokens: 128000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5.4-mini", name: "OpenAI: GPT-5.4 Mini", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 400000, cost: { cacheRead: 0, cacheWrite: 0, input: 7.5e-7, output: 0.0000045, }, input: ["text", "image"], maxTokens: 128000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5.4-mini-2026-03-17", name: "openai/gpt-5.4-mini-2026-03-17", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 0, cost: { cacheRead: 0, cacheWrite: 0, input: 7.5e-7, output: 0.0000045, }, input: ["text", "image"], maxTokens: 128000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5.4-nano", name: "OpenAI: GPT-5.4 Nano", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 400000, cost: { cacheRead: 0, cacheWrite: 0, input: 2e-7, output: 0.00000125, }, input: ["text", "image"], maxTokens: 128000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5.4-nano-2026-03-17", name: "openai/gpt-5.4-nano-2026-03-17", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 0, cost: { cacheRead: 0, cacheWrite: 0, input: 2e-7, output: 0.00000125, }, input: ["text", "image"], maxTokens: 128000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5.4-pro", name: "OpenAI: GPT-5.4 Pro", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1050000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.00006, output: 0.00027, }, input: ["text", "image"], maxTokens: 128000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5.4-pro-2026-03-05", name: "openai/gpt-5.4-pro-2026-03-05", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1050000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.00006, output: 0.00027, }, input: ["text", "image"], maxTokens: 128000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5.5", name: "OpenAI: GPT-5.5", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 0, cost: { cacheRead: 0, cacheWrite: 0, input: 0.000005, output: 0.00003, }, input: ["text", "image"], maxTokens: 128000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5.5-2026-04-23", name: "openai/gpt-5.5-2026-04-23", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 0, cost: { cacheRead: 0, cacheWrite: 0, input: 0.00001, output: 0.000045, }, input: ["text", "image"], maxTokens: 128000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5.5-pro", name: "OpenAI: GPT-5.5 Pro", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 0, cost: { cacheRead: 0, cacheWrite: 0, input: 0.00003, output: 0.00018, }, input: ["text", "image"], maxTokens: 100000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/gpt-5.5-pro-2026-04-23", name: "openai/gpt-5.5-pro-2026-04-23", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 0, cost: { cacheRead: 0, cacheWrite: 0, input: 0.00006, output: 0.00027, }, input: ["text", "image"], maxTokens: 100000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: "low", off: null, xhigh: "high", }, }, { id: "openai/tts-1", name: "openai/tts-1", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 128000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.000015, output: 0.000015, }, input: ["text"], maxTokens: 32768, reasoning: false, }, { id: "openai/tts-1-1106", name: "openai/tts-1-1106", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 128000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.000015, output: 0.000015, }, input: ["text"], maxTokens: 32768, reasoning: false, }, { id: "openai/tts-1-hd", name: "openai/tts-1-hd", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 128000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.00003, output: 0.00003, }, input: ["text"], maxTokens: 32768, reasoning: false, }, { id: "openai/tts-1-hd-1106", name: "openai/tts-1-hd-1106", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 128000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.00003, output: 0.00003, }, input: ["text"], maxTokens: 32768, reasoning: false, }, { id: "orcarouter/fusion", name: "orcarouter/fusion", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1000000, cost: { cacheRead: 0, cacheWrite: 0, input: 0, output: 0, }, input: ["text"], maxTokens: 32768, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "orcarouter/fusion-flash", name: "orcarouter/fusion-flash", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 200000, cost: { cacheRead: 0, cacheWrite: 0, input: 0, output: 0, }, input: ["text"], maxTokens: 32768, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "orcarouter/fusion-mini", name: "orcarouter/fusion-mini", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1000000, cost: { cacheRead: 0, cacheWrite: 0, input: 0, output: 0, }, input: ["text"], maxTokens: 32768, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "qwen/qwen3-max", name: "Qwen: Qwen3 Max", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 262144, cost: { cacheRead: 0, cacheWrite: 0, input: 3.59e-7, output: 0.000001434, }, input: ["text"], maxTokens: 65536, reasoning: false, }, { id: "qwen/qwen3-max-preview", name: "qwen/qwen3-max-preview", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 262144, cost: { cacheRead: 0, cacheWrite: 0, input: 8.61e-7, output: 0.000003441, }, input: ["text"], maxTokens: 65536, reasoning: false, }, { id: "qwen/qwen3-vl-235b-a22b-thinking", name: "Qwen: Qwen3 VL 235B A22B Thinking", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 131072, cost: { cacheRead: 0, cacheWrite: 0, input: 4e-7, output: 0.000004, }, input: ["text", "image"], maxTokens: 40960, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "qwen/qwen3-vl-8b-instruct", name: "Qwen: Qwen3 VL 8B Instruct", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 131072, cost: { cacheRead: 0, cacheWrite: 0, input: 1.8e-7, output: 7e-7, }, input: ["text", "image"], maxTokens: 32768, reasoning: false, }, { id: "qwen/qwen3-vl-8b-thinking", name: "Qwen: Qwen3 VL 8B Thinking", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 131072, cost: { cacheRead: 0, cacheWrite: 0, input: 1.8e-7, output: 0.0000021, }, input: ["text", "image"], maxTokens: 40960, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "qwen/qwen3.5-122b-a10b", name: "Qwen: Qwen3.5-122B-A10B", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 32768, cost: { cacheRead: 0, cacheWrite: 0, input: 1.15e-7, output: 9.17e-7, }, input: ["text", "image"], maxTokens: 65536, reasoning: false, }, { id: "qwen/qwen3.5-27b", name: "Qwen: Qwen3.5-27B", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 32768, cost: { cacheRead: 0, cacheWrite: 0, input: 8.6e-8, output: 6.88e-7, }, input: ["text", "image"], maxTokens: 65536, reasoning: false, }, { id: "qwen/qwen3.5-35b-a3b", name: "Qwen: Qwen3.5-35B-A3B", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 32768, cost: { cacheRead: 0, cacheWrite: 0, input: 5.7e-8, output: 4.59e-7, }, input: ["text", "image"], maxTokens: 65536, reasoning: false, }, { id: "qwen/qwen3.5-397b-a17b", name: "Qwen: Qwen3.5 397B A17B", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 32768, cost: { cacheRead: 0, cacheWrite: 0, input: 1.72e-7, output: 0.000001032, }, input: ["text", "image"], maxTokens: 65536, reasoning: false, }, { id: "qwen/qwen3.5-flash", name: "qwen/qwen3.5-flash", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1048576, cost: { cacheRead: 0, cacheWrite: 0, input: 1e-7, output: 4e-7, }, input: ["text", "image"], maxTokens: 65536, reasoning: false, }, { id: "qwen/qwen3.5-flash-2026-02-23", name: "qwen/qwen3.5-flash-2026-02-23", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1048576, cost: { cacheRead: 0, cacheWrite: 0, input: 1e-7, output: 4e-7, }, input: ["text", "image"], maxTokens: 65536, reasoning: false, }, { id: "qwen/qwen3.5-plus", name: "qwen/qwen3.5-plus", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1048576, cost: { cacheRead: 0, cacheWrite: 0, input: 1.15e-7, output: 6.88e-7, }, input: ["text", "image"], maxTokens: 65536, reasoning: false, }, { id: "qwen/qwen3.5-plus-2026-02-15", name: "qwen/qwen3.5-plus-2026-02-15", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1048576, cost: { cacheRead: 0, cacheWrite: 0, input: 1.15e-7, output: 6.88e-7, }, input: ["text", "image"], maxTokens: 65536, reasoning: false, }, { id: "qwen/qwen3.6-35b-a3b", name: "Qwen: Qwen3.6 35B A3B", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 262144, cost: { cacheRead: 0, cacheWrite: 0, input: 2.48e-7, output: 0.000001485, }, input: ["text", "image"], maxTokens: 65536, reasoning: false, }, { id: "qwen/qwen3.6-flash", name: "Qwen: Qwen3.6 Flash", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1048576, cost: { cacheRead: 0, cacheWrite: 0, input: 2.5e-7, output: 0.0000015, }, input: ["text", "image"], maxTokens: 65536, reasoning: false, }, { id: "qwen/qwen3.6-flash-2026-04-16", name: "qwen/qwen3.6-flash-2026-04-16", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1048576, cost: { cacheRead: 0, cacheWrite: 0, input: 2.5e-7, output: 0.0000015, }, input: ["text", "image"], maxTokens: 65536, reasoning: false, }, { id: "qwen/qwen3.6-plus", name: "Qwen: Qwen3.6 Plus", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1048576, cost: { cacheRead: 0, cacheWrite: 0, input: 5e-7, output: 0.000003, }, input: ["text", "image"], maxTokens: 65536, reasoning: false, }, { id: "qwen/qwen3.6-plus-2026-04-02", name: "qwen/qwen3.6-plus-2026-04-02", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1048576, cost: { cacheRead: 0, cacheWrite: 0, input: 2.76e-7, output: 0.000001651, }, input: ["text", "image"], maxTokens: 65536, reasoning: false, }, { id: "qwen/qwen3.7-max", name: "Qwen3.7 Max", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1000000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.00000125, output: 0.00000375, }, input: ["text"], maxTokens: 64000, reasoning: false, }, { id: "qwen/qwen3.7-max-2026-05-20", name: "Qwen3.7 Max (2026-05-20)", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1000000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.00000125, output: 0.00000375, }, input: ["text"], maxTokens: 64000, reasoning: false, }, { id: "qwen/qwen3.7-plus", name: "Qwen: Qwen3.7 Plus", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 1000000, cost: { cacheRead: 0, cacheWrite: 0, input: 3.5e-7, output: 0.00000142, }, input: ["text", "image"], maxTokens: 65536, reasoning: false, }, { id: "z-ai/glm-4.5", name: "Z.ai: GLM 4.5", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 128000, cost: { cacheRead: 0, cacheWrite: 0, input: 6e-7, output: 0.0000022, }, input: ["text"], maxTokens: 96000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "z-ai/glm-4.5-air", name: "Z.ai: GLM 4.5 Air", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 128000, cost: { cacheRead: 0, cacheWrite: 0, input: 2e-7, output: 0.0000011, }, input: ["text"], maxTokens: 96000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "z-ai/glm-4.6", name: "Z.ai: GLM 4.6", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: true, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 200000, cost: { cacheRead: 0, cacheWrite: 0, input: 6e-7, output: 0.0000022, }, input: ["text"], maxTokens: 128000, reasoning: true, thinkingLevelMap: { high: "high", low: "low", medium: "medium", minimal: null, off: "none", xhigh: "max", }, }, { id: "z-ai/glm-4.7", name: "Z.ai: GLM 4.7", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 200000, cost: { cacheRead: 0, cacheWrite: 0, input: 6e-7, output: 0.0000022, }, input: ["text"], maxTokens: 128000, reasoning: false, }, { id: "z-ai/glm-5", name: "Z.ai: GLM 5", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 200000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.000001, output: 0.0000032, }, input: ["text"], maxTokens: 128000, reasoning: false, }, { id: "z-ai/glm-5.1", name: "Z.ai: GLM 5.1", compat: { maxTokensField: "max_completion_tokens", openRouterRouting: {}, requiresAssistantAfterToolResult: false, requiresReasoningContentOnAssistantMessages: false, requiresThinkingAsText: false, requiresToolResultName: false, sendSessionAffinityHeaders: false, supportsDeveloperRole: false, supportsLongCacheRetention: false, supportsReasoningEffort: false, supportsStore: false, supportsStrictMode: false, supportsUsageInStreaming: true, thinkingFormat: "openai", vercelGatewayRouting: {}, zaiToolStream: false, }, contextWindow: 200000, cost: { cacheRead: 0, cacheWrite: 0, input: 0.0000014, output: 0.0000044, }, input: ["text"], maxTokens: 128000, reasoning: false, }, ];