diff --git a/internal/providers/configs/openrouter.json b/internal/providers/configs/openrouter.json index c30348989e9e0bca46c7314f9e92897f3c7dd0f3..cc9b459799d768648dcea8cac8f306858e40507b 100644 --- a/internal/providers/configs/openrouter.json +++ b/internal/providers/configs/openrouter.json @@ -7,11 +7,50 @@ "default_large_model_id": "anthropic/claude-sonnet-4", "default_small_model_id": "anthropic/claude-3.5-haiku", "models": [ + { + "id": "x-ai/grok-code-fast-1", + "name": "xAI: Grok Code Fast 1", + "cost_per_1m_in": 0.19999999999999998, + "cost_per_1m_out": 1.5, + "cost_per_1m_in_cached": 0, + "cost_per_1m_out_cached": 0.02, + "context_window": 256000, + "default_max_tokens": 5000, + "can_reason": true, + "has_reasoning_efforts": false, + "supports_attachments": false + }, + { + "id": "nousresearch/hermes-4-70b", + "name": "Nous: Hermes 4 70B", + "cost_per_1m_in": 0.09329544, + "cost_per_1m_out": 0.3733632, + "cost_per_1m_in_cached": 0, + "cost_per_1m_out_cached": 0, + "context_window": 131072, + "default_max_tokens": 13107, + "can_reason": true, + "has_reasoning_efforts": false, + "supports_attachments": false + }, + { + "id": "nousresearch/hermes-4-405b", + "name": "Nous: Hermes 4 405B", + "cost_per_1m_in": 0.1999188, + "cost_per_1m_out": 0.800064, + "cost_per_1m_in_cached": 0, + "cost_per_1m_out_cached": 0, + "context_window": 131072, + "default_max_tokens": 13107, + "can_reason": true, + "has_reasoning_efforts": false, + "supports_attachments": false + }, { "id": "deepseek/deepseek-chat-v3.1", "name": "DeepSeek: DeepSeek V3.1", - "cost_per_1m_in": 0.19999999999999998, - "cost_per_1m_out": 0.7999999999999999, + "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, @@ -49,12 +88,12 @@ { "id": "z-ai/glm-4.5v", "name": "Z.AI: GLM 4.5V", - "cost_per_1m_in": 0.5, + "cost_per_1m_in": 0.6, "cost_per_1m_out": 1.7999999999999998, "cost_per_1m_in_cached": 0, - "cost_per_1m_out_cached": 0, + "cost_per_1m_out_cached": 0.11, "context_window": 65536, - "default_max_tokens": 32768, + "default_max_tokens": 8192, "can_reason": true, "has_reasoning_efforts": false, "supports_attachments": true @@ -127,12 +166,12 @@ { "id": "openai/gpt-oss-120b", "name": "OpenAI: gpt-oss-120b", - "cost_per_1m_in": 0.072, - "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": 131000, - "default_max_tokens": 65500, + "context_window": 131072, + "default_max_tokens": 13107, "can_reason": true, "has_reasoning_efforts": false, "supports_attachments": false @@ -140,12 +179,12 @@ { "id": "openai/gpt-oss-20b", "name": "OpenAI: gpt-oss-20b", - "cost_per_1m_in": 0.04, - "cost_per_1m_out": 0.15, + "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": 131000, - "default_max_tokens": 65500, + "context_window": 131072, + "default_max_tokens": 16384, "can_reason": true, "has_reasoning_efforts": false, "supports_attachments": false @@ -176,28 +215,15 @@ "has_reasoning_efforts": false, "supports_attachments": false }, - { - "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_cached": 0, - "cost_per_1m_out_cached": 0, - "context_window": 262144, - "default_max_tokens": 26214, - "can_reason": false, - "has_reasoning_efforts": false, - "supports_attachments": false - }, { "id": "z-ai/glm-4.5", "name": "Z.AI: GLM 4.5", - "cost_per_1m_in": 0.1999188, - "cost_per_1m_out": 0.800064, + "cost_per_1m_in": 0.6, + "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": 131072, - "default_max_tokens": 13107, + "default_max_tokens": 48000, "can_reason": true, "has_reasoning_efforts": false, "supports_attachments": false @@ -210,7 +236,7 @@ "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 131072, - "default_max_tokens": 13107, + "default_max_tokens": 48000, "can_reason": true, "has_reasoning_efforts": false, "supports_attachments": false @@ -270,12 +296,12 @@ { "id": "qwen/qwen3-coder", "name": "Qwen: Qwen3 Coder ", - "cost_per_1m_in": 0.19999999999999998, - "cost_per_1m_out": 0.7999999999999999, + "cost_per_1m_in": 0.7, + "cost_per_1m_out": 2.5, "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 @@ -296,8 +322,8 @@ { "id": "qwen/qwen3-235b-a22b-2507", "name": "Qwen: Qwen3 235B A22B Instruct 2507", - "cost_per_1m_in": 0.077968332, - "cost_per_1m_out": 0.31202496, + "cost_per_1m_in": 0.19999999999999998, + "cost_per_1m_out": 0.6, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 262144, @@ -322,12 +348,12 @@ { "id": "moonshotai/kimi-k2", "name": "MoonshotAI: Kimi K2", - "cost_per_1m_in": 0.14, - "cost_per_1m_out": 2.4899999999999998, + "cost_per_1m_in": 0.7, + "cost_per_1m_out": 2.5, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, - "context_window": 63000, - "default_max_tokens": 31500, + "context_window": 131072, + "default_max_tokens": 65536, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": false @@ -345,19 +371,6 @@ "has_reasoning_efforts": false, "supports_attachments": false }, - { - "id": "mistralai/devstral-small", - "name": "Mistral: Devstral Small 1.1", - "cost_per_1m_in": 0.07, - "cost_per_1m_out": 0.28, - "cost_per_1m_in_cached": 0, - "cost_per_1m_out_cached": 0, - "context_window": 128000, - "default_max_tokens": 12800, - "can_reason": false, - "has_reasoning_efforts": false, - "supports_attachments": false - }, { "id": "x-ai/grok-4", "name": "xAI: Grok 4", @@ -400,29 +413,16 @@ { "id": "mistralai/mistral-small-3.2-24b-instruct", "name": "Mistral: Mistral Small 3.2 24B", - "cost_per_1m_in": 0.049999999999999996, - "cost_per_1m_out": 0.09999999999999999, + "cost_per_1m_in": 0.10366159999999999, + "cost_per_1m_out": 0.414848, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, - "context_window": 128000, - "default_max_tokens": 12800, + "context_window": 131072, + "default_max_tokens": 13107, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": true }, - { - "id": "minimax/minimax-m1", - "name": "MiniMax: MiniMax M1", - "cost_per_1m_in": 0.3, - "cost_per_1m_out": 1.6500000000000001, - "cost_per_1m_in_cached": 0, - "cost_per_1m_out_cached": 0, - "context_window": 1000000, - "default_max_tokens": 20000, - "can_reason": true, - "has_reasoning_efforts": false, - "supports_attachments": false - }, { "id": "google/gemini-2.5-flash-lite-preview-06-17", "name": "Google: Gemini 2.5 Flash Lite Preview 06-17", @@ -478,10 +478,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, @@ -491,10 +491,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, @@ -556,12 +556,12 @@ { "id": "deepseek/deepseek-r1-0528", "name": "DeepSeek: R1 0528", - "cost_per_1m_in": 0.1999188, - "cost_per_1m_out": 0.800064, + "cost_per_1m_in": 0.7, + "cost_per_1m_out": 2.5, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 163840, - "default_max_tokens": 16384, + "default_max_tokens": 81920, "can_reason": true, "has_reasoning_efforts": false, "supports_attachments": false @@ -586,7 +586,7 @@ "cost_per_1m_out": 15, "cost_per_1m_in_cached": 3.75, "cost_per_1m_out_cached": 0.3, - "context_window": 200000, + "context_window": 1000000, "default_max_tokens": 32000, "can_reason": true, "has_reasoning_efforts": false, @@ -665,7 +665,7 @@ "cost_per_1m_in_cached": 1.625, "cost_per_1m_out_cached": 0.31, "context_window": 1048576, - "default_max_tokens": 32767, + "default_max_tokens": 32768, "can_reason": true, "has_reasoning_efforts": false, "supports_attachments": true @@ -712,12 +712,12 @@ { "id": "qwen/qwen3-30b-a3b", "name": "Qwen: Qwen3 30B A3B", - "cost_per_1m_in": 0.01999188, - "cost_per_1m_out": 0.0800064, + "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": 40960, - "default_max_tokens": 4096, + "context_window": 131072, + "default_max_tokens": 4000, "can_reason": true, "has_reasoning_efforts": false, "supports_attachments": false @@ -738,12 +738,12 @@ { "id": "qwen/qwen3-32b", "name": "Qwen: Qwen3 32B", - "cost_per_1m_in": 0.017992691999999998, - "cost_per_1m_out": 0.07200576, + "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": 40960, - "default_max_tokens": 4096, + "context_window": 131072, + "default_max_tokens": 4000, "can_reason": true, "has_reasoning_efforts": false, "supports_attachments": false @@ -757,19 +757,19 @@ "cost_per_1m_out_cached": 0, "context_window": 131072, "default_max_tokens": 13107, - "can_reason": true, + "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": false }, { "id": "qwen/qwen3-235b-a22b", "name": "Qwen: Qwen3 235B A22B", - "cost_per_1m_in": 0.13, - "cost_per_1m_out": 0.6, + "cost_per_1m_in": 0.22, + "cost_per_1m_out": 0.88, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, - "context_window": 40960, - "default_max_tokens": 20480, + "context_window": 131072, + "default_max_tokens": 13107, "can_reason": true, "has_reasoning_efforts": false, "supports_attachments": false @@ -855,10 +855,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, @@ -868,10 +868,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, @@ -895,11 +895,11 @@ "id": "meta-llama/llama-4-maverick", "name": "Meta: Llama 4 Maverick", "cost_per_1m_in": 0.15, - "cost_per_1m_out": 0.6, + "cost_per_1m_out": 0.85, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 1048576, - "default_max_tokens": 8192, + "default_max_tokens": 524288, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": true @@ -959,12 +959,12 @@ { "id": "deepseek/deepseek-chat-v3-0324", "name": "DeepSeek: DeepSeek V3 0324", - "cost_per_1m_in": 0.1999188, - "cost_per_1m_out": 0.800064, + "cost_per_1m_in": 0.49, + "cost_per_1m_out": 0.8999999999999999, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, - "context_window": 163840, - "default_max_tokens": 16384, + "context_window": 167936, + "default_max_tokens": 16793, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": false @@ -976,8 +976,8 @@ "cost_per_1m_out": 0, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, - "context_window": 128000, - "default_max_tokens": 12800, + "context_window": 96000, + "default_max_tokens": 48000, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": true @@ -985,12 +985,12 @@ { "id": "mistralai/mistral-small-3.1-24b-instruct", "name": "Mistral: Mistral Small 3.1 24B", - "cost_per_1m_in": 0.01999188, - "cost_per_1m_out": 0.0800064, + "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": 131072, - "default_max_tokens": 48000, + "default_max_tokens": 13107, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": true @@ -1128,8 +1128,8 @@ { "id": "mistralai/mistral-small-24b-instruct-2501", "name": "Mistral: Mistral Small 3", - "cost_per_1m_in": 0.01999188, - "cost_per_1m_out": 0.0800064, + "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": 32768, @@ -1138,24 +1138,11 @@ "has_reasoning_efforts": false, "supports_attachments": false }, - { - "id": "deepseek/deepseek-r1-distill-llama-70b", - "name": "DeepSeek: R1 Distill Llama 70B", - "cost_per_1m_in": 0.025915399999999998, - "cost_per_1m_out": 0.103712, - "cost_per_1m_in_cached": 0, - "cost_per_1m_out_cached": 0, - "context_window": 131072, - "default_max_tokens": 13107, - "can_reason": true, - "has_reasoning_efforts": false, - "supports_attachments": false - }, { "id": "deepseek/deepseek-r1", "name": "DeepSeek: R1", - "cost_per_1m_in": 0.39999999999999997, - "cost_per_1m_out": 2, + "cost_per_1m_in": 0.44999999999999996, + "cost_per_1m_out": 2.1500000000000004, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 163840, @@ -1180,12 +1167,12 @@ { "id": "deepseek/deepseek-chat", "name": "DeepSeek: DeepSeek V3", - "cost_per_1m_in": 0.1999188, - "cost_per_1m_out": 0.800064, + "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": 163840, - "default_max_tokens": 16384, + "context_window": 64000, + "default_max_tokens": 8000, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": false @@ -1440,12 +1427,12 @@ { "id": "thedrummer/rocinante-12b", "name": "TheDrummer: Rocinante 12B", - "cost_per_1m_in": 0.16999999999999998, - "cost_per_1m_out": 0.43, + "cost_per_1m_in": 0.24, + "cost_per_1m_out": 0.44999999999999996, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 32768, - "default_max_tokens": 3276, + "default_max_tokens": 16384, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": false @@ -1453,12 +1440,12 @@ { "id": "meta-llama/llama-3.2-3b-instruct", "name": "Meta: Llama 3.2 3B Instruct", - "cost_per_1m_in": 0.003, - "cost_per_1m_out": 0.006, + "cost_per_1m_in": 0.03, + "cost_per_1m_out": 0.049999999999999996, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, - "context_window": 20000, - "default_max_tokens": 10000, + "context_window": 32768, + "default_max_tokens": 16000, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": false @@ -1466,29 +1453,16 @@ { "id": "qwen/qwen-2.5-72b-instruct", "name": "Qwen2.5 72B Instruct", - "cost_per_1m_in": 0.051830799999999996, - "cost_per_1m_out": 0.207424, + "cost_per_1m_in": 0.12, + "cost_per_1m_out": 0.39, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 32768, - "default_max_tokens": 3276, + "default_max_tokens": 8192, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": false }, - { - "id": "mistralai/pixtral-12b", - "name": "Mistral: Pixtral 12B", - "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": 32768, - "default_max_tokens": 3276, - "can_reason": false, - "has_reasoning_efforts": false, - "supports_attachments": true - }, { "id": "cohere/command-r-plus-08-2024", "name": "Cohere: Command R+ (08-2024)", @@ -1531,12 +1505,12 @@ { "id": "nousresearch/hermes-3-llama-3.1-70b", "name": "Nous: Hermes 3 70B Instruct", - "cost_per_1m_in": 0.09999999999999999, - "cost_per_1m_out": 0.28, + "cost_per_1m_in": 0.39999999999999997, + "cost_per_1m_out": 0.39999999999999997, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, - "context_window": 131072, - "default_max_tokens": 13107, + "context_window": 12288, + "default_max_tokens": 1228, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": false @@ -1557,8 +1531,8 @@ { "id": "meta-llama/llama-3.1-8b-instruct", "name": "Meta: Llama 3.1 8B Instruct", - "cost_per_1m_in": 0.015, - "cost_per_1m_out": 0.02, + "cost_per_1m_in": 0.03, + "cost_per_1m_out": 0.049999999999999996, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 131072, @@ -1570,12 +1544,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 @@ -1596,12 +1570,12 @@ { "id": "mistralai/mistral-nemo", "name": "Mistral: Mistral Nemo", - "cost_per_1m_in": 0.0075, - "cost_per_1m_out": 0.049999999999999996, + "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": 32000, - "default_max_tokens": 3200, + "context_window": 131072, + "default_max_tokens": 13107, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": false @@ -1791,8 +1765,8 @@ { "id": "mistralai/mixtral-8x22b-instruct", "name": "Mistral: Mixtral 8x22B Instruct", - "cost_per_1m_in": 0.8999999999999999, - "cost_per_1m_out": 0.8999999999999999, + "cost_per_1m_in": 2, + "cost_per_1m_out": 6, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 65536, @@ -1996,19 +1970,6 @@ "has_reasoning_efforts": false, "supports_attachments": false }, - { - "id": "mistralai/mistral-7b-instruct-v0.1", - "name": "Mistral: Mistral 7B Instruct v0.1", - "cost_per_1m_in": 0.11, - "cost_per_1m_out": 0.19, - "cost_per_1m_in_cached": 0, - "cost_per_1m_out_cached": 0, - "context_window": 2824, - "default_max_tokens": 282, - "can_reason": false, - "has_reasoning_efforts": false, - "supports_attachments": false - }, { "id": "openai/gpt-3.5-turbo-16k", "name": "OpenAI: GPT-3.5 Turbo 16k",