internal/deprecated/README.md 🔗
@@ -1,3 +0,0 @@
-# Deprecated
-
-This version of the config is deprecated, if you want to add a provider or update a provider do that in /internal/providers.
Andrey Nering created
It has been 4 months since we deprecated this, the data is outdated,
and I think it's a good thing to remove to avoid confusion for
contributors.
internal/deprecated/README.md | 3
internal/deprecated/configs/aihubmix.json | 153 -
internal/deprecated/configs/anthropic.json | 107
internal/deprecated/configs/azure.json | 196 -
internal/deprecated/configs/bedrock.json | 83
internal/deprecated/configs/cerebras.json | 63
internal/deprecated/configs/chutes.json | 242 --
internal/deprecated/configs/deepseek.json | 36
internal/deprecated/configs/gemini.json | 35
internal/deprecated/configs/groq.json | 29
internal/deprecated/configs/huggingface.json | 314 --
internal/deprecated/configs/openai.json | 156 -
internal/deprecated/configs/openrouter.json | 2615 ----------------------
internal/deprecated/configs/venice.json | 71
internal/deprecated/configs/vertexai.json | 35
internal/deprecated/configs/xai.json | 71
internal/deprecated/configs/zai.json | 52
internal/deprecated/old.go | 33
internal/deprecated/providers.go | 159 -
main.go | 26
20 files changed, 11 insertions(+), 4,468 deletions(-)
@@ -1,3 +0,0 @@
-# Deprecated
-
-This version of the config is deprecated, if you want to add a provider or update a provider do that in /internal/providers.
@@ -1,153 +0,0 @@
-{
- "name": "AIHubMix",
- "id": "aihubmix",
- "api_key": "$AIHUBMIX_API_KEY",
- "api_endpoint": "https://aihubmix.com/v1",
- "type": "openai",
- "default_large_model_id": "claude-sonnet-4-5",
- "default_small_model_id": "claude-3-5-haiku",
- "default_headers": {
- "APP-Code": "IUFF7106"
- },
- "models": [
- {
- "id": "claude-sonnet-4-5",
- "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",
- "name": "Claude Opus 4.1",
- "cost_per_1m_in": 15,
- "cost_per_1m_out": 75,
- "cost_per_1m_in_cached": 18.75,
- "cost_per_1m_out_cached": 1.5,
- "context_window": 200000,
- "default_max_tokens": 32000,
- "can_reason": true,
- "supports_attachments": true
- },
- {
- "id": "claude-3-5-haiku",
- "name": "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,
- "context_window": 200000,
- "default_max_tokens": 5000,
- "can_reason": false,
- "supports_attachments": true
- },
- {
- "id": "gemini-2.5-pro",
- "name": "Gemini 2.5 Pro",
- "cost_per_1m_in": 1.25,
- "cost_per_1m_out": 10,
- "cost_per_1m_in_cached": 1.625,
- "cost_per_1m_out_cached": 0.31,
- "context_window": 1048576,
- "default_max_tokens": 50000,
- "can_reason": true,
- "supports_attachments": true
- },
- {
- "id": "gemini-2.5-flash",
- "name": "Gemini 2.5 Flash",
- "cost_per_1m_in": 0.3,
- "cost_per_1m_out": 2.5,
- "cost_per_1m_in_cached": 0.3833,
- "cost_per_1m_out_cached": 0.075,
- "context_window": 1048576,
- "default_max_tokens": 50000,
- "can_reason": true,
- "supports_attachments": true
- },
- {
- "id": "gpt-5",
- "name": "GPT-5",
- "cost_per_1m_in": 1.25,
- "cost_per_1m_out": 10,
- "cost_per_1m_in_cached": 0.25,
- "cost_per_1m_out_cached": 0.25,
- "context_window": 400000,
- "default_max_tokens": 128000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "default_reasoning_effort": "minimal",
- "supports_attachments": true
- },
- {
- "id": "gpt-5-mini",
- "name": "GPT-5 Mini",
- "cost_per_1m_in": 0.25,
- "cost_per_1m_out": 2,
- "cost_per_1m_in_cached": 0.025,
- "cost_per_1m_out_cached": 0.025,
- "context_window": 400000,
- "default_max_tokens": 128000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "default_reasoning_effort": "low",
- "supports_attachments": true
- },
- {
- "id": "gpt-5-nano",
- "name": "GPT-5 Nano",
- "cost_per_1m_in": 0.05,
- "cost_per_1m_out": 0.4,
- "cost_per_1m_in_cached": 0.005,
- "cost_per_1m_out_cached": 0.005,
- "context_window": 400000,
- "default_max_tokens": 128000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "default_reasoning_effort": "low",
- "supports_attachments": true
- },
- {
- "id": "Kimi-K2-0905",
- "name": "Kimi K2 0905",
- "cost_per_1m_in": 0.55,
- "cost_per_1m_out": 2.19,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 256000,
- "default_max_tokens": 10000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "default_reasoning_effort": "medium"
- },
- {
- "id": "glm-4.6",
- "name": "GLM-4.6",
- "cost_per_1m_in": 0.6,
- "cost_per_1m_out": 2.2,
- "cost_per_1m_in_cached": 0.11,
- "cost_per_1m_out_cached": 0,
- "context_window": 204800,
- "default_max_tokens": 131072,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "default_reasoning_effort": "medium",
- "supports_attachments": false
- },
- {
- "id": "qwen3-coder-480b-a35b-instruct",
- "name": "Qwen 3 480B Coder",
- "cost_per_1m_in": 0.82,
- "cost_per_1m_out": 3.29,
- "context_window": 131072,
- "default_max_tokens": 65536,
- "can_reason": false,
- "supports_attachments": false
- }
- ]
-}
@@ -1,107 +0,0 @@
-{
- "name": "Anthropic",
- "id": "anthropic",
- "type": "anthropic",
- "api_key": "$ANTHROPIC_API_KEY",
- "api_endpoint": "$ANTHROPIC_API_ENDPOINT",
- "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",
- "cost_per_1m_in": 15,
- "cost_per_1m_out": 75,
- "cost_per_1m_in_cached": 18.75,
- "cost_per_1m_out_cached": 1.5,
- "context_window": 200000,
- "default_max_tokens": 32000,
- "can_reason": true,
- "supports_attachments": true
- },
- {
- "id": "claude-opus-4-20250514",
- "name": "Claude Opus 4",
- "cost_per_1m_in": 15,
- "cost_per_1m_out": 75,
- "cost_per_1m_in_cached": 18.75,
- "cost_per_1m_out_cached": 1.5,
- "context_window": 200000,
- "default_max_tokens": 32000,
- "can_reason": true,
- "supports_attachments": true
- },
- {
- "id": "claude-sonnet-4-20250514",
- "name": "Claude Sonnet 4",
- "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-3-7-sonnet-20250219",
- "name": "Claude 3.7 Sonnet",
- "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-3-5-haiku-20241022",
- "name": "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,
- "context_window": 200000,
- "default_max_tokens": 5000,
- "can_reason": false,
- "supports_attachments": true
- },
- {
- "id": "claude-3-5-sonnet-20240620",
- "name": "Claude 3.5 Sonnet (Old)",
- "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": 5000,
- "can_reason": false,
- "supports_attachments": true
- },
- {
- "id": "claude-3-5-sonnet-20241022",
- "name": "Claude 3.5 Sonnet (New)",
- "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": 5000,
- "can_reason": false,
- "supports_attachments": true
- }
- ]
-}
@@ -1,196 +0,0 @@
-{
- "name": "Azure OpenAI",
- "id": "azure",
- "type": "azure",
- "api_key": "$AZURE_OPENAI_API_KEY",
- "api_endpoint": "$AZURE_OPENAI_API_ENDPOINT",
- "default_large_model_id": "gpt-5",
- "default_small_model_id": "gpt-5-mini",
- "models": [
- {
- "id": "gpt-5",
- "name": "GPT-5",
- "cost_per_1m_in": 1.25,
- "cost_per_1m_out": 10,
- "cost_per_1m_in_cached": 0.25,
- "cost_per_1m_out_cached": 0.25,
- "context_window": 400000,
- "default_max_tokens": 128000,
- "can_reason": true,
- "has_reasoning_efforts": false,
- "default_reasoning_effort": "minimal",
- "supports_attachments": true
- },
- {
- "id": "gpt-5-mini",
- "name": "GPT-5 Mini",
- "cost_per_1m_in": 0.25,
- "cost_per_1m_out": 2,
- "cost_per_1m_in_cached": 0.025,
- "cost_per_1m_out_cached": 0.025,
- "context_window": 400000,
- "default_max_tokens": 128000,
- "can_reason": true,
- "has_reasoning_efforts": false,
- "default_reasoning_effort": "low",
- "supports_attachments": true
- },
- {
- "id": "gpt-5-nano",
- "name": "GPT-5 Nano",
- "cost_per_1m_in": 0.05,
- "cost_per_1m_out": 0.4,
- "cost_per_1m_in_cached": 0.005,
- "cost_per_1m_out_cached": 0.005,
- "context_window": 400000,
- "default_max_tokens": 128000,
- "can_reason": true,
- "has_reasoning_efforts": false,
- "default_reasoning_effort": "low",
- "supports_attachments": true
- },
- {
- "id": "codex-mini-latest",
- "name": "Codex Mini",
- "cost_per_1m_in": 1.5,
- "cost_per_1m_out": 6,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.375,
- "context_window": 200000,
- "default_max_tokens": 50000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "default_reasoning_effort": "medium",
- "supports_attachments": true
- },
- {
- "id": "o4-mini",
- "name": "o4 Mini",
- "cost_per_1m_in": 1.1,
- "cost_per_1m_out": 4.4,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.275,
- "context_window": 200000,
- "default_max_tokens": 50000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "default_reasoning_effort": "medium",
- "supports_attachments": true
- },
- {
- "id": "o3",
- "name": "o3",
- "cost_per_1m_in": 2,
- "cost_per_1m_out": 8,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.5,
- "context_window": 200000,
- "default_max_tokens": 50000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "default_reasoning_effort": "medium",
- "supports_attachments": true
- },
- {
- "id": "o3-pro",
- "name": "o3 Pro",
- "cost_per_1m_in": 20,
- "cost_per_1m_out": 80,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 200000,
- "default_max_tokens": 50000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "default_reasoning_effort": "medium",
- "supports_attachments": true
- },
- {
- "id": "gpt-4.1",
- "name": "GPT-4.1",
- "cost_per_1m_in": 2,
- "cost_per_1m_out": 8,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.5,
- "context_window": 1047576,
- "default_max_tokens": 50000,
- "can_reason": false,
- "supports_attachments": true
- },
- {
- "id": "gpt-4.1-mini",
- "name": "GPT-4.1 Mini",
- "cost_per_1m_in": 0.39999999999999997,
- "cost_per_1m_out": 1.5999999999999999,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.09999999999999999,
- "context_window": 1047576,
- "default_max_tokens": 50000,
- "can_reason": false,
- "supports_attachments": true
- },
- {
- "id": "gpt-4.1-nano",
- "name": "GPT-4.1 Nano",
- "cost_per_1m_in": 0.09999999999999999,
- "cost_per_1m_out": 0.39999999999999997,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.024999999999999998,
- "context_window": 1047576,
- "default_max_tokens": 50000,
- "can_reason": false,
- "supports_attachments": true
- },
- {
- "id": "gpt-4.5-preview",
- "name": "GPT-4.5 (Preview)",
- "cost_per_1m_in": 75,
- "cost_per_1m_out": 150,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 37.5,
- "context_window": 128000,
- "default_max_tokens": 50000,
- "can_reason": false,
- "supports_attachments": true
- },
- {
- "id": "o3-mini",
- "name": "o3 Mini",
- "cost_per_1m_in": 1.1,
- "cost_per_1m_out": 4.4,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.55,
- "context_window": 200000,
- "default_max_tokens": 50000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "default_reasoning_effort": "medium",
- "supports_attachments": false
- },
- {
- "id": "gpt-4o",
- "name": "GPT-4o",
- "cost_per_1m_in": 2.5,
- "cost_per_1m_out": 10,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 1.25,
- "context_window": 128000,
- "default_max_tokens": 20000,
- "can_reason": false,
- "supports_attachments": true
- },
- {
- "id": "gpt-4o-mini",
- "name": "GPT-4o-mini",
- "cost_per_1m_in": 0.15,
- "cost_per_1m_out": 0.6,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.075,
- "context_window": 128000,
- "default_max_tokens": 20000,
- "can_reason": false,
- "reasoning_effort": "",
- "supports_attachments": true
- }
- ]
-}
@@ -1,83 +0,0 @@
-{
- "name": "AWS Bedrock",
- "id": "bedrock",
- "type": "bedrock",
- "api_key": "",
- "api_endpoint": "",
- "default_large_model_id": "anthropic.claude-sonnet-4-5-20250929-v1:0",
- "default_small_model_id": "anthropic.claude-3-5-haiku-20241022-v1:0",
- "models": [
- {
- "id": "anthropic.claude-sonnet-4-5-20250929-v1:0",
- "name": "AWS 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": "anthropic.claude-opus-4-1-20250805-v1:0",
- "name": "AWS Claude Opus 4.1",
- "cost_per_1m_in": 15,
- "cost_per_1m_out": 75,
- "cost_per_1m_in_cached": 18.75,
- "cost_per_1m_out_cached": 1.5,
- "context_window": 200000,
- "default_max_tokens": 50000,
- "can_reason": true,
- "supports_attachments": true
- },
- {
- "id": "anthropic.claude-opus-4-20250514-v1:0",
- "name": "AWS Claude Opus 4",
- "cost_per_1m_in": 15,
- "cost_per_1m_out": 75,
- "cost_per_1m_in_cached": 18.75,
- "cost_per_1m_out_cached": 1.5,
- "context_window": 200000,
- "default_max_tokens": 50000,
- "can_reason": true,
- "supports_attachments": true
- },
- {
- "id": "anthropic.claude-sonnet-4-20250514-v1:0",
- "name": "AWS Claude Sonnet 4",
- "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": "anthropic.claude-3-7-sonnet-20250219-v1:0",
- "name": "AWS Claude 3.7 Sonnet",
- "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": "anthropic.claude-3-5-haiku-20241022-v1:0",
- "name": "AWS 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,
- "context_window": 200000,
- "default_max_tokens": 50000,
- "can_reason": false,
- "supports_attachments": true
- }
- ]
-}
@@ -1,63 +0,0 @@
-{
- "name": "Cerebras",
- "id": "cerebras",
- "type": "openai",
- "api_key": "$CEREBRAS_API_KEY",
- "api_endpoint": "https://api.cerebras.ai/v1",
- "default_large_model_id": "zai-glm-4.6",
- "default_small_model_id": "qwen-3-32b",
- "models": [
- {
- "id": "llama-3.3-70b",
- "name": "Llama 3.3 70B",
- "cost_per_1m_in": 0.85,
- "cost_per_1m_out": 1.2,
- "context_window": 131072,
- "default_max_tokens": 25000,
- "can_reason": false,
- "supports_attachments": false
- },
- {
- "id": "gpt-oss-120b",
- "name": "OpenAI GPT OSS",
- "cost_per_1m_in": 0.35,
- "cost_per_1m_out": 0.75,
- "context_window": 131072,
- "default_max_tokens": 25000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "default_reasoning_efforts": "medium",
- "supports_attachments": false
- },
- {
- "id": "qwen-3-32b",
- "name": "Qwen 3 32B",
- "cost_per_1m_in": 0.4,
- "cost_per_1m_out": 0.8,
- "context_window": 131072,
- "default_max_tokens": 25000,
- "can_reason": false,
- "supports_attachments": false
- },
- {
- "id": "qwen-3-235b-a22b-instruct-2507",
- "name": "Qwen 3 235B Instruct",
- "cost_per_1m_in": 0.6,
- "cost_per_1m_out": 1.2,
- "context_window": 131072,
- "default_max_tokens": 25000,
- "can_reason": false,
- "supports_attachments": false
- },
- {
- "id": "zai-glm-4.6",
- "name": "Z.ai GLM 4.6",
- "cost_per_1m_in": 2.25,
- "cost_per_1m_out": 2.75,
- "context_window": 131072,
- "default_max_tokens": 25000,
- "can_reason": false,
- "supports_attachments": false
- }
- ]
-}
@@ -1,242 +0,0 @@
-{
- "name": "Chutes",
- "id": "chutes",
- "type": "openai",
- "api_key": "$CHUTES_API_KEY",
- "api_endpoint": "https://llm.chutes.ai/v1",
- "default_large_model_id": "Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8",
- "default_small_model_id": "Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8",
- "models": [
- {
- "id": "Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8",
- "name": "Qwen3 Coder 480B A35B Instruct (FP8)",
- "cost_per_1m_in": 0.2,
- "cost_per_1m_out": 0.8,
- "context_window": 262000,
- "default_max_tokens": 32768,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "default_reasoning_efforts": "medium",
- "supports_attachments": true
- },
- {
- "id": "zai-org/GLM-4.5-FP8",
- "name": "GLM 4.5 FP8",
- "cost_per_1m_in": 0.0,
- "cost_per_1m_out": 0.0,
- "context_window": 98000,
- "default_max_tokens": 32768,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "default_reasoning_efforts": "medium",
- "supports_attachments": true
- },
- {
- "id": "moonshotai/Kimi-K2-Instruct-75k",
- "name": "Kimi K2 Instruct",
- "cost_per_1m_in": 0.15,
- "cost_per_1m_out": 0.59,
- "context_window": 75000,
- "default_max_tokens": 32768,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "default_reasoning_efforts": "medium",
- "supports_attachments": true
- },
- {
- "id": "deepseek-ai/DeepSeek-R1-0528",
- "name": "DeepSeek R1 0528",
- "cost_per_1m_in": 0.18,
- "cost_per_1m_out": 0.72,
- "context_window": 75000,
- "default_max_tokens": 32768,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "default_reasoning_efforts": "medium",
- "supports_attachments": true
- },
- {
- "id": "deepseek-ai/DeepSeek-R1-0528-Qwen3-8B",
- "name": "DeepSeek R1 0528 Qwen3 8B",
- "cost_per_1m_in": 0.02,
- "cost_per_1m_out": 0.07,
- "context_window": 32768,
- "default_max_tokens": 8192,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "id": "deepseek-ai/DeepSeek-R1-Distill-Llama-70B",
- "name": "DeepSeek R1 Distill Llama 70B",
- "cost_per_1m_in": 0.03,
- "cost_per_1m_out": 0.14,
- "context_window": 65536,
- "default_max_tokens": 8192,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "id": "tngtech/DeepSeek-R1T-Chimera",
- "name": "DeepSeek R1T Chimera",
- "cost_per_1m_in": 0.18,
- "cost_per_1m_out": 0.72,
- "context_window": 131072,
- "default_max_tokens": 32768,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "default_reasoning_efforts": "medium",
- "supports_attachments": true
- },
- {
- "id": "tngtech/DeepSeek-TNG-R1T2-Chimera",
- "name": "DeepSeek TNG R1T2 Chimera",
- "cost_per_1m_in": 0.20,
- "cost_per_1m_out": 0.80,
- "context_window": 262144,
- "default_max_tokens": 65536,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "default_reasoning_efforts": "high",
- "supports_attachments": true
- },
- {
- "id": "deepseek-ai/DeepSeek-V3-0324",
- "name": "DeepSeek V3 0324",
- "cost_per_1m_in": 0.18,
- "cost_per_1m_out": 0.72,
- "context_window": 75000,
- "default_max_tokens": 32768,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "default_reasoning_efforts": "medium",
- "supports_attachments": true
- },
- {
- "id": "chutesai/Devstral-Small-2505",
- "name": "Devstral Small 2505",
- "cost_per_1m_in": 0.02,
- "cost_per_1m_out": 0.08,
- "context_window": 32768,
- "default_max_tokens": 8192,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "id": "zai-org/GLM-4.5-Air",
- "name": "GLM 4.5 Air",
- "cost_per_1m_in": 0.0,
- "cost_per_1m_out": 0.0,
- "context_window": 131072,
- "default_max_tokens": 32768,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "default_reasoning_efforts": "medium",
- "supports_attachments": true
- },
- {
- "id": "openai/gpt-oss-120b",
- "name": "GPT OSS 120B",
- "cost_per_1m_in": 0.10,
- "cost_per_1m_out": 0.41,
- "context_window": 131072,
- "default_max_tokens": 32768,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "default_reasoning_efforts": "medium",
- "supports_attachments": true
- },
- {
- "id": "chutesai/Mistral-Small-3.2-24B-Instruct-2506",
- "name": "Mistral Small 3.2 24B Instruct 2506",
- "cost_per_1m_in": 0.02,
- "cost_per_1m_out": 0.08,
- "context_window": 32768,
- "default_max_tokens": 8192,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "id": "Qwen/Qwen3-235B-A22B-Instruct-2507",
- "name": "Qwen3 235B A22B Instruct 2507",
- "cost_per_1m_in": 0.08,
- "cost_per_1m_out": 0.31,
- "context_window": 32768,
- "default_max_tokens": 8192,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "id": "Qwen/Qwen3-30B-A3B",
- "name": "Qwen3 30B A3B",
- "cost_per_1m_in": 0.02,
- "cost_per_1m_out": 0.08,
- "context_window": 32768,
- "default_max_tokens": 8192,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "id": "Qwen/Qwen3-235B-A22B-Thinking-2507",
- "name": "Qwen3 235B A22B Thinking 2507",
- "cost_per_1m_in": 0.08,
- "cost_per_1m_out": 0.31,
- "context_window": 32768,
- "default_max_tokens": 8192,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "default_reasoning_efforts": "high",
- "supports_attachments": true
- },
- {
- "id": "deepseek-ai/DeepSeek-V3.1",
- "name": "DeepSeek V3.1",
- "cost_per_1m_in": 0.20,
- "cost_per_1m_out": 0.80,
- "context_window": 163840,
- "default_max_tokens": 32768,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "id": "deepseek-ai/DeepSeek-V3.1:THINKING",
- "name": "DeepSeek V3.1 Reasoning",
- "cost_per_1m_in": 0.20,
- "cost_per_1m_out": 0.80,
- "context_window": 163840,
- "default_max_tokens": 32768,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "default_reasoning_efforts": "medium",
- "supports_attachments": true
- },
- {
- "id": "Qwen/Qwen3-30B-A3B-Instruct-2507",
- "name": "Qwen3 30B A3B Instruct 2507",
- "cost_per_1m_in": 0.05,
- "cost_per_1m_out": 0.20,
- "context_window": 262144,
- "default_max_tokens": 32768,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "id": "Qwen/Qwen3-Coder-30B-A3B-Instruct",
- "name": "Qwen3 Coder 30B A3B Instruct",
- "cost_per_1m_in": 0.00,
- "cost_per_1m_out": 0.00,
- "context_window": 262144,
- "default_max_tokens": 32768,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- }
- ]
-}
@@ -1,36 +0,0 @@
-{
- "name": "DeepSeek",
- "id": "deepseek",
- "type": "openai",
- "api_key": "$DEEPSEEK_API_KEY",
- "api_endpoint": "https://api.deepseek.com/v1",
- "default_large_model_id": "deepseek-reasoner",
- "default_small_model_id": "deepseek-chat",
- "models": [
- {
- "id": "deepseek-chat",
- "name": "DeepSeek-V3.1 (Non-thinking Mode)",
- "cost_per_1m_in": 0.56,
- "cost_per_1m_out": 1.68,
- "cost_per_1m_in_cached": 0.07,
- "cost_per_1m_out_cached": 1.68,
- "context_window": 128000,
- "default_max_tokens": 4000,
- "can_reason": false,
- "supports_attachments": false
- },
- {
- "id": "deepseek-reasoner",
- "name": "DeepSeek-V3.1 (Thinking Mode)",
- "cost_per_1m_in": 0.56,
- "cost_per_1m_out": 1.68,
- "cost_per_1m_in_cached": 0.07,
- "cost_per_1m_out_cached": 1.68,
- "context_window": 128000,
- "default_max_tokens": 32000,
- "can_reason": true,
- "supports_attachments": false
- }
- ]
-}
-
@@ -1,35 +0,0 @@
-{
- "name": "Google Gemini",
- "id": "gemini",
- "type": "gemini",
- "api_key": "$GEMINI_API_KEY",
- "api_endpoint": "$GEMINI_API_ENDPOINT",
- "default_large_model_id": "gemini-2.5-pro",
- "default_small_model_id": "gemini-2.5-flash",
- "models": [
- {
- "id": "gemini-2.5-pro",
- "name": "Gemini 2.5 Pro",
- "cost_per_1m_in": 1.25,
- "cost_per_1m_out": 10,
- "cost_per_1m_in_cached": 1.625,
- "cost_per_1m_out_cached": 0.31,
- "context_window": 1048576,
- "default_max_tokens": 50000,
- "can_reason": true,
- "supports_attachments": true
- },
- {
- "id": "gemini-2.5-flash",
- "name": "Gemini 2.5 Flash",
- "cost_per_1m_in": 0.3,
- "cost_per_1m_out": 2.5,
- "cost_per_1m_in_cached": 0.3833,
- "cost_per_1m_out_cached": 0.075,
- "context_window": 1048576,
- "default_max_tokens": 50000,
- "can_reason": true,
- "supports_attachments": true
- }
- ]
-}
@@ -1,29 +0,0 @@
-{
- "name": "Groq",
- "id": "groq",
- "api_key": "$GROQ_API_KEY",
- "api_endpoint": "https://api.groq.com/openai/v1",
- "type": "openai",
- "default_large_model_id": "moonshotai/kimi-k2-instruct-0905",
- "default_small_model_id": "qwen/qwen3-32b",
- "models": [
- {
- "id": "moonshotai/kimi-k2-instruct-0905",
- "name": "Kimi K2 0905",
- "cost_per_1m_in": 1,
- "cost_per_1m_out": 3,
- "cost_per_1m_in_cached": 0.5,
- "cost_per_1m_out_cached": 0.5,
- "context_window": 131072,
- "default_max_tokens": 10000
- },
- {
- "id": "qwen/qwen3-32b",
- "name": "Qwen3 32B",
- "cost_per_1m_in": 0.29,
- "cost_per_1m_out": 0.59,
- "context_window": 131072,
- "default_max_tokens": 10000
- }
- ]
-}
@@ -1,314 +0,0 @@
-{
- "name": "Hugging Face",
- "id": "huggingface",
- "api_key": "$HF_TOKEN",
- "api_endpoint": "https://router.huggingface.co/v1",
- "type": "openai",
- "default_large_model_id": "moonshotai/Kimi-K2-Instruct-0905:groq",
- "default_small_model_id": "openai/gpt-oss-20b",
- "models": [
- {
- "id": "Qwen/Qwen3-235B-A22B:fireworks-ai",
- "name": "Qwen/Qwen3-235B-A22B (fireworks-ai)",
- "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": 131072,
- "default_max_tokens": 8192,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "Qwen/Qwen3-235B-A22B-Instruct-2507:fireworks-ai",
- "name": "Qwen/Qwen3-235B-A22B-Instruct-2507 (fireworks-ai)",
- "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": 262144,
- "default_max_tokens": 8192,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "Qwen/Qwen3-235B-A22B-Thinking-2507:fireworks-ai",
- "name": "Qwen/Qwen3-235B-A22B-Thinking-2507 (fireworks-ai)",
- "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": 262144,
- "default_max_tokens": 8192,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "Qwen/Qwen3-30B-A3B:fireworks-ai",
- "name": "Qwen/Qwen3-30B-A3B (fireworks-ai)",
- "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": 131072,
- "default_max_tokens": 8192,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "Qwen/Qwen3-Coder-480B-A35B-Instruct:cerebras",
- "name": "Qwen/Qwen3-Coder-480B-A35B-Instruct (cerebras)",
- "cost_per_1m_in": 2,
- "cost_per_1m_out": 2,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 262144,
- "default_max_tokens": 8192,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "Qwen/Qwen3-Coder-480B-A35B-Instruct:fireworks-ai",
- "name": "Qwen/Qwen3-Coder-480B-A35B-Instruct (fireworks-ai)",
- "cost_per_1m_in": 0.45,
- "cost_per_1m_out": 1.8,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 262144,
- "default_max_tokens": 8192,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "deepseek-ai/DeepSeek-V3-0324:fireworks-ai",
- "name": "deepseek-ai/DeepSeek-V3-0324 (fireworks-ai)",
- "cost_per_1m_in": 0.9,
- "cost_per_1m_out": 0.9,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 163840,
- "default_max_tokens": 8192,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "deepseek-ai/DeepSeek-V3.1:fireworks-ai",
- "name": "deepseek-ai/DeepSeek-V3.1 (fireworks-ai)",
- "cost_per_1m_in": 0,
- "cost_per_1m_out": 0,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 163840,
- "default_max_tokens": 8192,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "meta-llama/Llama-3.1-70B-Instruct:fireworks-ai",
- "name": "meta-llama/Llama-3.1-70B-Instruct (fireworks-ai)",
- "cost_per_1m_in": 0.9,
- "cost_per_1m_out": 0.9,
- "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.3-70B-Instruct:cerebras",
- "name": "meta-llama/Llama-3.3-70B-Instruct (cerebras)",
- "cost_per_1m_in": 0.85,
- "cost_per_1m_out": 1.2,
- "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.3-70B-Instruct:groq",
- "name": "meta-llama/Llama-3.3-70B-Instruct (groq)",
- "cost_per_1m_in": 0.59,
- "cost_per_1m_out": 0.79,
- "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-4-Maverick-17B-128E-Instruct:fireworks-ai",
- "name": "meta-llama/Llama-4-Maverick-17B-128E-Instruct (fireworks-ai)",
- "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": 1048576,
- "default_max_tokens": 8192,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "meta-llama/Llama-4-Maverick-17B-128E-Instruct:groq",
- "name": "meta-llama/Llama-4-Maverick-17B-128E-Instruct (groq)",
- "cost_per_1m_in": 0.2,
- "cost_per_1m_out": 0.6,
- "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-4-Scout-17B-16E-Instruct:groq",
- "name": "meta-llama/Llama-4-Scout-17B-16E-Instruct (groq)",
- "cost_per_1m_in": 0.11,
- "cost_per_1m_out": 0.34,
- "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": "moonshotai/Kimi-K2-Instruct:fireworks-ai",
- "name": "moonshotai/Kimi-K2-Instruct (fireworks-ai)",
- "cost_per_1m_in": 0.6,
- "cost_per_1m_out": 2.5,
- "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": "moonshotai/Kimi-K2-Instruct-0905:groq",
- "name": "moonshotai/Kimi-K2-Instruct-0905 (groq)",
- "cost_per_1m_in": 0,
- "cost_per_1m_out": 0,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 262144,
- "default_max_tokens": 8192,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "openai/gpt-oss-120b:cerebras",
- "name": "openai/gpt-oss-120b (cerebras)",
- "cost_per_1m_in": 0.25,
- "cost_per_1m_out": 0.69,
- "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": "openai/gpt-oss-120b:fireworks-ai",
- "name": "openai/gpt-oss-120b (fireworks-ai)",
- "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": 131072,
- "default_max_tokens": 8192,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "openai/gpt-oss-120b:groq",
- "name": "openai/gpt-oss-120b (groq)",
- "cost_per_1m_in": 0.15,
- "cost_per_1m_out": 0.75,
- "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": "openai/gpt-oss-20b:fireworks-ai",
- "name": "openai/gpt-oss-20b (fireworks-ai)",
- "cost_per_1m_in": 0.05,
- "cost_per_1m_out": 0.2,
- "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": "openai/gpt-oss-20b:groq",
- "name": "openai/gpt-oss-20b (groq)",
- "cost_per_1m_in": 0.1,
- "cost_per_1m_out": 0.5,
- "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": "zai-org/GLM-4.5:fireworks-ai",
- "name": "zai-org/GLM-4.5 (fireworks-ai)",
- "cost_per_1m_in": 0.55,
- "cost_per_1m_out": 2.19,
- "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": "zai-org/GLM-4.5-Air:fireworks-ai",
- "name": "zai-org/GLM-4.5-Air (fireworks-ai)",
- "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": 131072,
- "default_max_tokens": 8192,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- }
- ],
- "default_headers": {
- "HTTP-Referer": "https://charm.land",
- "X-Title": "Crush"
- }
-}
@@ -1,156 +0,0 @@
-{
- "name": "OpenAI",
- "id": "openai",
- "type": "openai",
- "api_key": "$OPENAI_API_KEY",
- "api_endpoint": "$OPENAI_API_ENDPOINT",
- "default_large_model_id": "gpt-5",
- "default_small_model_id": "gpt-4o",
- "models": [
- {
- "id": "gpt-5",
- "name": "GPT-5",
- "cost_per_1m_in": 1.25,
- "cost_per_1m_out": 10,
- "cost_per_1m_in_cached": 0.25,
- "cost_per_1m_out_cached": 0.25,
- "context_window": 400000,
- "default_max_tokens": 128000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "default_reasoning_effort": "minimal",
- "supports_attachments": true
- },
- {
- "id": "gpt-5-mini",
- "name": "GPT-5 Mini",
- "cost_per_1m_in": 0.25,
- "cost_per_1m_out": 2,
- "cost_per_1m_in_cached": 0.025,
- "cost_per_1m_out_cached": 0.025,
- "context_window": 400000,
- "default_max_tokens": 128000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "default_reasoning_effort": "low",
- "supports_attachments": true
- },
- {
- "id": "gpt-5-nano",
- "name": "GPT-5 Nano",
- "cost_per_1m_in": 0.05,
- "cost_per_1m_out": 0.4,
- "cost_per_1m_in_cached": 0.005,
- "cost_per_1m_out_cached": 0.005,
- "context_window": 400000,
- "default_max_tokens": 128000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "default_reasoning_effort": "low",
- "supports_attachments": true
- },
- {
- "id": "o4-mini",
- "name": "o4 Mini",
- "cost_per_1m_in": 1.1,
- "cost_per_1m_out": 4.4,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.275,
- "context_window": 200000,
- "default_max_tokens": 50000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "default_reasoning_effort": "low",
- "supports_attachments": true
- },
- {
- "id": "o3",
- "name": "o3",
- "cost_per_1m_in": 2,
- "cost_per_1m_out": 8,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.5,
- "context_window": 200000,
- "default_max_tokens": 50000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "default_reasoning_effort": "medium",
- "supports_attachments": true
- },
- {
- "id": "gpt-4.1",
- "name": "GPT-4.1",
- "cost_per_1m_in": 2,
- "cost_per_1m_out": 8,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.5,
- "context_window": 1047576,
- "default_max_tokens": 16384,
- "can_reason": false,
- "supports_attachments": true
- },
- {
- "id": "gpt-4.1-mini",
- "name": "GPT-4.1 Mini",
- "cost_per_1m_in": 0.39999999999999997,
- "cost_per_1m_out": 1.5999999999999999,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.09999999999999999,
- "context_window": 1047576,
- "default_max_tokens": 16384,
- "can_reason": false,
- "supports_attachments": true
- },
- {
- "id": "gpt-4.1-nano",
- "name": "GPT-4.1 Nano",
- "cost_per_1m_in": 0.09999999999999999,
- "cost_per_1m_out": 0.39999999999999997,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.024999999999999998,
- "context_window": 1047576,
- "default_max_tokens": 16384,
- "can_reason": false,
- "supports_attachments": true
- },
- {
- "id": "o3-mini",
- "name": "o3 Mini",
- "cost_per_1m_in": 1.1,
- "cost_per_1m_out": 4.4,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.55,
- "context_window": 200000,
- "default_max_tokens": 50000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "default_reasoning_effort": "medium",
- "supports_attachments": false
- },
- {
- "id": "gpt-4o",
- "name": "GPT-4o",
- "cost_per_1m_in": 2.5,
- "cost_per_1m_out": 10,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 1.25,
- "context_window": 128000,
- "default_max_tokens": 8192,
- "can_reason": false,
- "supports_attachments": true
- },
- {
- "id": "gpt-4o-mini",
- "name": "GPT-4o-mini",
- "cost_per_1m_in": 0.15,
- "cost_per_1m_out": 0.6,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.075,
- "context_window": 128000,
- "default_max_tokens": 8192,
- "can_reason": false,
- "reasoning_effort": "",
- "supports_attachments": true
- }
- ]
-}
@@ -1,2615 +0,0 @@
-{
- "name": "OpenRouter",
- "id": "openrouter",
- "api_key": "$OPENROUTER_API_KEY",
- "api_endpoint": "https://openrouter.ai/api/v1",
- "type": "openai",
- "default_large_model_id": "anthropic/claude-sonnet-4",
- "default_small_model_id": "anthropic/claude-3.5-haiku",
- "models": [
- {
- "id": "ai21/jamba-large-1.7",
- "name": "AI21: Jamba Large 1.7",
- "cost_per_1m_in": 2,
- "cost_per_1m_out": 8,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 256000,
- "default_max_tokens": 2048,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "ai21/jamba-mini-1.7",
- "name": "AI21: Jamba Mini 1.7",
- "cost_per_1m_in": 0.19999999999999998,
- "cost_per_1m_out": 0.39999999999999997,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 256000,
- "default_max_tokens": 2048,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "amazon/nova-lite-v1",
- "name": "Amazon: Nova Lite 1.0",
- "cost_per_1m_in": 0.06,
- "cost_per_1m_out": 0.24,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 300000,
- "default_max_tokens": 2560,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "id": "amazon/nova-micro-v1",
- "name": "Amazon: Nova Micro 1.0",
- "cost_per_1m_in": 0.035,
- "cost_per_1m_out": 0.14,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 128000,
- "default_max_tokens": 2560,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "amazon/nova-pro-v1",
- "name": "Amazon: Nova Pro 1.0",
- "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": 300000,
- "default_max_tokens": 2560,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "id": "openrouter/andromeda-alpha",
- "name": "Andromeda Alpha",
- "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": 64000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": true
- },
- {
- "id": "anthropic/claude-3-haiku",
- "name": "Anthropic: Claude 3 Haiku",
- "cost_per_1m_in": 0.25,
- "cost_per_1m_out": 1.25,
- "cost_per_1m_in_cached": 0.3,
- "cost_per_1m_out_cached": 0.03,
- "context_window": 200000,
- "default_max_tokens": 2048,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "id": "anthropic/claude-3-opus",
- "name": "Anthropic: Claude 3 Opus",
- "cost_per_1m_in": 15,
- "cost_per_1m_out": 75,
- "cost_per_1m_in_cached": 18.75,
- "cost_per_1m_out_cached": 1.5,
- "context_window": 200000,
- "default_max_tokens": 2048,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "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,
- "cost_per_1m_out_cached": 0.08,
- "context_window": 200000,
- "default_max_tokens": 4096,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "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,
- "cost_per_1m_out_cached": 0.08,
- "context_window": 200000,
- "default_max_tokens": 4096,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "id": "anthropic/claude-3.5-sonnet",
- "name": "Anthropic: Claude 3.5 Sonnet",
- "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": 4096,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "id": "anthropic/claude-3.5-sonnet-20240620",
- "name": "Anthropic: Claude 3.5 Sonnet (2024-06-20)",
- "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": 4096,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "id": "anthropic/claude-3.7-sonnet",
- "name": "Anthropic: Claude 3.7 Sonnet",
- "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": 32000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": true
- },
- {
- "id": "anthropic/claude-3.7-sonnet:thinking",
- "name": "Anthropic: Claude 3.7 Sonnet (thinking)",
- "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": 32000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": true
- },
- {
- "id": "anthropic/claude-haiku-4.5",
- "name": "Anthropic: Claude Haiku 4.5",
- "cost_per_1m_in": 1,
- "cost_per_1m_out": 5,
- "cost_per_1m_in_cached": 1.25,
- "cost_per_1m_out_cached": 0.09999999999999999,
- "context_window": 200000,
- "default_max_tokens": 32000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": true
- },
- {
- "id": "anthropic/claude-opus-4",
- "name": "Anthropic: Claude Opus 4",
- "cost_per_1m_in": 15,
- "cost_per_1m_out": 75,
- "cost_per_1m_in_cached": 18.75,
- "cost_per_1m_out_cached": 1.5,
- "context_window": 200000,
- "default_max_tokens": 16000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": true
- },
- {
- "id": "anthropic/claude-opus-4.1",
- "name": "Anthropic: Claude Opus 4.1",
- "cost_per_1m_in": 15,
- "cost_per_1m_out": 75,
- "cost_per_1m_in_cached": 18.75,
- "cost_per_1m_out_cached": 1.5,
- "context_window": 200000,
- "default_max_tokens": 16000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": true
- },
- {
- "id": "anthropic/claude-sonnet-4",
- "name": "Anthropic: Claude Sonnet 4",
- "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": "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",
- "cost_per_1m_in": 0.75,
- "cost_per_1m_out": 1.2,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 131072,
- "default_max_tokens": 32000,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "baidu/ernie-4.5-21b-a3b",
- "name": "Baidu: ERNIE 4.5 21B A3B",
- "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": 120000,
- "default_max_tokens": 4000,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "baidu/ernie-4.5-vl-28b-a3b",
- "name": "Baidu: ERNIE 4.5 VL 28B A3B",
- "cost_per_1m_in": 0.14,
- "cost_per_1m_out": 0.56,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 30000,
- "default_max_tokens": 4000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": true
- },
- {
- "id": "deepcogito/cogito-v2-preview-llama-109b-moe",
- "name": "Cogito V2 Preview Llama 109B",
- "cost_per_1m_in": 0.18,
- "cost_per_1m_out": 0.59,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 32767,
- "default_max_tokens": 3276,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": true
- },
- {
- "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,
- "default_max_tokens": 2000,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "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,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 128000,
- "default_max_tokens": 2000,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "deepcogito/cogito-v2-preview-llama-405b",
- "name": "Deep Cogito: Cogito V2 Preview Llama 405B",
- "cost_per_1m_in": 3.5,
- "cost_per_1m_out": 3.5,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 32768,
- "default_max_tokens": 3276,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": false
- },
- {
- "id": "deepcogito/cogito-v2-preview-llama-70b",
- "name": "Deep Cogito: Cogito V2 Preview Llama 70B",
- "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": 32768,
- "default_max_tokens": 3276,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": false
- },
- {
- "id": "deepseek/deepseek-chat",
- "name": "DeepSeek: DeepSeek V3",
- "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": 64000,
- "default_max_tokens": 8000,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "deepseek/deepseek-chat-v3-0324",
- "name": "DeepSeek: DeepSeek V3 0324",
- "cost_per_1m_in": 0.27,
- "cost_per_1m_out": 1.12,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.135,
- "context_window": 163840,
- "default_max_tokens": 81920,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "deepseek/deepseek-chat-v3-0324:free",
- "name": "DeepSeek: DeepSeek V3 0324 (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": 163840,
- "default_max_tokens": 16384,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "deepseek/deepseek-chat-v3.1",
- "name": "DeepSeek: DeepSeek V3.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,
- "default_max_tokens": 10240,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": false
- },
- {
- "id": "deepseek/deepseek-v3.1-terminus",
- "name": "DeepSeek: DeepSeek V3.1 Terminus",
- "cost_per_1m_in": 0.27,
- "cost_per_1m_out": 1,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 163840,
- "default_max_tokens": 16384,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": false
- },
- {
- "id": "deepseek/deepseek-v3.1-terminus:exacto",
- "name": "DeepSeek: DeepSeek V3.1 Terminus (exacto)",
- "cost_per_1m_in": 0.27,
- "cost_per_1m_out": 1,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 163840,
- "default_max_tokens": 16384,
- "can_reason": true,
- "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.39999999999999997,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 163840,
- "default_max_tokens": 16384,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": false
- },
- {
- "id": "deepseek/deepseek-r1",
- "name": "DeepSeek: R1",
- "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": 64000,
- "default_max_tokens": 8000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": false
- },
- {
- "id": "deepseek/deepseek-r1-0528",
- "name": "DeepSeek: R1 0528",
- "cost_per_1m_in": 0.7999999999999999,
- "cost_per_1m_out": 2.4,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 163840,
- "default_max_tokens": 16384,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": false
- },
- {
- "id": "google/gemini-2.0-flash-001",
- "name": "Google: Gemini 2.0 Flash",
- "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,
- "context_window": 1048576,
- "default_max_tokens": 4096,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "id": "google/gemini-2.0-flash-exp:free",
- "name": "Google: Gemini 2.0 Flash Experimental (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": 1048576,
- "default_max_tokens": 4096,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "id": "google/gemini-2.0-flash-lite-001",
- "name": "Google: Gemini 2.0 Flash Lite",
- "cost_per_1m_in": 0.075,
- "cost_per_1m_out": 0.3,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 1048576,
- "default_max_tokens": 4096,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "id": "google/gemini-2.5-flash",
- "name": "Google: Gemini 2.5 Flash",
- "cost_per_1m_in": 0.3,
- "cost_per_1m_out": 2.5,
- "cost_per_1m_in_cached": 0.3833,
- "cost_per_1m_out_cached": 0.03,
- "context_window": 1048576,
- "default_max_tokens": 32767,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": true
- },
- {
- "id": "google/gemini-2.5-flash-lite",
- "name": "Google: Gemini 2.5 Flash Lite",
- "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.01,
- "context_window": 1048576,
- "default_max_tokens": 32767,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": true
- },
- {
- "id": "google/gemini-2.5-flash-lite-preview-06-17",
- "name": "Google: Gemini 2.5 Flash Lite Preview 06-17",
- "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,
- "context_window": 1048576,
- "default_max_tokens": 32767,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": true
- },
- {
- "id": "google/gemini-2.5-flash-lite-preview-09-2025",
- "name": "Google: Gemini 2.5 Flash Lite Preview 09-2025",
- "cost_per_1m_in": 0.09999999999999999,
- "cost_per_1m_out": 0.39999999999999997,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 1048576,
- "default_max_tokens": 32767,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": true
- },
- {
- "id": "google/gemini-2.5-flash-preview-09-2025",
- "name": "Google: Gemini 2.5 Flash Preview 09-2025",
- "cost_per_1m_in": 0.3,
- "cost_per_1m_out": 2.5,
- "cost_per_1m_in_cached": 0.3833,
- "cost_per_1m_out_cached": 0.075,
- "context_window": 1048576,
- "default_max_tokens": 32767,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": true
- },
- {
- "id": "google/gemini-2.5-pro",
- "name": "Google: Gemini 2.5 Pro",
- "cost_per_1m_in": 1.25,
- "cost_per_1m_out": 10,
- "cost_per_1m_in_cached": 1.625,
- "cost_per_1m_out_cached": 0.125,
- "context_window": 1048576,
- "default_max_tokens": 32768,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": true
- },
- {
- "id": "google/gemini-2.5-pro-preview-05-06",
- "name": "Google: Gemini 2.5 Pro Preview 05-06",
- "cost_per_1m_in": 1.25,
- "cost_per_1m_out": 10,
- "cost_per_1m_in_cached": 1.625,
- "cost_per_1m_out_cached": 0.125,
- "context_window": 1048576,
- "default_max_tokens": 32768,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": true
- },
- {
- "id": "google/gemini-2.5-pro-preview",
- "name": "Google: Gemini 2.5 Pro Preview 06-05",
- "cost_per_1m_in": 1.25,
- "cost_per_1m_out": 10,
- "cost_per_1m_in_cached": 1.625,
- "cost_per_1m_out_cached": 0.125,
- "context_window": 1048576,
- "default_max_tokens": 32768,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": true
- },
- {
- "id": "inception/mercury",
- "name": "Inception: Mercury",
- "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": 128000,
- "default_max_tokens": 8192,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "inception/mercury-coder",
- "name": "Inception: Mercury Coder",
- "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": 128000,
- "default_max_tokens": 8192,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "meituan/longcat-flash-chat:free",
- "name": "Meituan: LongCat Flash Chat (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": 65536,
- "can_reason": false,
- "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": "meta-llama/llama-3-8b-instruct",
- "name": "Meta: Llama 3 8B Instruct",
- "cost_per_1m_in": 0.03,
- "cost_per_1m_out": 0.06,
- "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": "meta-llama/llama-3.1-405b-instruct",
- "name": "Meta: Llama 3.1 405B Instruct",
- "cost_per_1m_in": 1,
- "cost_per_1m_out": 3,
- "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": "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_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-8b-instruct",
- "name": "Meta: Llama 3.1 8B Instruct",
- "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": 8192,
- "can_reason": false,
- "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",
- "cost_per_1m_in": 0.6,
- "cost_per_1m_out": 0.6,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 131072,
- "default_max_tokens": 65536,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "meta-llama/llama-3.3-70b-instruct:free",
- "name": "Meta: Llama 3.3 70B Instruct (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": 128000,
- "default_max_tokens": 2014,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "meta-llama/llama-3.3-8b-instruct:free",
- "name": "Meta: Llama 3.3 8B Instruct (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": 128000,
- "default_max_tokens": 2014,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "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_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 1048576,
- "default_max_tokens": 65536,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "id": "meta-llama/llama-4-maverick:free",
- "name": "Meta: Llama 4 Maverick (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": 128000,
- "default_max_tokens": 2014,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "id": "meta-llama/llama-4-scout",
- "name": "Meta: Llama 4 Scout",
- "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": 104857,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "id": "meta-llama/llama-4-scout:free",
- "name": "Meta: Llama 4 Scout (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": 128000,
- "default_max_tokens": 2014,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "id": "microsoft/phi-3-medium-128k-instruct",
- "name": "Microsoft: Phi-3 Medium 128K Instruct",
- "cost_per_1m_in": 1,
- "cost_per_1m_out": 1,
- "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": "microsoft/phi-3-mini-128k-instruct",
- "name": "Microsoft: Phi-3 Mini 128K Instruct",
- "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": 128000,
- "default_max_tokens": 12800,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "microsoft/phi-3.5-mini-128k-instruct",
- "name": "Microsoft: Phi-3.5 Mini 128K Instruct",
- "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": 128000,
- "default_max_tokens": 12800,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "minimax/minimax-m2:free",
- "name": "MiniMax: MiniMax M2 (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": 204800,
- "default_max_tokens": 65536,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": false
- },
- {
- "id": "mistralai/mistral-large",
- "name": "Mistral Large",
- "cost_per_1m_in": 2,
- "cost_per_1m_out": 6,
- "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": "mistralai/mistral-large-2407",
- "name": "Mistral Large 2407",
- "cost_per_1m_in": 2,
- "cost_per_1m_out": 6,
- "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": "mistralai/mistral-large-2411",
- "name": "Mistral Large 2411",
- "cost_per_1m_in": 2,
- "cost_per_1m_out": 6,
- "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": "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,
- "default_max_tokens": 3276,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "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,
- "default_max_tokens": 3276,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "mistralai/codestral-2501",
- "name": "Mistral: Codestral 2501",
- "cost_per_1m_in": 0.3,
- "cost_per_1m_out": 0.8999999999999999,
- "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": "mistralai/codestral-2508",
- "name": "Mistral: Codestral 2508",
- "cost_per_1m_in": 0.3,
- "cost_per_1m_out": 0.8999999999999999,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 256000,
- "default_max_tokens": 25600,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "mistralai/devstral-medium",
- "name": "Mistral: Devstral Medium",
- "cost_per_1m_in": 0.39999999999999997,
- "cost_per_1m_out": 2,
- "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": "mistralai/devstral-small-2505",
- "name": "Mistral: Devstral Small 2505",
- "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": 65536,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "mistralai/devstral-small-2505:free",
- "name": "Mistral: Devstral Small 2505 (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": 32768,
- "default_max_tokens": 3276,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "mistralai/magistral-medium-2506",
- "name": "Mistral: Magistral Medium 2506",
- "cost_per_1m_in": 2,
- "cost_per_1m_out": 5,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 40960,
- "default_max_tokens": 20000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": false
- },
- {
- "id": "mistralai/magistral-medium-2506:thinking",
- "name": "Mistral: Magistral Medium 2506 (thinking)",
- "cost_per_1m_in": 2,
- "cost_per_1m_out": 5,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 40960,
- "default_max_tokens": 20000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": false
- },
- {
- "id": "mistralai/magistral-small-2506",
- "name": "Mistral: Magistral Small 2506",
- "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": 40000,
- "default_max_tokens": 20000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": false
- },
- {
- "id": "mistralai/ministral-8b",
- "name": "Mistral: Ministral 8B",
- "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": 13107,
- "can_reason": false,
- "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)",
- "cost_per_1m_in": 0,
- "cost_per_1m_out": 0,
- "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-v0.3",
- "name": "Mistral: Mistral 7B Instruct v0.3",
- "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-medium-3",
- "name": "Mistral: Mistral Medium 3",
- "cost_per_1m_in": 0.39999999999999997,
- "cost_per_1m_out": 2,
- "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/mistral-medium-3.1",
- "name": "Mistral: Mistral Medium 3.1",
- "cost_per_1m_in": 0.39999999999999997,
- "cost_per_1m_out": 2,
- "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/mistral-nemo",
- "name": "Mistral: Mistral Nemo",
- "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": false
- },
- {
- "id": "mistralai/mistral-small-24b-instruct-2501",
- "name": "Mistral: Mistral Small 3",
- "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,
- "default_max_tokens": 3276,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "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_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/mistral-small-3.1-24b-instruct:free",
- "name": "Mistral: Mistral Small 3.1 24B (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": 96000,
- "default_max_tokens": 48000,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "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_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/mistral-small-3.2-24b-instruct:free",
- "name": "Mistral: Mistral Small 3.2 24B (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": true
- },
- {
- "id": "mistralai/mixtral-8x22b-instruct",
- "name": "Mistral: Mixtral 8x22B Instruct",
- "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,
- "default_max_tokens": 6553,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "mistralai/mixtral-8x7b-instruct",
- "name": "Mistral: Mixtral 8x7B Instruct",
- "cost_per_1m_in": 0.54,
- "cost_per_1m_out": 0.54,
- "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/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",
- "cost_per_1m_in": 2,
- "cost_per_1m_out": 6,
- "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/mistral-saba",
- "name": "Mistral: Saba",
- "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,
- "default_max_tokens": 3276,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "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_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": "moonshotai/kimi-k2-0905",
- "name": "MoonshotAI: Kimi K2 0905",
- "cost_per_1m_in": 0.5,
- "cost_per_1m_out": 2,
- "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": "moonshotai/kimi-k2-0905:exacto",
- "name": "MoonshotAI: Kimi K2 0905 (exacto)",
- "cost_per_1m_in": 0.6,
- "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,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "nvidia/llama-3.1-nemotron-70b-instruct",
- "name": "NVIDIA: Llama 3.1 Nemotron 70B Instruct",
- "cost_per_1m_in": 0.6,
- "cost_per_1m_out": 0.6,
- "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": "nvidia/llama-3.3-nemotron-super-49b-v1.5",
- "name": "NVIDIA: Llama 3.3 Nemotron Super 49B V1.5",
- "cost_per_1m_in": 0.09999999999999999,
- "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,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": false
- },
- {
- "id": "nvidia/nemotron-nano-9b-v2",
- "name": "NVIDIA: Nemotron Nano 9B V2",
- "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,
- "default_max_tokens": 13107,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": false
- },
- {
- "id": "nvidia/nemotron-nano-9b-v2:free",
- "name": "NVIDIA: Nemotron Nano 9B V2 (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": 128000,
- "default_max_tokens": 12800,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": false
- },
- {
- "id": "nousresearch/deephermes-3-llama-3-8b-preview",
- "name": "Nous: DeepHermes 3 Llama 3 8B Preview",
- "cost_per_1m_in": 0.03,
- "cost_per_1m_out": 0.11,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 131072,
- "default_max_tokens": 65536,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "nousresearch/deephermes-3-mistral-24b-preview",
- "name": "Nous: DeepHermes 3 Mistral 24B Preview",
- "cost_per_1m_in": 0.15,
- "cost_per_1m_out": 0.59,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 32768,
- "default_max_tokens": 16384,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "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/codex-mini",
- "name": "OpenAI: Codex Mini",
- "cost_per_1m_in": 1.5,
- "cost_per_1m_out": 6,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.375,
- "context_window": 200000,
- "default_max_tokens": 50000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": true
- },
- {
- "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": 16385,
- "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,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 4095,
- "default_max_tokens": 2048,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "openai/gpt-3.5-turbo-16k",
- "name": "OpenAI: GPT-3.5 Turbo 16k",
- "cost_per_1m_in": 3,
- "cost_per_1m_out": 4,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 16385,
- "default_max_tokens": 2048,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "openai/gpt-4",
- "name": "OpenAI: GPT-4",
- "cost_per_1m_in": 30,
- "cost_per_1m_out": 60,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 8191,
- "default_max_tokens": 2048,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "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": 8191,
- "default_max_tokens": 2048,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "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": 128000,
- "default_max_tokens": 2048,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "id": "openai/gpt-4-1106-preview",
- "name": "OpenAI: GPT-4 Turbo (older v1106)",
- "cost_per_1m_in": 10,
- "cost_per_1m_out": 30,
- "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": false
- },
- {
- "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": 128000,
- "default_max_tokens": 2048,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "openai/gpt-4.1",
- "name": "OpenAI: GPT-4.1",
- "cost_per_1m_in": 2,
- "cost_per_1m_out": 8,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.5,
- "context_window": 1047576,
- "default_max_tokens": 16384,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "id": "openai/gpt-4.1-mini",
- "name": "OpenAI: GPT-4.1 Mini",
- "cost_per_1m_in": 0.39999999999999997,
- "cost_per_1m_out": 1.5999999999999999,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.09999999999999999,
- "context_window": 1047576,
- "default_max_tokens": 104757,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "id": "openai/gpt-4.1-nano",
- "name": "OpenAI: GPT-4.1 Nano",
- "cost_per_1m_in": 0.09999999999999999,
- "cost_per_1m_out": 0.39999999999999997,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.024999999999999998,
- "context_window": 1047576,
- "default_max_tokens": 16384,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "id": "openai/gpt-4o",
- "name": "OpenAI: GPT-4o",
- "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,
- "default_max_tokens": 8192,
- "can_reason": false,
- "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-2024-08-06",
- "name": "OpenAI: GPT-4o (2024-08-06)",
- "cost_per_1m_in": 2.5,
- "cost_per_1m_out": 10,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 1.25,
- "context_window": 128000,
- "default_max_tokens": 8192,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "id": "openai/gpt-4o-2024-11-20",
- "name": "OpenAI: GPT-4o (2024-11-20)",
- "cost_per_1m_in": 2.5,
- "cost_per_1m_out": 10,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 1.25,
- "context_window": 128000,
- "default_max_tokens": 8192,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "id": "openai/gpt-4o:extended",
- "name": "OpenAI: GPT-4o (extended)",
- "cost_per_1m_in": 6,
- "cost_per_1m_out": 18,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 128000,
- "default_max_tokens": 32000,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "id": "openai/gpt-4o-audio-preview",
- "name": "OpenAI: GPT-4o Audio",
- "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,
- "default_max_tokens": 8192,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "openai/gpt-4o-mini",
- "name": "OpenAI: GPT-4o-mini",
- "cost_per_1m_in": 0.15,
- "cost_per_1m_out": 0.6,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.075,
- "context_window": 128000,
- "default_max_tokens": 8192,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "id": "openai/gpt-4o-mini-2024-07-18",
- "name": "OpenAI: GPT-4o-mini (2024-07-18)",
- "cost_per_1m_in": 0.15,
- "cost_per_1m_out": 0.6,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.075,
- "context_window": 128000,
- "default_max_tokens": 8192,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "id": "openai/gpt-5",
- "name": "OpenAI: GPT-5",
- "cost_per_1m_in": 1.25,
- "cost_per_1m_out": 10,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.125,
- "context_window": 400000,
- "default_max_tokens": 64000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": true
- },
- {
- "id": "openai/gpt-5-codex",
- "name": "OpenAI: GPT-5 Codex",
- "cost_per_1m_in": 1.25,
- "cost_per_1m_out": 10,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.125,
- "context_window": 400000,
- "default_max_tokens": 64000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": true
- },
- {
- "id": "openai/gpt-5-image",
- "name": "OpenAI: GPT-5 Image",
- "cost_per_1m_in": 10,
- "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-image-mini",
- "name": "OpenAI: GPT-5 Image Mini",
- "cost_per_1m_in": 2.5,
- "cost_per_1m_out": 2,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.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",
- "cost_per_1m_in": 0.25,
- "cost_per_1m_out": 2,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.024999999999999998,
- "context_window": 400000,
- "default_max_tokens": 64000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": true
- },
- {
- "id": "openai/gpt-5-nano",
- "name": "OpenAI: GPT-5 Nano",
- "cost_per_1m_in": 0.049999999999999996,
- "cost_per_1m_out": 0.39999999999999997,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.01,
- "context_window": 400000,
- "default_max_tokens": 40000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": true
- },
- {
- "id": "openai/gpt-5-pro",
- "name": "OpenAI: GPT-5 Pro",
- "cost_per_1m_in": 15,
- "cost_per_1m_out": 120,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 400000,
- "default_max_tokens": 64000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": true
- },
- {
- "id": "openai/gpt-oss-120b",
- "name": "OpenAI: gpt-oss-120b",
- "cost_per_1m_in": 0.04,
- "cost_per_1m_out": 0.39999999999999997,
- "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/gpt-oss-120b:exacto",
- "name": "OpenAI: gpt-oss-120b (exacto)",
- "cost_per_1m_in": 0.049999999999999996,
- "cost_per_1m_out": 0.24,
- "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": "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_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": "openai/gpt-oss-20b:free",
- "name": "OpenAI: gpt-oss-20b (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": 65536,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": false
- },
- {
- "id": "openai/o1",
- "name": "OpenAI: o1",
- "cost_per_1m_in": 15,
- "cost_per_1m_out": 60,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 7.5,
- "context_window": 200000,
- "default_max_tokens": 50000,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "id": "openai/o3",
- "name": "OpenAI: o3",
- "cost_per_1m_in": 2,
- "cost_per_1m_out": 8,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.5,
- "context_window": 200000,
- "default_max_tokens": 50000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": true
- },
- {
- "id": "openai/o3-deep-research",
- "name": "OpenAI: o3 Deep Research",
- "cost_per_1m_in": 10,
- "cost_per_1m_out": 40,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 2.5,
- "context_window": 200000,
- "default_max_tokens": 50000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": true
- },
- {
- "id": "openai/o3-mini",
- "name": "OpenAI: o3 Mini",
- "cost_per_1m_in": 1.1,
- "cost_per_1m_out": 4.4,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.55,
- "context_window": 200000,
- "default_max_tokens": 50000,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "openai/o3-mini-high",
- "name": "OpenAI: o3 Mini High",
- "cost_per_1m_in": 1.1,
- "cost_per_1m_out": 4.4,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.55,
- "context_window": 200000,
- "default_max_tokens": 50000,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "openai/o3-pro",
- "name": "OpenAI: o3 Pro",
- "cost_per_1m_in": 20,
- "cost_per_1m_out": 80,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 200000,
- "default_max_tokens": 50000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": true
- },
- {
- "id": "openai/o4-mini",
- "name": "OpenAI: o4 Mini",
- "cost_per_1m_in": 1.1,
- "cost_per_1m_out": 4.4,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.275,
- "context_window": 200000,
- "default_max_tokens": 50000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": true
- },
- {
- "id": "openai/o4-mini-deep-research",
- "name": "OpenAI: o4 Mini Deep Research",
- "cost_per_1m_in": 2,
- "cost_per_1m_out": 8,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.5,
- "context_window": 200000,
- "default_max_tokens": 50000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": true
- },
- {
- "id": "openai/o4-mini-high",
- "name": "OpenAI: o4 Mini High",
- "cost_per_1m_in": 1.1,
- "cost_per_1m_out": 4.4,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.275,
- "context_window": 200000,
- "default_max_tokens": 50000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": true
- },
- {
- "id": "qwen/qwen-2.5-72b-instruct",
- "name": "Qwen2.5 72B Instruct",
- "cost_per_1m_in": 0.13,
- "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,
- "can_reason": false,
- "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",
- "cost_per_1m_in": 0.39999999999999997,
- "cost_per_1m_out": 1.2,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 1000000,
- "default_max_tokens": 16384,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "qwen/qwen-plus-2025-07-28:thinking",
- "name": "Qwen: Qwen Plus 0728 (thinking)",
- "cost_per_1m_in": 0.39999999999999997,
- "cost_per_1m_out": 4,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 1000000,
- "default_max_tokens": 16384,
- "can_reason": true,
- "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 ",
- "cost_per_1m_in": 1.5999999999999999,
- "cost_per_1m_out": 6.3999999999999995,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.64,
- "context_window": 32768,
- "default_max_tokens": 4096,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "qwen/qwen-plus",
- "name": "Qwen: Qwen-Plus",
- "cost_per_1m_in": 0.39999999999999997,
- "cost_per_1m_out": 1.2,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.16,
- "context_window": 131072,
- "default_max_tokens": 4096,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "qwen/qwen-turbo",
- "name": "Qwen: Qwen-Turbo",
- "cost_per_1m_in": 0.049999999999999996,
- "cost_per_1m_out": 0.19999999999999998,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.02,
- "context_window": 1000000,
- "default_max_tokens": 4096,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "qwen/qwen3-14b",
- "name": "Qwen: Qwen3 14B",
- "cost_per_1m_in": 0.06,
- "cost_per_1m_out": 0.24,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 40960,
- "default_max_tokens": 20480,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": false
- },
- {
- "id": "qwen/qwen3-235b-a22b",
- "name": "Qwen: Qwen3 235B A22B",
- "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": 131072,
- "default_max_tokens": 8192,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": false
- },
- {
- "id": "qwen/qwen3-235b-a22b-2507",
- "name": "Qwen: Qwen3 235B A22B Instruct 2507",
- "cost_per_1m_in": 0.35,
- "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,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "qwen/qwen3-235b-a22b-thinking-2507",
- "name": "Qwen: Qwen3 235B A22B Thinking 2507",
- "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,
- "default_max_tokens": 131072,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": false
- },
- {
- "id": "qwen/qwen3-30b-a3b",
- "name": "Qwen: Qwen3 30B A3B",
- "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": 65536,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": false
- },
- {
- "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_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 262144,
- "default_max_tokens": 131072,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "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_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 262144,
- "default_max_tokens": 131072,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": false
- },
- {
- "id": "qwen/qwen3-32b",
- "name": "Qwen: Qwen3 32B",
- "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": 131072,
- "default_max_tokens": 4000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": false
- },
- {
- "id": "qwen/qwen3-4b:free",
- "name": "Qwen: Qwen3 4B (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": 40960,
- "default_max_tokens": 4096,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": false
- },
- {
- "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.26,
- "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-coder",
- "name": "Qwen: Qwen3 Coder 480B A35B",
- "cost_per_1m_in": 0.38,
- "cost_per_1m_out": 1.53,
- "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": true,
- "supports_attachments": false
- },
- {
- "id": "qwen/qwen3-coder:exacto",
- "name": "Qwen: Qwen3 Coder 480B A35B (exacto)",
- "cost_per_1m_in": 0.38,
- "cost_per_1m_out": 1.53,
- "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": true,
- "supports_attachments": false
- },
- {
- "id": "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,
- "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-coder-flash",
- "name": "Qwen: Qwen3 Coder Flash",
- "cost_per_1m_in": 0.3,
- "cost_per_1m_out": 1.5,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.08,
- "context_window": 128000,
- "default_max_tokens": 32768,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "qwen/qwen3-coder-plus",
- "name": "Qwen: Qwen3 Coder Plus",
- "cost_per_1m_in": 1,
- "cost_per_1m_out": 5,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.09999999999999999,
- "context_window": 128000,
- "default_max_tokens": 32768,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "qwen/qwen3-max",
- "name": "Qwen: Qwen3 Max",
- "cost_per_1m_in": 1.2,
- "cost_per_1m_out": 6,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.24,
- "context_window": 256000,
- "default_max_tokens": 16384,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "qwen/qwen3-next-80b-a3b-instruct",
- "name": "Qwen: Qwen3 Next 80B A3B Instruct",
- "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,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "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_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 262144,
- "default_max_tokens": 131072,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": false
- },
- {
- "id": "qwen/qwen3-vl-235b-a22b-instruct",
- "name": "Qwen: Qwen3 VL 235B A22B Instruct",
- "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": 65536,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "id": "qwen/qwen3-vl-30b-a3b-thinking",
- "name": "Qwen: Qwen3 VL 30B A3B Thinking",
- "cost_per_1m_in": 0.19999999999999998,
- "cost_per_1m_out": 1,
- "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,
- "supports_attachments": true
- },
- {
- "id": "qwen/qwen3-vl-8b-instruct",
- "name": "Qwen: Qwen3 VL 8B Instruct",
- "cost_per_1m_in": 0.08,
- "cost_per_1m_out": 0.5,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 131072,
- "default_max_tokens": 16384,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": true
- },
- {
- "id": "qwen/qwen3-vl-8b-thinking",
- "name": "Qwen: Qwen3 VL 8B Thinking",
- "cost_per_1m_in": 0.18,
- "cost_per_1m_out": 2.0999999999999996,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 256000,
- "default_max_tokens": 16384,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": true
- },
- {
- "id": "sao10k/l3-euryale-70b",
- "name": "Sao10k: Llama 3 Euryale 70B v2.1",
- "cost_per_1m_in": 1.48,
- "cost_per_1m_out": 1.48,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 8192,
- "default_max_tokens": 4096,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "stepfun-ai/step3",
- "name": "StepFun: Step3",
- "cost_per_1m_in": 0.5700000000000001,
- "cost_per_1m_out": 1.42,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 65536,
- "default_max_tokens": 32768,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": true
- },
- {
- "id": "tngtech/deepseek-r1t2-chimera",
- "name": "TNG: DeepSeek R1T2 Chimera",
- "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": 163840,
- "default_max_tokens": 81920,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": false
- },
- {
- "id": "thedrummer/rocinante-12b",
- "name": "TheDrummer: Rocinante 12B",
- "cost_per_1m_in": 0.16999999999999998,
- "cost_per_1m_out": 0.43,
- "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": false
- },
- {
- "id": "thedrummer/unslopnemo-12b",
- "name": "TheDrummer: UnslopNemo 12B",
- "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": 32768,
- "default_max_tokens": 3276,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "alibaba/tongyi-deepresearch-30b-a3b",
- "name": "Tongyi DeepResearch 30B A3B",
- "cost_per_1m_in": 0.09,
- "cost_per_1m_out": 0.39999999999999997,
- "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": "alibaba/tongyi-deepresearch-30b-a3b:free",
- "name": "Tongyi DeepResearch 30B A3B (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": 65536,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": false
- },
- {
- "id": "z-ai/glm-4-32b",
- "name": "Z.AI: GLM 4 32B ",
- "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": 128000,
- "default_max_tokens": 12800,
- "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.35,
- "cost_per_1m_out": 1.55,
- "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": "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_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": "z-ai/glm-4.5-air:free",
- "name": "Z.AI: GLM 4.5 Air (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": 48000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": false
- },
- {
- "id": "z-ai/glm-4.5v",
- "name": "Z.AI: GLM 4.5V",
- "cost_per_1m_in": 0.6,
- "cost_per_1m_out": 1.7999999999999998,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.11,
- "context_window": 65536,
- "default_max_tokens": 8192,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": true
- },
- {
- "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_cached": 0,
- "cost_per_1m_out_cached": 0.11,
- "context_window": 204800,
- "default_max_tokens": 65536,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": false
- },
- {
- "id": "z-ai/glm-4.6:exacto",
- "name": "Z.AI: GLM 4.6 (exacto)",
- "cost_per_1m_in": 0.6,
- "cost_per_1m_out": 1.9,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 202752,
- "default_max_tokens": 20275,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": false
- },
- {
- "id": "inclusionai/ling-1t",
- "name": "inclusionAI: Ling-1T",
- "cost_per_1m_in": 0.5700000000000001,
- "cost_per_1m_out": 2.2800000000000002,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 131072,
- "default_max_tokens": 65536,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "id": "inclusionai/ring-1t",
- "name": "inclusionAI: Ring 1T",
- "cost_per_1m_in": 0.5700000000000001,
- "cost_per_1m_out": 2.2800000000000002,
- "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": "x-ai/grok-3",
- "name": "xAI: Grok 3",
- "cost_per_1m_in": 5,
- "cost_per_1m_out": 25,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 1.25,
- "context_window": 131072,
- "default_max_tokens": 13107,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "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_cached": 0,
- "cost_per_1m_out_cached": 1.25,
- "context_window": 131072,
- "default_max_tokens": 13107,
- "can_reason": false,
- "has_reasoning_efforts": false,
- "supports_attachments": false
- },
- {
- "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_cached": 0,
- "cost_per_1m_out_cached": 0.075,
- "context_window": 131072,
- "default_max_tokens": 13107,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": false
- },
- {
- "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_cached": 0,
- "cost_per_1m_out_cached": 0.075,
- "context_window": 131072,
- "default_max_tokens": 13107,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": false
- },
- {
- "id": "x-ai/grok-4",
- "name": "xAI: Grok 4",
- "cost_per_1m_in": 3,
- "cost_per_1m_out": 15,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.75,
- "context_window": 256000,
- "default_max_tokens": 25600,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": true
- },
- {
- "id": "x-ai/grok-4-fast",
- "name": "xAI: Grok 4 Fast",
- "cost_per_1m_in": 0.19999999999999998,
- "cost_per_1m_out": 0.5,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.049999999999999996,
- "context_window": 2000000,
- "default_max_tokens": 15000,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "supports_attachments": true
- },
- {
- "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": true,
- "supports_attachments": false
- }
- ],
- "default_headers": {
- "HTTP-Referer": "https://charm.land",
- "X-Title": "Crush"
- }
-}
@@ -1,71 +0,0 @@
-{
- "name": "Venice AI",
- "id": "venice",
- "type": "openai",
- "api_key": "$VENICE_API_KEY",
- "api_endpoint": "https://api.venice.ai/api/v1",
- "default_large_model_id": "qwen3-235b:strip_thinking_response=true",
- "default_small_model_id": "mistral-31-24b",
- "models": [
- {
- "id": "qwen3-235b:strip_thinking_response=true",
- "name": "Venice Large (qwen3-235b)",
- "cost_per_1m_in": 1.5,
- "cost_per_1m_out": 6,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 131072,
- "default_max_tokens": 50000,
- "can_reason": true,
- "supports_attachments": false
- },
- {
- "id": "qwen3-4b:strip_thinking_response=true",
- "name": "Venice Small (qwen3-4b)",
- "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": 32768,
- "default_max_tokens": 25000,
- "can_reason": true,
- "supports_attachments": false
- },
- {
- "id": "mistral-31-24b",
- "name": "Venice Medium (mistral-31-24b)",
- "cost_per_1m_in": 0.5,
- "cost_per_1m_out": 2,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 131072,
- "default_max_tokens": 50000,
- "can_reason": false,
- "supports_attachments": true
- },
- {
- "id": "llama-3.2-3b",
- "name": "Llama 3.2 3B",
- "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": 131072,
- "default_max_tokens": 25000,
- "can_reason": false,
- "supports_attachments": false
- },
- {
- "id": "llama-3.3-70b",
- "name": "Llama 3.3 70B",
- "cost_per_1m_in": 0.7,
- "cost_per_1m_out": 2.8,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0,
- "context_window": 65536,
- "default_max_tokens": 32000,
- "can_reason": false,
- "supports_attachments": false
- }
- ]
-}
@@ -1,35 +0,0 @@
-{
- "name": "Google Vertex AI",
- "id": "vertexai",
- "type": "vertexai",
- "api_key": "",
- "api_endpoint": "",
- "default_large_model_id": "gemini-2.5-pro",
- "default_small_model_id": "gemini-2.5-flash",
- "models": [
- {
- "id": "gemini-2.5-pro",
- "name": "Gemini 2.5 Pro",
- "cost_per_1m_in": 1.25,
- "cost_per_1m_out": 10,
- "cost_per_1m_in_cached": 1.625,
- "cost_per_1m_out_cached": 0.31,
- "context_window": 1048576,
- "default_max_tokens": 50000,
- "can_reason": true,
- "supports_attachments": true
- },
- {
- "id": "gemini-2.5-flash",
- "name": "Gemini 2.5 Flash",
- "cost_per_1m_in": 0.3,
- "cost_per_1m_out": 2.5,
- "cost_per_1m_in_cached": 0.3833,
- "cost_per_1m_out_cached": 0.075,
- "context_window": 1048576,
- "default_max_tokens": 50000,
- "can_reason": true,
- "supports_attachments": true
- }
- ]
-}
@@ -1,71 +0,0 @@
-{
- "name": "xAI",
- "id": "xai",
- "api_key": "$XAI_API_KEY",
- "api_endpoint": "https://api.x.ai/v1",
- "type": "openai",
- "default_large_model_id": "grok-code-fast",
- "default_small_model_id": "grok-3-mini",
- "models": [
- {
- "id": "grok-code-fast",
- "name": "Grok Code Fast",
- "cost_per_1m_in": 0.2,
- "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": 20000,
- "can_reason": true,
- "supports_attachments": false
- },
- {
- "id": "grok-4",
- "name": "Grok 4",
- "cost_per_1m_in": 3,
- "cost_per_1m_out": 15,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.75,
- "context_window": 256000,
- "default_max_tokens": 20000,
- "can_reason": true,
- "supports_attachments": true
- },
- {
- "id": "grok-4-fast",
- "name": "Grok 4 Fast",
- "cost_per_1m_in": 0.2,
- "cost_per_1m_out": 0.5,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.05,
- "context_window": 2000000,
- "default_max_tokens": 200000,
- "can_reason": true,
- "supports_attachments": true
- },
- {
- "id": "grok-3-mini",
- "name": "Grok 3 Mini",
- "cost_per_1m_in": 0.3,
- "cost_per_1m_out": 0.5,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.075,
- "context_window": 131072,
- "default_max_tokens": 20000,
- "can_reason": true,
- "supports_attachments": false
- },
- {
- "id": "grok-3",
- "name": "Grok 3",
- "cost_per_1m_in": 3,
- "cost_per_1m_out": 15,
- "cost_per_1m_in_cached": 0,
- "cost_per_1m_out_cached": 0.75,
- "context_window": 131072,
- "default_max_tokens": 20000,
- "can_reason": false,
- "supports_attachments": false
- }
- ]
-}
@@ -1,52 +0,0 @@
-{
- "name": "Z.AI",
- "id": "zai",
- "api_key": "$ZAI_API_KEY",
- "api_endpoint": "https://api.z.ai/api/coding/paas/v4",
- "type": "openai",
- "default_large_model_id": "glm-4.6",
- "default_small_model_id": "glm-4.5-air",
- "models": [
- {
- "id": "glm-4.6",
- "name": "GLM-4.6",
- "cost_per_1m_in": 0.6,
- "cost_per_1m_out": 2.2,
- "cost_per_1m_in_cached": 0.11,
- "cost_per_1m_out_cached": 0,
- "context_window": 204800,
- "default_max_tokens": 131072,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "default_reasoning_effort": "medium",
- "supports_attachments": false
- },
- {
- "id": "glm-4.5",
- "name": "GLM-4.5",
- "cost_per_1m_in": 0.6,
- "cost_per_1m_out": 2.2,
- "cost_per_1m_in_cached": 0.11,
- "cost_per_1m_out_cached": 0,
- "context_window": 131072,
- "default_max_tokens": 98304,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "default_reasoning_effort": "medium",
- "supports_attachments": false
- },
- {
- "id": "glm-4.5-air",
- "name": "GLM-4.5-Air",
- "cost_per_1m_in": 0.2,
- "cost_per_1m_out": 1.1,
- "cost_per_1m_in_cached": 0.03,
- "context_window": 131072,
- "default_max_tokens": 98304,
- "can_reason": true,
- "has_reasoning_efforts": true,
- "default_reasoning_effort": "medium",
- "supports_attachments": false
- }
- ]
-}
@@ -1,33 +0,0 @@
-// Package deprecated is used to serve the old verion of the provider config
-package deprecated
-
-import "charm.land/catwalk/pkg/catwalk"
-
-// Provider represents an AI provider configuration.
-type Provider struct {
- Name string `json:"name"`
- ID catwalk.InferenceProvider `json:"id"`
- APIKey string `json:"api_key,omitempty"`
- APIEndpoint string `json:"api_endpoint,omitempty"`
- Type catwalk.Type `json:"type,omitempty"`
- DefaultLargeModelID string `json:"default_large_model_id,omitempty"`
- DefaultSmallModelID string `json:"default_small_model_id,omitempty"`
- Models []Model `json:"models,omitempty"`
- DefaultHeaders map[string]string `json:"default_headers,omitempty"`
-}
-
-// Model represents an AI model configuration.
-type Model struct {
- ID string `json:"id"`
- Name string `json:"name"`
- CostPer1MIn float64 `json:"cost_per_1m_in"`
- CostPer1MOut float64 `json:"cost_per_1m_out"`
- CostPer1MInCached float64 `json:"cost_per_1m_in_cached"`
- CostPer1MOutCached float64 `json:"cost_per_1m_out_cached"`
- ContextWindow int64 `json:"context_window"`
- DefaultMaxTokens int64 `json:"default_max_tokens"`
- CanReason bool `json:"can_reason"`
- HasReasoningEffort bool `json:"has_reasoning_efforts"`
- DefaultReasoningEffort string `json:"default_reasoning_effort,omitempty"`
- SupportsImages bool `json:"supports_attachments"`
-}
@@ -1,159 +0,0 @@
-package deprecated
-
-import (
- _ "embed"
- "encoding/json"
- "log"
-)
-
-//go:embed configs/openai.json
-var openAIConfig []byte
-
-//go:embed configs/anthropic.json
-var anthropicConfig []byte
-
-//go:embed configs/gemini.json
-var geminiConfig []byte
-
-//go:embed configs/openrouter.json
-var openRouterConfig []byte
-
-//go:embed configs/azure.json
-var azureConfig []byte
-
-//go:embed configs/vertexai.json
-var vertexAIConfig []byte
-
-//go:embed configs/xai.json
-var xAIConfig []byte
-
-//go:embed configs/zai.json
-var zAIConfig []byte
-
-//go:embed configs/bedrock.json
-var bedrockConfig []byte
-
-//go:embed configs/groq.json
-var groqConfig []byte
-
-//go:embed configs/cerebras.json
-var cerebrasConfig []byte
-
-//go:embed configs/venice.json
-var veniceConfig []byte
-
-//go:embed configs/chutes.json
-var chutesConfig []byte
-
-//go:embed configs/deepseek.json
-var deepSeekConfig []byte
-
-//go:embed configs/huggingface.json
-var huggingFaceConfig []byte
-
-//go:embed configs/aihubmix.json
-var aiHubMixConfig []byte
-
-// ProviderFunc is a function that returns a Provider.
-type ProviderFunc func() Provider
-
-var providerRegistry = []ProviderFunc{
- anthropicProvider,
- openAIProvider,
- geminiProvider,
- azureProvider,
- bedrockProvider,
- vertexAIProvider,
- xAIProvider,
- zAIProvider,
- groqProvider,
- openRouterProvider,
- cerebrasProvider,
- veniceProvider,
- chutesProvider,
- deepSeekProvider,
- huggingFaceProvider,
- aiHubMixProvider,
-}
-
-// GetAll returns all registered providers.
-func GetAll() []Provider {
- providers := make([]Provider, 0, len(providerRegistry))
- for _, providerFunc := range providerRegistry {
- providers = append(providers, providerFunc())
- }
- return providers
-}
-
-func loadProviderFromConfig(configData []byte) Provider {
- var p Provider
- if err := json.Unmarshal(configData, &p); err != nil {
- log.Printf("Error loading provider config: %v", err)
- return Provider{}
- }
- return p
-}
-
-func openAIProvider() Provider {
- return loadProviderFromConfig(openAIConfig)
-}
-
-func anthropicProvider() Provider {
- return loadProviderFromConfig(anthropicConfig)
-}
-
-func geminiProvider() Provider {
- return loadProviderFromConfig(geminiConfig)
-}
-
-func azureProvider() Provider {
- return loadProviderFromConfig(azureConfig)
-}
-
-func bedrockProvider() Provider {
- return loadProviderFromConfig(bedrockConfig)
-}
-
-func vertexAIProvider() Provider {
- return loadProviderFromConfig(vertexAIConfig)
-}
-
-func xAIProvider() Provider {
- return loadProviderFromConfig(xAIConfig)
-}
-
-func zAIProvider() Provider {
- return loadProviderFromConfig(zAIConfig)
-}
-
-func openRouterProvider() Provider {
- return loadProviderFromConfig(openRouterConfig)
-}
-
-func groqProvider() Provider {
- return loadProviderFromConfig(groqConfig)
-}
-
-func cerebrasProvider() Provider {
- return loadProviderFromConfig(cerebrasConfig)
-}
-
-func veniceProvider() Provider {
- return loadProviderFromConfig(veniceConfig)
-}
-
-func chutesProvider() Provider {
- return loadProviderFromConfig(chutesConfig)
-}
-
-func deepSeekProvider() Provider {
- return loadProviderFromConfig(deepSeekConfig)
-}
-
-func huggingFaceProvider() Provider {
- return loadProviderFromConfig(huggingFaceConfig)
-}
-
-func aiHubMixProvider() Provider {
- return loadProviderFromConfig(aiHubMixConfig)
-}
@@ -8,7 +8,6 @@ import (
"net/http"
"time"
- "charm.land/catwalk/internal/deprecated"
"charm.land/catwalk/internal/providers"
"github.com/charmbracelet/x/etag"
"github.com/prometheus/client_golang/prometheus"
@@ -26,6 +25,8 @@ var counter = promauto.NewCounter(prometheus.CounterOpts{
var (
providersJSON []byte
providersETag string
+
+ deprecatedJSON []byte
)
func init() {
@@ -35,6 +36,11 @@ func init() {
log.Fatal("Failed to marshal providers:", err)
}
providersETag = etag.Of(providersJSON)
+
+ deprecatedJSON, err = json.Marshal(map[string]any{"error": "This endpoint was removed. Please use /v2/providers instead."})
+ if err != nil {
+ log.Fatal("Failed to marshal deprecated response:", err)
+ }
}
func providersHandler(w http.ResponseWriter, r *http.Request) {
@@ -63,22 +69,12 @@ func providersHandler(w http.ResponseWriter, r *http.Request) {
}
}
-func providersHandlerDeprecated(w http.ResponseWriter, r *http.Request) {
+func providersHandlerDeprecated(w http.ResponseWriter, _ *http.Request) {
w.Header().Set("Content-Type", "application/json")
- if r.Method == http.MethodHead {
- return
- }
-
- if r.Method != http.MethodGet {
- http.Error(w, "Method not allowed", http.StatusMethodNotAllowed)
- return
- }
- counter.Inc()
- allProviders := deprecated.GetAll()
- if err := json.NewEncoder(w).Encode(allProviders); err != nil {
- http.Error(w, "Internal server error", http.StatusInternalServerError)
- return
+ if _, err := w.Write(deprecatedJSON); err != nil {
+ log.Printf("Error writing response: %v", err)
+ http.Error(w, err.Error(), http.StatusInternalServerError)
}
}