diff --git a/internal/providers/configs/openrouter.json b/internal/providers/configs/openrouter.json index 98b920eff5a10aebd86175a24c698355c9b44878..00eaa884196162a101b62574842da55b9f5b3ef5 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": 1, - "cost_per_1m_out_cached": 0.08, + "cost_per_1m_in_cached": 0, + "cost_per_1m_out_cached": 0, "context_window": 200000, "default_max_tokens": 4096, "can_reason": false, @@ -129,8 +129,8 @@ "name": "Anthropic: Claude 3.5 Sonnet", "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": 200000, "default_max_tokens": 4096, "can_reason": false, @@ -158,7 +158,7 @@ "cost_per_1m_in_cached": 3.75, "cost_per_1m_out_cached": 0.3, "context_window": 200000, - "default_max_tokens": 64000, + "default_max_tokens": 32000, "can_reason": true, "has_reasoning_efforts": true, "supports_attachments": true @@ -233,8 +233,8 @@ "name": "Anthropic: Claude Sonnet 4.5", "cost_per_1m_in": 3, "cost_per_1m_out": 15, - "cost_per_1m_in_cached": 3.75, - "cost_per_1m_out_cached": 0.3, + "cost_per_1m_in_cached": 0, + "cost_per_1m_out_cached": 0, "context_window": 1000000, "default_max_tokens": 32000, "can_reason": true, @@ -335,8 +335,8 @@ { "id": "deepseek/deepseek-chat-v3.1", "name": "DeepSeek: DeepSeek V3.1", - "cost_per_1m_in": 0.27, - "cost_per_1m_out": 1, + "cost_per_1m_in": 0.56, + "cost_per_1m_out": 1.68, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 163840, @@ -455,7 +455,7 @@ "cost_per_1m_in": 0.09999999999999999, "cost_per_1m_out": 0.39999999999999997, "cost_per_1m_in_cached": 0.18330000000000002, - "cost_per_1m_out_cached": 0.024999999999999998, + "cost_per_1m_out_cached": 0.01, "context_window": 1048576, "default_max_tokens": 32767, "can_reason": true, @@ -483,7 +483,7 @@ "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 1048576, - "default_max_tokens": 32767, + "default_max_tokens": 32768, "can_reason": true, "has_reasoning_efforts": true, "supports_attachments": true @@ -621,12 +621,12 @@ { "id": "meta-llama/llama-3.1-70b-instruct", "name": "Meta: Llama 3.1 70B Instruct", - "cost_per_1m_in": 0.39999999999999997, - "cost_per_1m_out": 0.39999999999999997, + "cost_per_1m_in": 0.88, + "cost_per_1m_out": 0.88, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 131072, - "default_max_tokens": 8192, + "default_max_tokens": 13107, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": false @@ -634,12 +634,12 @@ { "id": "meta-llama/llama-3.1-8b-instruct", "name": "Meta: Llama 3.1 8B Instruct", - "cost_per_1m_in": 0.09999999999999999, - "cost_per_1m_out": 0.09999999999999999, + "cost_per_1m_in": 0.02, + "cost_per_1m_out": 0.03, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 131072, - "default_max_tokens": 4000, + "default_max_tokens": 8192, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": false @@ -661,11 +661,11 @@ "id": "meta-llama/llama-3.3-70b-instruct", "name": "Meta: Llama 3.3 70B Instruct", "cost_per_1m_in": 0.13, - "cost_per_1m_out": 0.39999999999999997, + "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, + "default_max_tokens": 8192, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": false @@ -677,8 +677,8 @@ "cost_per_1m_out": 0, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, - "context_window": 65536, - "default_max_tokens": 6553, + "context_window": 128000, + "default_max_tokens": 2014, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": false @@ -699,12 +699,12 @@ { "id": "meta-llama/llama-4-maverick", "name": "Meta: Llama 4 Maverick", - "cost_per_1m_in": 0.35, - "cost_per_1m_out": 1.15, + "cost_per_1m_in": 0.15, + "cost_per_1m_out": 0.85, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, - "context_window": 524288, - "default_max_tokens": 4096, + "context_window": 1048576, + "default_max_tokens": 8192, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": true @@ -894,12 +894,12 @@ { "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": 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": 13107, + "default_max_tokens": 65536, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": false @@ -1089,12 +1089,12 @@ { "id": "mistralai/mistral-small-3.2-24b-instruct", "name": "Mistral: Mistral Small 3.2 24B", - "cost_per_1m_in": 0.09999999999999999, - "cost_per_1m_out": 0.3, + "cost_per_1m_in": 0.06, + "cost_per_1m_out": 0.18, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 131072, - "default_max_tokens": 13107, + "default_max_tokens": 65536, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": true @@ -1138,19 +1138,6 @@ "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", @@ -1180,10 +1167,10 @@ { "id": "moonshotai/kimi-k2", "name": "MoonshotAI: Kimi K2 0711", - "cost_per_1m_in": 0.6, - "cost_per_1m_out": 2.5, + "cost_per_1m_in": 0.5, + "cost_per_1m_out": 2.4, "cost_per_1m_in_cached": 0, - "cost_per_1m_out_cached": 0.15, + "cost_per_1m_out_cached": 0, "context_window": 131072, "default_max_tokens": 13107, "can_reason": false, @@ -1232,8 +1219,8 @@ { "id": "nvidia/nemotron-nano-9b-v2", "name": "NVIDIA: Nemotron Nano 9B V2", - "cost_per_1m_in": 0.06, - "cost_per_1m_out": 0.25, + "cost_per_1m_in": 0.04, + "cost_per_1m_out": 0.16, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 131072, @@ -1268,6 +1255,19 @@ "has_reasoning_efforts": false, "supports_attachments": false }, + { + "id": "nousresearch/hermes-4-405b", + "name": "Nous: Hermes 4 405B", + "cost_per_1m_in": 0.3, + "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, + "can_reason": true, + "has_reasoning_efforts": true, + "supports_attachments": false + }, { "id": "openai/codex-mini", "name": "OpenAI: Codex Mini", @@ -1554,6 +1554,19 @@ "has_reasoning_efforts": true, "supports_attachments": true }, + { + "id": "openai/gpt-5-image", + "name": "OpenAI: GPT-5 Image", + "cost_per_1m_in": 5, + "cost_per_1m_out": 10, + "cost_per_1m_in_cached": 0, + "cost_per_1m_out_cached": 1.25, + "context_window": 400000, + "default_max_tokens": 64000, + "can_reason": true, + "has_reasoning_efforts": true, + "supports_attachments": true + }, { "id": "openai/gpt-5-mini", "name": "OpenAI: GPT-5 Mini", @@ -1609,12 +1622,12 @@ { "id": "openai/gpt-oss-20b", "name": "OpenAI: gpt-oss-20b", - "cost_per_1m_in": 0.03, - "cost_per_1m_out": 0.14, + "cost_per_1m_in": 0.049999999999999996, + "cost_per_1m_out": 0.19999999999999998, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 131072, - "default_max_tokens": 13107, + "default_max_tokens": 65536, "can_reason": true, "has_reasoning_efforts": true, "supports_attachments": false @@ -1749,19 +1762,6 @@ "has_reasoning_efforts": false, "supports_attachments": false }, - { - "id": "qwen/qwq-32b", - "name": "Qwen: QwQ 32B", - "cost_per_1m_in": 0.15, - "cost_per_1m_out": 0.58, - "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": "qwen/qwen-plus-2025-07-28", "name": "Qwen: Qwen Plus 0728", @@ -1788,6 +1788,19 @@ "has_reasoning_efforts": true, "supports_attachments": false }, + { + "id": "qwen/qwen-vl-max", + "name": "Qwen: Qwen VL Max", + "cost_per_1m_in": 0.7999999999999999, + "cost_per_1m_out": 3.1999999999999997, + "cost_per_1m_in_cached": 0, + "cost_per_1m_out_cached": 0, + "context_window": 131072, + "default_max_tokens": 4096, + "can_reason": false, + "has_reasoning_efforts": false, + "supports_attachments": true + }, { "id": "qwen/qwen-max", "name": "Qwen: Qwen-Max ", @@ -1895,12 +1908,12 @@ { "id": "qwen/qwen3-30b-a3b-instruct-2507", "name": "Qwen: Qwen3 30B A3B Instruct 2507", - "cost_per_1m_in": 0.08, - "cost_per_1m_out": 0.33, + "cost_per_1m_in": 0.09999999999999999, + "cost_per_1m_out": 0.3, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 262144, - "default_max_tokens": 131072, + "default_max_tokens": 26214, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": false @@ -1947,12 +1960,12 @@ { "id": "qwen/qwen3-coder-30b-a3b-instruct", "name": "Qwen: Qwen3 Coder 30B A3B Instruct", - "cost_per_1m_in": 0.07, - "cost_per_1m_out": 0.27, + "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": 262144, - "default_max_tokens": 26214, + "default_max_tokens": 131072, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": false @@ -1960,12 +1973,12 @@ { "id": "qwen/qwen3-coder", "name": "Qwen: Qwen3 Coder 480B A35B", - "cost_per_1m_in": 0.25, - "cost_per_1m_out": 1, + "cost_per_1m_in": 0.29, + "cost_per_1m_out": 1.2, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 262144, - "default_max_tokens": 131072, + "default_max_tokens": 26214, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": false @@ -2025,8 +2038,8 @@ { "id": "qwen/qwen3-next-80b-a3b-instruct", "name": "Qwen: Qwen3 Next 80B A3B Instruct", - "cost_per_1m_in": 0.14, - "cost_per_1m_out": 1.4, + "cost_per_1m_in": 0.15, + "cost_per_1m_out": 1.2, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 262144, @@ -2051,14 +2064,14 @@ { "id": "qwen/qwen3-vl-235b-a22b-instruct", "name": "Qwen: Qwen3 VL 235B A22B Instruct", - "cost_per_1m_in": 0.7, - "cost_per_1m_out": 2.8, + "cost_per_1m_in": 0.5, + "cost_per_1m_out": 2.5, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 131072, - "default_max_tokens": 16384, - "can_reason": true, - "has_reasoning_efforts": true, + "default_max_tokens": 65536, + "can_reason": false, + "has_reasoning_efforts": false, "supports_attachments": true }, { @@ -2074,19 +2087,6 @@ "has_reasoning_efforts": true, "supports_attachments": true }, - { - "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": false, - "has_reasoning_efforts": false, - "supports_attachments": true - }, { "id": "qwen/qwen3-vl-30b-a3b-thinking", "name": "Qwen: Qwen3 VL 30B A3B Thinking", @@ -2199,7 +2199,7 @@ "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0.11, "context_window": 131072, - "default_max_tokens": 48000, + "default_max_tokens": 49152, "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.19999999999999998, - "cost_per_1m_out": 1.2, + "cost_per_1m_in": 0.14, + "cost_per_1m_out": 0.86, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 131072, - "default_max_tokens": 13107, + "default_max_tokens": 65536, "can_reason": true, "has_reasoning_efforts": true, "supports_attachments": false @@ -2246,12 +2246,12 @@ { "id": "z-ai/glm-4.6", "name": "Z.AI: GLM 4.6", - "cost_per_1m_in": 0.6, - "cost_per_1m_out": 2.2, + "cost_per_1m_in": 0.5, + "cost_per_1m_out": 1.9, "cost_per_1m_in_cached": 0, - "cost_per_1m_out_cached": 0.11, + "cost_per_1m_out_cached": 0, "context_window": 204800, - "default_max_tokens": 65536, + "default_max_tokens": 102400, "can_reason": true, "has_reasoning_efforts": true, "supports_attachments": false @@ -2298,10 +2298,10 @@ { "id": "x-ai/grok-3-mini", "name": "xAI: Grok 3 Mini", - "cost_per_1m_in": 0.3, - "cost_per_1m_out": 0.5, + "cost_per_1m_in": 0.6, + "cost_per_1m_out": 4, "cost_per_1m_in_cached": 0, - "cost_per_1m_out_cached": 0.075, + "cost_per_1m_out_cached": 0.15, "context_window": 131072, "default_max_tokens": 13107, "can_reason": true, @@ -2311,10 +2311,10 @@ { "id": "x-ai/grok-3-mini-beta", "name": "xAI: Grok 3 Mini Beta", - "cost_per_1m_in": 0.3, - "cost_per_1m_out": 0.5, + "cost_per_1m_in": 0.6, + "cost_per_1m_out": 4, "cost_per_1m_in_cached": 0, - "cost_per_1m_out_cached": 0.075, + "cost_per_1m_out_cached": 0.15, "context_window": 131072, "default_max_tokens": 13107, "can_reason": true,