diff --git a/internal/providers/configs/openrouter.json b/internal/providers/configs/openrouter.json index 697e9bd266de15359ecabb89ebab2b82337b3e7c..6b7a8398d31516a4b04ec7bcab4b42739efa877c 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": "nvidia/nemotron-nano-9b-v2", + "name": "NVIDIA: Nemotron Nano 9B V2", + "cost_per_1m_in": 0, + "cost_per_1m_out": 0, + "cost_per_1m_in_cached": 0, + "cost_per_1m_out_cached": 0, + "context_window": 128000, + "default_max_tokens": 12800, + "can_reason": true, + "has_reasoning_efforts": false, + "supports_attachments": false + }, { "id": "openrouter/sonoma-dusk-alpha", "name": "Sonoma Dusk Alpha", @@ -88,12 +101,12 @@ { "id": "qwen/qwen3-30b-a3b-thinking-2507", "name": "Qwen: Qwen3 30B A3B Thinking 2507", - "cost_per_1m_in": 0.09999999999999999, - "cost_per_1m_out": 0.3, + "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": 26214, + "default_max_tokens": 131072, "can_reason": true, "has_reasoning_efforts": false, "supports_attachments": false @@ -111,6 +124,19 @@ "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", @@ -257,8 +283,8 @@ { "id": "openai/gpt-oss-120b", "name": "OpenAI: gpt-oss-120b", - "cost_per_1m_in": 0.09999999999999999, - "cost_per_1m_out": 0.5, + "cost_per_1m_in": 0.14, + "cost_per_1m_out": 0.49, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 131072, @@ -309,8 +335,8 @@ { "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": 0.09999999999999999, + "cost_per_1m_out": 0.3, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 262144, @@ -361,12 +387,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.1, + "cost_per_1m_in": 0.14, + "cost_per_1m_out": 0.86, "cost_per_1m_in_cached": 0, - "cost_per_1m_out_cached": 0.03, + "cost_per_1m_out_cached": 0, "context_window": 131072, - "default_max_tokens": 48000, + "default_max_tokens": 65536, "can_reason": true, "has_reasoning_efforts": false, "supports_attachments": false @@ -413,8 +439,8 @@ { "id": "qwen/qwen3-coder", "name": "Qwen: Qwen3 Coder 480B A35B", - "cost_per_1m_in": 0.38, - "cost_per_1m_out": 1.53, + "cost_per_1m_in": 0.35, + "cost_per_1m_out": 1.5, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 262144, @@ -595,10 +621,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, @@ -673,8 +699,8 @@ { "id": "deepseek/deepseek-r1-0528", "name": "DeepSeek: R1 0528", - "cost_per_1m_in": 0.5, - "cost_per_1m_out": 2.1799999999999997, + "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, @@ -829,12 +855,12 @@ { "id": "qwen/qwen3-30b-a3b", "name": "Qwen: Qwen3 30B A3B", - "cost_per_1m_in": 0.15, - "cost_per_1m_out": 0.6, + "cost_per_1m_in": 0.09, + "cost_per_1m_out": 0.44999999999999996, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 131072, - "default_max_tokens": 4000, + "default_max_tokens": 65536, "can_reason": true, "has_reasoning_efforts": false, "supports_attachments": false @@ -855,12 +881,12 @@ { "id": "qwen/qwen3-32b", "name": "Qwen: Qwen3 32B", - "cost_per_1m_in": 0.39999999999999997, - "cost_per_1m_out": 0.7999999999999999, + "cost_per_1m_in": 0.14, + "cost_per_1m_out": 0.5700000000000001, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 131072, - "default_max_tokens": 16384, + "default_max_tokens": 65536, "can_reason": true, "has_reasoning_efforts": false, "supports_attachments": false @@ -972,10 +998,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, @@ -1011,12 +1037,12 @@ { "id": "meta-llama/llama-4-maverick", "name": "Meta: Llama 4 Maverick", - "cost_per_1m_in": 0.18, - "cost_per_1m_out": 0.6, + "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": 1048576, - "default_max_tokens": 524288, + "default_max_tokens": 8192, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": true @@ -1047,19 +1073,6 @@ "has_reasoning_efforts": false, "supports_attachments": true }, - { - "id": "google/gemini-2.5-pro-exp-03-25", - "name": "Google: Gemini 2.5 Pro Experimental", - "cost_per_1m_in": 0, - "cost_per_1m_out": 0, - "cost_per_1m_in_cached": 0, - "cost_per_1m_out_cached": 0, - "context_window": 1048576, - "default_max_tokens": 32767, - "can_reason": false, - "has_reasoning_efforts": false, - "supports_attachments": true - }, { "id": "deepseek/deepseek-chat-v3-0324:free", "name": "DeepSeek: DeepSeek V3 0324 (free)", @@ -1268,19 +1281,6 @@ "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", @@ -1310,12 +1310,12 @@ { "id": "deepseek/deepseek-chat", "name": "DeepSeek: DeepSeek V3", - "cost_per_1m_in": 0.39999999999999997, - "cost_per_1m_out": 1.3, + "cost_per_1m_in": 0.8999999999999999, + "cost_per_1m_out": 0.8999999999999999, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, - "context_window": 64000, - "default_max_tokens": 8000, + "context_window": 131072, + "default_max_tokens": 13107, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": false @@ -1366,8 +1366,8 @@ "cost_per_1m_out": 0, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, - "context_window": 128000, - "default_max_tokens": 2014, + "context_window": 65536, + "default_max_tokens": 6553, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": false @@ -1375,12 +1375,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.12, + "cost_per_1m_out": 0.3, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 131072, - "default_max_tokens": 4096, + "default_max_tokens": 65536, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": false @@ -1483,15 +1483,15 @@ "cost_per_1m_out": 0.39999999999999997, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, - "context_window": 32768, - "default_max_tokens": 3276, + "context_window": 32000, + "default_max_tokens": 16000, "can_reason": false, "has_reasoning_efforts": false, "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, @@ -1503,8 +1503,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, @@ -1607,10 +1607,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, @@ -1620,10 +1620,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, @@ -1645,6 +1645,19 @@ "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)", @@ -1658,19 +1671,6 @@ "has_reasoning_efforts": false, "supports_attachments": true }, - { - "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_cached": 0, - "cost_per_1m_out_cached": 0, - "context_window": 131072, - "default_max_tokens": 8192, - "can_reason": false, - "has_reasoning_efforts": false, - "supports_attachments": false - }, { "id": "meta-llama/llama-3.1-405b-instruct", "name": "Meta: Llama 3.1 405B Instruct", @@ -1697,6 +1697,19 @@ "has_reasoning_efforts": false, "supports_attachments": false }, + { + "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_cached": 0, + "cost_per_1m_out_cached": 0, + "context_window": 131072, + "default_max_tokens": 8192, + "can_reason": false, + "has_reasoning_efforts": false, + "supports_attachments": false + }, { "id": "mistralai/mistral-nemo", "name": "Mistral: Mistral Nemo", @@ -1827,6 +1840,19 @@ "has_reasoning_efforts": false, "supports_attachments": true }, + { + "id": "openai/gpt-4o-2024-05-13", + "name": "OpenAI: GPT-4o (2024-05-13)", + "cost_per_1m_in": 5, + "cost_per_1m_out": 15, + "cost_per_1m_in_cached": 0, + "cost_per_1m_out_cached": 0, + "context_window": 128000, + "default_max_tokens": 2048, + "can_reason": false, + "has_reasoning_efforts": false, + "supports_attachments": true + }, { "id": "openai/gpt-4o", "name": "OpenAI: GPT-4o", @@ -1854,17 +1880,17 @@ "supports_attachments": true }, { - "id": "openai/gpt-4o-2024-05-13", - "name": "OpenAI: GPT-4o (2024-05-13)", - "cost_per_1m_in": 5, - "cost_per_1m_out": 15, + "id": "meta-llama/llama-3-70b-instruct", + "name": "Meta: Llama 3 70B Instruct", + "cost_per_1m_in": 0.3, + "cost_per_1m_out": 0.39999999999999997, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, - "context_window": 128000, - "default_max_tokens": 2048, + "context_window": 8192, + "default_max_tokens": 8192, "can_reason": false, "has_reasoning_efforts": false, - "supports_attachments": true + "supports_attachments": false }, { "id": "meta-llama/llama-3-8b-instruct", @@ -1879,19 +1905,6 @@ "has_reasoning_efforts": false, "supports_attachments": false }, - { - "id": "meta-llama/llama-3-70b-instruct", - "name": "Meta: Llama 3 70B Instruct", - "cost_per_1m_in": 0.3, - "cost_per_1m_out": 0.39999999999999997, - "cost_per_1m_in_cached": 0, - "cost_per_1m_out_cached": 0, - "context_window": 8192, - "default_max_tokens": 8192, - "can_reason": false, - "has_reasoning_efforts": false, - "supports_attachments": false - }, { "id": "mistralai/mixtral-8x22b-instruct", "name": "Mistral: Mixtral 8x22B Instruct", @@ -1906,27 +1919,27 @@ "supports_attachments": false }, { - "id": "google/gemini-pro-1.5", - "name": "Google: Gemini 1.5 Pro", - "cost_per_1m_in": 1.25, - "cost_per_1m_out": 5, + "id": "openai/gpt-4-turbo", + "name": "OpenAI: GPT-4 Turbo", + "cost_per_1m_in": 10, + "cost_per_1m_out": 30, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, - "context_window": 2000000, - "default_max_tokens": 4096, + "context_window": 128000, + "default_max_tokens": 2048, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": true }, { - "id": "openai/gpt-4-turbo", - "name": "OpenAI: GPT-4 Turbo", - "cost_per_1m_in": 10, - "cost_per_1m_out": 30, + "id": "google/gemini-pro-1.5", + "name": "Google: Gemini 1.5 Pro", + "cost_per_1m_in": 1.25, + "cost_per_1m_out": 5, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, - "context_window": 128000, - "default_max_tokens": 2048, + "context_window": 2000000, + "default_max_tokens": 4096, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": true @@ -2023,26 +2036,26 @@ "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": "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, @@ -2114,13 +2127,13 @@ "supports_attachments": false }, { - "id": "openai/gpt-3.5-turbo", - "name": "OpenAI: GPT-3.5 Turbo", - "cost_per_1m_in": 0.5, - "cost_per_1m_out": 1.5, + "id": "openai/gpt-4-0314", + "name": "OpenAI: GPT-4 (older v0314)", + "cost_per_1m_in": 30, + "cost_per_1m_out": 60, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, - "context_window": 16385, + "context_window": 8191, "default_max_tokens": 2048, "can_reason": false, "has_reasoning_efforts": false, @@ -2140,13 +2153,13 @@ "supports_attachments": false }, { - "id": "openai/gpt-4-0314", - "name": "OpenAI: GPT-4 (older v0314)", - "cost_per_1m_in": 30, - "cost_per_1m_out": 60, + "id": "openai/gpt-3.5-turbo", + "name": "OpenAI: GPT-3.5 Turbo", + "cost_per_1m_in": 0.5, + "cost_per_1m_out": 1.5, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, - "context_window": 8191, + "context_window": 16385, "default_max_tokens": 2048, "can_reason": false, "has_reasoning_efforts": false,