diff --git a/internal/providers/configs/openrouter.json b/internal/providers/configs/openrouter.json index c6d27b26f817aa2718c4d7670011abe3a2905975..98b920eff5a10aebd86175a24c698355c9b44878 100644 --- a/internal/providers/configs/openrouter.json +++ b/internal/providers/configs/openrouter.json @@ -103,8 +103,8 @@ "name": "Anthropic: Claude 3.5 Haiku", "cost_per_1m_in": 0.7999999999999999, "cost_per_1m_out": 4, - "cost_per_1m_in_cached": 0, - "cost_per_1m_out_cached": 0, + "cost_per_1m_in_cached": 1, + "cost_per_1m_out_cached": 0.08, "context_window": 200000, "default_max_tokens": 4096, "can_reason": false, @@ -176,6 +176,19 @@ "has_reasoning_efforts": true, "supports_attachments": true }, + { + "id": "anthropic/claude-haiku-4.5", + "name": "Anthropic: Claude Haiku 4.5", + "cost_per_1m_in": 1, + "cost_per_1m_out": 5, + "cost_per_1m_in_cached": 1.25, + "cost_per_1m_out_cached": 0.09999999999999999, + "context_window": 200000, + "default_max_tokens": 32000, + "can_reason": true, + "has_reasoning_efforts": true, + "supports_attachments": true + }, { "id": "anthropic/claude-opus-4", "name": "Anthropic: Claude Opus 4", @@ -220,8 +233,8 @@ "name": "Anthropic: Claude Sonnet 4.5", "cost_per_1m_in": 3, "cost_per_1m_out": 15, - "cost_per_1m_in_cached": 0, - "cost_per_1m_out_cached": 0, + "cost_per_1m_in_cached": 3.75, + "cost_per_1m_out_cached": 0.3, "context_window": 1000000, "default_max_tokens": 32000, "can_reason": true, @@ -283,12 +296,12 @@ { "id": "deepseek/deepseek-chat", "name": "DeepSeek: DeepSeek V3", - "cost_per_1m_in": 0.8999999999999999, - "cost_per_1m_out": 0.8999999999999999, + "cost_per_1m_in": 0.39999999999999997, + "cost_per_1m_out": 1.3, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, - "context_window": 131072, - "default_max_tokens": 13107, + "context_window": 64000, + "default_max_tokens": 8000, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": false @@ -296,8 +309,8 @@ { "id": "deepseek/deepseek-chat-v3-0324", "name": "DeepSeek: DeepSeek V3 0324", - "cost_per_1m_in": 0.27, - "cost_per_1m_out": 1.12, + "cost_per_1m_in": 0.25, + "cost_per_1m_out": 1, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 163840, @@ -322,8 +335,8 @@ { "id": "deepseek/deepseek-chat-v3.1", "name": "DeepSeek: DeepSeek V3.1", - "cost_per_1m_in": 0.56, - "cost_per_1m_out": 1.68, + "cost_per_1m_in": 0.27, + "cost_per_1m_out": 1, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 163840, @@ -429,7 +442,7 @@ "cost_per_1m_in": 0.3, "cost_per_1m_out": 2.5, "cost_per_1m_in_cached": 0.3833, - "cost_per_1m_out_cached": 0.075, + "cost_per_1m_out_cached": 0.03, "context_window": 1048576, "default_max_tokens": 32767, "can_reason": true, @@ -494,7 +507,7 @@ "cost_per_1m_in": 1.25, "cost_per_1m_out": 10, "cost_per_1m_in_cached": 1.625, - "cost_per_1m_out_cached": 0.31, + "cost_per_1m_out_cached": 0.125, "context_window": 1048576, "default_max_tokens": 32768, "can_reason": true, @@ -507,7 +520,7 @@ "cost_per_1m_in": 1.25, "cost_per_1m_out": 10, "cost_per_1m_in_cached": 1.625, - "cost_per_1m_out_cached": 0.31, + "cost_per_1m_out_cached": 0.125, "context_window": 1048576, "default_max_tokens": 32768, "can_reason": true, @@ -520,7 +533,7 @@ "cost_per_1m_in": 1.25, "cost_per_1m_out": 10, "cost_per_1m_in_cached": 1.625, - "cost_per_1m_out_cached": 0.31, + "cost_per_1m_out_cached": 0.125, "context_window": 1048576, "default_max_tokens": 32768, "can_reason": true, @@ -595,12 +608,12 @@ { "id": "meta-llama/llama-3.1-405b-instruct", "name": "Meta: Llama 3.1 405B Instruct", - "cost_per_1m_in": 0.7999999999999999, - "cost_per_1m_out": 0.7999999999999999, + "cost_per_1m_in": 3, + "cost_per_1m_out": 3, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, - "context_window": 32768, - "default_max_tokens": 8192, + "context_window": 131072, + "default_max_tokens": 13107, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": false @@ -686,12 +699,12 @@ { "id": "meta-llama/llama-4-maverick", "name": "Meta: Llama 4 Maverick", - "cost_per_1m_in": 0.15, - "cost_per_1m_out": 0.85, + "cost_per_1m_in": 0.35, + "cost_per_1m_out": 1.15, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, - "context_window": 1048576, - "default_max_tokens": 8192, + "context_window": 524288, + "default_max_tokens": 4096, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": true @@ -879,8 +892,8 @@ "supports_attachments": false }, { - "id": "mistralai/devstral-small", - "name": "Mistral: Devstral Small 1.1", + "id": "mistralai/devstral-small-2505", + "name": "Mistral: Devstral Small 2505", "cost_per_1m_in": 0.09999999999999999, "cost_per_1m_out": 0.3, "cost_per_1m_in_cached": 0, @@ -891,19 +904,6 @@ "has_reasoning_efforts": false, "supports_attachments": false }, - { - "id": "mistralai/devstral-small-2505", - "name": "Mistral: Devstral Small 2505", - "cost_per_1m_in": 0.049999999999999996, - "cost_per_1m_out": 0.22, - "cost_per_1m_in_cached": 0, - "cost_per_1m_out_cached": 0, - "context_window": 131072, - "default_max_tokens": 65536, - "can_reason": false, - "has_reasoning_efforts": false, - "supports_attachments": false - }, { "id": "mistralai/devstral-small-2505:free", "name": "Mistral: Devstral Small 2505 (free)", @@ -1138,6 +1138,19 @@ "has_reasoning_efforts": false, "supports_attachments": false }, + { + "id": "mistralai/pixtral-12b", + "name": "Mistral: Pixtral 12B", + "cost_per_1m_in": 0.15, + "cost_per_1m_out": 0.15, + "cost_per_1m_in_cached": 0, + "cost_per_1m_out_cached": 0, + "context_window": 131072, + "default_max_tokens": 13107, + "can_reason": false, + "has_reasoning_efforts": false, + "supports_attachments": true + }, { "id": "mistralai/pixtral-large-2411", "name": "Mistral: Pixtral Large 2411", @@ -1167,10 +1180,10 @@ { "id": "moonshotai/kimi-k2", "name": "MoonshotAI: Kimi K2 0711", - "cost_per_1m_in": 0.5, - "cost_per_1m_out": 2.4, + "cost_per_1m_in": 0.6, + "cost_per_1m_out": 2.5, "cost_per_1m_in_cached": 0, - "cost_per_1m_out_cached": 0, + "cost_per_1m_out_cached": 0.15, "context_window": 131072, "default_max_tokens": 13107, "can_reason": false, @@ -1219,8 +1232,8 @@ { "id": "nvidia/nemotron-nano-9b-v2", "name": "NVIDIA: Nemotron Nano 9B V2", - "cost_per_1m_in": 0.04, - "cost_per_1m_out": 0.16, + "cost_per_1m_in": 0.06, + "cost_per_1m_out": 0.25, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 131072, @@ -1255,19 +1268,6 @@ "has_reasoning_efforts": false, "supports_attachments": false }, - { - "id": "nousresearch/hermes-4-70b", - "name": "Nous: Hermes 4 70B", - "cost_per_1m_in": 0.11, - "cost_per_1m_out": 0.38, - "cost_per_1m_in_cached": 0, - "cost_per_1m_out_cached": 0, - "context_window": 131072, - "default_max_tokens": 65536, - "can_reason": true, - "has_reasoning_efforts": true, - "supports_attachments": false - }, { "id": "openai/codex-mini", "name": "OpenAI: Codex Mini", @@ -1596,12 +1596,12 @@ { "id": "openai/gpt-oss-120b", "name": "OpenAI: gpt-oss-120b", - "cost_per_1m_in": 0.14, - "cost_per_1m_out": 0.95, + "cost_per_1m_in": 0.09999999999999999, + "cost_per_1m_out": 0.49, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 131072, - "default_max_tokens": 65536, + "default_max_tokens": 13107, "can_reason": true, "has_reasoning_efforts": true, "supports_attachments": false @@ -1609,12 +1609,12 @@ { "id": "openai/gpt-oss-20b", "name": "OpenAI: gpt-oss-20b", - "cost_per_1m_in": 0.049999999999999996, - "cost_per_1m_out": 0.19999999999999998, + "cost_per_1m_in": 0.03, + "cost_per_1m_out": 0.14, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 131072, - "default_max_tokens": 65536, + "default_max_tokens": 13107, "can_reason": true, "has_reasoning_efforts": true, "supports_attachments": false @@ -1856,8 +1856,8 @@ { "id": "qwen/qwen3-235b-a22b-2507", "name": "Qwen: Qwen3 235B A22B Instruct 2507", - "cost_per_1m_in": 0.12, - "cost_per_1m_out": 0.59, + "cost_per_1m_in": 0.09999999999999999, + "cost_per_1m_out": 0.09999999999999999, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 262144, @@ -1882,12 +1882,12 @@ { "id": "qwen/qwen3-30b-a3b", "name": "Qwen: Qwen3 30B A3B", - "cost_per_1m_in": 0.08, - "cost_per_1m_out": 0.28, + "cost_per_1m_in": 0.15, + "cost_per_1m_out": 0.6, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 131072, - "default_max_tokens": 65536, + "default_max_tokens": 4000, "can_reason": true, "has_reasoning_efforts": true, "supports_attachments": false @@ -1895,12 +1895,12 @@ { "id": "qwen/qwen3-30b-a3b-instruct-2507", "name": "Qwen: Qwen3 30B A3B Instruct 2507", - "cost_per_1m_in": 0.09999999999999999, - "cost_per_1m_out": 0.3, + "cost_per_1m_in": 0.08, + "cost_per_1m_out": 0.33, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 262144, - "default_max_tokens": 26214, + "default_max_tokens": 131072, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": false @@ -1908,12 +1908,12 @@ { "id": "qwen/qwen3-30b-a3b-thinking-2507", "name": "Qwen: Qwen3 30B A3B Thinking 2507", - "cost_per_1m_in": 0.09, - "cost_per_1m_out": 0.3, + "cost_per_1m_in": 0.08, + "cost_per_1m_out": 0.29, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 262144, - "default_max_tokens": 65536, + "default_max_tokens": 131072, "can_reason": true, "has_reasoning_efforts": true, "supports_attachments": false @@ -1921,12 +1921,12 @@ { "id": "qwen/qwen3-32b", "name": "Qwen: Qwen3 32B", - "cost_per_1m_in": 0.14, - "cost_per_1m_out": 0.5700000000000001, + "cost_per_1m_in": 0.15, + "cost_per_1m_out": 0.5, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 131072, - "default_max_tokens": 65536, + "default_max_tokens": 4000, "can_reason": true, "has_reasoning_efforts": true, "supports_attachments": false @@ -1960,12 +1960,12 @@ { "id": "qwen/qwen3-coder", "name": "Qwen: Qwen3 Coder 480B A35B", - "cost_per_1m_in": 0.29, - "cost_per_1m_out": 1.2, + "cost_per_1m_in": 0.25, + "cost_per_1m_out": 1, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 262144, - "default_max_tokens": 32768, + "default_max_tokens": 131072, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": false @@ -2025,8 +2025,8 @@ { "id": "qwen/qwen3-next-80b-a3b-instruct", "name": "Qwen: Qwen3 Next 80B A3B Instruct", - "cost_per_1m_in": 0.15, - "cost_per_1m_out": 1.2, + "cost_per_1m_in": 0.14, + "cost_per_1m_out": 1.4, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 262144, @@ -2075,29 +2075,29 @@ "supports_attachments": true }, { - "id": "qwen/qwen3-vl-30b-a3b-thinking", - "name": "Qwen: Qwen3 VL 30B A3B Thinking", + "id": "qwen/qwen3-vl-30b-a3b-instruct", + "name": "Qwen: Qwen3 VL 30B A3B Instruct", "cost_per_1m_in": 0.29, "cost_per_1m_out": 1, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 262144, "default_max_tokens": 131072, - "can_reason": true, - "has_reasoning_efforts": true, + "can_reason": false, + "has_reasoning_efforts": false, "supports_attachments": true }, { - "id": "qwen/qwen3-vl-8b-instruct", - "name": "Qwen: Qwen3 VL 8B Instruct", - "cost_per_1m_in": 0.18, - "cost_per_1m_out": 0.7, + "id": "qwen/qwen3-vl-30b-a3b-thinking", + "name": "Qwen: Qwen3 VL 30B A3B Thinking", + "cost_per_1m_in": 0.29, + "cost_per_1m_out": 1, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, - "context_window": 256000, - "default_max_tokens": 16384, - "can_reason": false, - "has_reasoning_efforts": false, + "context_window": 262144, + "default_max_tokens": 131072, + "can_reason": true, + "has_reasoning_efforts": true, "supports_attachments": true }, { @@ -2156,7 +2156,7 @@ "id": "alibaba/tongyi-deepresearch-30b-a3b", "name": "Tongyi DeepResearch 30B A3B", "cost_per_1m_in": 0.09, - "cost_per_1m_out": 0.44999999999999996, + "cost_per_1m_out": 0.39999999999999997, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 131072, @@ -2199,7 +2199,7 @@ "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0.11, "context_window": 131072, - "default_max_tokens": 49152, + "default_max_tokens": 48000, "can_reason": true, "has_reasoning_efforts": true, "supports_attachments": false @@ -2207,12 +2207,12 @@ { "id": "z-ai/glm-4.5-air", "name": "Z.AI: GLM 4.5 Air", - "cost_per_1m_in": 0.14, - "cost_per_1m_out": 0.86, + "cost_per_1m_in": 0.19999999999999998, + "cost_per_1m_out": 1.2, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 131072, - "default_max_tokens": 65536, + "default_max_tokens": 13107, "can_reason": true, "has_reasoning_efforts": true, "supports_attachments": false @@ -2247,11 +2247,11 @@ "id": "z-ai/glm-4.6", "name": "Z.AI: GLM 4.6", "cost_per_1m_in": 0.6, - "cost_per_1m_out": 2, + "cost_per_1m_out": 2.2, "cost_per_1m_in_cached": 0, - "cost_per_1m_out_cached": 0, + "cost_per_1m_out_cached": 0.11, "context_window": 204800, - "default_max_tokens": 20480, + "default_max_tokens": 65536, "can_reason": true, "has_reasoning_efforts": true, "supports_attachments": false @@ -2272,10 +2272,10 @@ { "id": "x-ai/grok-3", "name": "xAI: Grok 3", - "cost_per_1m_in": 3, - "cost_per_1m_out": 15, + "cost_per_1m_in": 5, + "cost_per_1m_out": 25, "cost_per_1m_in_cached": 0, - "cost_per_1m_out_cached": 0.75, + "cost_per_1m_out_cached": 1.25, "context_window": 131072, "default_max_tokens": 13107, "can_reason": false, @@ -2285,10 +2285,10 @@ { "id": "x-ai/grok-3-beta", "name": "xAI: Grok 3 Beta", - "cost_per_1m_in": 3, - "cost_per_1m_out": 15, + "cost_per_1m_in": 5, + "cost_per_1m_out": 25, "cost_per_1m_in_cached": 0, - "cost_per_1m_out_cached": 0.75, + "cost_per_1m_out_cached": 1.25, "context_window": 131072, "default_max_tokens": 13107, "can_reason": false,