From f6a2f09ec9e9b4db61c05f23013c43c8843b156c Mon Sep 17 00:00:00 2001 From: Kujtim Hoxha Date: Mon, 29 Sep 2025 19:57:16 +0200 Subject: [PATCH] chore: add new anthropic model (#72) --- internal/providers/configs/anthropic.json | 14 +- internal/providers/configs/openrouter.json | 170 ++++++++++----------- 2 files changed, 98 insertions(+), 86 deletions(-) diff --git a/internal/providers/configs/anthropic.json b/internal/providers/configs/anthropic.json index 9f964ad896a63e254f5c4a532aa842823b590043..8140ad01fc6d1715b9e1cec0b9b7e3f281cb254a 100644 --- a/internal/providers/configs/anthropic.json +++ b/internal/providers/configs/anthropic.json @@ -4,9 +4,21 @@ "type": "anthropic", "api_key": "$ANTHROPIC_API_KEY", "api_endpoint": "$ANTHROPIC_API_ENDPOINT", - "default_large_model_id": "claude-sonnet-4-20250514", + "default_large_model_id": "claude-sonnet-4-5-20250929", "default_small_model_id": "claude-3-5-haiku-20241022", "models": [ + { + "id": "claude-sonnet-4-5-20250929", + "name": "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, + "context_window": 200000, + "default_max_tokens": 50000, + "can_reason": true, + "supports_attachments": true + }, { "id": "claude-opus-4-1-20250805", "name": "Claude Opus 4.1", diff --git a/internal/providers/configs/openrouter.json b/internal/providers/configs/openrouter.json index c86d50f62db4a8f8b35a5b0738489a8adfe15c8f..23556fd53c98fce71d52f550d1186d6efe410793 100644 --- a/internal/providers/configs/openrouter.json +++ b/internal/providers/configs/openrouter.json @@ -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 @@ -215,6 +215,19 @@ "has_reasoning_efforts": true, "supports_attachments": true }, + { + "id": "anthropic/claude-sonnet-4.5", + "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, + "context_window": 1000000, + "default_max_tokens": 32000, + "can_reason": true, + "has_reasoning_efforts": true, + "supports_attachments": true + }, { "id": "arcee-ai/virtuoso-large", "name": "Arcee AI: Virtuoso Large", @@ -284,7 +297,7 @@ "id": "deepseek/deepseek-chat-v3-0324", "name": "DeepSeek: DeepSeek V3 0324", "cost_per_1m_in": 0.27, - "cost_per_1m_out": 1.13, + "cost_per_1m_out": 1.12, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 163840, @@ -345,6 +358,19 @@ "has_reasoning_efforts": true, "supports_attachments": false }, + { + "id": "deepseek/deepseek-v3.2-exp", + "name": "DeepSeek: DeepSeek V3.2 Exp", + "cost_per_1m_in": 0.27, + "cost_per_1m_out": 0.41, + "cost_per_1m_in_cached": 0, + "cost_per_1m_out_cached": 0, + "context_window": 163840, + "default_max_tokens": 32768, + "can_reason": true, + "has_reasoning_efforts": true, + "supports_attachments": false + }, { "id": "deepseek/deepseek-r1", "name": "DeepSeek: R1", @@ -361,12 +387,12 @@ { "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": 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": true, "supports_attachments": false @@ -457,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 @@ -582,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 @@ -595,12 +621,12 @@ { "id": "meta-llama/llama-3.1-70b-instruct", "name": "Meta: Llama 3.1 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": 8192, + "default_max_tokens": 13107, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": false @@ -618,19 +644,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": "meta-llama/llama-3.3-70b-instruct", "name": "Meta: Llama 3.3 70B Instruct", @@ -673,8 +686,8 @@ { "id": "meta-llama/llama-4-maverick", "name": "Meta: Llama 4 Maverick", - "cost_per_1m_in": 0.22, - "cost_per_1m_out": 0.88, + "cost_per_1m_in": 0.27, + "cost_per_1m_out": 0.85, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 1048576, @@ -943,19 +956,6 @@ "has_reasoning_efforts": false, "supports_attachments": false }, - { - "id": "mistralai/mistral-7b-instruct", - "name": "Mistral: Mistral 7B Instruct", - "cost_per_1m_in": 0.028, - "cost_per_1m_out": 0.054, - "cost_per_1m_in_cached": 0, - "cost_per_1m_out_cached": 0, - "context_window": 32768, - "default_max_tokens": 8192, - "can_reason": false, - "has_reasoning_efforts": false, - "supports_attachments": false - }, { "id": "mistralai/mistral-7b-instruct:free", "name": "Mistral: Mistral 7B Instruct (free)", @@ -1063,8 +1063,8 @@ { "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, @@ -1203,6 +1203,19 @@ "has_reasoning_efforts": true, "supports_attachments": false }, + { + "id": "nousresearch/hermes-4-405b", + "name": "Nous: Hermes 4 405B", + "cost_per_1m_in": 0.24999987999999998, + "cost_per_1m_out": 0.999999888, + "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": true, + "supports_attachments": false + }, { "id": "nousresearch/hermes-4-70b", "name": "Nous: Hermes 4 70B", @@ -1531,8 +1544,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.049999999999999996, + "cost_per_1m_out": 0.44999999999999996, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 131072, @@ -1544,12 +1557,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.07, + "cost_per_1m_out": 0.3, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 131072, - "default_max_tokens": 13107, + "default_max_tokens": 16384, "can_reason": true, "has_reasoning_efforts": true, "supports_attachments": false @@ -1762,28 +1775,15 @@ "has_reasoning_efforts": true, "supports_attachments": false }, - { - "id": "qwen/qwen3-235b-a22b:free", - "name": "Qwen: Qwen3 235B A22B (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": 131072, - "default_max_tokens": 13107, - "can_reason": false, - "has_reasoning_efforts": false, - "supports_attachments": false - }, { "id": "qwen/qwen3-235b-a22b-2507", "name": "Qwen: Qwen3 235B A22B Instruct 2507", - "cost_per_1m_in": 0.09999999999999999, - "cost_per_1m_out": 0.09999999999999999, + "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": 131072, + "default_max_tokens": 8192, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": false @@ -1791,8 +1791,8 @@ { "id": "qwen/qwen3-235b-a22b-thinking-2507", "name": "Qwen: Qwen3 235B A22B Thinking 2507", - "cost_per_1m_in": 0.09999999999999999, - "cost_per_1m_out": 0.39, + "cost_per_1m_in": 0.11, + "cost_per_1m_out": 0.6, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 262144, @@ -1804,8 +1804,8 @@ { "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.09, + "cost_per_1m_out": 0.44999999999999996, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 131072, @@ -1830,12 +1830,12 @@ { "id": "qwen/qwen3-30b-a3b-thinking-2507", "name": "Qwen: Qwen3 30B A3B Thinking 2507", - "cost_per_1m_in": 0.08, - "cost_per_1m_out": 0.29, + "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": true, "has_reasoning_efforts": true, "supports_attachments": false @@ -1869,8 +1869,8 @@ { "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.28, + "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, @@ -1887,7 +1887,7 @@ "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, "context_window": 262144, - "default_max_tokens": 26214, + "default_max_tokens": 32768, "can_reason": false, "has_reasoning_efforts": false, "supports_attachments": false @@ -1947,12 +1947,12 @@ { "id": "qwen/qwen3-next-80b-a3b-instruct", "name": "Qwen: Qwen3 Next 80B A3B Instruct", - "cost_per_1m_in": 0.09999999999999999, - "cost_per_1m_out": 0.7999999999999999, + "cost_per_1m_in": 0.15, + "cost_per_1m_out": 1.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 @@ -1960,8 +1960,8 @@ { "id": "qwen/qwen3-next-80b-a3b-thinking", "name": "Qwen: Qwen3 Next 80B A3B Thinking", - "cost_per_1m_in": 0.3, - "cost_per_1m_out": 0.3, + "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, @@ -1986,12 +1986,12 @@ { "id": "qwen/qwen3-vl-235b-a22b-thinking", "name": "Qwen: Qwen3 VL 235B A22B Thinking", - "cost_per_1m_in": 0.7, - "cost_per_1m_out": 8.399999999999999, + "cost_per_1m_in": 0.5, + "cost_per_1m_out": 3.5, "cost_per_1m_in_cached": 0, "cost_per_1m_out_cached": 0, - "context_window": 131072, - "default_max_tokens": 16384, + "context_window": 65536, + "default_max_tokens": 32768, "can_reason": true, "has_reasoning_efforts": true, "supports_attachments": true @@ -2067,9 +2067,9 @@ "cost_per_1m_in": 0.6, "cost_per_1m_out": 2.2, "cost_per_1m_in_cached": 0, - "cost_per_1m_out_cached": 0.11, + "cost_per_1m_out_cached": 0, "context_window": 131072, - "default_max_tokens": 48000, + "default_max_tokens": 49152, "can_reason": true, "has_reasoning_efforts": true, "supports_attachments": false