From 23aa9b09b4c72dd5cf2b286c754667132ee7848a Mon Sep 17 00:00:00 2001 From: Michael Neale Date: Fri, 29 May 2026 17:02:07 +1000 Subject: [PATCH] fix(model): raise default max_output_tokens floor for Claude 4+ Two related fixes so newly-released Claude models don't silently truncate responses at 4096 output tokens (which manifests as the model 'stopping mid tool-call' from the user's perspective): 1. Refresh the bundled canonical model registry from models.dev. This adds claude-opus-4-7, claude-opus-4-8, and bumps the registry from 4740 to 4965 models. Generated by: cargo run --bin build_canonical_models With the refreshed registry, claude-opus-4-8 now resolves through strip_version_suffix's existing '-N-M' -> '-N.M' normalization to the canonical 'anthropic/claude-opus-4.8' entry (1M context, 128k output). 2. Add a Claude-4+ family floor to ModelConfig::max_output_tokens(). When GOOSE_MAX_TOKENS is unset and the canonical lookup doesn't populate max_tokens (e.g. a brand-new model id one release ahead of the bundled registry), we previously fell back to a hard 4096. That's a cliff: every Claude 4.x model supports at least 32k output, and capping at 4096 cuts off tool_use blocks mid-stream, which agents experience as the model 'not making tool calls'. The new floor is 32k for Claude 4+ family ids (matches the lowest real 4.x output cap). Claude 3.x and non-Claude models keep the existing 4096 default since their real caps are genuinely small. Also adds claude-opus-4-7 and claude-opus-4-8 to ANTHROPIC_KNOWN_MODELS for UI/discovery. Tests: - canonical_lookup_resolves_dash_to_dot_for_claude_4_x: verifies claude-opus-4-{1,5,6,7,8} all resolve to the canonical entry and get a real (>4096) output cap. - claude_4_family_falls_back_to_32k_not_4096: verifies the family floor for unknown future ids (claude-opus-4-9, anthropic/claude-opus-4.8, databricks-claude-opus-4.6, etc). - claude_3_and_non_claude_keep_4096_default: regression guard. - explicit_max_tokens_always_wins: GOOSE_MAX_TOKENS still overrides. Also updates sets_limits_from_canonical_model to assert shape rather than a hardcoded gpt-4o output number (16384 -> 4096 in models.dev), so the test stops breaking every registry refresh. --- crates/goose/src/model.rs | 149 +- crates/goose/src/providers/anthropic.rs | 4 + .../canonical/data/canonical_models.json | 4736 ++++++++++++++--- .../canonical/data/provider_metadata.json | 1594 +++--- 4 files changed, 5014 insertions(+), 1469 deletions(-) diff --git a/crates/goose/src/model.rs b/crates/goose/src/model.rs index f5e687eaab..0b74da835d 100644 --- a/crates/goose/src/model.rs +++ b/crates/goose/src/model.rs @@ -432,9 +432,41 @@ impl ModelConfig { return tokens; } + // Claude 4.x and newer all support at least 32k output tokens. The + // canonical model table is the source of truth, but when a fresh + // model id (e.g. a just-released `claude-opus-4-N`) is not yet in the + // shipped table we still don't want to silently cap responses at 4096 + // — that truncates tool calls mid-stream and looks like the model is + // "broken". Use a Claude-family floor that matches the lowest 4.x + // output cap so behaviour degrades gracefully instead of catastrophically. + if Self::is_claude_4_or_newer(&self.model_name) { + return 32_000; + } + 4_096 } + fn is_claude_4_or_newer(model_name: &str) -> bool { + let lower = model_name.to_lowercase(); + if !lower.contains("claude") { + return false; + } + // Match `claude--` where major >= 4. Covers ids like + // `claude-opus-4-8`, `claude-sonnet-4-5`, `anthropic/claude-opus-4.6`, + // `databricks-claude-opus-4.5`, etc. Older Claude 3.x / 2.x ids keep + // the conservative 4096 default since their real output caps are + // genuinely small (3.x sonnet = 8192, 3.x opus = 4096). + static RE: std::sync::OnceLock = std::sync::OnceLock::new(); + let re = RE.get_or_init(|| { + regex::Regex::new(r"claude[-/](?:opus|sonnet|haiku)[-.]?(\d+)").unwrap() + }); + re.captures(&lower) + .and_then(|c| c.get(1)) + .and_then(|m| m.as_str().parse::().ok()) + .map(|major| major >= 4) + .unwrap_or(false) + } + pub fn normalize_effort_suffix(&mut self) { if !self.is_openai_reasoning_model() { return; @@ -575,6 +607,113 @@ mod tests { assert!(matches!(result.unwrap_err(), ConfigError::InvalidRange(..))); } + #[test] + fn claude_4_family_falls_back_to_32k_not_4096() { + // Unknown Claude 4+ ids (not yet in the canonical table) must not + // silently truncate at 4096 — that breaks tool-calling mid-response. + for model in [ + "claude-opus-4-8", + "claude-opus-4-9", + "claude-sonnet-4-7", + "claude-haiku-4-2", + "anthropic/claude-opus-4.8", + "databricks-claude-opus-4.6", + ] { + let cfg = ModelConfig { + model_name: model.to_string(), + context_limit: None, + temperature: None, + max_tokens: None, + toolshim: false, + toolshim_model: None, + fast_model_config: None, + request_params: None, + reasoning: None, + }; + assert_eq!( + cfg.max_output_tokens(), + 32_000, + "expected 32k floor for Claude 4+ id `{model}`" + ); + } + } + + #[test] + fn claude_3_and_non_claude_keep_4096_default() { + // Older Claude 3.x and non-Claude models should keep the conservative + // 4096 default — their real output caps are genuinely small or unknown. + for model in [ + "claude-3-opus-20240229", + "claude-3-5-sonnet-20241022", + "gpt-4o", + "some-unknown-model", + ] { + let cfg = ModelConfig { + model_name: model.to_string(), + context_limit: None, + temperature: None, + max_tokens: None, + toolshim: false, + toolshim_model: None, + fast_model_config: None, + request_params: None, + reasoning: None, + }; + assert_eq!( + cfg.max_output_tokens(), + 4_096, + "expected 4096 default for non-Claude-4 id `{model}`" + ); + } + } + + #[test] + fn canonical_lookup_resolves_dash_to_dot_for_claude_4_x() { + // The canonical registry stores Anthropic ids with dots + // (`anthropic/claude-opus-4.8`) but `GOOSE_MODEL` is set with dashes + // (`claude-opus-4-8`). The shared `strip_version_suffix` normalizer + // already converts `-N-M` → `-N.M`, so the lookup should succeed and + // populate real limits from the table — no 4096 fallback. + let _guard = env_lock::lock_env([ + ("GOOSE_MAX_TOKENS", None::<&str>), + ("GOOSE_CONTEXT_LIMIT", None::<&str>), + ]); + for (model, expected_min_output) in [ + ("claude-opus-4-1", 32_000), + ("claude-opus-4-5", 64_000), + ("claude-opus-4-6", 128_000), + ("claude-opus-4-7", 128_000), + ("claude-opus-4-8", 128_000), + ] { + let cfg = ModelConfig::new_or_fail(model).with_canonical_limits("anthropic"); + assert!( + cfg.max_output_tokens() >= expected_min_output, + "{model}: expected canonical lookup to yield >= {expected_min_output} output tokens, got {}", + cfg.max_output_tokens() + ); + assert!( + cfg.max_output_tokens() > 4_096, + "{model}: canonical lookup should have raised cap above 4096 fallback" + ); + } + } + + #[test] + fn explicit_max_tokens_always_wins() { + let cfg = ModelConfig { + model_name: "claude-opus-4-8".to_string(), + context_limit: None, + temperature: None, + max_tokens: Some(8_192), + toolshim: false, + toolshim_model: None, + fast_model_config: None, + request_params: None, + reasoning: None, + }; + assert_eq!(cfg.max_output_tokens(), 8_192); + } + #[test] fn test_model_config_with_max_tokens_env() { let _guard = env_lock::lock_env([ @@ -877,8 +1016,16 @@ mod tests { ]); let config = ModelConfig::new_or_fail("gpt-4o").with_canonical_limits("openai"); + // Values come from the bundled canonical models registry (synced + // from models.dev). We assert the *shape* (limits got filled in, + // context matches the well-known 128k cap, reasoning is false) + // rather than an exact `max_tokens` number so this test doesn't + // break every time models.dev updates gpt-4o's output cap. assert_eq!(config.context_limit, Some(128_000)); - assert_eq!(config.max_tokens, Some(16_384)); + assert!( + config.max_tokens.is_some(), + "expected canonical lookup to populate max_tokens for gpt-4o" + ); assert_eq!(config.reasoning, Some(false)); } diff --git a/crates/goose/src/providers/anthropic.rs b/crates/goose/src/providers/anthropic.rs index c08161aae2..c19b845ab3 100644 --- a/crates/goose/src/providers/anthropic.rs +++ b/crates/goose/src/providers/anthropic.rs @@ -30,6 +30,10 @@ const ANTHROPIC_PROVIDER_NAME: &str = "anthropic"; pub const ANTHROPIC_DEFAULT_MODEL: &str = "claude-sonnet-4-5"; const ANTHROPIC_DEFAULT_FAST_MODEL: &str = "claude-haiku-4-5"; const ANTHROPIC_KNOWN_MODELS: &[&str] = &[ + // Claude 4.8 models + "claude-opus-4-8", + // Claude 4.7 models + "claude-opus-4-7", // Claude 4.6 models "claude-opus-4-6", "claude-sonnet-4-6", diff --git a/crates/goose/src/providers/canonical/data/canonical_models.json b/crates/goose/src/providers/canonical/data/canonical_models.json index b1cdba60b3..7bd11e6772 100644 --- a/crates/goose/src/providers/canonical/data/canonical_models.json +++ b/crates/goose/src/providers/canonical/data/canonical_models.json @@ -198,7 +198,7 @@ }, { "id": "302ai/claude-haiku-4.5", - "name": "claude-haiku-4-5-20251001", + "name": "claude-haiku-4-5", "family": "claude-haiku", "attachment": true, "reasoning": true, @@ -320,7 +320,7 @@ }, { "id": "302ai/claude-opus-4.5", - "name": "claude-opus-4-5", + "name": "claude-opus-4-5-20251101", "family": "claude-opus", "attachment": true, "reasoning": true, @@ -505,7 +505,7 @@ }, { "id": "302ai/claude-sonnet-4.5", - "name": "claude-sonnet-4-5-20250929", + "name": "claude-sonnet-4-5", "family": "claude-sonnet", "attachment": true, "reasoning": true, @@ -1982,7 +1982,7 @@ }, { "id": "302ai/gpt-5.4-mini", - "name": "gpt-5.4-mini-2026-03-17", + "name": "gpt-5.4-mini", "family": "gpt-mini", "attachment": true, "reasoning": true, @@ -6261,14 +6261,14 @@ }, { "id": "alibaba-cn/deepseek-r1", - "name": "DeepSeek R1 0528", + "name": "DeepSeek R1", "family": "deepseek-thinking", "attachment": false, "reasoning": true, "tool_call": true, "temperature": true, - "release_date": "2025-05-28", - "last_updated": "2025-05-28", + "release_date": "2025-01-01", + "last_updated": "2025-01-01", "modalities": { "input": [ "text" @@ -11060,6 +11060,38 @@ "output": 128000 } }, + { + "id": "amazon-bedrock/anthropic.claude-opus-4.8", + "name": "Claude Opus 4.8", + "family": "claude-opus", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": false, + "release_date": "2026-05-28", + "last_updated": "2026-05-28", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 5.0, + "output": 25.0, + "cache_read": 0.5, + "cache_write": 6.25 + }, + "limit": { + "context": 1000000, + "output": 128000 + } + }, { "id": "amazon-bedrock/anthropic.claude-sonnet-4.5-20250929-v1:0", "name": "Claude Sonnet 4.5", @@ -11192,6 +11224,38 @@ "output": 128000 } }, + { + "id": "amazon-bedrock/au.anthropic.claude-opus-4.8", + "name": "Claude Opus 4.8 (AU)", + "family": "claude-opus", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": false, + "release_date": "2026-05-28", + "last_updated": "2026-05-28", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 5.0, + "output": 25.0, + "cache_read": 0.5, + "cache_write": 6.25 + }, + "limit": { + "context": 1000000, + "output": 128000 + } + }, { "id": "amazon-bedrock/au.anthropic.claude-sonnet-4.5-20250929-v1:0", "name": "Claude Sonnet 4.5 (AU)", @@ -11477,6 +11541,38 @@ "output": 128000 } }, + { + "id": "amazon-bedrock/eu.anthropic.claude-opus-4.8", + "name": "Claude Opus 4.8 (EU)", + "family": "claude-opus", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": false, + "release_date": "2026-05-28", + "last_updated": "2026-05-28", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 5.0, + "output": 25.0, + "cache_read": 0.5, + "cache_write": 6.25 + }, + "limit": { + "context": 1000000, + "output": 128000 + } + }, { "id": "amazon-bedrock/eu.anthropic.claude-sonnet-4.5-20250929-v1:0", "name": "Claude Sonnet 4.5 (EU)", @@ -11675,6 +11771,38 @@ "output": 128000 } }, + { + "id": "amazon-bedrock/global.anthropic.claude-opus-4.8", + "name": "Claude Opus 4.8 (Global)", + "family": "claude-opus", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": false, + "release_date": "2026-05-28", + "last_updated": "2026-05-28", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 5.0, + "output": 25.0, + "cache_read": 0.5, + "cache_write": 6.25 + }, + "limit": { + "context": 1000000, + "output": 128000 + } + }, { "id": "amazon-bedrock/global.anthropic.claude-sonnet-4.5-20250929-v1:0", "name": "Claude Sonnet 4.5 (Global)", @@ -11863,6 +11991,38 @@ "output": 128000 } }, + { + "id": "amazon-bedrock/jp.anthropic.claude-opus-4.8", + "name": "Claude Opus 4.8 (JP)", + "family": "claude-opus", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": false, + "release_date": "2026-05-28", + "last_updated": "2026-05-28", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 5.0, + "output": 25.0, + "cache_read": 0.5, + "cache_write": 6.25 + }, + "limit": { + "context": 1000000, + "output": 128000 + } + }, { "id": "amazon-bedrock/jp.anthropic.claude-sonnet-4.5-20250929-v1:0", "name": "Claude Sonnet 4.5 (JP)", @@ -13066,6 +13226,38 @@ "output": 128000 } }, + { + "id": "amazon-bedrock/us.anthropic.claude-opus-4.8", + "name": "Claude Opus 4.8 (US)", + "family": "claude-opus", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": false, + "release_date": "2026-05-28", + "last_updated": "2026-05-28", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 5.0, + "output": 25.0, + "cache_read": 0.5, + "cache_write": 6.25 + }, + "limit": { + "context": 1000000, + "output": 128000 + } + }, { "id": "amazon-bedrock/us.anthropic.claude-sonnet-4.5-20250929-v1:0", "name": "Claude Sonnet 4.5 (US)", @@ -13625,7 +13817,7 @@ }, { "id": "anthropic/claude-haiku-4.5", - "name": "Claude Haiku 4.5", + "name": "Claude Haiku 4.5 (latest)", "family": "claude-haiku", "attachment": true, "reasoning": true, @@ -13724,7 +13916,7 @@ }, { "id": "anthropic/claude-opus-4.1", - "name": "Claude Opus 4.1 (latest)", + "name": "Claude Opus 4.1", "family": "claude-opus", "attachment": true, "reasoning": true, @@ -13757,15 +13949,15 @@ }, { "id": "anthropic/claude-opus-4.5", - "name": "Claude Opus 4.5 (latest)", + "name": "Claude Opus 4.5", "family": "claude-opus", "attachment": true, "reasoning": true, "tool_call": true, "temperature": true, "knowledge": "2025-03-31", - "release_date": "2025-11-24", - "last_updated": "2025-11-24", + "release_date": "2025-11-01", + "last_updated": "2025-11-01", "modalities": { "input": [ "text", @@ -13854,6 +14046,38 @@ "output": 128000 } }, + { + "id": "anthropic/claude-opus-4.8", + "name": "Claude Opus 4.8", + "family": "claude-opus", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": false, + "release_date": "2026-05-28", + "last_updated": "2026-05-28", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 5.0, + "output": 25.0, + "cache_read": 0.5, + "cache_write": 6.25 + }, + "limit": { + "context": 1000000, + "output": 128000 + } + }, { "id": "anthropic/claude-sonnet-4", "name": "Claude Sonnet 4", @@ -13922,7 +14146,7 @@ }, { "id": "anthropic/claude-sonnet-4.5", - "name": "Claude Sonnet 4.5", + "name": "Claude Sonnet 4.5 (latest)", "family": "claude-sonnet", "attachment": true, "reasoning": true, @@ -15000,15 +15224,15 @@ }, { "id": "azure-cognitive-services/deepseek-r1", - "name": "DeepSeek-R1", + "name": "DeepSeek-R1-0528", "family": "deepseek-thinking", "attachment": false, "reasoning": true, - "tool_call": false, + "tool_call": true, "temperature": true, "knowledge": "2024-07", - "release_date": "2025-01-20", - "last_updated": "2025-01-20", + "release_date": "2025-05-28", + "last_updated": "2025-05-28", "modalities": { "input": [ "text" @@ -15145,15 +15369,15 @@ }, { "id": "azure-cognitive-services/gpt-3.5-turbo", - "name": "GPT-3.5 Turbo 0301", + "name": "GPT-3.5 Turbo 1106", "family": "gpt", "attachment": false, "reasoning": false, "tool_call": false, "temperature": true, "knowledge": "2021-08", - "release_date": "2023-03-01", - "last_updated": "2023-03-01", + "release_date": "2023-11-06", + "last_updated": "2023-11-06", "modalities": { "input": [ "text" @@ -15164,12 +15388,12 @@ }, "open_weights": false, "cost": { - "input": 1.5, + "input": 1.0, "output": 2.0 }, "limit": { - "context": 4096, - "output": 4096 + "context": 16384, + "output": 16384 } }, { @@ -15405,7 +15629,7 @@ "cost": { "input": 0.1, "output": 0.4, - "cache_read": 0.03 + "cache_read": 0.025 }, "limit": { "context": 1047576, @@ -15467,7 +15691,7 @@ "cost": { "input": 0.15, "output": 0.6, - "cache_read": 0.08 + "cache_read": 0.075 }, "limit": { "context": 128000, @@ -16869,7 +17093,7 @@ "cost": { "input": 1.1, "output": 4.4, - "cache_read": 0.28 + "cache_read": 0.275 }, "limit": { "context": 200000, @@ -17110,10 +17334,10 @@ }, { "id": "azure-cognitive-services/phi-4", - "name": "Phi-4", + "name": "Phi-4-reasoning", "family": "phi", "attachment": false, - "reasoning": false, + "reasoning": true, "tool_call": false, "temperature": true, "knowledge": "2023-10", @@ -17133,7 +17357,7 @@ "output": 0.5 }, "limit": { - "context": 128000, + "context": 32000, "output": 4096 } }, @@ -17738,15 +17962,15 @@ }, { "id": "azure/deepseek-r1", - "name": "DeepSeek-R1-0528", + "name": "DeepSeek-R1", "family": "deepseek-thinking", "attachment": false, "reasoning": true, - "tool_call": true, + "tool_call": false, "temperature": true, "knowledge": "2024-07", - "release_date": "2025-05-28", - "last_updated": "2025-05-28", + "release_date": "2025-01-20", + "last_updated": "2025-01-20", "modalities": { "input": [ "text" @@ -17883,15 +18107,15 @@ }, { "id": "azure/gpt-3.5-turbo", - "name": "GPT-3.5 Turbo 0613", + "name": "GPT-3.5 Turbo 0301", "family": "gpt", "attachment": false, "reasoning": false, "tool_call": false, "temperature": true, "knowledge": "2021-08", - "release_date": "2023-06-13", - "last_updated": "2023-06-13", + "release_date": "2023-03-01", + "last_updated": "2023-03-01", "modalities": { "input": [ "text" @@ -17902,12 +18126,12 @@ }, "open_weights": false, "cost": { - "input": 3.0, - "output": 4.0 + "input": 1.5, + "output": 2.0 }, "limit": { - "context": 16384, - "output": 16384 + "context": 4096, + "output": 4096 } }, { @@ -18143,7 +18367,7 @@ "cost": { "input": 0.1, "output": 0.4, - "cache_read": 0.03 + "cache_read": 0.025 }, "limit": { "context": 1047576, @@ -18205,7 +18429,7 @@ "cost": { "input": 0.15, "output": 0.6, - "cache_read": 0.08 + "cache_read": 0.075 }, "limit": { "context": 128000, @@ -19787,7 +20011,7 @@ "cost": { "input": 1.1, "output": 4.4, - "cache_read": 0.28 + "cache_read": 0.275 }, "limit": { "context": 200000, @@ -20028,10 +20252,10 @@ }, { "id": "azure/phi-4", - "name": "Phi-4-reasoning", + "name": "Phi-4", "family": "phi", "attachment": false, - "reasoning": true, + "reasoning": false, "tool_call": false, "temperature": true, "knowledge": "2023-10", @@ -20051,7 +20275,7 @@ "output": 0.5 }, "limit": { - "context": 32000, + "context": 128000, "output": 4096 } }, @@ -20959,35 +21183,6 @@ "output": 8000 } }, - { - "id": "cerebras/qwen-3-235b-a22b-instruct", - "name": "Qwen 3 235B Instruct", - "family": "qwen", - "attachment": false, - "reasoning": false, - "tool_call": true, - "temperature": true, - "knowledge": "2025-04", - "release_date": "2025-07-22", - "last_updated": "2025-07-22", - "modalities": { - "input": [ - "text" - ], - "output": [ - "text" - ] - }, - "open_weights": true, - "cost": { - "input": 0.6, - "output": 1.2 - }, - "limit": { - "context": 131000, - "output": 32000 - } - }, { "id": "cerebras/zai-glm-4.7", "name": "Z.AI GLM-4.7", @@ -28633,7 +28828,7 @@ "cost": { "input": 1.25, "output": 10.0, - "cache_read": 0.13 + "cache_read": 0.125 }, "limit": { "context": 400000, @@ -29521,15 +29716,15 @@ }, { "id": "deepinfra/moonshotai/Kimi-K2-Instruct", - "name": "Kimi K2 0905", + "name": "Kimi K2", "family": "kimi", "attachment": false, "reasoning": false, "tool_call": true, "temperature": true, "knowledge": "2024-10", - "release_date": "2025-09-05", - "last_updated": "2025-09-05", + "release_date": "2025-07-11", + "last_updated": "2025-07-11", "modalities": { "input": [ "text" @@ -29540,13 +29735,12 @@ }, "open_weights": true, "cost": { - "input": 0.4, - "output": 2.0, - "cache_read": 0.15 + "input": 0.5, + "output": 2.0 }, "limit": { - "context": 262144, - "output": 262144 + "context": 131072, + "output": 32768 } }, { @@ -34766,8 +34960,8 @@ "output": 0.0 }, "limit": { - "context": 144000, - "output": 32000 + "context": 200000, + "output": 64000 } }, { @@ -34796,7 +34990,7 @@ "output": 0.0 }, "limit": { - "context": 160000, + "context": 200000, "output": 32000 } }, @@ -34826,8 +35020,8 @@ "output": 0.0 }, "limit": { - "context": 144000, - "output": 64000 + "context": 200000, + "output": 32000 } }, { @@ -34856,7 +35050,37 @@ "output": 0.0 }, "limit": { - "context": 144000, + "context": 200000, + "output": 32000 + } + }, + { + "id": "github-copilot/claude-opus-4.8", + "name": "Claude Opus 4.8", + "family": "claude-opus", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": false, + "knowledge": "2026-01-31", + "release_date": "2026-05-28", + "last_updated": "2026-05-28", + "modalities": { + "input": [ + "text", + "image" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 0.0, + "output": 0.0 + }, + "limit": { + "context": 200000, "output": 64000 } }, @@ -34946,7 +35170,7 @@ "output": 0.0 }, "limit": { - "context": 144000, + "context": 200000, "output": 32000 } }, @@ -35102,7 +35326,7 @@ "output": 0.0 }, "limit": { - "context": 128000, + "context": 200000, "output": 64000 } }, @@ -35134,7 +35358,7 @@ "output": 0.0 }, "limit": { - "context": 128000, + "context": 200000, "output": 64000 } }, @@ -35404,8 +35628,8 @@ "output": 0.0 }, "limit": { - "context": 264000, - "output": 64000 + "context": 400000, + "output": 128000 } }, { @@ -35821,15 +36045,15 @@ }, { "id": "github-models/deepseek/deepseek-r1", - "name": "DeepSeek-R1-0528", + "name": "DeepSeek-R1", "family": "deepseek-thinking", "attachment": false, "reasoning": true, "tool_call": true, "temperature": true, "knowledge": "2024-06", - "release_date": "2025-05-28", - "last_updated": "2025-05-28", + "release_date": "2025-01-20", + "last_updated": "2025-01-20", "modalities": { "input": [ "text" @@ -36466,7 +36690,7 @@ }, { "id": "github-models/microsoft/phi-4", - "name": "Phi-4-Reasoning", + "name": "Phi-4", "family": "phi", "attachment": false, "reasoning": true, @@ -36489,7 +36713,7 @@ "output": 0.0 }, "limit": { - "context": 128000, + "context": 16000, "output": 4096 } }, @@ -37581,6 +37805,39 @@ "output": 64000 } }, + { + "id": "gitlab/duo-chat-opus-4.8", + "name": "Agentic Chat (Claude Opus 4.8)", + "family": "claude-opus", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": false, + "knowledge": "2026-01-31", + "release_date": "2026-05-28", + "last_updated": "2026-05-28", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 0.0, + "output": 0.0, + "cache_read": 0.0, + "cache_write": 0.0 + }, + "limit": { + "context": 1000000, + "output": 128000 + } + }, { "id": "gitlab/duo-chat-sonnet-4.5", "name": "Agentic Chat (Claude Sonnet 4.5)", @@ -38182,6 +38439,38 @@ "output": 128000 } }, + { + "id": "google-vertex-anthropic/claude-opus-4.8@default", + "name": "Claude Opus 4.8", + "family": "claude-opus", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": false, + "release_date": "2026-05-28", + "last_updated": "2026-05-28", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 5.0, + "output": 25.0, + "cache_read": 0.5, + "cache_write": 6.25 + }, + "limit": { + "context": 1000000, + "output": 128000 + } + }, { "id": "google-vertex-anthropic/claude-sonnet-4", "name": "Claude Sonnet 4", @@ -38578,6 +38867,38 @@ "output": 128000 } }, + { + "id": "google-vertex/claude-opus-4.8@default", + "name": "Claude Opus 4.8", + "family": "claude-opus", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": false, + "release_date": "2026-05-28", + "last_updated": "2026-05-28", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 5.0, + "output": 25.0, + "cache_read": 0.5, + "cache_write": 6.25 + }, + "limit": { + "context": 1000000, + "output": 128000 + } + }, { "id": "google-vertex/claude-sonnet-4", "name": "Claude Sonnet 4", @@ -40745,15 +41066,15 @@ }, { "id": "groq/moonshotai/kimi-k2-instruct", - "name": "Kimi K2 Instruct", + "name": "Kimi K2 Instruct 0905", "family": "kimi", "attachment": false, "reasoning": false, "tool_call": true, "temperature": true, "knowledge": "2024-10", - "release_date": "2025-07-14", - "last_updated": "2025-07-14", + "release_date": "2025-09-05", + "last_updated": "2026-05-27", "modalities": { "input": [ "text" @@ -40765,10 +41086,11 @@ "open_weights": true, "cost": { "input": 1.0, - "output": 3.0 + "output": 3.0, + "cache_read": 0.5 }, "limit": { - "context": 131072, + "context": 262144, "output": 16384 } }, @@ -40781,7 +41103,7 @@ "tool_call": true, "temperature": true, "release_date": "2025-08-05", - "last_updated": "2025-08-05", + "last_updated": "2026-05-27", "modalities": { "input": [ "text" @@ -40793,7 +41115,8 @@ "open_weights": true, "cost": { "input": 0.15, - "output": 0.6 + "output": 0.6, + "cache_read": 0.075 }, "limit": { "context": 131072, @@ -40809,7 +41132,7 @@ "tool_call": true, "temperature": true, "release_date": "2025-08-05", - "last_updated": "2025-08-05", + "last_updated": "2026-05-27", "modalities": { "input": [ "text" @@ -40821,7 +41144,8 @@ "open_weights": true, "cost": { "input": 0.075, - "output": 0.3 + "output": 0.3, + "cache_read": 0.0375 }, "limit": { "context": 131072, @@ -41294,7 +41618,7 @@ }, { "id": "helicone/claude-opus-4.1", - "name": "Anthropic: Claude Opus 4.1", + "name": "Anthropic: Claude Opus 4.1 (20250805)", "family": "claude-opus", "attachment": false, "reasoning": true, @@ -42612,15 +42936,15 @@ }, { "id": "helicone/kimi-k2", - "name": "Kimi K2 (07/11)", + "name": "Kimi K2 (09/05)", "family": "kimi", "attachment": false, "reasoning": false, "tool_call": true, "temperature": true, - "knowledge": "2025-01", - "release_date": "2025-01-01", - "last_updated": "2025-01-01", + "knowledge": "2025-09", + "release_date": "2025-09-05", + "last_updated": "2025-09-05", "modalities": { "input": [ "text" @@ -42631,11 +42955,12 @@ }, "open_weights": false, "cost": { - "input": 0.5700000000000001, - "output": 2.3 + "input": 0.5, + "output": 2.0, + "cache_read": 0.39999999999999997 }, "limit": { - "context": 131072, + "context": 262144, "output": 16384 } }, @@ -43022,15 +43347,15 @@ }, { "id": "helicone/mistral-small", - "name": "Mistral Small", + "name": "Mistral Small 3.2", "family": "mistral-small", "attachment": false, "reasoning": false, - "tool_call": false, + "tool_call": true, "temperature": true, - "knowledge": "2024-02", - "release_date": "2024-02-26", - "last_updated": "2024-02-26", + "knowledge": "2025-03", + "release_date": "2025-06-20", + "last_updated": "2025-06-20", "modalities": { "input": [ "text", @@ -43040,14 +43365,14 @@ "text" ] }, - "open_weights": false, + "open_weights": true, "cost": { - "input": 75.0, - "output": 200.0 + "input": 0.075, + "output": 0.2 }, "limit": { "context": 128000, - "output": 128000 + "output": 16384 } }, { @@ -43476,10 +43801,10 @@ }, { "id": "helicone/sonar", - "name": "Perplexity Sonar", - "family": "sonar", + "name": "Perplexity Sonar Reasoning", + "family": "sonar-reasoning", "attachment": false, - "reasoning": false, + "reasoning": true, "tool_call": false, "temperature": true, "knowledge": "2025-01", @@ -43496,7 +43821,7 @@ "open_weights": false, "cost": { "input": 1.0, - "output": 1.0 + "output": 5.0 }, "limit": { "context": 127000, @@ -44119,15 +44444,15 @@ }, { "id": "huggingface/moonshotai/Kimi-K2-Instruct", - "name": "Kimi-K2-Instruct-0905", + "name": "Kimi-K2-Instruct", "family": "kimi", "attachment": false, "reasoning": false, "tool_call": true, "temperature": true, "knowledge": "2024-10", - "release_date": "2025-09-04", - "last_updated": "2025-09-04", + "release_date": "2025-07-14", + "last_updated": "2025-07-14", "modalities": { "input": [ "text" @@ -44142,7 +44467,7 @@ "output": 3.0 }, "limit": { - "context": 262144, + "context": 131072, "output": 16384 } }, @@ -47641,33 +47966,6 @@ "output": 4096 } }, - { - "id": "kilo/alibaba/tongyi-deepresearch-30b-a3b", - "name": "Tongyi DeepResearch 30B A3B", - "attachment": false, - "reasoning": true, - "tool_call": true, - "temperature": true, - "release_date": "2025-09-18", - "last_updated": "2026-03-15", - "modalities": { - "input": [ - "text" - ], - "output": [ - "text" - ] - }, - "open_weights": false, - "cost": { - "input": 0.09, - "output": 0.45 - }, - "limit": { - "context": 131072, - "output": 131072 - } - }, { "id": "kilo/allenai/olmo-3-32b-think", "name": "AllenAI: Olmo 3 32B Think", @@ -48343,33 +48641,6 @@ "output": 65537 } }, - { - "id": "kilo/arcee-ai/trinity-large-preview", - "name": "Arcee AI: Trinity Large Preview", - "attachment": false, - "reasoning": false, - "tool_call": true, - "temperature": true, - "release_date": "2026-01-28", - "last_updated": "2026-05-01", - "modalities": { - "input": [ - "text" - ], - "output": [ - "text" - ] - }, - "open_weights": false, - "cost": { - "input": 0.15, - "output": 0.45 - }, - "limit": { - "context": 131000, - "output": 32768 - } - }, { "id": "kilo/arcee-ai/trinity-large-thinking", "name": "Arcee AI: Trinity Large Thinking", @@ -49007,13 +49278,13 @@ }, { "id": "kilo/deepseek/deepseek-r1", - "name": "DeepSeek: R1 0528", + "name": "DeepSeek: R1", "attachment": false, "reasoning": true, "tool_call": true, "temperature": true, - "release_date": "2025-05-28", - "last_updated": "2026-03-15", + "release_date": "2025-01-20", + "last_updated": "2025-01-20", "modalities": { "input": [ "text" @@ -49024,13 +49295,12 @@ }, "open_weights": true, "cost": { - "input": 0.45, - "output": 2.15, - "cache_read": 0.2 + "input": 0.7, + "output": 2.5 }, "limit": { - "context": 163840, - "output": 65536 + "context": 64000, + "output": 16000 } }, { @@ -49227,33 +49497,6 @@ "output": 384000 } }, - { - "id": "kilo/deepseek/deepseek-v4-flash:free", - "name": "DeepSeek: DeepSeek V4 Flash (free)", - "attachment": false, - "reasoning": true, - "tool_call": true, - "temperature": false, - "release_date": "2026-04-24", - "last_updated": "2026-05-16", - "modalities": { - "input": [ - "text" - ], - "output": [ - "text" - ] - }, - "open_weights": false, - "cost": { - "input": 0.0, - "output": 0.0 - }, - "limit": { - "context": 1048576, - "output": 384000 - } - }, { "id": "kilo/deepseek/deepseek-v4-pro", "name": "DeepSeek: DeepSeek V4 Pro", @@ -49816,6 +50059,39 @@ "output": 65536 } }, + { + "id": "kilo/google/gemini-3.5-flash", + "name": "Google: Gemini 3.5 Flash", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": true, + "release_date": "2026-05-19", + "last_updated": "2026-05-27", + "modalities": { + "input": [ + "audio", + "image", + "pdf", + "text", + "video" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 1.5, + "output": 9.0, + "cache_read": 0.15, + "cache_write": 0.08333 + }, + "limit": { + "context": 1048576, + "output": 65536 + } + }, { "id": "kilo/google/gemma-2-27b-it", "name": "Google: Gemma 2 27B", @@ -51339,16 +51615,17 @@ }, { "id": "kilo/mistralai/mistral-large", - "name": "Mistral Large", - "attachment": false, + "name": "Mistral: Mistral Large 3 2512", + "attachment": true, "reasoning": false, "tool_call": true, "temperature": true, - "release_date": "2024-07-24", - "last_updated": "2025-12-02", + "release_date": "2024-11-01", + "last_updated": "2025-12-16", "modalities": { "input": [ - "text" + "text", + "image" ], "output": [ "text" @@ -51356,12 +51633,12 @@ }, "open_weights": true, "cost": { - "input": 2.0, - "output": 6.0 + "input": 0.5, + "output": 1.5 }, "limit": { - "context": 128000, - "output": 25600 + "context": 262144, + "output": 52429 } }, { @@ -52476,12 +52753,12 @@ }, { "id": "kilo/openai/gpt-4o", - "name": "OpenAI: GPT-4o (2024-08-06)", + "name": "OpenAI: GPT-4o (2024-05-13)", "attachment": true, "reasoning": false, "tool_call": true, "temperature": true, - "release_date": "2024-08-06", + "release_date": "2024-05-13", "last_updated": "2026-03-15", "modalities": { "input": [ @@ -52495,13 +52772,12 @@ }, "open_weights": false, "cost": { - "input": 2.5, - "output": 10.0, - "cache_read": 1.25 + "input": 5.0, + "output": 15.0 }, "limit": { "context": 128000, - "output": 16384 + "output": 4096 } }, { @@ -52535,7 +52811,7 @@ }, { "id": "kilo/openai/gpt-4o-mini", - "name": "OpenAI: GPT-4o-mini (2024-07-18)", + "name": "OpenAI: GPT-4o-mini", "attachment": true, "reasoning": false, "tool_call": true, @@ -52555,7 +52831,8 @@ "open_weights": false, "cost": { "input": 0.15, - "output": 0.6 + "output": 0.6, + "cache_read": 0.075 }, "limit": { "context": 128000, @@ -54428,13 +54705,13 @@ }, { "id": "kilo/qwen/qwen3-235b-a22b", - "name": "Qwen: Qwen3 235B A22B", + "name": "Qwen: Qwen3 235B A22B Instruct 2507", "attachment": false, "reasoning": true, "tool_call": true, "temperature": true, - "release_date": "2024-12-01", - "last_updated": "2026-03-15", + "release_date": "2025-04", + "last_updated": "2026-01", "modalities": { "input": [ "text" @@ -54445,13 +54722,12 @@ }, "open_weights": true, "cost": { - "input": 0.455, - "output": 1.82, - "cache_read": 0.15 + "input": 0.071, + "output": 0.1 }, "limit": { - "context": 131072, - "output": 8192 + "context": 262144, + "output": 52429 } }, { @@ -55444,6 +55720,35 @@ "output": 65536 } }, + { + "id": "kilo/qwen/qwen3.7-max", + "name": "Qwen: Qwen3.7 Max", + "attachment": false, + "reasoning": true, + "tool_call": true, + "temperature": true, + "release_date": "2025-08-26", + "last_updated": "2026-05-27", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 1.625, + "output": 4.875, + "cache_read": 0.1625, + "cache_write": 2.03125 + }, + "limit": { + "context": 1000000, + "output": 65536 + } + }, { "id": "kilo/rekaai/reka-edge", "name": "Reka Edge", @@ -55688,6 +55993,99 @@ "output": 16384 } }, + { + "id": "kilo/stealth/claude-opus-4.6", + "name": "Stealth: Claude Opus 4.6 (20% off)", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": true, + "release_date": "2026-02-05", + "last_updated": "2026-05-27", + "modalities": { + "input": [ + "image", + "pdf", + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 4.0, + "output": 20.0, + "cache_read": 0.4, + "cache_write": 5.0 + }, + "limit": { + "context": 1000000, + "output": 128000 + } + }, + { + "id": "kilo/stealth/claude-opus-4.7", + "name": "Stealth: Claude Opus 4.7 (20% off)", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": false, + "release_date": "2026-04-16", + "last_updated": "2026-05-27", + "modalities": { + "input": [ + "image", + "pdf", + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 4.0, + "output": 20.0, + "cache_read": 0.4, + "cache_write": 5.0 + }, + "limit": { + "context": 1000000, + "output": 128000 + } + }, + { + "id": "kilo/stealth/claude-sonnet-4.6", + "name": "Stealth: Claude Sonnet 4.6 (20% off)", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": true, + "release_date": "2026-02-17", + "last_updated": "2026-05-27", + "modalities": { + "input": [ + "image", + "pdf", + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 2.4, + "output": 12.0, + "cache_read": 0.24, + "cache_write": 3.0 + }, + "limit": { + "context": 1000000, + "output": 64000 + } + }, { "id": "kilo/stepfun/step-3.5-flash", "name": "StepFun: Step 3.5 Flash", @@ -55716,33 +56114,6 @@ "output": 256000 } }, - { - "id": "kilo/stepfun/step-3.5-flash:free", - "name": "StepFun: Step 3.5 Flash (free)", - "attachment": false, - "reasoning": true, - "tool_call": true, - "temperature": true, - "release_date": "2025-08-26", - "last_updated": "2026-05-01", - "modalities": { - "input": [ - "text" - ], - "output": [ - "text" - ] - }, - "open_weights": false, - "cost": { - "input": 0.0, - "output": 0.0 - }, - "limit": { - "context": 262144, - "output": 262144 - } - }, { "id": "kilo/switchpoint/router", "name": "Switchpoint Router", @@ -56105,16 +56476,17 @@ } }, { - "id": "kilo/x-ai/grok-code-fast-1:optimized:free", - "name": "xAI: Grok Code Fast 1 Optimized (experimental, free)", - "attachment": false, + "id": "kilo/x-ai/grok-build-0.1", + "name": "xAI: Grok Build 0.1", + "attachment": true, "reasoning": true, "tool_call": true, "temperature": true, - "release_date": "2025-08-27", - "last_updated": "2026-03-15", + "release_date": "2026-05-20", + "last_updated": "2026-05-27", "modalities": { "input": [ + "image", "text" ], "output": [ @@ -56123,12 +56495,13 @@ }, "open_weights": false, "cost": { - "input": 0.0, - "output": 0.0 + "input": 1.0, + "output": 2.0, + "cache_read": 0.2 }, "limit": { "context": 256000, - "output": 10000 + "output": 256000 } }, { @@ -57279,7 +57652,7 @@ }, { "id": "llmgateway/claude-haiku-4.5", - "name": "Claude Haiku 4.5", + "name": "Claude Haiku 4.5 (latest)", "family": "claude-haiku", "attachment": true, "reasoning": true, @@ -57475,6 +57848,38 @@ "output": 128000 } }, + { + "id": "llmgateway/claude-opus-4.8", + "name": "Claude Opus 4.8", + "family": "claude-opus", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": false, + "release_date": "2026-05-28", + "last_updated": "2026-05-28", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 5.0, + "output": 25.0, + "cache_read": 0.5, + "cache_write": 6.25 + }, + "limit": { + "context": 1000000, + "output": 128000 + } + }, { "id": "llmgateway/claude-sonnet-4", "name": "Claude Sonnet 4", @@ -57510,7 +57915,7 @@ }, { "id": "llmgateway/claude-sonnet-4.5", - "name": "Claude Sonnet 4.5", + "name": "Claude Sonnet 4.5 (latest)", "family": "claude-sonnet", "attachment": true, "reasoning": true, @@ -58798,7 +59203,7 @@ "cost": { "input": 0.5, "output": 1.5, - "cache_read": 1.25 + "cache_read": 0.0 }, "limit": { "context": 16385, @@ -58952,7 +59357,7 @@ "cost": { "input": 0.1, "output": 0.4, - "cache_read": 0.03 + "cache_read": 0.025 }, "limit": { "context": 1047576, @@ -59016,7 +59421,7 @@ "cost": { "input": 0.15, "output": 0.6, - "cache_read": 0.08 + "cache_read": 0.075 }, "limit": { "context": 128000, @@ -59135,7 +59540,8 @@ "open_weights": false, "cost": { "input": 1.25, - "output": 10.0 + "output": 10.0, + "cache_read": 0.125 }, "limit": { "context": 400000, @@ -59258,7 +59664,7 @@ "cost": { "input": 1.25, "output": 10.0, - "cache_read": 0.13 + "cache_read": 0.125 }, "limit": { "context": 400000, @@ -61146,7 +61552,7 @@ "cost": { "input": 1.1, "output": 4.4, - "cache_read": 0.28 + "cache_read": 0.275 }, "limit": { "context": 200000, @@ -63279,6 +63685,2374 @@ "output": 131072 } }, + { + "id": "merge-gateway/anthropic/claude-haiku-4.5", + "name": "Claude Haiku 4.5", + "family": "claude-haiku", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": true, + "knowledge": "2025-02-28", + "release_date": "2025-10-15", + "last_updated": "2025-10-15", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 1.0, + "output": 5.0, + "cache_read": 0.1, + "cache_write": 1.25 + }, + "limit": { + "context": 200000, + "output": 64000 + } + }, + { + "id": "merge-gateway/anthropic/claude-opus-4", + "name": "Claude Opus 4", + "family": "claude-opus", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": true, + "knowledge": "2025-03-31", + "release_date": "2025-05-22", + "last_updated": "2025-05-22", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 15.0, + "output": 75.0, + "cache_read": 1.5, + "cache_write": 18.75 + }, + "limit": { + "context": 200000, + "output": 32000 + } + }, + { + "id": "merge-gateway/anthropic/claude-opus-4.1", + "name": "Claude Opus 4.1", + "family": "claude-opus", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": true, + "knowledge": "2025-03-31", + "release_date": "2025-08-05", + "last_updated": "2025-08-05", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 15.0, + "output": 75.0, + "cache_read": 1.5, + "cache_write": 18.75 + }, + "limit": { + "context": 200000, + "output": 32000 + } + }, + { + "id": "merge-gateway/anthropic/claude-opus-4.5", + "name": "Claude Opus 4.5", + "family": "claude-opus", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": true, + "knowledge": "2025-03-31", + "release_date": "2025-11-01", + "last_updated": "2025-11-01", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 5.0, + "output": 25.0, + "cache_read": 0.5, + "cache_write": 6.25 + }, + "limit": { + "context": 200000, + "output": 64000 + } + }, + { + "id": "merge-gateway/anthropic/claude-opus-4.6", + "name": "Claude Opus 4.6", + "family": "claude-opus", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": true, + "knowledge": "2025-05-31", + "release_date": "2026-02-05", + "last_updated": "2026-03-13", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 5.0, + "output": 25.0, + "cache_read": 0.5, + "cache_write": 6.25 + }, + "limit": { + "context": 1000000, + "output": 128000 + } + }, + { + "id": "merge-gateway/anthropic/claude-opus-4.7", + "name": "Claude Opus 4.7", + "family": "claude-opus", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": false, + "knowledge": "2026-01-31", + "release_date": "2026-04-16", + "last_updated": "2026-04-16", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 5.0, + "output": 25.0, + "cache_read": 0.5, + "cache_write": 6.25 + }, + "limit": { + "context": 1000000, + "output": 128000 + } + }, + { + "id": "merge-gateway/anthropic/claude-sonnet-4", + "name": "Claude Sonnet 4", + "family": "claude-sonnet", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": true, + "knowledge": "2025-03-31", + "release_date": "2025-05-22", + "last_updated": "2025-05-22", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 3.0, + "output": 15.0, + "cache_read": 0.3, + "cache_write": 3.75 + }, + "limit": { + "context": 200000, + "output": 64000 + } + }, + { + "id": "merge-gateway/anthropic/claude-sonnet-4.5", + "name": "Claude Sonnet 4.5", + "family": "claude-sonnet", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": true, + "knowledge": "2025-07-31", + "release_date": "2025-09-29", + "last_updated": "2025-09-29", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 3.0, + "output": 15.0, + "cache_read": 0.3, + "cache_write": 3.75 + }, + "limit": { + "context": 200000, + "output": 64000 + } + }, + { + "id": "merge-gateway/anthropic/claude-sonnet-4.6", + "name": "Claude Sonnet 4.6", + "family": "claude-sonnet", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": true, + "knowledge": "2025-08-31", + "release_date": "2026-02-17", + "last_updated": "2026-03-13", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 3.0, + "output": 15.0, + "cache_read": 0.3, + "cache_write": 3.75 + }, + "limit": { + "context": 1000000, + "output": 64000 + } + }, + { + "id": "merge-gateway/cohere/command-a-03", + "name": "Command A", + "family": "command-a", + "attachment": false, + "reasoning": false, + "tool_call": true, + "temperature": true, + "knowledge": "2024-06-01", + "release_date": "2025-03-13", + "last_updated": "2025-03-13", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "cost": { + "input": 2.5, + "output": 10.0 + }, + "limit": { + "context": 256000, + "output": 8000 + } + }, + { + "id": "merge-gateway/cohere/command-r-08", + "name": "Command R", + "family": "command-r", + "attachment": false, + "reasoning": false, + "tool_call": true, + "temperature": true, + "knowledge": "2024-06-01", + "release_date": "2024-08-30", + "last_updated": "2024-08-30", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "cost": { + "input": 0.15, + "output": 0.6 + }, + "limit": { + "context": 128000, + "output": 4000 + } + }, + { + "id": "merge-gateway/cohere/command-r-plus-08", + "name": "Command R+", + "family": "command-r", + "attachment": false, + "reasoning": false, + "tool_call": true, + "temperature": true, + "knowledge": "2024-06-01", + "release_date": "2024-08-30", + "last_updated": "2024-08-30", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "cost": { + "input": 2.5, + "output": 10.0 + }, + "limit": { + "context": 128000, + "output": 4000 + } + }, + { + "id": "merge-gateway/cohere/command-r7b-12", + "name": "Command R7B", + "family": "command-r", + "attachment": false, + "reasoning": false, + "tool_call": true, + "temperature": true, + "knowledge": "2024-06-01", + "release_date": "2024-02-27", + "last_updated": "2024-02-27", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "cost": { + "input": 0.0375, + "output": 0.15 + }, + "limit": { + "context": 128000, + "output": 4000 + } + }, + { + "id": "merge-gateway/deepseek/deepseek-v4-flash", + "name": "DeepSeek V4 Flash", + "family": "deepseek-flash", + "attachment": false, + "reasoning": true, + "tool_call": true, + "temperature": true, + "knowledge": "2025-05", + "release_date": "2026-04-24", + "last_updated": "2026-04-24", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "cost": { + "input": 0.14, + "output": 0.28, + "cache_read": 0.0028 + }, + "limit": { + "context": 1000000, + "output": 384000 + } + }, + { + "id": "merge-gateway/deepseek/deepseek-v4-pro", + "name": "DeepSeek V4 Pro", + "family": "deepseek-thinking", + "attachment": false, + "reasoning": true, + "tool_call": true, + "temperature": true, + "knowledge": "2025-05", + "release_date": "2026-04-24", + "last_updated": "2026-04-24", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "cost": { + "input": 0.435, + "output": 0.87, + "cache_read": 0.003625 + }, + "limit": { + "context": 1000000, + "output": 384000 + } + }, + { + "id": "merge-gateway/google/gemini-2.5-flash", + "name": "Gemini 2.5 Flash", + "family": "gemini-flash", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": true, + "knowledge": "2025-01", + "release_date": "2025-03-20", + "last_updated": "2025-06-05", + "modalities": { + "input": [ + "text", + "image", + "audio", + "video", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 0.3, + "output": 2.5, + "cache_read": 0.03 + }, + "limit": { + "context": 1048576, + "output": 65536 + } + }, + { + "id": "merge-gateway/google/gemini-2.5-flash-lite", + "name": "Gemini 2.5 Flash-Lite", + "family": "gemini-flash-lite", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": true, + "knowledge": "2025-01", + "release_date": "2025-06-17", + "last_updated": "2025-06-17", + "modalities": { + "input": [ + "text", + "image", + "audio", + "video", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 0.1, + "output": 0.4, + "cache_read": 0.01 + }, + "limit": { + "context": 1048576, + "output": 65536 + } + }, + { + "id": "merge-gateway/google/gemini-2.5-pro", + "name": "Gemini 2.5 Pro", + "family": "gemini-pro", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": true, + "knowledge": "2025-01", + "release_date": "2025-03-20", + "last_updated": "2025-06-05", + "modalities": { + "input": [ + "text", + "image", + "audio", + "video", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 1.25, + "output": 10.0, + "cache_read": 0.125 + }, + "limit": { + "context": 1048576, + "output": 65536 + } + }, + { + "id": "merge-gateway/google/gemini-3-flash-preview", + "name": "Gemini 3 Flash Preview", + "family": "gemini-flash", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": true, + "knowledge": "2025-01", + "release_date": "2025-12-17", + "last_updated": "2025-12-17", + "modalities": { + "input": [ + "text", + "image", + "video", + "audio", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 0.5, + "output": 3.0, + "cache_read": 0.05 + }, + "limit": { + "context": 1048576, + "output": 65536 + } + }, + { + "id": "merge-gateway/google/gemini-3-pro-preview", + "name": "Gemini 3 Pro Preview", + "family": "gemini-pro", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": true, + "knowledge": "2025-01", + "release_date": "2025-11-18", + "last_updated": "2025-11-18", + "modalities": { + "input": [ + "text", + "image", + "video", + "audio", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 2.0, + "output": 12.0, + "cache_read": 0.2 + }, + "limit": { + "context": 1048576, + "output": 65536 + } + }, + { + "id": "merge-gateway/google/gemini-3.1-flash-lite", + "name": "Gemini 3.1 Flash Lite", + "family": "gemini-flash-lite", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": true, + "knowledge": "2025-01", + "release_date": "2026-05-07", + "last_updated": "2026-05-07", + "modalities": { + "input": [ + "text", + "image", + "video", + "audio", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 0.25, + "output": 1.5, + "cache_read": 0.025 + }, + "limit": { + "context": 1048576, + "output": 65536 + } + }, + { + "id": "merge-gateway/google/gemini-3.1-flash-lite-preview", + "name": "Gemini 3.1 Flash Lite Preview", + "family": "gemini-flash-lite", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": true, + "knowledge": "2025-01", + "release_date": "2026-03-03", + "last_updated": "2026-03-03", + "modalities": { + "input": [ + "text", + "image", + "video", + "audio", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 0.25, + "output": 1.5, + "cache_read": 0.025 + }, + "limit": { + "context": 1048576, + "output": 65536 + } + }, + { + "id": "merge-gateway/google/gemini-3.1-pro-preview", + "name": "Gemini 3.1 Pro Preview", + "family": "gemini-pro", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": true, + "knowledge": "2025-01", + "release_date": "2026-02-19", + "last_updated": "2026-02-19", + "modalities": { + "input": [ + "text", + "image", + "video", + "audio", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 2.0, + "output": 12.0, + "cache_read": 0.2 + }, + "limit": { + "context": 1048576, + "output": 65536 + } + }, + { + "id": "merge-gateway/google/gemini-3.1-pro-preview-customtools", + "name": "Gemini 3.1 Pro Preview Custom Tools", + "family": "gemini-pro", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": true, + "knowledge": "2025-01", + "release_date": "2026-02-19", + "last_updated": "2026-02-19", + "modalities": { + "input": [ + "text", + "image", + "video", + "audio", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 2.0, + "output": 12.0, + "cache_read": 0.2 + }, + "limit": { + "context": 1048576, + "output": 65536 + } + }, + { + "id": "merge-gateway/google/gemini-3.5-flash", + "name": "Gemini 3.5 Flash", + "family": "gemini-flash", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": true, + "knowledge": "2025-01", + "release_date": "2026-05-19", + "last_updated": "2026-05-19", + "modalities": { + "input": [ + "text", + "image", + "video", + "audio", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 1.5, + "output": 9.0, + "cache_read": 0.15 + }, + "limit": { + "context": 1048576, + "output": 65536 + } + }, + { + "id": "merge-gateway/google/gemini-flash", + "name": "Gemini Flash Latest", + "family": "gemini-flash", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": true, + "knowledge": "2025-01", + "release_date": "2025-09-25", + "last_updated": "2025-09-25", + "modalities": { + "input": [ + "text", + "image", + "audio", + "video", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 0.3, + "output": 2.5, + "cache_read": 0.075 + }, + "limit": { + "context": 1048576, + "output": 65536 + } + }, + { + "id": "merge-gateway/google/gemini-flash-lite", + "name": "Gemini Flash-Lite Latest", + "family": "gemini-flash-lite", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": true, + "knowledge": "2025-01", + "release_date": "2025-09-25", + "last_updated": "2025-09-25", + "modalities": { + "input": [ + "text", + "image", + "audio", + "video", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 0.1, + "output": 0.4, + "cache_read": 0.025 + }, + "limit": { + "context": 1048576, + "output": 65536 + } + }, + { + "id": "merge-gateway/google/gemma-4-26b-a4b-it", + "name": "Gemma 4 26B A4B IT", + "family": "gemma", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": true, + "release_date": "2026-04-02", + "last_updated": "2026-04-02", + "modalities": { + "input": [ + "text", + "image" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "cost": {}, + "limit": { + "context": 262144, + "output": 32768 + } + }, + { + "id": "merge-gateway/google/gemma-4-31b-it", + "name": "Gemma 4 31B IT", + "family": "gemma", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": true, + "release_date": "2026-04-02", + "last_updated": "2026-04-02", + "modalities": { + "input": [ + "text", + "image" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "cost": {}, + "limit": { + "context": 262144, + "output": 32768 + } + }, + { + "id": "merge-gateway/minimax/minimax-m2", + "name": "MiniMax-M2", + "family": "minimax", + "attachment": false, + "reasoning": true, + "tool_call": true, + "temperature": true, + "release_date": "2025-10-27", + "last_updated": "2025-10-27", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "cost": { + "input": 0.3, + "output": 1.2 + }, + "limit": { + "context": 196608, + "output": 128000 + } + }, + { + "id": "merge-gateway/minimax/minimax-m2.1", + "name": "MiniMax-M2.1", + "family": "minimax", + "attachment": false, + "reasoning": true, + "tool_call": true, + "temperature": true, + "release_date": "2025-12-23", + "last_updated": "2025-12-23", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "cost": { + "input": 0.3, + "output": 1.2 + }, + "limit": { + "context": 204800, + "output": 131072 + } + }, + { + "id": "merge-gateway/minimax/minimax-m2.5", + "name": "MiniMax-M2.5", + "family": "minimax", + "attachment": false, + "reasoning": true, + "tool_call": true, + "temperature": true, + "release_date": "2026-02-12", + "last_updated": "2026-02-12", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "cost": { + "input": 0.3, + "output": 1.2, + "cache_read": 0.03, + "cache_write": 0.375 + }, + "limit": { + "context": 204800, + "output": 131072 + } + }, + { + "id": "merge-gateway/minimax/minimax-m2.5-highspeed", + "name": "MiniMax-M2.5-highspeed", + "family": "minimax", + "attachment": false, + "reasoning": true, + "tool_call": true, + "temperature": true, + "release_date": "2026-02-13", + "last_updated": "2026-02-13", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "cost": { + "input": 0.6, + "output": 2.4, + "cache_read": 0.06, + "cache_write": 0.375 + }, + "limit": { + "context": 204800, + "output": 131072 + } + }, + { + "id": "merge-gateway/minimax/minimax-m2.7", + "name": "MiniMax-M2.7", + "family": "minimax", + "attachment": false, + "reasoning": true, + "tool_call": true, + "temperature": true, + "release_date": "2026-03-18", + "last_updated": "2026-03-18", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "cost": { + "input": 0.3, + "output": 1.2, + "cache_read": 0.06, + "cache_write": 0.375 + }, + "limit": { + "context": 204800, + "output": 131072 + } + }, + { + "id": "merge-gateway/minimax/minimax-m2.7-highspeed", + "name": "MiniMax-M2.7-highspeed", + "family": "minimax", + "attachment": false, + "reasoning": true, + "tool_call": true, + "temperature": true, + "release_date": "2026-03-18", + "last_updated": "2026-03-18", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "cost": { + "input": 0.6, + "output": 2.4, + "cache_read": 0.06, + "cache_write": 0.375 + }, + "limit": { + "context": 204800, + "output": 131072 + } + }, + { + "id": "merge-gateway/mistral/codestral", + "name": "Codestral (latest)", + "family": "codestral", + "attachment": false, + "reasoning": false, + "tool_call": true, + "temperature": true, + "knowledge": "2024-10", + "release_date": "2024-05-29", + "last_updated": "2025-01-04", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "cost": { + "input": 0.3, + "output": 0.9 + }, + "limit": { + "context": 256000, + "output": 4096 + } + }, + { + "id": "merge-gateway/mistral/devstral", + "name": "Devstral 2", + "family": "devstral", + "attachment": false, + "reasoning": false, + "tool_call": true, + "temperature": true, + "knowledge": "2025-12", + "release_date": "2025-12-09", + "last_updated": "2025-12-09", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "cost": { + "input": 0.4, + "output": 2.0 + }, + "limit": { + "context": 262144, + "output": 262144 + } + }, + { + "id": "merge-gateway/mistral/devstral-medium", + "name": "Devstral Medium", + "family": "devstral", + "attachment": false, + "reasoning": false, + "tool_call": true, + "temperature": true, + "knowledge": "2025-05", + "release_date": "2025-07-10", + "last_updated": "2025-07-10", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "cost": { + "input": 0.4, + "output": 2.0 + }, + "limit": { + "context": 128000, + "output": 128000 + } + }, + { + "id": "merge-gateway/mistral/devstral-small", + "name": "Devstral Small", + "family": "devstral", + "attachment": false, + "reasoning": false, + "tool_call": true, + "temperature": true, + "knowledge": "2025-05", + "release_date": "2025-07-10", + "last_updated": "2025-07-10", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "cost": { + "input": 0.1, + "output": 0.3 + }, + "limit": { + "context": 128000, + "output": 128000 + } + }, + { + "id": "merge-gateway/mistral/magistral-medium", + "name": "Magistral Medium (latest)", + "family": "magistral-medium", + "attachment": false, + "reasoning": true, + "tool_call": true, + "temperature": true, + "knowledge": "2025-06", + "release_date": "2025-03-17", + "last_updated": "2025-03-20", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "cost": { + "input": 2.0, + "output": 5.0 + }, + "limit": { + "context": 128000, + "output": 16384 + } + }, + { + "id": "merge-gateway/mistral/mistral-large", + "name": "Mistral Large (latest)", + "family": "mistral-large", + "attachment": true, + "reasoning": false, + "tool_call": true, + "temperature": true, + "knowledge": "2024-11", + "release_date": "2024-11-01", + "last_updated": "2025-12-02", + "modalities": { + "input": [ + "text", + "image" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "cost": { + "input": 0.5, + "output": 1.5 + }, + "limit": { + "context": 262144, + "output": 262144 + } + }, + { + "id": "merge-gateway/mistral/mistral-medium", + "name": "Mistral Medium 3", + "family": "mistral-medium", + "attachment": true, + "reasoning": false, + "tool_call": true, + "temperature": true, + "knowledge": "2025-05", + "release_date": "2025-05-07", + "last_updated": "2025-05-07", + "modalities": { + "input": [ + "text", + "image" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 0.4, + "output": 2.0 + }, + "limit": { + "context": 131072, + "output": 131072 + } + }, + { + "id": "merge-gateway/mistral/mistral-small", + "name": "Mistral Small (latest)", + "family": "mistral-small", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": true, + "knowledge": "2025-06", + "release_date": "2026-03-16", + "last_updated": "2026-03-16", + "modalities": { + "input": [ + "text", + "image" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "cost": { + "input": 0.15, + "output": 0.6 + }, + "limit": { + "context": 256000, + "output": 256000 + } + }, + { + "id": "merge-gateway/mistral/pixtral-large", + "name": "Pixtral Large (latest)", + "family": "pixtral", + "attachment": true, + "reasoning": false, + "tool_call": true, + "temperature": true, + "knowledge": "2024-11", + "release_date": "2024-11-01", + "last_updated": "2024-11-04", + "modalities": { + "input": [ + "text", + "image" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "cost": { + "input": 2.0, + "output": 6.0 + }, + "limit": { + "context": 128000, + "output": 128000 + } + }, + { + "id": "merge-gateway/openai/gpt-4.1", + "name": "GPT-4.1", + "family": "gpt", + "attachment": true, + "reasoning": false, + "tool_call": true, + "temperature": true, + "knowledge": "2024-04", + "release_date": "2025-04-14", + "last_updated": "2025-04-14", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 2.0, + "output": 8.0, + "cache_read": 0.5 + }, + "limit": { + "context": 1047576, + "output": 32768 + } + }, + { + "id": "merge-gateway/openai/gpt-4.1-mini", + "name": "GPT-4.1 mini", + "family": "gpt-mini", + "attachment": true, + "reasoning": false, + "tool_call": true, + "temperature": true, + "knowledge": "2024-04", + "release_date": "2025-04-14", + "last_updated": "2025-04-14", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 0.4, + "output": 1.6, + "cache_read": 0.1 + }, + "limit": { + "context": 1047576, + "output": 32768 + } + }, + { + "id": "merge-gateway/openai/gpt-4.1-nano", + "name": "GPT-4.1 nano", + "family": "gpt-nano", + "attachment": true, + "reasoning": false, + "tool_call": true, + "temperature": true, + "knowledge": "2024-04", + "release_date": "2025-04-14", + "last_updated": "2025-04-14", + "modalities": { + "input": [ + "text", + "image" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 0.1, + "output": 0.4, + "cache_read": 0.025 + }, + "limit": { + "context": 1047576, + "output": 32768 + } + }, + { + "id": "merge-gateway/openai/gpt-4o", + "name": "GPT-4o (2024-05-13)", + "family": "gpt", + "attachment": true, + "reasoning": false, + "tool_call": true, + "temperature": true, + "knowledge": "2023-09", + "release_date": "2024-05-13", + "last_updated": "2024-05-13", + "modalities": { + "input": [ + "text", + "image" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 5.0, + "output": 15.0 + }, + "limit": { + "context": 128000, + "output": 4096 + } + }, + { + "id": "merge-gateway/openai/gpt-4o-mini", + "name": "GPT-4o mini", + "family": "gpt-mini", + "attachment": true, + "reasoning": false, + "tool_call": true, + "temperature": true, + "knowledge": "2023-09", + "release_date": "2024-07-18", + "last_updated": "2024-07-18", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 0.15, + "output": 0.6, + "cache_read": 0.075 + }, + "limit": { + "context": 128000, + "output": 16384 + } + }, + { + "id": "merge-gateway/openai/gpt-5", + "name": "GPT-5", + "family": "gpt", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": false, + "knowledge": "2024-09-30", + "release_date": "2025-08-07", + "last_updated": "2025-08-07", + "modalities": { + "input": [ + "text", + "image" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 1.25, + "output": 10.0, + "cache_read": 0.125 + }, + "limit": { + "context": 400000, + "output": 128000 + } + }, + { + "id": "merge-gateway/openai/gpt-5-chat", + "name": "GPT-5 Chat (latest)", + "family": "gpt-codex", + "attachment": true, + "reasoning": true, + "tool_call": false, + "temperature": true, + "knowledge": "2024-09-30", + "release_date": "2025-08-07", + "last_updated": "2025-08-07", + "modalities": { + "input": [ + "text", + "image" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 1.25, + "output": 10.0, + "cache_read": 0.125 + }, + "limit": { + "context": 400000, + "output": 128000 + } + }, + { + "id": "merge-gateway/openai/gpt-5-mini", + "name": "GPT-5 Mini", + "family": "gpt-mini", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": false, + "knowledge": "2024-05-30", + "release_date": "2025-08-07", + "last_updated": "2025-08-07", + "modalities": { + "input": [ + "text", + "image" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 0.25, + "output": 2.0, + "cache_read": 0.025 + }, + "limit": { + "context": 400000, + "output": 128000 + } + }, + { + "id": "merge-gateway/openai/gpt-5-nano", + "name": "GPT-5 Nano", + "family": "gpt-nano", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": false, + "knowledge": "2024-05-30", + "release_date": "2025-08-07", + "last_updated": "2025-08-07", + "modalities": { + "input": [ + "text", + "image" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 0.05, + "output": 0.4, + "cache_read": 0.005 + }, + "limit": { + "context": 400000, + "output": 128000 + } + }, + { + "id": "merge-gateway/openai/gpt-5.1", + "name": "GPT-5.1", + "family": "gpt", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": false, + "knowledge": "2024-09-30", + "release_date": "2025-11-13", + "last_updated": "2025-11-13", + "modalities": { + "input": [ + "text", + "image" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 1.25, + "output": 10.0, + "cache_read": 0.125 + }, + "limit": { + "context": 400000, + "output": 128000 + } + }, + { + "id": "merge-gateway/openai/gpt-5.1-chat", + "name": "GPT-5.1 Chat", + "family": "gpt-codex", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": false, + "knowledge": "2024-09-30", + "release_date": "2025-11-13", + "last_updated": "2025-11-13", + "modalities": { + "input": [ + "text", + "image" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 1.25, + "output": 10.0, + "cache_read": 0.125 + }, + "limit": { + "context": 128000, + "output": 16384 + } + }, + { + "id": "merge-gateway/openai/gpt-5.2", + "name": "GPT-5.2", + "family": "gpt", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": false, + "knowledge": "2025-08-31", + "release_date": "2025-12-11", + "last_updated": "2025-12-11", + "modalities": { + "input": [ + "text", + "image" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 1.75, + "output": 14.0, + "cache_read": 0.175 + }, + "limit": { + "context": 400000, + "output": 128000 + } + }, + { + "id": "merge-gateway/openai/gpt-5.2-chat", + "name": "GPT-5.2 Chat", + "family": "gpt-codex", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": false, + "knowledge": "2025-08-31", + "release_date": "2025-12-11", + "last_updated": "2025-12-11", + "modalities": { + "input": [ + "text", + "image" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 1.75, + "output": 14.0, + "cache_read": 0.175 + }, + "limit": { + "context": 128000, + "output": 16384 + } + }, + { + "id": "merge-gateway/openai/gpt-5.3-chat", + "name": "GPT-5.3 Chat (latest)", + "family": "gpt", + "attachment": true, + "reasoning": false, + "tool_call": true, + "temperature": true, + "knowledge": "2025-08-31", + "release_date": "2026-03-03", + "last_updated": "2026-03-03", + "modalities": { + "input": [ + "text", + "image" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 1.75, + "output": 14.0, + "cache_read": 0.175 + }, + "limit": { + "context": 128000, + "output": 16384 + } + }, + { + "id": "merge-gateway/openai/gpt-5.4", + "name": "GPT-5.4", + "family": "gpt", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": false, + "knowledge": "2025-08-31", + "release_date": "2026-03-05", + "last_updated": "2026-03-05", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 2.5, + "output": 15.0, + "cache_read": 0.25 + }, + "limit": { + "context": 1050000, + "output": 128000 + } + }, + { + "id": "merge-gateway/openai/gpt-5.4-mini", + "name": "GPT-5.4 mini", + "family": "gpt-mini", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": false, + "knowledge": "2025-08-31", + "release_date": "2026-03-17", + "last_updated": "2026-03-17", + "modalities": { + "input": [ + "text", + "image" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 0.75, + "output": 4.5, + "cache_read": 0.075 + }, + "limit": { + "context": 400000, + "output": 128000 + } + }, + { + "id": "merge-gateway/openai/gpt-5.4-nano", + "name": "GPT-5.4 nano", + "family": "gpt-nano", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": false, + "knowledge": "2025-08-31", + "release_date": "2026-03-17", + "last_updated": "2026-03-17", + "modalities": { + "input": [ + "text", + "image" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 0.2, + "output": 1.25, + "cache_read": 0.02 + }, + "limit": { + "context": 400000, + "output": 128000 + } + }, + { + "id": "merge-gateway/openai/gpt-5.5", + "name": "GPT-5.5", + "family": "gpt", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": false, + "knowledge": "2025-12-01", + "release_date": "2026-04-23", + "last_updated": "2026-04-23", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 5.0, + "output": 30.0, + "cache_read": 0.5 + }, + "limit": { + "context": 1050000, + "output": 128000 + } + }, + { + "id": "merge-gateway/openai/o1", + "name": "o1", + "family": "o", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": false, + "knowledge": "2023-09", + "release_date": "2024-12-05", + "last_updated": "2024-12-05", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 15.0, + "output": 60.0, + "cache_read": 7.5 + }, + "limit": { + "context": 200000, + "output": 100000 + } + }, + { + "id": "merge-gateway/openai/o3", + "name": "o3", + "family": "o", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": false, + "knowledge": "2024-05", + "release_date": "2025-04-16", + "last_updated": "2025-04-16", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 2.0, + "output": 8.0, + "cache_read": 0.5 + }, + "limit": { + "context": 200000, + "output": 100000 + } + }, + { + "id": "merge-gateway/openai/o3-mini", + "name": "o3-mini", + "family": "o-mini", + "attachment": false, + "reasoning": true, + "tool_call": true, + "temperature": false, + "knowledge": "2024-05", + "release_date": "2024-12-20", + "last_updated": "2025-01-29", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 1.1, + "output": 4.4, + "cache_read": 0.55 + }, + "limit": { + "context": 200000, + "output": 100000 + } + }, + { + "id": "merge-gateway/openai/o4-mini", + "name": "o4-mini", + "family": "o-mini", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": false, + "knowledge": "2024-05", + "release_date": "2025-04-16", + "last_updated": "2025-04-16", + "modalities": { + "input": [ + "text", + "image" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 1.1, + "output": 4.4, + "cache_read": 0.275 + }, + "limit": { + "context": 200000, + "output": 100000 + } + }, + { + "id": "merge-gateway/xai/grok-4.20", + "name": "Grok 4.20 (Reasoning)", + "family": "grok", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": true, + "release_date": "2026-03-09", + "last_updated": "2026-03-09", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 1.25, + "output": 2.5, + "cache_read": 0.2 + }, + "limit": { + "context": 2000000, + "output": 30000 + } + }, + { + "id": "merge-gateway/xai/grok-4.3", + "name": "Grok 4.3", + "family": "grok", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": true, + "release_date": "2026-04-17", + "last_updated": "2026-04-17", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 1.25, + "output": 2.5, + "cache_read": 0.2 + }, + "limit": { + "context": 1000000, + "output": 30000 + } + }, + { + "id": "merge-gateway/zai/glm-4.5", + "name": "GLM-4.5", + "family": "glm", + "attachment": false, + "reasoning": true, + "tool_call": true, + "temperature": true, + "knowledge": "2025-04", + "release_date": "2025-07-28", + "last_updated": "2025-07-28", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "cost": { + "input": 0.6, + "output": 2.2, + "cache_read": 0.11, + "cache_write": 0.0 + }, + "limit": { + "context": 131072, + "output": 98304 + } + }, + { + "id": "merge-gateway/zai/glm-4.5-air", + "name": "GLM-4.5-Air", + "family": "glm-air", + "attachment": false, + "reasoning": true, + "tool_call": true, + "temperature": true, + "knowledge": "2025-04", + "release_date": "2025-07-28", + "last_updated": "2025-07-28", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "cost": { + "input": 0.2, + "output": 1.1, + "cache_read": 0.03, + "cache_write": 0.0 + }, + "limit": { + "context": 131072, + "output": 98304 + } + }, + { + "id": "merge-gateway/zai/glm-4.6", + "name": "GLM-4.6", + "family": "glm", + "attachment": false, + "reasoning": true, + "tool_call": true, + "temperature": true, + "knowledge": "2025-04", + "release_date": "2025-09-30", + "last_updated": "2025-09-30", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "cost": { + "input": 0.6, + "output": 2.2, + "cache_read": 0.11, + "cache_write": 0.0 + }, + "limit": { + "context": 204800, + "output": 131072 + } + }, + { + "id": "merge-gateway/zai/glm-4.7", + "name": "GLM-4.7", + "family": "glm", + "attachment": false, + "reasoning": true, + "tool_call": true, + "temperature": true, + "knowledge": "2025-04", + "release_date": "2025-12-22", + "last_updated": "2025-12-22", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "cost": { + "input": 0.6, + "output": 2.2, + "cache_read": 0.11, + "cache_write": 0.0 + }, + "limit": { + "context": 204800, + "output": 131072 + } + }, + { + "id": "merge-gateway/zai/glm-4.7-flashx", + "name": "GLM-4.7-FlashX", + "family": "glm-flash", + "attachment": false, + "reasoning": true, + "tool_call": true, + "temperature": true, + "knowledge": "2025-04", + "release_date": "2026-01-19", + "last_updated": "2026-01-19", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "cost": { + "input": 0.07, + "output": 0.4, + "cache_read": 0.01, + "cache_write": 0.0 + }, + "limit": { + "context": 200000, + "output": 131072 + } + }, + { + "id": "merge-gateway/zai/glm-5", + "name": "GLM-5", + "family": "glm", + "attachment": false, + "reasoning": true, + "tool_call": true, + "temperature": true, + "release_date": "2026-02-11", + "last_updated": "2026-02-11", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "cost": { + "input": 1.0, + "output": 3.2, + "cache_read": 0.2, + "cache_write": 0.0 + }, + "limit": { + "context": 204800, + "output": 131072 + } + }, + { + "id": "merge-gateway/zai/glm-5-turbo", + "name": "GLM-5-Turbo", + "family": "glm", + "attachment": false, + "reasoning": true, + "tool_call": true, + "temperature": true, + "release_date": "2026-03-16", + "last_updated": "2026-03-16", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 1.2, + "output": 4.0, + "cache_read": 0.24, + "cache_write": 0.0 + }, + "limit": { + "context": 200000, + "output": 131072 + } + }, + { + "id": "merge-gateway/zai/glm-5.1", + "name": "GLM-5.1", + "family": "glm", + "attachment": false, + "reasoning": true, + "tool_call": true, + "temperature": true, + "release_date": "2026-03-27", + "last_updated": "2026-03-27", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 1.4, + "output": 4.4, + "cache_read": 0.26, + "cache_write": 0.0 + }, + "limit": { + "context": 200000, + "output": 131072 + } + }, { "id": "meta-llama/cerebras-llama-4-maverick-17b-128e-instruct", "name": "Cerebras-Llama-4-Maverick-17B-128E-Instruct", @@ -64248,15 +67022,15 @@ }, { "id": "mistralai/devstral-medium", - "name": "Devstral 2 (latest)", + "name": "Devstral Medium", "family": "devstral", "attachment": false, "reasoning": false, "tool_call": true, "temperature": true, - "knowledge": "2025-12", - "release_date": "2025-12-02", - "last_updated": "2025-12-02", + "knowledge": "2025-05", + "release_date": "2025-07-10", + "last_updated": "2025-07-10", "modalities": { "input": [ "text" @@ -64271,21 +67045,21 @@ "output": 2.0 }, "limit": { - "context": 262144, - "output": 262144 + "context": 128000, + "output": 128000 } }, { "id": "mistralai/devstral-small", - "name": "Devstral Small", + "name": "Devstral Small 2505", "family": "devstral", "attachment": false, "reasoning": false, "tool_call": true, "temperature": true, "knowledge": "2025-05", - "release_date": "2025-07-10", - "last_updated": "2025-07-10", + "release_date": "2025-05-07", + "last_updated": "2025-05-07", "modalities": { "input": [ "text" @@ -64568,15 +67342,15 @@ }, { "id": "mistralai/mistral-small", - "name": "Mistral Small 3.2", + "name": "Mistral Small (latest)", "family": "mistral-small", - "attachment": false, - "reasoning": false, + "attachment": true, + "reasoning": true, "tool_call": true, "temperature": true, - "knowledge": "2025-03", - "release_date": "2025-06-20", - "last_updated": "2025-06-20", + "knowledge": "2025-06", + "release_date": "2026-03-16", + "last_updated": "2026-03-16", "modalities": { "input": [ "text", @@ -64588,12 +67362,12 @@ }, "open_weights": true, "cost": { - "input": 0.1, - "output": 0.3 + "input": 0.15, + "output": 0.6 }, "limit": { - "context": 128000, - "output": 16384 + "context": 256000, + "output": 256000 } }, { @@ -75942,13 +78716,13 @@ }, { "id": "nano-gpt/moonshotai/kimi-k2-instruct", - "name": "Kimi K2 0711", + "name": "Kimi K2 Instruct", "family": "kimi", "attachment": false, "reasoning": false, "tool_call": true, - "release_date": "2025-07-11", - "last_updated": "2025-07-11", + "release_date": "2025-07-01", + "last_updated": "2025-07-01", "modalities": { "input": [ "text" @@ -75963,7 +78737,7 @@ "output": 2.0 }, "limit": { - "context": 128000, + "context": 256000, "output": 8192 } }, @@ -76574,13 +79348,13 @@ }, { "id": "nano-gpt/openai/gpt-4o", - "name": "GPT-4o (2024-08-06)", + "name": "GPT-4o (2024-11-20)", "family": "gpt", "attachment": true, "reasoning": false, "tool_call": false, - "release_date": "2024-08-06", - "last_updated": "2024-08-06", + "release_date": "2024-11-20", + "last_updated": "2024-11-20", "modalities": { "input": [ "text", @@ -76592,8 +79366,8 @@ }, "open_weights": false, "cost": { - "input": 2.499, - "output": 9.996 + "input": 2.5, + "output": 10.0 }, "limit": { "context": 128000, @@ -76853,18 +79627,16 @@ }, { "id": "nano-gpt/openai/gpt-5.1", - "name": "GPT 5.1", + "name": "GPT-5.1 (2025-11-13)", "family": "gpt", - "attachment": true, - "reasoning": true, - "tool_call": true, + "attachment": false, + "reasoning": false, + "tool_call": false, "release_date": "2025-11-13", "last_updated": "2025-11-13", "modalities": { "input": [ - "text", - "image", - "pdf" + "text" ], "output": [ "text" @@ -76876,8 +79648,8 @@ "output": 10.0 }, "limit": { - "context": 400000, - "output": 128000 + "context": 1000000, + "output": 32768 } }, { @@ -80240,7 +83012,7 @@ "cost": { "input": 0.1, "output": 0.4, - "cache_read": 0.03 + "cache_read": 0.025 }, "limit": { "context": 1047576, @@ -80364,7 +83136,7 @@ "cost": { "input": 1.25, "output": 10.0, - "cache_read": 0.13 + "cache_read": 0.125 }, "limit": { "context": 400000, @@ -80642,7 +83414,7 @@ "cost": { "input": 1.1, "output": 4.4, - "cache_read": 0.28 + "cache_read": 0.275 }, "limit": { "context": 200000, @@ -82978,6 +85750,35 @@ "output": 32768 } }, + { + "id": "novita-ai/inclusionai/ring-2.6-1t", + "name": "Ring-2.6-1T", + "family": "ring", + "attachment": false, + "reasoning": true, + "tool_call": true, + "temperature": true, + "release_date": "2026-05-08", + "last_updated": "2026-05-27", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 0.3, + "output": 2.5, + "cache_read": 0.06 + }, + "limit": { + "context": 262144, + "output": 65536 + } + }, { "id": "novita-ai/kwaipilot/kat-coder-pro", "name": "Kat Coder Pro", @@ -83375,6 +86176,36 @@ "output": 131072 } }, + { + "id": "novita-ai/minimax/minimax-m2.7-highspeed", + "name": "MiniMax-M2.7-highspeed", + "family": "minimax", + "attachment": false, + "reasoning": true, + "tool_call": true, + "temperature": true, + "release_date": "2026-03-18", + "last_updated": "2026-05-27", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "cost": { + "input": 0.6, + "output": 2.4, + "cache_read": 0.06, + "cache_write": 0.375 + }, + "limit": { + "context": 204800, + "output": 131072 + } + }, { "id": "novita-ai/minimaxai/minimax-m1-80k", "name": "MiniMax M1", @@ -84491,6 +87322,36 @@ "output": 64000 } }, + { + "id": "novita-ai/qwen/qwen3.7-max", + "name": "Qwen3.7-Max", + "family": "qwen", + "attachment": false, + "reasoning": true, + "tool_call": true, + "temperature": true, + "release_date": "2026-05-21", + "last_updated": "2026-05-27", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 1.25, + "output": 3.75, + "cache_read": 0.125, + "cache_write": 1.5625 + }, + "limit": { + "context": 1000000, + "output": 65536 + } + }, { "id": "novita-ai/sao10K/L3-8B-stheno-v3.2", "name": "L3 8B Stheno V3.2", @@ -84630,6 +87491,66 @@ "output": 32000 } }, + { + "id": "novita-ai/xiaomimimo/mimo-v2-pro", + "name": "MiMo-V2-Pro", + "family": "mimo", + "attachment": false, + "reasoning": true, + "tool_call": true, + "temperature": true, + "knowledge": "2024-12", + "release_date": "2026-03-18", + "last_updated": "2026-05-27", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 2.0, + "output": 6.0, + "cache_read": 0.4 + }, + "limit": { + "context": 1048576, + "output": 131072 + } + }, + { + "id": "novita-ai/xiaomimimo/mimo-v2.5-pro", + "name": "MiMo-V2.5-Pro", + "family": "mimo", + "attachment": false, + "reasoning": true, + "tool_call": true, + "temperature": true, + "knowledge": "2024-12", + "release_date": "2026-04-22", + "last_updated": "2026-05-27", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "cost": { + "input": 2.0, + "output": 6.0, + "cache_read": 0.4 + }, + "limit": { + "context": 1048576, + "output": 131072 + } + }, { "id": "novita-ai/zai-org/autoglm-phone-9b-multilingual", "name": "AutoGLM-Phone-9B-Multilingual", @@ -86090,14 +89011,14 @@ }, { "id": "nvidia/moonshotai/kimi-k2-instruct", - "name": "Kimi K2 Instruct", + "name": "Kimi K2 0905", "family": "kimi", "attachment": false, - "reasoning": true, + "reasoning": false, "tool_call": true, "temperature": true, - "knowledge": "2024-01", - "release_date": "2025-01-01", + "knowledge": "2024-10", + "release_date": "2025-09-05", "last_updated": "2025-09-05", "modalities": { "input": [ @@ -86107,14 +89028,14 @@ "text" ] }, - "open_weights": false, + "open_weights": true, "cost": { "input": 0.0, "output": 0.0 }, "limit": { - "context": 128000, - "output": 8192 + "context": 262144, + "output": 262144 } }, { @@ -88503,7 +91424,7 @@ "cost": { "input": 0.5, "output": 1.5, - "cache_read": 1.25 + "cache_read": 0.0 }, "limit": { "context": 16385, @@ -88657,7 +91578,7 @@ "cost": { "input": 0.1, "output": 0.4, - "cache_read": 0.03 + "cache_read": 0.025 }, "limit": { "context": 1047576, @@ -88666,15 +91587,15 @@ }, { "id": "openai/gpt-4o", - "name": "GPT-4o (2024-08-06)", + "name": "GPT-4o (2024-05-13)", "family": "gpt", "attachment": true, "reasoning": false, "tool_call": true, "temperature": true, "knowledge": "2023-09", - "release_date": "2024-08-06", - "last_updated": "2024-08-06", + "release_date": "2024-05-13", + "last_updated": "2024-05-13", "modalities": { "input": [ "text", @@ -88686,13 +91607,12 @@ }, "open_weights": false, "cost": { - "input": 2.5, - "output": 10.0, - "cache_read": 1.25 + "input": 5.0, + "output": 15.0 }, "limit": { "context": 128000, - "output": 16384 + "output": 4096 } }, { @@ -88720,7 +91640,7 @@ "cost": { "input": 0.15, "output": 0.6, - "cache_read": 0.08 + "cache_read": 0.075 }, "limit": { "context": 128000, @@ -88781,7 +91701,8 @@ "open_weights": false, "cost": { "input": 1.25, - "output": 10.0 + "output": 10.0, + "cache_read": 0.125 }, "limit": { "context": 400000, @@ -88935,7 +91856,7 @@ "cost": { "input": 1.25, "output": 10.0, - "cache_read": 0.13 + "cache_read": 0.125 }, "limit": { "context": 400000, @@ -89821,7 +92742,7 @@ "cost": { "input": 1.1, "output": 4.4, - "cache_read": 0.28 + "cache_read": 0.275 }, "limit": { "context": 200000, @@ -90217,9 +93138,9 @@ }, "open_weights": true, "cost": { - "input": 0.4, - "output": 2.0, - "cache_read": 0.08 + "input": 0.14, + "output": 0.28, + "cache_read": 0.0028 }, "limit": { "context": 1000000, @@ -90247,9 +93168,9 @@ }, "open_weights": true, "cost": { - "input": 1.0, - "output": 3.0, - "cache_read": 0.2 + "input": 1.74, + "output": 3.48, + "cache_read": 0.0145 }, "limit": { "context": 1048576, @@ -90382,6 +93303,36 @@ "output": 65536 } }, + { + "id": "opencode-go/qwen3.7-max", + "name": "Qwen3.7 Max", + "family": "qwen3.7-max", + "attachment": false, + "reasoning": true, + "tool_call": true, + "temperature": true, + "release_date": "2026-05-21", + "last_updated": "2026-05-21", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 2.5, + "output": 7.5, + "cache_read": 0.5, + "cache_write": 3.125 + }, + "limit": { + "context": 1000000, + "output": 65536 + } + }, { "id": "opencode/big-pickle", "name": "Big Pickle", @@ -90611,6 +93562,38 @@ "output": 128000 } }, + { + "id": "opencode/claude-opus-4.8", + "name": "Claude Opus 4.8", + "family": "claude-opus", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": false, + "release_date": "2026-05-28", + "last_updated": "2026-05-28", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 5.0, + "output": 25.0, + "cache_read": 0.5, + "cache_write": 6.25 + }, + "limit": { + "context": 1000000, + "output": 128000 + } + }, { "id": "opencode/claude-sonnet-4", "name": "Claude Sonnet 4", @@ -91958,6 +94941,39 @@ "output": 64000 } }, + { + "id": "opencode/mimo-v2.5-free", + "name": "MiMo V2.5 Free", + "family": "mimo-v2.5-free", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": true, + "knowledge": "2024-12", + "release_date": "2026-04-24", + "last_updated": "2026-04-24", + "modalities": { + "input": [ + "text", + "image", + "audio", + "video" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "cost": { + "input": 0.0, + "output": 0.0, + "cache_read": 0.0 + }, + "limit": { + "context": 1000000, + "output": 128000 + } + }, { "id": "opencode/minimax-m2.1", "name": "MiniMax M2.1", @@ -93024,6 +96040,70 @@ "output": 128000 } }, + { + "id": "openrouter/anthropic/claude-opus-4.8", + "name": "Claude Opus 4.8", + "family": "claude-opus", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": false, + "release_date": "2026-05-28", + "last_updated": "2026-05-28", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 5.0, + "output": 25.0, + "cache_read": 0.5, + "cache_write": 6.25 + }, + "limit": { + "context": 1000000, + "output": 128000 + } + }, + { + "id": "openrouter/anthropic/claude-opus-4.8-fast", + "name": "Claude Opus 4.8 (Fast)", + "family": "claude-opus", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": false, + "release_date": "2026-05-27", + "last_updated": "2026-05-27", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 10.0, + "output": 50.0, + "cache_read": 1.0, + "cache_write": 12.5 + }, + "limit": { + "context": 1000000, + "output": 128000 + } + }, { "id": "openrouter/anthropic/claude-sonnet-4", "name": "Claude Sonnet 4", @@ -93237,34 +96317,6 @@ "output": 262144 } }, - { - "id": "openrouter/arcee-ai/trinity-large-thinking:free", - "name": "Trinity Large Thinking (free)", - "family": "trinity", - "attachment": false, - "reasoning": true, - "tool_call": true, - "temperature": true, - "release_date": "2026-04-01", - "last_updated": "2026-04-01", - "modalities": { - "input": [ - "text" - ], - "output": [ - "text" - ] - }, - "open_weights": true, - "cost": { - "input": 0.0, - "output": 0.0 - }, - "limit": { - "context": 262144, - "output": 80000 - } - }, { "id": "openrouter/arcee-ai/trinity-mini", "name": "Trinity Mini", @@ -93321,33 +96373,6 @@ "output": 64000 } }, - { - "id": "openrouter/baidu/cobuddy:free", - "name": "CoBuddy (free)", - "attachment": false, - "reasoning": true, - "tool_call": true, - "temperature": false, - "release_date": "2026-05-06", - "last_updated": "2026-05-06", - "modalities": { - "input": [ - "text" - ], - "output": [ - "text" - ] - }, - "open_weights": false, - "cost": { - "input": 0.0, - "output": 0.0 - }, - "limit": { - "context": 131072, - "output": 65536 - } - }, { "id": "openrouter/baidu/ernie-4.5-21b-a3b", "name": "ERNIE 4.5 21B A3B", @@ -93495,34 +96520,6 @@ "output": 16000 } }, - { - "id": "openrouter/baidu/qianfan-ocr-fast", - "name": "Qianfan-OCR-Fast", - "attachment": true, - "reasoning": true, - "tool_call": false, - "temperature": true, - "release_date": "2026-04-20", - "last_updated": "2026-04-20", - "modalities": { - "input": [ - "image", - "text" - ], - "output": [ - "text" - ] - }, - "open_weights": false, - "cost": { - "input": 0.68, - "output": 2.81 - }, - "limit": { - "context": 65536, - "output": 28672 - } - }, { "id": "openrouter/bytedance-seed/seed-1.6", "name": "Seed 1.6", @@ -93937,15 +96934,15 @@ }, { "id": "openrouter/deepseek/deepseek-r1", - "name": "R1 0528", - "family": "deepseek", + "name": "R1", + "family": "deepseek-thinking", "attachment": false, "reasoning": true, "tool_call": true, "temperature": true, - "knowledge": "2025-03-31", - "release_date": "2025-05-28", - "last_updated": "2025-05-28", + "knowledge": "2024-07-31", + "release_date": "2025-01-20", + "last_updated": "2025-01-20", "modalities": { "input": [ "text" @@ -93956,13 +96953,12 @@ }, "open_weights": true, "cost": { - "input": 0.5, - "output": 2.15, - "cache_read": 0.35 + "input": 0.7, + "output": 2.5 }, "limit": { - "context": 163840, - "output": 32768 + "context": 64000, + "output": 16000 } }, { @@ -94112,36 +97108,6 @@ "output": 65536 } }, - { - "id": "openrouter/deepseek/deepseek-v3.2-speciale", - "name": "DeepSeek V3.2 Speciale", - "family": "deepseek", - "attachment": false, - "reasoning": true, - "tool_call": false, - "temperature": true, - "knowledge": "2024-07", - "release_date": "2025-12-01", - "last_updated": "2025-12-01", - "modalities": { - "input": [ - "text" - ], - "output": [ - "text" - ] - }, - "open_weights": true, - "cost": { - "input": 0.287, - "output": 0.431, - "cache_read": 0.058 - }, - "limit": { - "context": 163840, - "output": 163840 - } - }, { "id": "openrouter/deepseek/deepseek-v4-flash", "name": "DeepSeek V4 Flash", @@ -96542,7 +99508,7 @@ }, { "id": "openrouter/mistralai/mistral-large", - "name": "Mistral Large 2.1", + "name": "Mistral Large 3", "family": "mistral-large", "attachment": true, "reasoning": false, @@ -96550,10 +99516,11 @@ "temperature": true, "knowledge": "2024-11", "release_date": "2024-11-01", - "last_updated": "2024-11-04", + "last_updated": "2025-12-02", "modalities": { "input": [ "text", + "image", "pdf" ], "output": [ @@ -96562,13 +99529,13 @@ }, "open_weights": true, "cost": { - "input": 2.0, - "output": 6.0, - "cache_read": 0.2 + "input": 0.5, + "output": 1.5, + "cache_read": 0.05 }, "limit": { - "context": 131072, - "output": 131072 + "context": 262144, + "output": 262144 } }, { @@ -97059,6 +100026,36 @@ "output": 262142 } }, + { + "id": "openrouter/moonshotai/kimi-k2.6:free", + "name": "Kimi K2.6 (free)", + "family": "kimi-k2.6", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": false, + "knowledge": "2025-01", + "release_date": "2026-04-21", + "last_updated": "2026-04-21", + "modalities": { + "input": [ + "text", + "image" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "cost": { + "input": 0.0, + "output": 0.0 + }, + "limit": { + "context": 262144, + "output": 262144 + } + }, { "id": "openrouter/morph/morph-v3-fast", "name": "Morph V3 Fast", @@ -97883,15 +100880,15 @@ }, { "id": "openrouter/openai/gpt-4o", - "name": "GPT-4o (2024-08-06)", + "name": "GPT-4o (2024-05-13)", "family": "gpt", "attachment": true, "reasoning": false, "tool_call": true, "temperature": true, "knowledge": "2023-09", - "release_date": "2024-08-06", - "last_updated": "2024-08-06", + "release_date": "2024-05-13", + "last_updated": "2024-05-13", "modalities": { "input": [ "text", @@ -97904,13 +100901,12 @@ }, "open_weights": false, "cost": { - "input": 2.5, - "output": 10.0, - "cache_read": 1.25 + "input": 5.0, + "output": 15.0 }, "limit": { "context": 128000, - "output": 16384 + "output": 4096 } }, { @@ -98346,11 +101342,11 @@ "cost": { "input": 1.25, "output": 10.0, - "cache_read": 0.125 + "cache_read": 0.13 }, "limit": { "context": 128000, - "output": 16384 + "output": 32000 } }, { @@ -98377,7 +101373,7 @@ "cost": { "input": 1.25, "output": 10.0, - "cache_read": 0.125 + "cache_read": 0.13 }, "limit": { "context": 400000, @@ -98439,11 +101435,11 @@ "cost": { "input": 0.25, "output": 2.0, - "cache_read": 0.03 + "cache_read": 0.025 }, "limit": { "context": 400000, - "output": 128000 + "output": 100000 } }, { @@ -98507,7 +101503,7 @@ }, "limit": { "context": 128000, - "output": 32000 + "output": 16384 } }, { @@ -99739,8 +102735,8 @@ "output": 0.0 }, "limit": { - "context": 131072, - "output": 8192 + "context": 262144, + "output": 32768 } }, { @@ -99766,8 +102762,8 @@ "output": 0.0 }, "limit": { - "context": 131072, - "output": 8192 + "context": 262144, + "output": 32768 } }, { @@ -100008,15 +103004,15 @@ }, { "id": "openrouter/qwen/qwen3-235b-a22b", - "name": "Qwen3 235B A22B", + "name": "Qwen3 235B A22B Instruct 2507", "family": "qwen", "attachment": false, - "reasoning": true, + "reasoning": false, "tool_call": true, "temperature": true, - "knowledge": "2025-03-31", - "release_date": "2025-04-28", - "last_updated": "2025-04-28", + "knowledge": "2025-06-30", + "release_date": "2025-07-21", + "last_updated": "2025-07-21", "modalities": { "input": [ "text" @@ -100027,12 +103023,12 @@ }, "open_weights": true, "cost": { - "input": 0.455, - "output": 1.82 + "input": 0.071, + "output": 0.1 }, "limit": { - "context": 131072, - "output": 8192 + "context": 262144, + "output": 16384 } }, { @@ -100917,8 +103913,7 @@ "open_weights": false, "cost": { "input": 0.065, - "output": 0.26, - "cache_write": 0.08125 + "output": 0.26 }, "limit": { "context": 1000000, @@ -100948,7 +103943,8 @@ "open_weights": false, "cost": { "input": 0.3, - "output": 1.8 + "output": 1.8, + "cache_write": 0.375 }, "limit": { "context": 1000000, @@ -100979,8 +103975,7 @@ "open_weights": false, "cost": { "input": 0.26, - "output": 1.56, - "cache_write": 0.325 + "output": 1.56 }, "limit": { "context": 1000000, @@ -101009,12 +104004,12 @@ }, "open_weights": true, "cost": { - "input": 0.3, + "input": 0.29, "output": 3.2 }, "limit": { - "context": 262144, - "output": 262144 + "context": 262140, + "output": 262140 } }, { @@ -101039,7 +104034,7 @@ }, "open_weights": true, "cost": { - "input": 0.15, + "input": 0.14, "output": 1.0 }, "limit": { @@ -101159,9 +104154,10 @@ }, "open_weights": false, "cost": { - "input": 2.5, - "output": 7.5, - "cache_write": 3.125 + "input": 1.25, + "output": 3.75, + "cache_read": 0.25, + "cache_write": 1.5625 }, "limit": { "context": 1000000, @@ -101456,6 +104452,37 @@ "output": 16384 } }, + { + "id": "openrouter/stepfun/step-3.7-flash", + "name": "Step 3.7 Flash", + "family": "step", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": true, + "release_date": "2026-05-28", + "last_updated": "2026-05-28", + "modalities": { + "input": [ + "text", + "image", + "video" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 0.2, + "output": 1.15, + "cache_read": 0.04 + }, + "limit": { + "context": 256000, + "output": 256000 + } + }, { "id": "openrouter/switchpoint/router", "name": "Switchpoint Router", @@ -101532,9 +104559,9 @@ }, "open_weights": true, "cost": { - "input": 0.066, - "output": 0.26, - "cache_read": 0.029 + "input": 0.063, + "output": 0.21, + "cache_read": 0.021 }, "limit": { "context": 262144, @@ -101981,9 +105008,9 @@ }, "open_weights": true, "cost": { - "input": 0.4, - "output": 2.0, - "cache_read": 0.08 + "input": 0.14, + "output": 0.28, + "cache_read": 0.0028 }, "limit": { "context": 1048576, @@ -102011,13 +105038,13 @@ }, "open_weights": true, "cost": { - "input": 1.0, - "output": 3.0, - "cache_read": 0.2 + "input": 0.435, + "output": 0.87, + "cache_read": 0.0036 }, "limit": { "context": 1048576, - "output": 16384 + "output": 131072 } }, { @@ -102100,13 +105127,13 @@ }, "open_weights": true, "cost": { - "input": 0.13, + "input": 0.125, "output": 0.85, - "cache_read": 0.025 + "cache_read": 0.06 }, "limit": { - "context": 131072, - "output": 98304 + "context": 131070, + "output": 131070 } }, { @@ -103721,7 +106748,7 @@ "cost": { "input": 0.5, "output": 1.5, - "cache_read": 1.25 + "cache_read": 0.0 }, "limit": { "context": 16385, @@ -103875,7 +106902,7 @@ "cost": { "input": 0.1, "output": 0.4, - "cache_read": 0.03 + "cache_read": 0.025 }, "limit": { "context": 1047576, @@ -103884,15 +106911,15 @@ }, { "id": "orcarouter/openai/gpt-4o", - "name": "GPT-4o (2024-08-06)", + "name": "GPT-4o (2024-05-13)", "family": "gpt", "attachment": true, "reasoning": false, "tool_call": true, "temperature": true, "knowledge": "2023-09", - "release_date": "2024-08-06", - "last_updated": "2024-08-06", + "release_date": "2024-05-13", + "last_updated": "2024-05-13", "modalities": { "input": [ "text", @@ -103904,13 +106931,12 @@ }, "open_weights": false, "cost": { - "input": 2.5, - "output": 10.0, - "cache_read": 1.25 + "input": 5.0, + "output": 15.0 }, "limit": { "context": 128000, - "output": 16384 + "output": 4096 } }, { @@ -103938,7 +106964,7 @@ "cost": { "input": 0.15, "output": 0.6, - "cache_read": 0.08 + "cache_read": 0.075 }, "limit": { "context": 128000, @@ -103999,7 +107025,8 @@ "open_weights": false, "cost": { "input": 1.25, - "output": 10.0 + "output": 10.0, + "cache_read": 0.125 }, "limit": { "context": 400000, @@ -104153,7 +107180,7 @@ "cost": { "input": 1.25, "output": 10.0, - "cache_read": 0.13 + "cache_read": 0.125 }, "limit": { "context": 400000, @@ -106362,6 +109389,36 @@ "output": 128000 } }, + { + "id": "poe/anthropic/claude-opus-4.8", + "name": "Claude-Opus-4.8", + "family": "claude-opus", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": false, + "release_date": "2026-05-28", + "last_updated": "2026-05-28", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 4.2929, + "output": 21.4646 + }, + "limit": { + "context": 1048576, + "output": 128000 + } + }, { "id": "poe/anthropic/claude-sonnet-3.5", "name": "Claude-Sonnet-3.5", @@ -108100,14 +111157,14 @@ }, { "id": "poe/openai/gpt-4-classic", - "name": "GPT-4-Classic", + "name": "GPT-4-Classic-0314", "family": "gpt", "attachment": true, "reasoning": false, "tool_call": true, "temperature": false, - "release_date": "2024-03-25", - "last_updated": "2024-03-25", + "release_date": "2024-08-26", + "last_updated": "2024-08-26", "modalities": { "input": [ "text", @@ -110659,7 +113716,7 @@ }, { "id": "qiniu-ai/deepseek-r1", - "name": "DeepSeek-R1-0528", + "name": "DeepSeek-R1", "attachment": false, "reasoning": true, "tool_call": true, @@ -112334,13 +115391,13 @@ }, { "id": "qiniu-ai/x-ai/grok-4-fast", - "name": "X-Ai/Grok-4-Fast-Reasoning", + "name": "x-AI/Grok-4-Fast", "attachment": true, "reasoning": true, "tool_call": true, "temperature": true, - "release_date": "2025-12-18", - "last_updated": "2025-12-18", + "release_date": "2025-09-20", + "last_updated": "2025-09-20", "modalities": { "input": [ "text", @@ -114379,7 +117436,7 @@ }, "limit": { "context": 202752, - "output": 202752 + "output": 65536 } }, { @@ -114409,7 +117466,7 @@ }, "limit": { "context": 202752, - "output": 202752 + "output": 65536 } }, { @@ -114508,6 +117565,38 @@ "output": 262144 } }, + { + "id": "routing-run/route/mimo-v2.5", + "name": "MiMo V2.5", + "family": "mimo", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": true, + "knowledge": "2024-12", + "release_date": "2026-04-22", + "last_updated": "2026-04-22", + "modalities": { + "input": [ + "text", + "image", + "video" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "cost": { + "input": 0.45, + "output": 1.35, + "cache_read": 0.2 + }, + "limit": { + "context": 1000000, + "output": 262144 + } + }, { "id": "routing-run/route/mimo-v2.5-pro", "name": "MiMo V2.5 Pro", @@ -114787,7 +117876,7 @@ "id": "routing-run/route/qwen3.6-27b", "name": "Qwen3.6 27B", "family": "qwen", - "attachment": true, + "attachment": false, "reasoning": false, "tool_call": true, "temperature": true, @@ -114795,9 +117884,7 @@ "last_updated": "2026-04-22", "modalities": { "input": [ - "text", - "image", - "video" + "text" ], "output": [ "text" @@ -114809,20 +117896,20 @@ "output": 3.3 }, "limit": { - "context": 262144, - "output": 262144 + "context": 202000, + "output": 32768 } }, { - "id": "routing-run/route/step-3.5-flash", - "name": "Step 3.5 Flash", + "id": "routing-run/route/qwen3.6-27b-202k", + "name": "Qwen3.6 27B 202K", + "family": "qwen", "attachment": false, - "reasoning": true, + "reasoning": false, "tool_call": true, "temperature": true, - "knowledge": "2025-01", - "release_date": "2026-01-29", - "last_updated": "2026-02-13", + "release_date": "2026-04-22", + "last_updated": "2026-04-22", "modalities": { "input": [ "text" @@ -114833,9 +117920,37 @@ }, "open_weights": true, "cost": { - "input": 0.096, - "output": 0.288, - "cache_read": 0.019 + "input": 1.1, + "output": 3.3 + }, + "limit": { + "context": 202000, + "output": 32768 + } + }, + { + "id": "routing-run/route/step-3.5-flash", + "name": "Step 3.5 Flash 2603", + "attachment": false, + "reasoning": true, + "tool_call": true, + "temperature": true, + "knowledge": "2025-01", + "release_date": "2026-04-02", + "last_updated": "2026-04-02", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "cost": { + "input": 0.1, + "output": 0.3, + "cache_read": 0.02 }, "limit": { "context": 262144, @@ -118140,6 +121255,35 @@ "output": 164000 } }, + { + "id": "siliconflow-cn/deepseek-ai/DeepSeek-V4-Pro", + "name": "deepseek-ai/DeepSeek-V4-Pro", + "family": "deepseek-thinking", + "attachment": false, + "reasoning": true, + "tool_call": true, + "temperature": true, + "release_date": "2026-04-24", + "last_updated": "2026-04-24", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "cost": { + "input": 1.74, + "output": 3.48, + "cache_read": 0.145 + }, + "limit": { + "context": 1049000, + "output": 393000 + } + }, { "id": "siliconflow-cn/deepseek-ai/deepseek-vl2", "name": "deepseek-ai/deepseek-vl2", @@ -120097,13 +123241,13 @@ }, { "id": "siliconflow/moonshotai/Kimi-K2-Instruct", - "name": "moonshotai/Kimi-K2-Instruct-0905", + "name": "moonshotai/Kimi-K2-Instruct", "family": "kimi", "attachment": false, "reasoning": false, "tool_call": true, "temperature": true, - "release_date": "2025-09-08", + "release_date": "2025-07-13", "last_updated": "2025-11-25", "modalities": { "input": [ @@ -120115,12 +123259,12 @@ }, "open_weights": false, "cost": { - "input": 0.4, - "output": 2.0 + "input": 0.58, + "output": 2.29 }, "limit": { - "context": 262000, - "output": 262000 + "context": 131000, + "output": 131000 } }, { @@ -120864,14 +124008,14 @@ }, { "id": "stepfun-ai/step-3.5-flash", - "name": "Step 3.5 Flash 2603", + "name": "Step 3.5 Flash", "attachment": false, "reasoning": true, "tool_call": true, "temperature": true, "knowledge": "2025-01", - "release_date": "2026-04-02", - "last_updated": "2026-04-02", + "release_date": "2026-01-29", + "last_updated": "2026-02-13", "modalities": { "input": [ "text" @@ -120882,9 +124026,9 @@ }, "open_weights": true, "cost": { - "input": 0.1, - "output": 0.3, - "cache_read": 0.02 + "input": 0.096, + "output": 0.288, + "cache_read": 0.019 }, "limit": { "context": 256000, @@ -120951,14 +124095,14 @@ }, { "id": "stepfun/step-3.5-flash", - "name": "Step 3.5 Flash", + "name": "Step 3.5 Flash 2603", "attachment": false, "reasoning": true, "tool_call": true, "temperature": true, "knowledge": "2025-01", - "release_date": "2026-01-29", - "last_updated": "2026-02-13", + "release_date": "2026-04-02", + "last_updated": "2026-04-02", "modalities": { "input": [ "text" @@ -120969,9 +124113,9 @@ }, "open_weights": true, "cost": { - "input": 0.096, - "output": 0.288, - "cache_read": 0.019 + "input": 0.1, + "output": 0.3, + "cache_read": 0.02 }, "limit": { "context": 256000, @@ -123723,6 +126867,68 @@ "output": 128000 } }, + { + "id": "venice/claude-opus-4.8", + "name": "Claude Opus 4.8", + "family": "claude-opus", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": true, + "release_date": "2026-05-28", + "last_updated": "2026-05-28", + "modalities": { + "input": [ + "text", + "image" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 6.0, + "output": 30.0, + "cache_read": 0.6, + "cache_write": 7.5 + }, + "limit": { + "context": 1000000, + "output": 128000 + } + }, + { + "id": "venice/claude-opus-4.8-fast", + "name": "Claude Opus 4.8 Fast", + "family": "claude-opus", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": true, + "release_date": "2026-05-28", + "last_updated": "2026-05-28", + "modalities": { + "input": [ + "text", + "image" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 12.0, + "output": 60.0, + "cache_read": 1.2, + "cache_write": 15.0 + }, + "limit": { + "context": 1000000, + "output": 128000 + } + }, { "id": "venice/claude-sonnet-4.5", "name": "Claude Sonnet 4.5", @@ -126791,6 +129997,38 @@ "output": 128000 } }, + { + "id": "vercel/anthropic/claude-opus-4.8", + "name": "Claude Opus 4.8", + "family": "claude-opus", + "attachment": true, + "reasoning": true, + "tool_call": true, + "temperature": true, + "release_date": "2026-05-28", + "last_updated": "2026-05-28", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "cost": { + "input": 5.0, + "output": 25.0, + "cache_read": 0.5, + "cache_write": 6.25 + }, + "limit": { + "context": 1000000, + "output": 128000 + } + }, { "id": "vercel/anthropic/claude-sonnet-4", "name": "Claude Sonnet 4", @@ -128470,14 +131708,15 @@ }, { "id": "vercel/meituan/longcat-flash-thinking", - "name": "LongCat Flash Thinking 2601", + "name": "LongCat Flash Thinking", "family": "longcat", "attachment": false, "reasoning": true, - "tool_call": false, + "tool_call": true, "temperature": true, - "release_date": "2026-03-13", - "last_updated": "2026-03-13", + "knowledge": "2024-10", + "release_date": "2025-09-23", + "last_updated": "2025-09-23", "modalities": { "input": [ "text" @@ -128487,10 +131726,13 @@ ] }, "open_weights": false, - "cost": {}, + "cost": { + "input": 0.15, + "output": 1.5 + }, "limit": { - "context": 32768, - "output": 32768 + "context": 128000, + "output": 8192 } }, { @@ -130083,7 +133325,7 @@ "cost": { "input": 0.1, "output": 0.4, - "cache_read": 0.03 + "cache_read": 0.025 }, "limit": { "context": 1047576, @@ -130147,7 +133389,7 @@ "cost": { "input": 0.15, "output": 0.6, - "cache_read": 0.08 + "cache_read": 0.075 }, "limit": { "context": 128000, @@ -131176,7 +134418,7 @@ "cost": { "input": 1.1, "output": 4.4, - "cache_read": 0.28 + "cache_read": 0.275 }, "limit": { "context": 200000, @@ -131269,19 +134511,18 @@ }, { "id": "vercel/perplexity/sonar", - "name": "Sonar", - "family": "sonar", - "attachment": true, - "reasoning": false, - "tool_call": true, + "name": "Sonar Reasoning", + "family": "sonar-reasoning", + "attachment": false, + "reasoning": true, + "tool_call": false, "temperature": true, - "knowledge": "2025-02", + "knowledge": "2025-09", "release_date": "2025-02-19", "last_updated": "2025-02-19", "modalities": { "input": [ - "text", - "image" + "text" ], "output": [ "text" @@ -131290,7 +134531,7 @@ "open_weights": false, "cost": { "input": 1.0, - "output": 1.0 + "output": 5.0 }, "limit": { "context": 127000, @@ -134147,36 +137388,6 @@ "output": 0 } }, - { - "id": "xiaomi-token-plan-ams/mimo-v2-flash", - "name": "MiMo-V2-Flash", - "family": "mimo", - "attachment": false, - "reasoning": true, - "tool_call": true, - "temperature": true, - "knowledge": "2024-12-01", - "release_date": "2025-12-16", - "last_updated": "2026-02-04", - "modalities": { - "input": [ - "text" - ], - "output": [ - "text" - ] - }, - "open_weights": true, - "cost": { - "input": 0.0, - "output": 0.0, - "cache_read": 0.0 - }, - "limit": { - "context": 262144, - "output": 65536 - } - }, { "id": "xiaomi-token-plan-ams/mimo-v2-omni", "name": "MiMo-V2-Omni", @@ -134265,7 +137476,7 @@ }, "limit": { "context": 8192, - "output": 16384 + "output": 8192 } }, { @@ -134332,33 +137543,84 @@ } }, { - "id": "xiaomi-token-plan-cn/mimo-v2-flash", - "name": "MiMo-V2-Flash", + "id": "xiaomi-token-plan-ams/mimo-v2.5-tts", + "name": "MiMo-V2.5-TTS", "family": "mimo", "attachment": false, - "reasoning": true, - "tool_call": true, - "temperature": true, - "knowledge": "2024-12-01", - "release_date": "2025-12-16", - "last_updated": "2026-02-04", + "reasoning": false, + "tool_call": false, + "release_date": "2026-04-22", + "last_updated": "2026-04-22", "modalities": { "input": [ "text" ], "output": [ - "text" + "audio" ] }, "open_weights": true, "cost": { "input": 0.0, - "output": 0.0, - "cache_read": 0.0 + "output": 0.0 }, "limit": { - "context": 262144, - "output": 65536 + "context": 8192, + "output": 8192 + } + }, + { + "id": "xiaomi-token-plan-ams/mimo-v2.5-tts-voiceclone", + "name": "MiMo-V2.5-TTS-VoiceClone", + "family": "mimo", + "attachment": false, + "reasoning": false, + "tool_call": false, + "release_date": "2026-04-22", + "last_updated": "2026-04-22", + "modalities": { + "input": [ + "text" + ], + "output": [ + "audio" + ] + }, + "open_weights": true, + "cost": { + "input": 0.0, + "output": 0.0 + }, + "limit": { + "context": 8192, + "output": 8192 + } + }, + { + "id": "xiaomi-token-plan-ams/mimo-v2.5-tts-voicedesign", + "name": "MiMo-V2.5-TTS-VoiceDesign", + "family": "mimo", + "attachment": false, + "reasoning": false, + "tool_call": false, + "release_date": "2026-04-22", + "last_updated": "2026-04-22", + "modalities": { + "input": [ + "text" + ], + "output": [ + "audio" + ] + }, + "open_weights": true, + "cost": { + "input": 0.0, + "output": 0.0 + }, + "limit": { + "context": 8192, + "output": 8192 } }, { @@ -134449,7 +137711,7 @@ }, "limit": { "context": 8192, - "output": 16384 + "output": 8192 } }, { @@ -134516,33 +137778,84 @@ } }, { - "id": "xiaomi-token-plan-sgp/mimo-v2-flash", - "name": "MiMo-V2-Flash", + "id": "xiaomi-token-plan-cn/mimo-v2.5-tts", + "name": "MiMo-V2.5-TTS", "family": "mimo", "attachment": false, - "reasoning": true, - "tool_call": true, - "temperature": true, - "knowledge": "2024-12-01", - "release_date": "2025-12-16", - "last_updated": "2026-02-04", + "reasoning": false, + "tool_call": false, + "release_date": "2026-04-22", + "last_updated": "2026-04-22", "modalities": { "input": [ "text" ], "output": [ - "text" + "audio" ] }, "open_weights": true, "cost": { "input": 0.0, - "output": 0.0, - "cache_read": 0.0 + "output": 0.0 }, "limit": { - "context": 262144, - "output": 65536 + "context": 8192, + "output": 8192 + } + }, + { + "id": "xiaomi-token-plan-cn/mimo-v2.5-tts-voiceclone", + "name": "MiMo-V2.5-TTS-VoiceClone", + "family": "mimo", + "attachment": false, + "reasoning": false, + "tool_call": false, + "release_date": "2026-04-22", + "last_updated": "2026-04-22", + "modalities": { + "input": [ + "text" + ], + "output": [ + "audio" + ] + }, + "open_weights": true, + "cost": { + "input": 0.0, + "output": 0.0 + }, + "limit": { + "context": 8192, + "output": 8192 + } + }, + { + "id": "xiaomi-token-plan-cn/mimo-v2.5-tts-voicedesign", + "name": "MiMo-V2.5-TTS-VoiceDesign", + "family": "mimo", + "attachment": false, + "reasoning": false, + "tool_call": false, + "release_date": "2026-04-22", + "last_updated": "2026-04-22", + "modalities": { + "input": [ + "text" + ], + "output": [ + "audio" + ] + }, + "open_weights": true, + "cost": { + "input": 0.0, + "output": 0.0 + }, + "limit": { + "context": 8192, + "output": 8192 } }, { @@ -134633,7 +137946,7 @@ }, "limit": { "context": 8192, - "output": 16384 + "output": 8192 } }, { @@ -134699,6 +138012,87 @@ "output": 131072 } }, + { + "id": "xiaomi-token-plan-sgp/mimo-v2.5-tts", + "name": "MiMo-V2.5-TTS", + "family": "mimo", + "attachment": false, + "reasoning": false, + "tool_call": false, + "release_date": "2026-04-22", + "last_updated": "2026-04-22", + "modalities": { + "input": [ + "text" + ], + "output": [ + "audio" + ] + }, + "open_weights": true, + "cost": { + "input": 0.0, + "output": 0.0 + }, + "limit": { + "context": 8192, + "output": 8192 + } + }, + { + "id": "xiaomi-token-plan-sgp/mimo-v2.5-tts-voiceclone", + "name": "MiMo-V2.5-TTS-VoiceClone", + "family": "mimo", + "attachment": false, + "reasoning": false, + "tool_call": false, + "release_date": "2026-04-22", + "last_updated": "2026-04-22", + "modalities": { + "input": [ + "text" + ], + "output": [ + "audio" + ] + }, + "open_weights": true, + "cost": { + "input": 0.0, + "output": 0.0 + }, + "limit": { + "context": 8192, + "output": 8192 + } + }, + { + "id": "xiaomi-token-plan-sgp/mimo-v2.5-tts-voicedesign", + "name": "MiMo-V2.5-TTS-VoiceDesign", + "family": "mimo", + "attachment": false, + "reasoning": false, + "tool_call": false, + "release_date": "2026-04-22", + "last_updated": "2026-04-22", + "modalities": { + "input": [ + "text" + ], + "output": [ + "audio" + ] + }, + "open_weights": true, + "cost": { + "input": 0.0, + "output": 0.0 + }, + "limit": { + "context": 8192, + "output": 8192 + } + }, { "id": "xiaomi/mimo-v2-flash", "name": "MiMo-V2-Flash", diff --git a/crates/goose/src/providers/canonical/data/provider_metadata.json b/crates/goose/src/providers/canonical/data/provider_metadata.json index d16fc1bf04..ae9968c8ad 100644 --- a/crates/goose/src/providers/canonical/data/provider_metadata.json +++ b/crates/goose/src/providers/canonical/data/provider_metadata.json @@ -1,113 +1,14 @@ [ { - "id": "helicone", - "display_name": "Helicone", + "id": "upstage", + "display_name": "Upstage", "npm": "@ai-sdk/openai-compatible", - "api": "https://ai-gateway.helicone.ai/v1", - "doc": "https://helicone.ai/models", + "api": "https://api.upstage.ai/v1/solar", + "doc": "https://developers.upstage.ai/docs/apis/chat", "env": [ - "HELICONE_API_KEY" + "UPSTAGE_API_KEY" ], - "model_count": 90 - }, - { - "id": "auriko", - "display_name": "Auriko", - "npm": "@ai-sdk/openai-compatible", - "api": "https://api.auriko.ai/v1", - "doc": "https://docs.auriko.ai", - "env": [ - "AURIKO_API_KEY" - ], - "model_count": 15 - }, - { - "id": "firepass", - "display_name": "Fireworks (Firepass)", - "npm": "@ai-sdk/openai-compatible", - "api": "https://api.fireworks.ai/inference/v1/", - "doc": "https://docs.fireworks.ai/firepass", - "env": [ - "FIREPASS_API_KEY" - ], - "model_count": 1 - }, - { - "id": "nano-gpt", - "display_name": "NanoGPT", - "npm": "@ai-sdk/openai-compatible", - "api": "https://nano-gpt.com/api/v1", - "doc": "https://docs.nano-gpt.com", - "env": [ - "NANO_GPT_API_KEY" - ], - "model_count": 525 - }, - { - "id": "io-net", - "display_name": "IO.NET", - "npm": "@ai-sdk/openai-compatible", - "api": "https://api.intelligence.io.solutions/api/v1", - "doc": "https://io.net/docs/guides/intelligence/io-intelligence", - "env": [ - "IOINTELLIGENCE_API_KEY" - ], - "model_count": 17 - }, - { - "id": "inception", - "display_name": "Inception", - "npm": "@ai-sdk/openai-compatible", - "api": "https://api.inceptionlabs.ai/v1/", - "doc": "https://platform.inceptionlabs.ai/docs", - "env": [ - "INCEPTION_API_KEY" - ], - "model_count": 2 - }, - { - "id": "submodel", - "display_name": "submodel", - "npm": "@ai-sdk/openai-compatible", - "api": "https://llm.submodel.ai/v1", - "doc": "https://submodel.gitbook.io", - "env": [ - "SUBMODEL_INSTAGEN_ACCESS_KEY" - ], - "model_count": 9 - }, - { - "id": "requesty", - "display_name": "Requesty", - "npm": "@ai-sdk/openai-compatible", - "api": "https://router.requesty.ai/v1", - "doc": "https://requesty.ai/solution/llm-routing/models", - "env": [ - "REQUESTY_API_KEY" - ], - "model_count": 38 - }, - { - "id": "zai", - "display_name": "Z.AI", - "npm": "@ai-sdk/openai-compatible", - "api": "https://api.z.ai/api/paas/v4", - "doc": "https://docs.z.ai/guides/overview/pricing", - "env": [ - "ZHIPU_API_KEY" - ], - "model_count": 13 - }, - { - "id": "zai-coding-plan", - "display_name": "Z.AI Coding Plan", - "npm": "@ai-sdk/openai-compatible", - "api": "https://api.z.ai/api/coding/paas/v4", - "doc": "https://docs.z.ai/devpack/overview", - "env": [ - "ZHIPU_API_KEY" - ], - "model_count": 5 + "model_count": 3 }, { "id": "clarifai", @@ -121,81 +22,15 @@ "model_count": 12 }, { - "id": "moark", - "display_name": "Moark", + "id": "ollama-cloud", + "display_name": "Ollama Cloud", "npm": "@ai-sdk/openai-compatible", - "api": "https://moark.com/v1", - "doc": "https://moark.com/docs/openapi/v1#tag/%E6%96%87%E6%9C%AC%E7%94%9F%E6%88%90", + "api": "https://ollama.com/v1", + "doc": "https://docs.ollama.com/cloud", "env": [ - "MOARK_API_KEY" + "OLLAMA_API_KEY" ], - "model_count": 2 - }, - { - "id": "frogbot", - "display_name": "FrogBot", - "npm": "@ai-sdk/openai-compatible", - "api": "https://app.frogbot.ai/api/v1", - "doc": "https://docs.frogbot.ai", - "env": [ - "FROGBOT_API_KEY" - ], - "model_count": 26 - }, - { - "id": "wandb", - "display_name": "Weights & Biases", - "npm": "@ai-sdk/openai-compatible", - "api": "https://api.inference.wandb.ai/v1", - "doc": "https://docs.wandb.ai/guides/integrations/inference/", - "env": [ - "WANDB_API_KEY" - ], - "model_count": 18 - }, - { - "id": "gmicloud", - "display_name": "GMI Cloud", - "npm": "@ai-sdk/openai-compatible", - "api": "https://api.gmi-serving.com/v1", - "doc": "https://docs.gmicloud.ai/inference-engine/api-reference/llm-api-reference", - "env": [ - "GMICLOUD_API_KEY" - ], - "model_count": 8 - }, - { - "id": "crof", - "display_name": "CrofAI", - "npm": "@ai-sdk/openai-compatible", - "api": "https://crof.ai/v1", - "doc": "https://crof.ai/docs", - "env": [ - "CROF_API_KEY" - ], - "model_count": 21 - }, - { - "id": "ambient", - "display_name": "Ambient", - "npm": "@ai-sdk/openai-compatible", - "api": "https://api.ambient.xyz/v1", - "doc": "https://ambient.xyz", - "env": [ - "AMBIENT_API_KEY" - ], - "model_count": 2 - }, - { - "id": "routing-run", - "display_name": "routing.run", - "npm": "@ai-sdk/openai-compatible", - "api": "https://api.routing.run/v1", - "doc": "https://docs.routing.run/api-reference/models", - "env": [ - "ROUTING_RUN_API_KEY" - ], - "model_count": 24 + "model_count": 39 }, { "id": "the-grid-ai", @@ -209,70 +44,92 @@ "model_count": 9 }, { - "id": "fastrouter", - "display_name": "FastRouter", + "id": "fireworks-ai", + "display_name": "Fireworks AI", "npm": "@ai-sdk/openai-compatible", - "api": "https://go.fastrouter.ai/api/v1", - "doc": "https://fastrouter.ai/models", + "api": "https://api.fireworks.ai/inference/v1/", + "doc": "https://fireworks.ai/docs/", "env": [ - "FASTROUTER_API_KEY" + "FIREWORKS_API_KEY" ], - "model_count": 15 + "model_count": 12 }, { - "id": "tencent-coding-plan", - "display_name": "Tencent Coding Plan (China)", + "id": "ambient", + "display_name": "Ambient", "npm": "@ai-sdk/openai-compatible", - "api": "https://api.lkeap.cloud.tencent.com/coding/v3", - "doc": "https://cloud.tencent.com/document/product/1772/128947", + "api": "https://api.ambient.xyz/v1", + "doc": "https://ambient.xyz", "env": [ - "TENCENT_CODING_PLAN_API_KEY" + "AMBIENT_API_KEY" + ], + "model_count": 2 + }, + { + "id": "stackit", + "display_name": "STACKIT", + "npm": "@ai-sdk/openai-compatible", + "api": "https://api.openai-compat.model-serving.eu01.onstackit.cloud/v1", + "doc": "https://docs.stackit.cloud/products/data-and-ai/ai-model-serving/basics/available-shared-models", + "env": [ + "STACKIT_API_KEY" ], "model_count": 8 }, { - "id": "cortecs", - "display_name": "Cortecs", + "id": "ovhcloud", + "display_name": "OVHcloud AI Endpoints", "npm": "@ai-sdk/openai-compatible", - "api": "https://api.cortecs.ai/v1", - "doc": "https://api.cortecs.ai/v1/models", + "api": "https://oai.endpoints.kepler.ai.cloud.ovh.net/v1", + "doc": "https://www.ovhcloud.com/en/public-cloud/ai-endpoints/catalog//", "env": [ - "CORTECS_API_KEY" + "OVHCLOUD_API_KEY" ], - "model_count": 49 + "model_count": 11 }, { - "id": "baseten", - "display_name": "Baseten", + "id": "iflowcn", + "display_name": "iFlow", "npm": "@ai-sdk/openai-compatible", - "api": "https://inference.baseten.co/v1", - "doc": "https://docs.baseten.co/development/model-apis/overview", + "api": "https://apis.iflow.cn/v1", + "doc": "https://platform.iflow.cn/en/docs", "env": [ - "BASETEN_API_KEY" + "IFLOW_API_KEY" ], "model_count": 14 }, { - "id": "meta-llama", - "display_name": "Llama", + "id": "302ai", + "display_name": "302.AI", "npm": "@ai-sdk/openai-compatible", - "api": "https://api.llama.com/compat/v1/", - "doc": "https://llama.developer.meta.com/docs/models", + "api": "https://api.302.ai/v1", + "doc": "https://doc.302.ai", "env": [ - "LLAMA_API_KEY" + "302AI_API_KEY" ], - "model_count": 7 + "model_count": 97 }, { - "id": "novita-ai", - "display_name": "NovitaAI", + "id": "nano-gpt", + "display_name": "NanoGPT", "npm": "@ai-sdk/openai-compatible", - "api": "https://api.novita.ai/openai", - "doc": "https://novita.ai/docs/guides/introduction", + "api": "https://nano-gpt.com/api/v1", + "doc": "https://docs.nano-gpt.com", "env": [ - "NOVITA_API_KEY" + "NANO_GPT_API_KEY" ], - "model_count": 99 + "model_count": 525 + }, + { + "id": "alibaba-cn", + "display_name": "Alibaba (China)", + "npm": "@ai-sdk/openai-compatible", + "api": "https://dashscope.aliyuncs.com/compatible-mode/v1", + "doc": "https://www.alibabacloud.com/help/en/model-studio/models", + "env": [ + "DASHSCOPE_API_KEY" + ], + "model_count": 82 }, { "id": "digitalocean", @@ -286,15 +143,59 @@ "model_count": 76 }, { - "id": "moonshotai", - "display_name": "Moonshot AI", + "id": "submodel", + "display_name": "submodel", "npm": "@ai-sdk/openai-compatible", - "api": "https://api.moonshot.ai/v1", - "doc": "https://platform.moonshot.ai/docs/api/chat", + "api": "https://llm.submodel.ai/v1", + "doc": "https://submodel.gitbook.io", "env": [ - "MOONSHOT_API_KEY" + "SUBMODEL_INSTAGEN_ACCESS_KEY" ], - "model_count": 7 + "model_count": 9 + }, + { + "id": "bailing", + "display_name": "Bailing", + "npm": "@ai-sdk/openai-compatible", + "api": "https://api.tbox.cn/api/llm/v1/chat/completions", + "doc": "https://alipaytbox.yuque.com/sxs0ba/ling/intro", + "env": [ + "BAILING_API_TOKEN" + ], + "model_count": 2 + }, + { + "id": "kimi-for-coding", + "display_name": "Kimi For Coding", + "npm": "@ai-sdk/anthropic", + "api": "https://api.kimi.com/coding/v1", + "doc": "https://www.kimi.com/coding/docs/en/third-party-agents.html", + "env": [ + "KIMI_API_KEY" + ], + "model_count": 3 + }, + { + "id": "dinference", + "display_name": "DInference", + "npm": "@ai-sdk/openai-compatible", + "api": "https://api.dinference.com/v1", + "doc": "https://dinference.com", + "env": [ + "DINFERENCE_API_KEY" + ], + "model_count": 5 + }, + { + "id": "novita-ai", + "display_name": "NovitaAI", + "npm": "@ai-sdk/openai-compatible", + "api": "https://api.novita.ai/openai", + "doc": "https://novita.ai/docs/guides/introduction", + "env": [ + "NOVITA_API_KEY" + ], + "model_count": 104 }, { "id": "kilo", @@ -305,86 +206,51 @@ "env": [ "KILO_API_KEY" ], - "model_count": 344 + "model_count": 345 }, { - "id": "cloudflare-workers-ai", - "display_name": "Cloudflare Workers AI", + "id": "regolo-ai", + "display_name": "Regolo AI", "npm": "@ai-sdk/openai-compatible", - "api": "https://api.cloudflare.com/client/v4/accounts/${CLOUDFLARE_ACCOUNT_ID}/ai/v1", - "doc": "https://developers.cloudflare.com/workers-ai/models/", + "api": "https://api.regolo.ai/v1", + "doc": "https://docs.regolo.ai/", "env": [ - "CLOUDFLARE_ACCOUNT_ID", - "CLOUDFLARE_API_KEY" + "REGOLO_API_KEY" ], - "model_count": 27 + "model_count": 13 }, { - "id": "lmstudio", - "display_name": "LMStudio", + "id": "deepseek", + "display_name": "DeepSeek", "npm": "@ai-sdk/openai-compatible", - "api": "http://127.0.0.1:1234/v1", - "doc": "https://lmstudio.ai/models", + "api": "https://api.deepseek.com", + "doc": "https://api-docs.deepseek.com/quick_start/pricing", "env": [ - "LMSTUDIO_API_KEY" + "DEEPSEEK_API_KEY" ], - "model_count": 3 + "model_count": 4 }, { - "id": "xiaomi-token-plan-cn", - "display_name": "Xiaomi Token Plan (China)", + "id": "orcarouter", + "display_name": "OrcaRouter", "npm": "@ai-sdk/openai-compatible", - "api": "https://token-plan-cn.xiaomimimo.com/v1", - "doc": "https://platform.xiaomimimo.com/#/docs", + "api": "https://api.orcarouter.ai/v1", + "doc": "https://docs.orcarouter.ai", "env": [ - "XIAOMI_API_KEY" + "ORCAROUTER_API_KEY" ], - "model_count": 6 + "model_count": 81 }, { - "id": "morph", - "display_name": "Morph", + "id": "moonshotai-cn", + "display_name": "Moonshot AI (China)", "npm": "@ai-sdk/openai-compatible", - "api": "https://api.morphllm.com/v1", - "doc": "https://docs.morphllm.com/api-reference/introduction", + "api": "https://api.moonshot.cn/v1", + "doc": "https://platform.moonshot.cn/docs/api/chat", "env": [ - "MORPH_API_KEY" + "MOONSHOT_API_KEY" ], - "model_count": 3 - }, - { - "id": "nearai", - "display_name": "NEAR AI Cloud", - "npm": "@ai-sdk/openai-compatible", - "api": "https://cloud-api.near.ai/v1", - "doc": "https://docs.near.ai/", - "env": [ - "NEARAI_API_KEY" - ], - "model_count": 37 - }, - { - "id": "abacus", - "display_name": "Abacus", - "npm": "@ai-sdk/openai-compatible", - "api": "https://routellm.abacus.ai/v1", - "doc": "https://abacus.ai/help/api", - "env": [ - "ABACUS_API_KEY" - ], - "model_count": 65 - }, - { - "id": "privatemode-ai", - "display_name": "Privatemode AI", - "npm": "@ai-sdk/openai-compatible", - "api": "http://localhost:8080/v1", - "doc": "https://docs.privatemode.ai/api/overview", - "env": [ - "PRIVATEMODE_API_KEY", - "PRIVATEMODE_ENDPOINT" - ], - "model_count": 5 + "model_count": 7 }, { "id": "minimax-cn-coding-plan", @@ -398,36 +264,80 @@ "model_count": 6 }, { - "id": "xiaomi-token-plan-ams", - "display_name": "Xiaomi Token Plan (Europe)", + "id": "inception", + "display_name": "Inception", "npm": "@ai-sdk/openai-compatible", - "api": "https://token-plan-ams.xiaomimimo.com/v1", + "api": "https://api.inceptionlabs.ai/v1/", + "doc": "https://platform.inceptionlabs.ai/docs", + "env": [ + "INCEPTION_API_KEY" + ], + "model_count": 2 + }, + { + "id": "kuae-cloud-coding-plan", + "display_name": "KUAE Cloud Coding Plan", + "npm": "@ai-sdk/openai-compatible", + "api": "https://coding-plan-endpoint.kuaecloud.net/v1", + "doc": "https://docs.mthreads.com/kuaecloud/kuaecloud-doc-online/coding_plan/", + "env": [ + "KUAE_API_KEY" + ], + "model_count": 1 + }, + { + "id": "chutes", + "display_name": "Chutes", + "npm": "@ai-sdk/openai-compatible", + "api": "https://llm.chutes.ai/v1", + "doc": "https://llm.chutes.ai/v1/models", + "env": [ + "CHUTES_API_KEY" + ], + "model_count": 39 + }, + { + "id": "crof", + "display_name": "CrofAI", + "npm": "@ai-sdk/openai-compatible", + "api": "https://crof.ai/v1", + "doc": "https://crof.ai/docs", + "env": [ + "CROF_API_KEY" + ], + "model_count": 21 + }, + { + "id": "frogbot", + "display_name": "FrogBot", + "npm": "@ai-sdk/openai-compatible", + "api": "https://app.frogbot.ai/api/v1", + "doc": "https://docs.frogbot.ai", + "env": [ + "FROGBOT_API_KEY" + ], + "model_count": 26 + }, + { + "id": "alibaba", + "display_name": "Alibaba", + "npm": "@ai-sdk/openai-compatible", + "api": "https://dashscope-intl.aliyuncs.com/compatible-mode/v1", + "doc": "https://www.alibabacloud.com/help/en/model-studio/models", + "env": [ + "DASHSCOPE_API_KEY" + ], + "model_count": 50 + }, + { + "id": "xiaomi", + "display_name": "Xiaomi", + "npm": "@ai-sdk/openai-compatible", + "api": "https://api.xiaomimimo.com/v1", "doc": "https://platform.xiaomimimo.com/#/docs", "env": [ "XIAOMI_API_KEY" ], - "model_count": 6 - }, - { - "id": "cloudferro-sherlock", - "display_name": "CloudFerro Sherlock", - "npm": "@ai-sdk/openai-compatible", - "api": "https://api-sherlock.cloudferro.com/openai/v1/", - "doc": "https://docs.sherlock.cloudferro.com/", - "env": [ - "CLOUDFERRO_SHERLOCK_API_KEY" - ], - "model_count": 5 - }, - { - "id": "dinference", - "display_name": "DInference", - "npm": "@ai-sdk/openai-compatible", - "api": "https://api.dinference.com/v1", - "doc": "https://dinference.com", - "env": [ - "DINFERENCE_API_KEY" - ], "model_count": 5 }, { @@ -441,215 +351,6 @@ ], "model_count": 13 }, - { - "id": "vultr", - "display_name": "Vultr", - "npm": "@ai-sdk/openai-compatible", - "api": "https://api.vultrinference.com/v1", - "doc": "https://api.vultrinference.com/", - "env": [ - "VULTR_API_KEY" - ], - "model_count": 7 - }, - { - "id": "kuae-cloud-coding-plan", - "display_name": "KUAE Cloud Coding Plan", - "npm": "@ai-sdk/openai-compatible", - "api": "https://coding-plan-endpoint.kuaecloud.net/v1", - "doc": "https://docs.mthreads.com/kuaecloud/kuaecloud-doc-online/coding_plan/", - "env": [ - "KUAE_API_KEY" - ], - "model_count": 1 - }, - { - "id": "modelscope", - "display_name": "ModelScope", - "npm": "@ai-sdk/openai-compatible", - "api": "https://api-inference.modelscope.cn/v1", - "doc": "https://modelscope.cn/docs/model-service/API-Inference/intro", - "env": [ - "MODELSCOPE_API_KEY" - ], - "model_count": 7 - }, - { - "id": "kimi-for-coding", - "display_name": "Kimi For Coding", - "npm": "@ai-sdk/anthropic", - "api": "https://api.kimi.com/coding/v1", - "doc": "https://www.kimi.com/coding/docs/en/third-party-agents.html", - "env": [ - "KIMI_API_KEY" - ], - "model_count": 3 - }, - { - "id": "lucidquery", - "display_name": "LucidQuery AI", - "npm": "@ai-sdk/openai-compatible", - "api": "https://lucidquery.com/api/v1", - "doc": "https://lucidquery.com/api/docs", - "env": [ - "LUCIDQUERY_API_KEY" - ], - "model_count": 2 - }, - { - "id": "neuralwatt", - "display_name": "Neuralwatt", - "npm": "@ai-sdk/openai-compatible", - "api": "https://api.neuralwatt.com/v1", - "doc": "https://portal.neuralwatt.com/docs", - "env": [ - "NEURALWATT_API_KEY" - ], - "model_count": 14 - }, - { - "id": "jiekou", - "display_name": "Jiekou.AI", - "npm": "@ai-sdk/openai-compatible", - "api": "https://api.jiekou.ai/openai", - "doc": "https://docs.jiekou.ai/docs/support/quickstart?utm_source=github_models.dev", - "env": [ - "JIEKOU_API_KEY" - ], - "model_count": 61 - }, - { - "id": "ovhcloud", - "display_name": "OVHcloud AI Endpoints", - "npm": "@ai-sdk/openai-compatible", - "api": "https://oai.endpoints.kepler.ai.cloud.ovh.net/v1", - "doc": "https://www.ovhcloud.com/en/public-cloud/ai-endpoints/catalog//", - "env": [ - "OVHCLOUD_API_KEY" - ], - "model_count": 11 - }, - { - "id": "friendli", - "display_name": "Friendli", - "npm": "@ai-sdk/openai-compatible", - "api": "https://api.friendli.ai/serverless/v1", - "doc": "https://friendli.ai/docs/guides/serverless_endpoints/introduction", - "env": [ - "FRIENDLI_TOKEN" - ], - "model_count": 6 - }, - { - "id": "regolo-ai", - "display_name": "Regolo AI", - "npm": "@ai-sdk/openai-compatible", - "api": "https://api.regolo.ai/v1", - "doc": "https://docs.regolo.ai/", - "env": [ - "REGOLO_API_KEY" - ], - "model_count": 13 - }, - { - "id": "claudinio", - "display_name": "Claudinio", - "npm": "@ai-sdk/openai-compatible", - "api": "https://api.claudin.io/v1", - "doc": "https://claudin.io", - "env": [ - "CLAUDINIO_API_KEY" - ], - "model_count": 1 - }, - { - "id": "orcarouter", - "display_name": "OrcaRouter", - "npm": "@ai-sdk/openai-compatible", - "api": "https://api.orcarouter.ai/v1", - "doc": "https://docs.orcarouter.ai", - "env": [ - "ORCAROUTER_API_KEY" - ], - "model_count": 81 - }, - { - "id": "opencode-go", - "display_name": "OpenCode Go", - "npm": "@ai-sdk/openai-compatible", - "api": "https://opencode.ai/zen/go/v1", - "doc": "https://opencode.ai/docs/zen", - "env": [ - "OPENCODE_API_KEY" - ], - "model_count": 14 - }, - { - "id": "llmgateway", - "display_name": "LLM Gateway", - "npm": "@ai-sdk/openai-compatible", - "api": "https://api.llmgateway.io/v1", - "doc": "https://llmgateway.io/docs", - "env": [ - "LLMGATEWAY_API_KEY" - ], - "model_count": 188 - }, - { - "id": "poe", - "display_name": "Poe", - "npm": "@ai-sdk/openai-compatible", - "api": "https://api.poe.com/v1", - "doc": "https://creator.poe.com/docs/external-applications/openai-compatible-api", - "env": [ - "POE_API_KEY" - ], - "model_count": 136 - }, - { - "id": "minimax", - "display_name": "MiniMax (minimax.io)", - "npm": "@ai-sdk/anthropic", - "api": "https://api.minimax.io/anthropic/v1", - "doc": "https://platform.minimax.io/docs/guides/quickstart", - "env": [ - "MINIMAX_API_KEY" - ], - "model_count": 6 - }, - { - "id": "xiaomi-token-plan-sgp", - "display_name": "Xiaomi Token Plan (Singapore)", - "npm": "@ai-sdk/openai-compatible", - "api": "https://token-plan-sgp.xiaomimimo.com/v1", - "doc": "https://platform.xiaomimimo.com/#/docs", - "env": [ - "XIAOMI_API_KEY" - ], - "model_count": 6 - }, - { - "id": "siliconflow", - "display_name": "SiliconFlow", - "npm": "@ai-sdk/openai-compatible", - "api": "https://api.siliconflow.com/v1", - "doc": "https://cloud.siliconflow.com/models", - "env": [ - "SILICONFLOW_API_KEY" - ], - "model_count": 76 - }, - { - "id": "ollama-cloud", - "display_name": "Ollama Cloud", - "npm": "@ai-sdk/openai-compatible", - "api": "https://ollama.com/v1", - "doc": "https://docs.ollama.com/cloud", - "env": [ - "OLLAMA_API_KEY" - ], - "model_count": 39 - }, { "id": "databricks", "display_name": "Databricks", @@ -662,61 +363,6 @@ ], "model_count": 25 }, - { - "id": "berget", - "display_name": "Berget.AI", - "npm": "@ai-sdk/openai-compatible", - "api": "https://api.berget.ai/v1", - "doc": "https://api.berget.ai", - "env": [ - "BERGET_API_KEY" - ], - "model_count": 7 - }, - { - "id": "moonshotai-cn", - "display_name": "Moonshot AI (China)", - "npm": "@ai-sdk/openai-compatible", - "api": "https://api.moonshot.cn/v1", - "doc": "https://platform.moonshot.cn/docs/api/chat", - "env": [ - "MOONSHOT_API_KEY" - ], - "model_count": 7 - }, - { - "id": "alibaba-coding-plan-cn", - "display_name": "Alibaba Coding Plan (China)", - "npm": "@ai-sdk/openai-compatible", - "api": "https://coding.dashscope.aliyuncs.com/v1", - "doc": "https://help.aliyun.com/zh/model-studio/coding-plan", - "env": [ - "ALIBABA_CODING_PLAN_API_KEY" - ], - "model_count": 11 - }, - { - "id": "minimax-cn", - "display_name": "MiniMax (minimaxi.com)", - "npm": "@ai-sdk/anthropic", - "api": "https://api.minimaxi.com/anthropic/v1", - "doc": "https://platform.minimaxi.com/docs/guides/quickstart", - "env": [ - "MINIMAX_API_KEY" - ], - "model_count": 6 - }, - { - "id": "chutes", - "display_name": "Chutes", - "npm": "@ai-sdk/openai-compatible", - "api": "https://llm.chutes.ai/v1", - "doc": "https://llm.chutes.ai/v1/models", - "env": [ - "CHUTES_API_KEY" - ], - "model_count": 39 - }, { "id": "siliconflow-cn", "display_name": "SiliconFlow (China)", @@ -726,18 +372,7 @@ "env": [ "SILICONFLOW_CN_API_KEY" ], - "model_count": 81 - }, - { - "id": "nvidia", - "display_name": "Nvidia", - "npm": "@ai-sdk/openai-compatible", - "api": "https://integrate.api.nvidia.com/v1", - "doc": "https://docs.api.nvidia.com/nim/", - "env": [ - "NVIDIA_API_KEY" - ], - "model_count": 92 + "model_count": 82 }, { "id": "zhipuai-coding-plan", @@ -751,16 +386,105 @@ "model_count": 5 }, { - "id": "atomic-chat", - "display_name": "Atomic Chat", + "id": "neuralwatt", + "display_name": "Neuralwatt", "npm": "@ai-sdk/openai-compatible", - "api": "http://127.0.0.1:1337/v1", - "doc": "https://atomic.chat", + "api": "https://api.neuralwatt.com/v1", + "doc": "https://portal.neuralwatt.com/docs", "env": [ - "ATOMIC_CHAT_API_KEY" + "NEURALWATT_API_KEY" + ], + "model_count": 14 + }, + { + "id": "friendli", + "display_name": "Friendli", + "npm": "@ai-sdk/openai-compatible", + "api": "https://api.friendli.ai/serverless/v1", + "doc": "https://friendli.ai/docs/guides/serverless_endpoints/introduction", + "env": [ + "FRIENDLI_TOKEN" + ], + "model_count": 6 + }, + { + "id": "github-copilot", + "display_name": "GitHub Copilot", + "npm": "@ai-sdk/openai-compatible", + "api": "https://api.githubcopilot.com", + "doc": "https://docs.github.com/en/copilot", + "env": [ + "GITHUB_TOKEN" + ], + "model_count": 29 + }, + { + "id": "inference", + "display_name": "Inference", + "npm": "@ai-sdk/openai-compatible", + "api": "https://inference.net/v1", + "doc": "https://inference.net/models", + "env": [ + "INFERENCE_API_KEY" + ], + "model_count": 9 + }, + { + "id": "huggingface", + "display_name": "Hugging Face", + "npm": "@ai-sdk/openai-compatible", + "api": "https://router.huggingface.co/v1", + "doc": "https://huggingface.co/docs/inference-providers", + "env": [ + "HF_TOKEN" + ], + "model_count": 24 + }, + { + "id": "privatemode-ai", + "display_name": "Privatemode AI", + "npm": "@ai-sdk/openai-compatible", + "api": "http://localhost:8080/v1", + "doc": "https://docs.privatemode.ai/api/overview", + "env": [ + "PRIVATEMODE_API_KEY", + "PRIVATEMODE_ENDPOINT" ], "model_count": 5 }, + { + "id": "moonshotai", + "display_name": "Moonshot AI", + "npm": "@ai-sdk/openai-compatible", + "api": "https://api.moonshot.ai/v1", + "doc": "https://platform.moonshot.ai/docs/api/chat", + "env": [ + "MOONSHOT_API_KEY" + ], + "model_count": 7 + }, + { + "id": "llmgateway", + "display_name": "LLM Gateway", + "npm": "@ai-sdk/openai-compatible", + "api": "https://api.llmgateway.io/v1", + "doc": "https://llmgateway.io/docs", + "env": [ + "LLMGATEWAY_API_KEY" + ], + "model_count": 189 + }, + { + "id": "moark", + "display_name": "Moark", + "npm": "@ai-sdk/openai-compatible", + "api": "https://moark.com/v1", + "doc": "https://moark.com/docs/openapi/v1#tag/%E6%96%87%E6%9C%AC%E7%94%9F%E6%88%90", + "env": [ + "MOARK_API_KEY" + ], + "model_count": 2 + }, { "id": "github-models", "display_name": "GitHub Models", @@ -773,48 +497,26 @@ "model_count": 55 }, { - "id": "qiniu-ai", - "display_name": "Qiniu", + "id": "xiaomi-token-plan-cn", + "display_name": "Xiaomi Token Plan (China)", "npm": "@ai-sdk/openai-compatible", - "api": "https://api.qnaigc.com/v1", - "doc": "https://developer.qiniu.com/aitokenapi", + "api": "https://token-plan-cn.xiaomimimo.com/v1", + "doc": "https://platform.xiaomimimo.com/#/docs", "env": [ - "QINIU_API_KEY" + "XIAOMI_API_KEY" ], - "model_count": 91 + "model_count": 8 }, { - "id": "scaleway", - "display_name": "Scaleway", + "id": "lmstudio", + "display_name": "LMStudio", "npm": "@ai-sdk/openai-compatible", - "api": "https://api.scaleway.ai/v1", - "doc": "https://www.scaleway.com/en/docs/generative-apis/", + "api": "http://127.0.0.1:1234/v1", + "doc": "https://lmstudio.ai/models", "env": [ - "SCALEWAY_API_KEY" + "LMSTUDIO_API_KEY" ], - "model_count": 16 - }, - { - "id": "opencode", - "display_name": "OpenCode Zen", - "npm": "@ai-sdk/openai-compatible", - "api": "https://opencode.ai/zen/v1", - "doc": "https://opencode.ai/docs/zen", - "env": [ - "OPENCODE_API_KEY" - ], - "model_count": 62 - }, - { - "id": "mixlayer", - "display_name": "Mixlayer", - "npm": "@ai-sdk/openai-compatible", - "api": "https://models.mixlayer.ai/v1", - "doc": "https://docs.mixlayer.com", - "env": [ - "MIXLAYER_API_KEY" - ], - "model_count": 5 + "model_count": 3 }, { "id": "zenmux", @@ -828,15 +530,15 @@ "model_count": 96 }, { - "id": "perplexity-agent", - "display_name": "Perplexity Agent", - "npm": "@ai-sdk/openai", - "api": "https://api.perplexity.ai/v1", - "doc": "https://docs.perplexity.ai/docs/agent-api/models", + "id": "claudinio", + "display_name": "Claudinio", + "npm": "@ai-sdk/openai-compatible", + "api": "https://api.claudin.io/v1", + "doc": "https://claudin.io", "env": [ - "PERPLEXITY_API_KEY" + "CLAUDINIO_API_KEY" ], - "model_count": 18 + "model_count": 1 }, { "id": "alibaba-coding-plan", @@ -850,37 +552,81 @@ "model_count": 11 }, { - "id": "meganova", - "display_name": "Meganova", + "id": "modelscope", + "display_name": "ModelScope", "npm": "@ai-sdk/openai-compatible", - "api": "https://api.meganova.ai/v1", - "doc": "https://docs.meganova.ai", + "api": "https://api-inference.modelscope.cn/v1", + "doc": "https://modelscope.cn/docs/model-service/API-Inference/intro", "env": [ - "MEGANOVA_API_KEY" + "MODELSCOPE_API_KEY" ], - "model_count": 19 + "model_count": 7 }, { - "id": "synthetic", - "display_name": "Synthetic", + "id": "qihang-ai", + "display_name": "QiHang", "npm": "@ai-sdk/openai-compatible", - "api": "https://api.synthetic.new/openai/v1", - "doc": "https://synthetic.new/pricing", + "api": "https://api.qhaigc.net/v1", + "doc": "https://www.qhaigc.net/docs", "env": [ - "SYNTHETIC_API_KEY" + "QIHANG_API_KEY" ], - "model_count": 33 + "model_count": 9 }, { - "id": "inceptron", - "display_name": "Inceptron", + "id": "poe", + "display_name": "Poe", "npm": "@ai-sdk/openai-compatible", - "api": "https://api.inceptron.io/v1", - "doc": "https://docs.inceptron.io", + "api": "https://api.poe.com/v1", + "doc": "https://creator.poe.com/docs/external-applications/openai-compatible-api", "env": [ - "INCEPTRON_API_KEY" + "POE_API_KEY" ], - "model_count": 4 + "model_count": 137 + }, + { + "id": "umans-ai-coding-plan", + "display_name": "Umans AI Coding Plan", + "npm": "@ai-sdk/openai-compatible", + "api": "https://api.code.umans.ai/v1", + "doc": "https://app.umans.ai/offers/code/docs", + "env": [ + "UMANS_AI_CODING_PLAN_API_KEY" + ], + "model_count": 5 + }, + { + "id": "firepass", + "display_name": "Fireworks (Firepass)", + "npm": "@ai-sdk/openai-compatible", + "api": "https://api.fireworks.ai/inference/v1/", + "doc": "https://docs.fireworks.ai/firepass", + "env": [ + "FIREPASS_API_KEY" + ], + "model_count": 1 + }, + { + "id": "gmicloud", + "display_name": "GMI Cloud", + "npm": "@ai-sdk/openai-compatible", + "api": "https://api.gmi-serving.com/v1", + "doc": "https://docs.gmicloud.ai/inference-engine/api-reference/llm-api-reference", + "env": [ + "GMICLOUD_API_KEY" + ], + "model_count": 8 + }, + { + "id": "mixlayer", + "display_name": "Mixlayer", + "npm": "@ai-sdk/openai-compatible", + "api": "https://models.mixlayer.ai/v1", + "doc": "https://docs.mixlayer.com", + "env": [ + "MIXLAYER_API_KEY" + ], + "model_count": 5 }, { "id": "minimax-coding-plan", @@ -894,60 +640,137 @@ "model_count": 6 }, { - "id": "upstage", - "display_name": "Upstage", + "id": "evroc", + "display_name": "evroc", "npm": "@ai-sdk/openai-compatible", - "api": "https://api.upstage.ai/v1/solar", - "doc": "https://developers.upstage.ai/docs/apis/chat", + "api": "https://models.think.evroc.com/v1", + "doc": "https://docs.evroc.com/products/think/overview.html", "env": [ - "UPSTAGE_API_KEY" + "EVROC_API_KEY" ], - "model_count": 3 + "model_count": 13 }, { - "id": "abliteration-ai", - "display_name": "abliteration.ai", + "id": "nvidia", + "display_name": "Nvidia", "npm": "@ai-sdk/openai-compatible", - "api": "https://api.abliteration.ai/v1", - "doc": "https://docs.abliteration.ai/models", + "api": "https://integrate.api.nvidia.com/v1", + "doc": "https://docs.api.nvidia.com/nim/", "env": [ - "ABLIT_KEY" + "NVIDIA_API_KEY" ], - "model_count": 1 + "model_count": 92 }, { - "id": "deepseek", - "display_name": "DeepSeek", + "id": "routing-run", + "display_name": "routing.run", "npm": "@ai-sdk/openai-compatible", - "api": "https://api.deepseek.com", - "doc": "https://api-docs.deepseek.com/quick_start/pricing", + "api": "https://ai.routing.sh/v1", + "doc": "https://docs.routing.run/api-reference/models", "env": [ - "DEEPSEEK_API_KEY" + "ROUTING_RUN_API_KEY" + ], + "model_count": 26 + }, + { + "id": "xiaomi-token-plan-ams", + "display_name": "Xiaomi Token Plan (Europe)", + "npm": "@ai-sdk/openai-compatible", + "api": "https://token-plan-ams.xiaomimimo.com/v1", + "doc": "https://platform.xiaomimimo.com/#/docs", + "env": [ + "XIAOMI_API_KEY" + ], + "model_count": 8 + }, + { + "id": "zhipuai", + "display_name": "Zhipu AI", + "npm": "@ai-sdk/openai-compatible", + "api": "https://open.bigmodel.cn/api/paas/v4", + "doc": "https://docs.z.ai/guides/overview/pricing", + "env": [ + "ZHIPU_API_KEY" + ], + "model_count": 12 + }, + { + "id": "io-net", + "display_name": "IO.NET", + "npm": "@ai-sdk/openai-compatible", + "api": "https://api.intelligence.io.solutions/api/v1", + "doc": "https://io.net/docs/guides/intelligence/io-intelligence", + "env": [ + "IOINTELLIGENCE_API_KEY" + ], + "model_count": 17 + }, + { + "id": "lilac", + "display_name": "Lilac", + "npm": "@ai-sdk/openai-compatible", + "api": "https://api.getlilac.com/v1", + "doc": "https://docs.getlilac.com/inference/models", + "env": [ + "LILAC_API_KEY" ], "model_count": 4 }, { - "id": "iflowcn", - "display_name": "iFlow", + "id": "stepfun-ai", + "display_name": "StepFun", "npm": "@ai-sdk/openai-compatible", - "api": "https://apis.iflow.cn/v1", - "doc": "https://platform.iflow.cn/en/docs", + "api": "https://api.stepfun.ai/step_plan/v1", + "doc": "https://platform.stepfun.ai/docs/en/step-plan/integrations/open-code", "env": [ - "IFLOW_API_KEY" + "STEPFUN_API_KEY" ], - "model_count": 14 + "model_count": 2 }, { - "id": "stackit", - "display_name": "STACKIT", + "id": "tencent-coding-plan", + "display_name": "Tencent Coding Plan (China)", "npm": "@ai-sdk/openai-compatible", - "api": "https://api.openai-compat.model-serving.eu01.onstackit.cloud/v1", - "doc": "https://docs.stackit.cloud/products/data-and-ai/ai-model-serving/basics/available-shared-models", + "api": "https://api.lkeap.cloud.tencent.com/coding/v3", + "doc": "https://cloud.tencent.com/document/product/1772/128947", "env": [ - "STACKIT_API_KEY" + "TENCENT_CODING_PLAN_API_KEY" ], "model_count": 8 }, + { + "id": "opencode-go", + "display_name": "OpenCode Go", + "npm": "@ai-sdk/openai-compatible", + "api": "https://opencode.ai/zen/go/v1", + "doc": "https://opencode.ai/docs/zen", + "env": [ + "OPENCODE_API_KEY" + ], + "model_count": 15 + }, + { + "id": "cortecs", + "display_name": "Cortecs", + "npm": "@ai-sdk/openai-compatible", + "api": "https://api.cortecs.ai/v1", + "doc": "https://api.cortecs.ai/v1/models", + "env": [ + "CORTECS_API_KEY" + ], + "model_count": 49 + }, + { + "id": "auriko", + "display_name": "Auriko", + "npm": "@ai-sdk/openai-compatible", + "api": "https://api.auriko.ai/v1", + "doc": "https://docs.auriko.ai", + "env": [ + "AURIKO_API_KEY" + ], + "model_count": 15 + }, { "id": "wafer.ai", "display_name": "Wafer", @@ -960,13 +783,112 @@ "model_count": 4 }, { - "id": "evroc", - "display_name": "evroc", + "id": "berget", + "display_name": "Berget.AI", "npm": "@ai-sdk/openai-compatible", - "api": "https://models.think.evroc.com/v1", - "doc": "https://docs.evroc.com/products/think/overview.html", + "api": "https://api.berget.ai/v1", + "doc": "https://api.berget.ai", "env": [ - "EVROC_API_KEY" + "BERGET_API_KEY" + ], + "model_count": 7 + }, + { + "id": "requesty", + "display_name": "Requesty", + "npm": "@ai-sdk/openai-compatible", + "api": "https://router.requesty.ai/v1", + "doc": "https://requesty.ai/solution/llm-routing/models", + "env": [ + "REQUESTY_API_KEY" + ], + "model_count": 38 + }, + { + "id": "atomic-chat", + "display_name": "Atomic Chat", + "npm": "@ai-sdk/openai-compatible", + "api": "http://127.0.0.1:1337/v1", + "doc": "https://atomic.chat", + "env": [ + "ATOMIC_CHAT_API_KEY" + ], + "model_count": 5 + }, + { + "id": "stepfun", + "display_name": "StepFun", + "npm": "@ai-sdk/openai-compatible", + "api": "https://api.stepfun.com/v1", + "doc": "https://platform.stepfun.com/docs/zh/overview/concept", + "env": [ + "STEPFUN_API_KEY" + ], + "model_count": 4 + }, + { + "id": "vultr", + "display_name": "Vultr", + "npm": "@ai-sdk/openai-compatible", + "api": "https://api.vultrinference.com/v1", + "doc": "https://api.vultrinference.com/", + "env": [ + "VULTR_API_KEY" + ], + "model_count": 7 + }, + { + "id": "zai-coding-plan", + "display_name": "Z.AI Coding Plan", + "npm": "@ai-sdk/openai-compatible", + "api": "https://api.z.ai/api/coding/paas/v4", + "doc": "https://docs.z.ai/devpack/overview", + "env": [ + "ZHIPU_API_KEY" + ], + "model_count": 5 + }, + { + "id": "synthetic", + "display_name": "Synthetic", + "npm": "@ai-sdk/openai-compatible", + "api": "https://api.synthetic.new/openai/v1", + "doc": "https://synthetic.new/pricing", + "env": [ + "SYNTHETIC_API_KEY" + ], + "model_count": 33 + }, + { + "id": "cloudferro-sherlock", + "display_name": "CloudFerro Sherlock", + "npm": "@ai-sdk/openai-compatible", + "api": "https://api-sherlock.cloudferro.com/openai/v1/", + "doc": "https://docs.sherlock.cloudferro.com/", + "env": [ + "CLOUDFERRO_SHERLOCK_API_KEY" + ], + "model_count": 5 + }, + { + "id": "helicone", + "display_name": "Helicone", + "npm": "@ai-sdk/openai-compatible", + "api": "https://ai-gateway.helicone.ai/v1", + "doc": "https://helicone.ai/models", + "env": [ + "HELICONE_API_KEY" + ], + "model_count": 90 + }, + { + "id": "zai", + "display_name": "Z.AI", + "npm": "@ai-sdk/openai-compatible", + "api": "https://api.z.ai/api/paas/v4", + "doc": "https://docs.z.ai/guides/overview/pricing", + "env": [ + "ZHIPU_API_KEY" ], "model_count": 13 }, @@ -982,37 +904,26 @@ "model_count": 2 }, { - "id": "fireworks-ai", - "display_name": "Fireworks AI", + "id": "nearai", + "display_name": "NEAR AI Cloud", "npm": "@ai-sdk/openai-compatible", - "api": "https://api.fireworks.ai/inference/v1/", - "doc": "https://fireworks.ai/docs/", + "api": "https://cloud-api.near.ai/v1", + "doc": "https://docs.near.ai/", "env": [ - "FIREWORKS_API_KEY" + "NEARAI_API_KEY" ], - "model_count": 12 + "model_count": 37 }, { - "id": "alibaba", - "display_name": "Alibaba", + "id": "inceptron", + "display_name": "Inceptron", "npm": "@ai-sdk/openai-compatible", - "api": "https://dashscope-intl.aliyuncs.com/compatible-mode/v1", - "doc": "https://www.alibabacloud.com/help/en/model-studio/models", + "api": "https://api.inceptron.io/v1", + "doc": "https://docs.inceptron.io", "env": [ - "DASHSCOPE_API_KEY" + "INCEPTRON_API_KEY" ], - "model_count": 50 - }, - { - "id": "302ai", - "display_name": "302.AI", - "npm": "@ai-sdk/openai-compatible", - "api": "https://api.302.ai/v1", - "doc": "https://doc.302.ai", - "env": [ - "302AI_API_KEY" - ], - "model_count": 97 + "model_count": 4 }, { "id": "xpersona", @@ -1026,81 +937,114 @@ "model_count": 1 }, { - "id": "stepfun", - "display_name": "StepFun", - "npm": "@ai-sdk/openai-compatible", - "api": "https://api.stepfun.com/v1", - "doc": "https://platform.stepfun.com/docs/zh/overview/concept", + "id": "perplexity-agent", + "display_name": "Perplexity Agent", + "npm": "@ai-sdk/openai", + "api": "https://api.perplexity.ai/v1", + "doc": "https://docs.perplexity.ai/docs/agent-api/models", "env": [ - "STEPFUN_API_KEY" + "PERPLEXITY_API_KEY" ], - "model_count": 4 + "model_count": 18 }, { - "id": "sarvam", - "display_name": "Sarvam AI", + "id": "jiekou", + "display_name": "Jiekou.AI", "npm": "@ai-sdk/openai-compatible", - "api": "https://api.sarvam.ai/v1", - "doc": "https://docs.sarvam.ai/api-reference-docs/getting-started/models", + "api": "https://api.jiekou.ai/openai", + "doc": "https://docs.jiekou.ai/docs/support/quickstart?utm_source=github_models.dev", "env": [ - "SARVAM_API_KEY" + "JIEKOU_API_KEY" ], - "model_count": 2 + "model_count": 61 }, { - "id": "zhipuai", - "display_name": "Zhipu AI", + "id": "abliteration-ai", + "display_name": "abliteration.ai", "npm": "@ai-sdk/openai-compatible", - "api": "https://open.bigmodel.cn/api/paas/v4", - "doc": "https://docs.z.ai/guides/overview/pricing", + "api": "https://api.abliteration.ai/v1", + "doc": "https://docs.abliteration.ai/models", "env": [ - "ZHIPU_API_KEY" + "ABLIT_KEY" ], - "model_count": 12 + "model_count": 1 }, { - "id": "bailing", - "display_name": "Bailing", - "npm": "@ai-sdk/openai-compatible", - "api": "https://api.tbox.cn/api/llm/v1/chat/completions", - "doc": "https://alipaytbox.yuque.com/sxs0ba/ling/intro", + "id": "minimax-cn", + "display_name": "MiniMax (minimaxi.com)", + "npm": "@ai-sdk/anthropic", + "api": "https://api.minimaxi.com/anthropic/v1", + "doc": "https://platform.minimaxi.com/docs/guides/quickstart", "env": [ - "BAILING_API_TOKEN" + "MINIMAX_API_KEY" ], - "model_count": 2 + "model_count": 6 }, { - "id": "qihang-ai", - "display_name": "QiHang", + "id": "qiniu-ai", + "display_name": "Qiniu", "npm": "@ai-sdk/openai-compatible", - "api": "https://api.qhaigc.net/v1", - "doc": "https://www.qhaigc.net/docs", + "api": "https://api.qnaigc.com/v1", + "doc": "https://developer.qiniu.com/aitokenapi", "env": [ - "QIHANG_API_KEY" + "QINIU_API_KEY" ], - "model_count": 9 + "model_count": 91 }, { - "id": "lilac", - "display_name": "Lilac", + "id": "morph", + "display_name": "Morph", "npm": "@ai-sdk/openai-compatible", - "api": "https://api.getlilac.com/v1", - "doc": "https://docs.getlilac.com/inference/models", + "api": "https://api.morphllm.com/v1", + "doc": "https://docs.morphllm.com/api-reference/introduction", "env": [ - "LILAC_API_KEY" + "MORPH_API_KEY" ], - "model_count": 4 + "model_count": 3 }, { - "id": "alibaba-cn", - "display_name": "Alibaba (China)", + "id": "xiaomi-token-plan-sgp", + "display_name": "Xiaomi Token Plan (Singapore)", "npm": "@ai-sdk/openai-compatible", - "api": "https://dashscope.aliyuncs.com/compatible-mode/v1", - "doc": "https://www.alibabacloud.com/help/en/model-studio/models", + "api": "https://token-plan-sgp.xiaomimimo.com/v1", + "doc": "https://platform.xiaomimimo.com/#/docs", "env": [ - "DASHSCOPE_API_KEY" + "XIAOMI_API_KEY" ], - "model_count": 82 + "model_count": 8 + }, + { + "id": "fastrouter", + "display_name": "FastRouter", + "npm": "@ai-sdk/openai-compatible", + "api": "https://go.fastrouter.ai/api/v1", + "doc": "https://fastrouter.ai/models", + "env": [ + "FASTROUTER_API_KEY" + ], + "model_count": 15 + }, + { + "id": "siliconflow", + "display_name": "SiliconFlow", + "npm": "@ai-sdk/openai-compatible", + "api": "https://api.siliconflow.com/v1", + "doc": "https://cloud.siliconflow.com/models", + "env": [ + "SILICONFLOW_API_KEY" + ], + "model_count": 76 + }, + { + "id": "abacus", + "display_name": "Abacus", + "npm": "@ai-sdk/openai-compatible", + "api": "https://routellm.abacus.ai/v1", + "doc": "https://abacus.ai/help/api", + "env": [ + "ABACUS_API_KEY" + ], + "model_count": 65 }, { "id": "drun", @@ -1114,48 +1058,92 @@ "model_count": 3 }, { - "id": "huggingface", - "display_name": "Hugging Face", + "id": "wandb", + "display_name": "Weights & Biases", "npm": "@ai-sdk/openai-compatible", - "api": "https://router.huggingface.co/v1", - "doc": "https://huggingface.co/docs/inference-providers", + "api": "https://api.inference.wandb.ai/v1", + "doc": "https://docs.wandb.ai/guides/integrations/inference/", "env": [ - "HF_TOKEN" + "WANDB_API_KEY" ], - "model_count": 24 + "model_count": 18 }, { - "id": "umans-ai-coding-plan", - "display_name": "Umans AI Coding Plan", + "id": "meganova", + "display_name": "Meganova", "npm": "@ai-sdk/openai-compatible", - "api": "https://api.code.umans.ai/v1", - "doc": "https://app.umans.ai/offers/code/docs", + "api": "https://api.meganova.ai/v1", + "doc": "https://docs.meganova.ai", "env": [ - "UMANS_AI_CODING_PLAN_API_KEY" + "MEGANOVA_API_KEY" ], - "model_count": 5 + "model_count": 19 }, { - "id": "tencent-tokenhub", - "display_name": "Tencent TokenHub", + "id": "opencode", + "display_name": "OpenCode Zen", "npm": "@ai-sdk/openai-compatible", - "api": "https://tokenhub.tencentmaas.com/v1", - "doc": "https://cloud.tencent.com/document/product/1823/130050", + "api": "https://opencode.ai/zen/v1", + "doc": "https://opencode.ai/docs/zen", "env": [ - "TENCENT_TOKENHUB_API_KEY" + "OPENCODE_API_KEY" ], - "model_count": 1 + "model_count": 64 }, { - "id": "nebius", - "display_name": "Nebius Token Factory", + "id": "poolside", + "display_name": "Poolside", "npm": "@ai-sdk/openai-compatible", - "api": "https://api.tokenfactory.nebius.com/v1", - "doc": "https://docs.tokenfactory.nebius.com/", + "api": "https://inference.poolside.ai/v1", + "doc": "https://platform.poolside.ai", "env": [ - "NEBIUS_API_KEY" + "POOLSIDE_API_KEY" ], - "model_count": 31 + "model_count": 2 + }, + { + "id": "sarvam", + "display_name": "Sarvam AI", + "npm": "@ai-sdk/openai-compatible", + "api": "https://api.sarvam.ai/v1", + "doc": "https://docs.sarvam.ai/api-reference-docs/getting-started/models", + "env": [ + "SARVAM_API_KEY" + ], + "model_count": 2 + }, + { + "id": "baseten", + "display_name": "Baseten", + "npm": "@ai-sdk/openai-compatible", + "api": "https://inference.baseten.co/v1", + "doc": "https://docs.baseten.co/development/model-apis/overview", + "env": [ + "BASETEN_API_KEY" + ], + "model_count": 14 + }, + { + "id": "lucidquery", + "display_name": "LucidQuery AI", + "npm": "@ai-sdk/openai-compatible", + "api": "https://lucidquery.com/api/v1", + "doc": "https://lucidquery.com/api/docs", + "env": [ + "LUCIDQUERY_API_KEY" + ], + "model_count": 2 + }, + { + "id": "scaleway", + "display_name": "Scaleway", + "npm": "@ai-sdk/openai-compatible", + "api": "https://api.scaleway.ai/v1", + "doc": "https://www.scaleway.com/en/docs/generative-apis/", + "env": [ + "SCALEWAY_API_KEY" + ], + "model_count": 16 }, { "id": "hpc-ai", @@ -1169,58 +1157,70 @@ "model_count": 3 }, { - "id": "xiaomi", - "display_name": "Xiaomi", + "id": "tencent-tokenhub", + "display_name": "Tencent TokenHub", "npm": "@ai-sdk/openai-compatible", - "api": "https://api.xiaomimimo.com/v1", - "doc": "https://platform.xiaomimimo.com/#/docs", + "api": "https://tokenhub.tencentmaas.com/v1", + "doc": "https://cloud.tencent.com/document/product/1823/130050", "env": [ - "XIAOMI_API_KEY" + "TENCENT_TOKENHUB_API_KEY" ], - "model_count": 5 + "model_count": 1 }, { - "id": "github-copilot", - "display_name": "GitHub Copilot", + "id": "alibaba-coding-plan-cn", + "display_name": "Alibaba Coding Plan (China)", "npm": "@ai-sdk/openai-compatible", - "api": "https://api.githubcopilot.com", - "doc": "https://docs.github.com/en/copilot", + "api": "https://coding.dashscope.aliyuncs.com/v1", + "doc": "https://help.aliyun.com/zh/model-studio/coding-plan", "env": [ - "GITHUB_TOKEN" + "ALIBABA_CODING_PLAN_API_KEY" ], - "model_count": 28 + "model_count": 11 }, { - "id": "stepfun-ai", - "display_name": "StepFun", + "id": "cloudflare-workers-ai", + "display_name": "Cloudflare Workers AI", "npm": "@ai-sdk/openai-compatible", - "api": "https://api.stepfun.ai/step_plan/v1", - "doc": "https://platform.stepfun.ai/docs/en/step-plan/integrations/open-code", + "api": "https://api.cloudflare.com/client/v4/accounts/${CLOUDFLARE_ACCOUNT_ID}/ai/v1", + "doc": "https://developers.cloudflare.com/workers-ai/models/", "env": [ - "STEPFUN_API_KEY" + "CLOUDFLARE_ACCOUNT_ID", + "CLOUDFLARE_API_KEY" ], - "model_count": 2 + "model_count": 27 }, { - "id": "inference", - "display_name": "Inference", + "id": "nebius", + "display_name": "Nebius Token Factory", "npm": "@ai-sdk/openai-compatible", - "api": "https://inference.net/v1", - "doc": "https://inference.net/models", + "api": "https://api.tokenfactory.nebius.com/v1", + "doc": "https://docs.tokenfactory.nebius.com/", "env": [ - "INFERENCE_API_KEY" + "NEBIUS_API_KEY" ], - "model_count": 9 + "model_count": 31 }, { - "id": "poolside", - "display_name": "Poolside", - "npm": "@ai-sdk/openai-compatible", - "api": "https://inference.poolside.ai/v1", - "doc": "https://platform.poolside.ai", + "id": "minimax", + "display_name": "MiniMax (minimax.io)", + "npm": "@ai-sdk/anthropic", + "api": "https://api.minimax.io/anthropic/v1", + "doc": "https://platform.minimax.io/docs/guides/quickstart", "env": [ - "POOLSIDE_API_KEY" + "MINIMAX_API_KEY" ], - "model_count": 2 + "model_count": 6 + }, + { + "id": "meta-llama", + "display_name": "Llama", + "npm": "@ai-sdk/openai-compatible", + "api": "https://api.llama.com/compat/v1/", + "doc": "https://llama.developer.meta.com/docs/models", + "env": [ + "LLAMA_API_KEY" + ], + "model_count": 7 } ] \ No newline at end of file