diff --git a/internal/providers/configs/openrouter.json b/internal/providers/configs/openrouter.json index 1a6512728ba01b997fa2c7a90fc1ea5f3469fac1..9353ed95fd7b64f6d0b19e7b47a8beb4a43e60c2 100644 --- a/internal/providers/configs/openrouter.json +++ b/internal/providers/configs/openrouter.json @@ -7,6 +7,19 @@ "default_large_model_id": "anthropic/claude-sonnet-4", "default_small_model_id": "anthropic/claude-3.5-haiku", "models": [ + { + "id": "qwen/qwen3-30b-a3b-thinking-2507", + "name": "Qwen: Qwen3 30B A3B Thinking 2507", + "cost_per_1m_in": 0.0713, + "cost_per_1m_out": 0.2852, + "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": false, + "supports_attachments": false + }, { "id": "x-ai/grok-code-fast-1", "name": "xAI: Grok Code Fast 1", @@ -46,11 +59,24 @@ "has_reasoning_efforts": false, "supports_attachments": false }, + { + "id": "deepseek/deepseek-chat-v3.1:free", + "name": "DeepSeek: DeepSeek V3.1 (free)", + "cost_per_1m_in": 0, + "cost_per_1m_out": 0, + "cost_per_1m_in_cached": 0, + "cost_per_1m_out_cached": 0, + "context_window": 8192, + "default_max_tokens": 2048, + "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.3, - "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, @@ -88,12 +114,12 @@ { "id": "z-ai/glm-4.5v", "name": "Z.AI: GLM 4.5V", - "cost_per_1m_in": 0.6, + "cost_per_1m_in": 0.5, "cost_per_1m_out": 1.7999999999999998, "cost_per_1m_in_cached": 0, - "cost_per_1m_out_cached": 0.11, + "cost_per_1m_out_cached": 0, "context_window": 65536, - "default_max_tokens": 8192, + "default_max_tokens": 32768, "can_reason": true, "has_reasoning_efforts": false, "supports_attachments": true @@ -166,8 +192,8 @@ { "id": "openai/gpt-oss-120b", "name": "OpenAI: gpt-oss-120b", - "cost_per_1m_in": 0.09, - "cost_per_1m_out": 0.44999999999999996, + "cost_per_1m_in": 0.09999999999999999, + "cost_per_1m_out": 0.5, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 131072, @@ -215,6 +241,19 @@ "has_reasoning_efforts": false, "supports_attachments": false }, + { + "id": "qwen/qwen3-coder-30b-a3b-instruct", + "name": "Qwen: Qwen3 Coder 30B A3B Instruct", + "cost_per_1m_in": 0.051830799999999996, + "cost_per_1m_out": 0.207424, + "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": "qwen/qwen3-30b-a3b-instruct-2507", "name": "Qwen: Qwen3 30B A3B Instruct 2507", @@ -295,7 +334,7 @@ }, { "id": "qwen/qwen3-coder:free", - "name": "Qwen: Qwen3 Coder (free)", + "name": "Qwen: Qwen3 Coder 480B A35B (free)", "cost_per_1m_in": 0, "cost_per_1m_out": 0, "cost_per_1m_in_cached": 0, @@ -308,9 +347,9 @@ }, { "id": "qwen/qwen3-coder", - "name": "Qwen: Qwen3 Coder ", - "cost_per_1m_in": 0.39, - "cost_per_1m_out": 1.5999999999999999, + "name": "Qwen: Qwen3 Coder 480B A35B", + "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, @@ -336,7 +375,7 @@ "id": "qwen/qwen3-235b-a22b-2507", "name": "Qwen: Qwen3 235B A22B Instruct 2507", "cost_per_1m_in": 0.15, - "cost_per_1m_out": 0.7999999999999999, + "cost_per_1m_out": 0.85, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 262144, @@ -504,10 +543,10 @@ { "id": "x-ai/grok-3", "name": "xAI: Grok 3", - "cost_per_1m_in": 5, - "cost_per_1m_out": 25, + "cost_per_1m_in": 3, + "cost_per_1m_out": 15, "cost_per_1m_in_cached": 0, - "cost_per_1m_out_cached": 1.25, + "cost_per_1m_out_cached": 0.75, "context_window": 131072, "default_max_tokens": 13107, "can_reason": false, @@ -569,12 +608,12 @@ { "id": "deepseek/deepseek-r1-0528", "name": "DeepSeek: R1 0528", - "cost_per_1m_in": 0.7, - "cost_per_1m_out": 2.5, + "cost_per_1m_in": 3, + "cost_per_1m_out": 8, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 163840, - "default_max_tokens": 81920, + "default_max_tokens": 16384, "can_reason": true, "has_reasoning_efforts": false, "supports_attachments": false @@ -881,10 +920,10 @@ { "id": "x-ai/grok-3-beta", "name": "xAI: Grok 3 Beta", - "cost_per_1m_in": 5, - "cost_per_1m_out": 25, + "cost_per_1m_in": 3, + "cost_per_1m_out": 15, "cost_per_1m_in_cached": 0, - "cost_per_1m_out_cached": 1.25, + "cost_per_1m_out_cached": 0.75, "context_window": 131072, "default_max_tokens": 13107, "can_reason": false, @@ -933,12 +972,12 @@ { "id": "meta-llama/llama-4-scout", "name": "Meta: Llama 4 Scout", - "cost_per_1m_in": 0.08, - "cost_per_1m_out": 0.3, + "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": 1048576, - "default_max_tokens": 524288, + "default_max_tokens": 104857, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": true @@ -998,12 +1037,12 @@ { "id": "mistralai/mistral-small-3.1-24b-instruct", "name": "Mistral: Mistral Small 3.1 24B", - "cost_per_1m_in": 0.09999999999999999, - "cost_per_1m_out": 0.3, + "cost_per_1m_in": 0.01999188, + "cost_per_1m_out": 0.0800064, "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": false, "has_reasoning_efforts": false, "supports_attachments": true @@ -1029,7 +1068,7 @@ "cost_per_1m_in_cached": 3.75, "cost_per_1m_out_cached": 0.3, "context_window": 200000, - "default_max_tokens": 32000, + "default_max_tokens": 64000, "can_reason": true, "has_reasoning_efforts": false, "supports_attachments": true @@ -1151,11 +1190,24 @@ "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.75, + "cost_per_1m_out": 0.9900000000000001, + "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": false, + "supports_attachments": false + }, { "id": "deepseek/deepseek-r1", "name": "DeepSeek: R1", - "cost_per_1m_in": 0.44999999999999996, - "cost_per_1m_out": 2.1500000000000004, + "cost_per_1m_in": 0.7, + "cost_per_1m_out": 2.4, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 163840, @@ -1245,12 +1297,12 @@ { "id": "meta-llama/llama-3.3-70b-instruct", "name": "Meta: Llama 3.3 70B Instruct", - "cost_per_1m_in": 0.039, - "cost_per_1m_out": 0.12, + "cost_per_1m_in": 0.59, + "cost_per_1m_out": 0.7899999999999999, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 131072, - "default_max_tokens": 4096, + "default_max_tokens": 16384, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": false @@ -1360,8 +1412,8 @@ "supports_attachments": false }, { - "id": "anthropic/claude-3.5-haiku", - "name": "Anthropic: Claude 3.5 Haiku", + "id": "anthropic/claude-3.5-haiku-20241022", + "name": "Anthropic: Claude 3.5 Haiku (2024-10-22)", "cost_per_1m_in": 0.7999999999999999, "cost_per_1m_out": 4, "cost_per_1m_in_cached": 1, @@ -1373,8 +1425,8 @@ "supports_attachments": true }, { - "id": "anthropic/claude-3.5-haiku-20241022", - "name": "Anthropic: Claude 3.5 Haiku (2024-10-22)", + "id": "anthropic/claude-3.5-haiku", + "name": "Anthropic: Claude 3.5 Haiku", "cost_per_1m_in": 0.7999999999999999, "cost_per_1m_out": 4, "cost_per_1m_in_cached": 1, @@ -1390,8 +1442,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, @@ -1450,19 +1502,6 @@ "has_reasoning_efforts": false, "supports_attachments": false }, - { - "id": "meta-llama/llama-3.2-3b-instruct", - "name": "Meta: Llama 3.2 3B Instruct", - "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": 32768, - "default_max_tokens": 16000, - "can_reason": false, - "has_reasoning_efforts": false, - "supports_attachments": false - }, { "id": "qwen/qwen-2.5-72b-instruct", "name": "Qwen2.5 72B Instruct", @@ -1477,10 +1516,10 @@ "supports_attachments": false }, { - "id": "cohere/command-r-08-2024", - "name": "Cohere: Command R (08-2024)", - "cost_per_1m_in": 0.15, - "cost_per_1m_out": 0.6, + "id": "cohere/command-r-plus-08-2024", + "name": "Cohere: Command R+ (08-2024)", + "cost_per_1m_in": 2.5, + "cost_per_1m_out": 10, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 128000, @@ -1490,10 +1529,10 @@ "supports_attachments": false }, { - "id": "cohere/command-r-plus-08-2024", - "name": "Cohere: Command R+ (08-2024)", - "cost_per_1m_in": 2.5, - "cost_per_1m_out": 10, + "id": "cohere/command-r-08-2024", + "name": "Cohere: Command R (08-2024)", + "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": 128000, @@ -1515,19 +1554,6 @@ "has_reasoning_efforts": false, "supports_attachments": false }, - { - "id": "nousresearch/hermes-3-llama-3.1-70b", - "name": "Nous: Hermes 3 70B Instruct", - "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": 12288, - "default_max_tokens": 1228, - "can_reason": false, - "has_reasoning_efforts": false, - "supports_attachments": false - }, { "id": "openai/gpt-4o-2024-08-06", "name": "OpenAI: GPT-4o (2024-08-06)", @@ -1544,12 +1570,12 @@ { "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.09999999999999999, + "cost_per_1m_out": 0.09999999999999999, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 131072, - "default_max_tokens": 8192, + "default_max_tokens": 4000, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": false @@ -1557,8 +1583,8 @@ { "id": "meta-llama/llama-3.1-70b-instruct", "name": "Meta: Llama 3.1 70B Instruct", - "cost_per_1m_in": 0.88, - "cost_per_1m_out": 0.88, + "cost_per_1m_in": 0.22999999999999998, + "cost_per_1m_out": 0.39999999999999997, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 131072, @@ -1906,36 +1932,36 @@ "supports_attachments": false }, { - "id": "openai/gpt-4-turbo-preview", - "name": "OpenAI: GPT-4 Turbo Preview", - "cost_per_1m_in": 10, - "cost_per_1m_out": 30, + "id": "openai/gpt-3.5-turbo-0613", + "name": "OpenAI: GPT-3.5 Turbo (older v0613)", + "cost_per_1m_in": 1, + "cost_per_1m_out": 2, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, - "context_window": 128000, + "context_window": 4095, "default_max_tokens": 2048, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": false }, { - "id": "openai/gpt-3.5-turbo-0613", - "name": "OpenAI: GPT-3.5 Turbo (older v0613)", - "cost_per_1m_in": 1, - "cost_per_1m_out": 2, + "id": "openai/gpt-4-turbo-preview", + "name": "OpenAI: GPT-4 Turbo Preview", + "cost_per_1m_in": 10, + "cost_per_1m_out": 30, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, - "context_window": 4095, + "context_window": 128000, "default_max_tokens": 2048, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": false }, { - "id": "mistralai/mistral-small", - "name": "Mistral Small", - "cost_per_1m_in": 0.19999999999999998, - "cost_per_1m_out": 0.6, + "id": "mistralai/mistral-tiny", + "name": "Mistral Tiny", + "cost_per_1m_in": 0.25, + "cost_per_1m_out": 0.25, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 32768, @@ -1945,10 +1971,10 @@ "supports_attachments": false }, { - "id": "mistralai/mistral-tiny", - "name": "Mistral Tiny", - "cost_per_1m_in": 0.25, - "cost_per_1m_out": 0.25, + "id": "mistralai/mistral-small", + "name": "Mistral Small", + "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": 32768,