From 74a47466aaeb39a685bb34e53be3bbf75e1fd36b Mon Sep 17 00:00:00 2001 From: David Katz Date: Tue, 9 Dec 2025 19:38:40 -0500 Subject: [PATCH] Fix input modalities --- .../goose/examples/build_canonical_models.rs | 51 +- .../data/canonical_mapping_report.json | 2078 +++++++++-------- .../canonical/data/canonical_models.json | 199 +- 3 files changed, 1218 insertions(+), 1110 deletions(-) diff --git a/crates/goose/examples/build_canonical_models.rs b/crates/goose/examples/build_canonical_models.rs index 4cb98d9035..12215e595c 100644 --- a/crates/goose/examples/build_canonical_models.rs +++ b/crates/goose/examples/build_canonical_models.rs @@ -140,45 +140,28 @@ async fn main() -> Result<()> { .map(|v| v as usize); let input_modalities: Vec = model - .get("supported_parameters") + .get("architecture") + .and_then(|arch| arch.get("input_modalities")) .and_then(|v| v.as_array()) .map(|arr| { - let mut mods = vec!["text".to_string()]; - for param in arr { - if let Some(s) = param.as_str() { - match s { - "image" | "image_url" => { - if !mods.contains(&"image".to_string()) { - mods.push("image".to_string()); - } - } - "audio" => { - if !mods.contains(&"audio".to_string()) { - mods.push("audio".to_string()); - } - } - "video" => { - if !mods.contains(&"video".to_string()) { - mods.push("video".to_string()); - } - } - _ => {} - } - } - } - if model - .get("architecture") - .and_then(|a| a.get("multimodality")) - .is_some() - && !mods.contains(&"file".to_string()) - { - mods.push("file".to_string()); - } - mods + arr.iter() + .filter_map(|v| v.as_str()) + .map(|s| s.to_string()) + .collect() }) .unwrap_or_else(|| vec!["text".to_string()]); - let output_modalities = vec!["text".to_string()]; + let output_modalities: Vec = model + .get("architecture") + .and_then(|arch| arch.get("output_modalities")) + .and_then(|v| v.as_array()) + .map(|arr| { + arr.iter() + .filter_map(|v| v.as_str()) + .map(|s| s.to_string()) + .collect() + }) + .unwrap_or_else(|| vec!["text".to_string()]); let tokenizer = if canonical_id.starts_with("anthropic/") { "Claude" diff --git a/crates/goose/src/providers/canonical/data/canonical_mapping_report.json b/crates/goose/src/providers/canonical/data/canonical_mapping_report.json index f8f1044e4b..3af83e1e3f 100644 --- a/crates/goose/src/providers/canonical/data/canonical_mapping_report.json +++ b/crates/goose/src/providers/canonical/data/canonical_mapping_report.json @@ -1,5 +1,5 @@ { - "timestamp": "2025-12-09T17:58:02.776903+00:00", + "timestamp": "2025-12-10T00:38:10.636782+00:00", "unmapped_models": [ { "provider": "openai", @@ -1857,6 +1857,18 @@ "provider": "openai", "model": "ft:gpt-4o-2024-08-06:square::BDgwAYDm" }, + { + "provider": "openai", + "model": "ft:gpt-4o-2024-08-06:square::Cl22v5JX:ckpt-step-50" + }, + { + "provider": "openai", + "model": "ft:gpt-4o-2024-08-06:square::Cl22ws6P" + }, + { + "provider": "openai", + "model": "ft:gpt-4o-2024-08-06:square::Cl22ww03:ckpt-step-100" + }, { "provider": "openai", "model": "ft:gpt-4o-2024-08-06:square:presale-prod-update:A1VLdLFo:ckpt-step-772" @@ -2473,6 +2485,10 @@ "provider": "openrouter", "model": "mistralai/codestral-2508" }, + { + "provider": "openrouter", + "model": "mistralai/devstral-2512:free" + }, { "provider": "openrouter", "model": "mistralai/devstral-medium" @@ -3663,6 +3679,431 @@ "verified": true } ], + "openai": [ + { + "provider_model": "chatgpt-4o-latest", + "canonical_model": "openai/chatgpt-4o-latest", + "verified": true + }, + { + "provider_model": "gpt-3.5-turbo", + "canonical_model": "openai/gpt-3.5-turbo", + "verified": true + }, + { + "provider_model": "gpt-3.5-turbo-0125", + "canonical_model": "openai/gpt-3.5-turbo", + "verified": true + }, + { + "provider_model": "gpt-3.5-turbo-1106", + "canonical_model": "openai/gpt-3.5-turbo", + "verified": true + }, + { + "provider_model": "gpt-3.5-turbo-16k", + "canonical_model": "openai/gpt-3.5-turbo-16k", + "verified": true + }, + { + "provider_model": "gpt-3.5-turbo-instruct", + "canonical_model": "openai/gpt-3.5-turbo-instruct", + "verified": true + }, + { + "provider_model": "gpt-3.5-turbo-instruct-0914", + "canonical_model": "openai/gpt-3.5-turbo-instruct", + "verified": true + }, + { + "provider_model": "gpt-4", + "canonical_model": "openai/gpt-4", + "verified": true + }, + { + "provider_model": "gpt-4-0125-preview", + "canonical_model": "openai/gpt-4", + "verified": true + }, + { + "provider_model": "gpt-4-0314", + "canonical_model": "openai/gpt-4", + "verified": true + }, + { + "provider_model": "gpt-4-0613", + "canonical_model": "openai/gpt-4", + "verified": true + }, + { + "provider_model": "gpt-4-1106-preview", + "canonical_model": "openai/gpt-4", + "verified": true + }, + { + "provider_model": "gpt-4-turbo", + "canonical_model": "openai/gpt-4-turbo", + "verified": true + }, + { + "provider_model": "gpt-4-turbo-2024-04-09", + "canonical_model": "openai/gpt-4-turbo", + "verified": true + }, + { + "provider_model": "gpt-4-turbo-preview", + "canonical_model": "openai/gpt-4-turbo", + "verified": true + }, + { + "provider_model": "gpt-4.1", + "canonical_model": "openai/gpt-4.1", + "verified": true + }, + { + "provider_model": "gpt-4.1-2025-04-14", + "canonical_model": "openai/gpt-4.1", + "verified": true + }, + { + "provider_model": "gpt-4.1-mini", + "canonical_model": "openai/gpt-4.1-mini", + "verified": true + }, + { + "provider_model": "gpt-4.1-mini-2025-04-14", + "canonical_model": "openai/gpt-4.1-mini", + "verified": true + }, + { + "provider_model": "gpt-4.1-nano", + "canonical_model": "openai/gpt-4.1-nano", + "verified": true + }, + { + "provider_model": "gpt-4.1-nano-2025-04-14", + "canonical_model": "openai/gpt-4.1-nano", + "verified": true + }, + { + "provider_model": "gpt-4o", + "canonical_model": "openai/gpt-4o", + "verified": true + }, + { + "provider_model": "gpt-4o-2024-05-13", + "canonical_model": "openai/gpt-4o", + "verified": true + }, + { + "provider_model": "gpt-4o-2024-08-06", + "canonical_model": "openai/gpt-4o", + "verified": true + }, + { + "provider_model": "gpt-4o-2024-11-20", + "canonical_model": "openai/gpt-4o", + "verified": true + }, + { + "provider_model": "gpt-4o-audio-preview", + "canonical_model": "openai/gpt-4o-audio", + "verified": true + }, + { + "provider_model": "gpt-4o-audio-preview-2024-12-17", + "canonical_model": "openai/gpt-4o-audio", + "verified": true + }, + { + "provider_model": "gpt-4o-audio-preview-2025-06-03", + "canonical_model": "openai/gpt-4o-audio", + "verified": true + }, + { + "provider_model": "gpt-4o-mini", + "canonical_model": "openai/gpt-4o-mini", + "verified": true + }, + { + "provider_model": "gpt-4o-mini-2024-07-18", + "canonical_model": "openai/gpt-4o-mini", + "verified": true + }, + { + "provider_model": "gpt-4o-mini-search-preview", + "canonical_model": "openai/gpt-4o-mini-search", + "verified": true + }, + { + "provider_model": "gpt-4o-mini-search-preview-2025-03-11", + "canonical_model": "openai/gpt-4o-mini-search", + "verified": true + }, + { + "provider_model": "gpt-4o-search-preview", + "canonical_model": "openai/gpt-4o-search", + "verified": true + }, + { + "provider_model": "gpt-4o-search-preview-2025-03-11", + "canonical_model": "openai/gpt-4o-search", + "verified": true + }, + { + "provider_model": "gpt-5", + "canonical_model": "openai/gpt-5", + "verified": true + }, + { + "provider_model": "gpt-5-2025-08-07", + "canonical_model": "openai/gpt-5", + "verified": true + }, + { + "provider_model": "gpt-5-codex", + "canonical_model": "openai/gpt-5-codex", + "verified": true + }, + { + "provider_model": "gpt-5-mini", + "canonical_model": "openai/gpt-5-mini", + "verified": true + }, + { + "provider_model": "gpt-5-mini-2025-08-07", + "canonical_model": "openai/gpt-5-mini", + "verified": true + }, + { + "provider_model": "gpt-5-nano", + "canonical_model": "openai/gpt-5-nano", + "verified": true + }, + { + "provider_model": "gpt-5-nano-2025-08-07", + "canonical_model": "openai/gpt-5-nano", + "verified": true + }, + { + "provider_model": "gpt-5-pro", + "canonical_model": "openai/gpt-5-pro", + "verified": true + }, + { + "provider_model": "gpt-5-pro-2025-10-06", + "canonical_model": "openai/gpt-5-pro", + "verified": true + }, + { + "provider_model": "gpt-5.1", + "canonical_model": "openai/gpt-5.1", + "verified": true + }, + { + "provider_model": "gpt-5.1-2025-11-13", + "canonical_model": "openai/gpt-5.1", + "verified": true + }, + { + "provider_model": "gpt-5.1-codex", + "canonical_model": "openai/gpt-5.1-codex", + "verified": true + }, + { + "provider_model": "gpt-5.1-codex-max", + "canonical_model": "openai/gpt-5.1-codex-max", + "verified": true + }, + { + "provider_model": "gpt-5.1-codex-mini", + "canonical_model": "openai/gpt-5.1-codex-mini", + "verified": true + }, + { + "provider_model": "o1", + "canonical_model": "openai/o1", + "verified": true + }, + { + "provider_model": "o1-2024-12-17", + "canonical_model": "openai/o1", + "verified": true + }, + { + "provider_model": "o1-pro", + "canonical_model": "openai/o1-pro", + "verified": true + }, + { + "provider_model": "o1-pro-2025-03-19", + "canonical_model": "openai/o1-pro", + "verified": true + }, + { + "provider_model": "o3", + "canonical_model": "openai/o3", + "verified": true + }, + { + "provider_model": "o3-2025-04-16", + "canonical_model": "openai/o3", + "verified": true + }, + { + "provider_model": "o3-deep-research", + "canonical_model": "openai/o3-deep-research", + "verified": true + }, + { + "provider_model": "o3-deep-research-2025-06-26", + "canonical_model": "openai/o3-deep-research", + "verified": true + }, + { + "provider_model": "o3-mini", + "canonical_model": "openai/o3-mini", + "verified": true + }, + { + "provider_model": "o3-mini-2025-01-31", + "canonical_model": "openai/o3-mini", + "verified": true + }, + { + "provider_model": "o3-pro", + "canonical_model": "openai/o3-pro", + "verified": true + }, + { + "provider_model": "o3-pro-2025-06-10", + "canonical_model": "openai/o3-pro", + "verified": true + }, + { + "provider_model": "o4-mini", + "canonical_model": "openai/o4-mini", + "verified": true + }, + { + "provider_model": "o4-mini-2025-04-16", + "canonical_model": "openai/o4-mini", + "verified": true + }, + { + "provider_model": "o4-mini-deep-research", + "canonical_model": "openai/o4-mini-deep-research", + "verified": true + }, + { + "provider_model": "o4-mini-deep-research-2025-06-26", + "canonical_model": "openai/o4-mini-deep-research", + "verified": true + } + ], + "tetrate": [], + "google": [ + { + "provider_model": "gemini-2.0-flash", + "canonical_model": "google/gemini-2.0-flash", + "verified": true + }, + { + "provider_model": "gemini-2.0-flash-001", + "canonical_model": "google/gemini-2.0-flash", + "verified": true + }, + { + "provider_model": "gemini-2.0-flash-exp", + "canonical_model": "google/gemini-2.0-flash", + "verified": true + }, + { + "provider_model": "gemini-2.0-flash-lite", + "canonical_model": "google/gemini-2.0-flash-lite", + "verified": true + }, + { + "provider_model": "gemini-2.0-flash-lite-001", + "canonical_model": "google/gemini-2.0-flash-lite", + "verified": true + }, + { + "provider_model": "gemini-2.0-flash-lite-preview", + "canonical_model": "google/gemini-2.0-flash-lite", + "verified": true + }, + { + "provider_model": "gemini-2.0-flash-lite-preview-02-05", + "canonical_model": "google/gemini-2.0-flash-lite", + "verified": true + }, + { + "provider_model": "gemini-2.5-flash", + "canonical_model": "google/gemini-2.5-flash", + "verified": true + }, + { + "provider_model": "gemini-2.5-flash-image", + "canonical_model": "google/gemini-2.5-flash-image", + "verified": true + }, + { + "provider_model": "gemini-2.5-flash-image-preview", + "canonical_model": "google/gemini-2.5-flash-image", + "verified": true + }, + { + "provider_model": "gemini-2.5-flash-lite", + "canonical_model": "google/gemini-2.5-flash-lite", + "verified": true + }, + { + "provider_model": "gemini-2.5-flash-lite-preview-09-2025", + "canonical_model": "google/gemini-2.5-flash-lite", + "verified": true + }, + { + "provider_model": "gemini-2.5-flash-preview-09-2025", + "canonical_model": "google/gemini-2.5-flash", + "verified": true + }, + { + "provider_model": "gemini-2.5-pro", + "canonical_model": "google/gemini-2.5-pro", + "verified": true + }, + { + "provider_model": "gemini-3-pro-image-preview", + "canonical_model": "google/gemini-3-pro-image", + "verified": true + }, + { + "provider_model": "gemini-3-pro-preview", + "canonical_model": "google/gemini-3-pro", + "verified": true + }, + { + "provider_model": "gemma-3-12b-it", + "canonical_model": "google/gemma-3-12b-it", + "verified": true + }, + { + "provider_model": "gemma-3-27b-it", + "canonical_model": "google/gemma-3-27b-it", + "verified": true + }, + { + "provider_model": "gemma-3-4b-it", + "canonical_model": "google/gemma-3-4b-it", + "verified": true + }, + { + "provider_model": "gemma-3n-e4b-it", + "canonical_model": "google/gemma-3n-e4b-it", + "verified": true + } + ], "openrouter": [ { "provider_model": "anthropic/claude-3-haiku", @@ -4010,432 +4451,7 @@ "verified": true } ], - "databricks": [], - "openai": [ - { - "provider_model": "chatgpt-4o-latest", - "canonical_model": "openai/chatgpt-4o-latest", - "verified": true - }, - { - "provider_model": "gpt-3.5-turbo", - "canonical_model": "openai/gpt-3.5-turbo", - "verified": true - }, - { - "provider_model": "gpt-3.5-turbo-0125", - "canonical_model": "openai/gpt-3.5-turbo", - "verified": true - }, - { - "provider_model": "gpt-3.5-turbo-1106", - "canonical_model": "openai/gpt-3.5-turbo", - "verified": true - }, - { - "provider_model": "gpt-3.5-turbo-16k", - "canonical_model": "openai/gpt-3.5-turbo-16k", - "verified": true - }, - { - "provider_model": "gpt-3.5-turbo-instruct", - "canonical_model": "openai/gpt-3.5-turbo-instruct", - "verified": true - }, - { - "provider_model": "gpt-3.5-turbo-instruct-0914", - "canonical_model": "openai/gpt-3.5-turbo-instruct", - "verified": true - }, - { - "provider_model": "gpt-4", - "canonical_model": "openai/gpt-4", - "verified": true - }, - { - "provider_model": "gpt-4-0125-preview", - "canonical_model": "openai/gpt-4", - "verified": true - }, - { - "provider_model": "gpt-4-0314", - "canonical_model": "openai/gpt-4", - "verified": true - }, - { - "provider_model": "gpt-4-0613", - "canonical_model": "openai/gpt-4", - "verified": true - }, - { - "provider_model": "gpt-4-1106-preview", - "canonical_model": "openai/gpt-4", - "verified": true - }, - { - "provider_model": "gpt-4-turbo", - "canonical_model": "openai/gpt-4-turbo", - "verified": true - }, - { - "provider_model": "gpt-4-turbo-2024-04-09", - "canonical_model": "openai/gpt-4-turbo", - "verified": true - }, - { - "provider_model": "gpt-4-turbo-preview", - "canonical_model": "openai/gpt-4-turbo", - "verified": true - }, - { - "provider_model": "gpt-4.1", - "canonical_model": "openai/gpt-4.1", - "verified": true - }, - { - "provider_model": "gpt-4.1-2025-04-14", - "canonical_model": "openai/gpt-4.1", - "verified": true - }, - { - "provider_model": "gpt-4.1-mini", - "canonical_model": "openai/gpt-4.1-mini", - "verified": true - }, - { - "provider_model": "gpt-4.1-mini-2025-04-14", - "canonical_model": "openai/gpt-4.1-mini", - "verified": true - }, - { - "provider_model": "gpt-4.1-nano", - "canonical_model": "openai/gpt-4.1-nano", - "verified": true - }, - { - "provider_model": "gpt-4.1-nano-2025-04-14", - "canonical_model": "openai/gpt-4.1-nano", - "verified": true - }, - { - "provider_model": "gpt-4o", - "canonical_model": "openai/gpt-4o", - "verified": true - }, - { - "provider_model": "gpt-4o-2024-05-13", - "canonical_model": "openai/gpt-4o", - "verified": true - }, - { - "provider_model": "gpt-4o-2024-08-06", - "canonical_model": "openai/gpt-4o", - "verified": true - }, - { - "provider_model": "gpt-4o-2024-11-20", - "canonical_model": "openai/gpt-4o", - "verified": true - }, - { - "provider_model": "gpt-4o-audio-preview", - "canonical_model": "openai/gpt-4o-audio", - "verified": true - }, - { - "provider_model": "gpt-4o-audio-preview-2024-12-17", - "canonical_model": "openai/gpt-4o-audio", - "verified": true - }, - { - "provider_model": "gpt-4o-audio-preview-2025-06-03", - "canonical_model": "openai/gpt-4o-audio", - "verified": true - }, - { - "provider_model": "gpt-4o-mini", - "canonical_model": "openai/gpt-4o-mini", - "verified": true - }, - { - "provider_model": "gpt-4o-mini-2024-07-18", - "canonical_model": "openai/gpt-4o-mini", - "verified": true - }, - { - "provider_model": "gpt-4o-mini-search-preview", - "canonical_model": "openai/gpt-4o-mini-search", - "verified": true - }, - { - "provider_model": "gpt-4o-mini-search-preview-2025-03-11", - "canonical_model": "openai/gpt-4o-mini-search", - "verified": true - }, - { - "provider_model": "gpt-4o-search-preview", - "canonical_model": "openai/gpt-4o-search", - "verified": true - }, - { - "provider_model": "gpt-4o-search-preview-2025-03-11", - "canonical_model": "openai/gpt-4o-search", - "verified": true - }, - { - "provider_model": "gpt-5", - "canonical_model": "openai/gpt-5", - "verified": true - }, - { - "provider_model": "gpt-5-2025-08-07", - "canonical_model": "openai/gpt-5", - "verified": true - }, - { - "provider_model": "gpt-5-codex", - "canonical_model": "openai/gpt-5-codex", - "verified": true - }, - { - "provider_model": "gpt-5-mini", - "canonical_model": "openai/gpt-5-mini", - "verified": true - }, - { - "provider_model": "gpt-5-mini-2025-08-07", - "canonical_model": "openai/gpt-5-mini", - "verified": true - }, - { - "provider_model": "gpt-5-nano", - "canonical_model": "openai/gpt-5-nano", - "verified": true - }, - { - "provider_model": "gpt-5-nano-2025-08-07", - "canonical_model": "openai/gpt-5-nano", - "verified": true - }, - { - "provider_model": "gpt-5-pro", - "canonical_model": "openai/gpt-5-pro", - "verified": true - }, - { - "provider_model": "gpt-5-pro-2025-10-06", - "canonical_model": "openai/gpt-5-pro", - "verified": true - }, - { - "provider_model": "gpt-5.1", - "canonical_model": "openai/gpt-5.1", - "verified": true - }, - { - "provider_model": "gpt-5.1-2025-11-13", - "canonical_model": "openai/gpt-5.1", - "verified": true - }, - { - "provider_model": "gpt-5.1-codex", - "canonical_model": "openai/gpt-5.1-codex", - "verified": true - }, - { - "provider_model": "gpt-5.1-codex-max", - "canonical_model": "openai/gpt-5.1-codex-max", - "verified": true - }, - { - "provider_model": "gpt-5.1-codex-mini", - "canonical_model": "openai/gpt-5.1-codex-mini", - "verified": true - }, - { - "provider_model": "o1", - "canonical_model": "openai/o1", - "verified": true - }, - { - "provider_model": "o1-2024-12-17", - "canonical_model": "openai/o1", - "verified": true - }, - { - "provider_model": "o1-pro", - "canonical_model": "openai/o1-pro", - "verified": true - }, - { - "provider_model": "o1-pro-2025-03-19", - "canonical_model": "openai/o1-pro", - "verified": true - }, - { - "provider_model": "o3", - "canonical_model": "openai/o3", - "verified": true - }, - { - "provider_model": "o3-2025-04-16", - "canonical_model": "openai/o3", - "verified": true - }, - { - "provider_model": "o3-deep-research", - "canonical_model": "openai/o3-deep-research", - "verified": true - }, - { - "provider_model": "o3-deep-research-2025-06-26", - "canonical_model": "openai/o3-deep-research", - "verified": true - }, - { - "provider_model": "o3-mini", - "canonical_model": "openai/o3-mini", - "verified": true - }, - { - "provider_model": "o3-mini-2025-01-31", - "canonical_model": "openai/o3-mini", - "verified": true - }, - { - "provider_model": "o3-pro", - "canonical_model": "openai/o3-pro", - "verified": true - }, - { - "provider_model": "o3-pro-2025-06-10", - "canonical_model": "openai/o3-pro", - "verified": true - }, - { - "provider_model": "o4-mini", - "canonical_model": "openai/o4-mini", - "verified": true - }, - { - "provider_model": "o4-mini-2025-04-16", - "canonical_model": "openai/o4-mini", - "verified": true - }, - { - "provider_model": "o4-mini-deep-research", - "canonical_model": "openai/o4-mini-deep-research", - "verified": true - }, - { - "provider_model": "o4-mini-deep-research-2025-06-26", - "canonical_model": "openai/o4-mini-deep-research", - "verified": true - } - ], - "google": [ - { - "provider_model": "gemini-2.0-flash", - "canonical_model": "google/gemini-2.0-flash", - "verified": true - }, - { - "provider_model": "gemini-2.0-flash-001", - "canonical_model": "google/gemini-2.0-flash", - "verified": true - }, - { - "provider_model": "gemini-2.0-flash-exp", - "canonical_model": "google/gemini-2.0-flash", - "verified": true - }, - { - "provider_model": "gemini-2.0-flash-lite", - "canonical_model": "google/gemini-2.0-flash-lite", - "verified": true - }, - { - "provider_model": "gemini-2.0-flash-lite-001", - "canonical_model": "google/gemini-2.0-flash-lite", - "verified": true - }, - { - "provider_model": "gemini-2.0-flash-lite-preview", - "canonical_model": "google/gemini-2.0-flash-lite", - "verified": true - }, - { - "provider_model": "gemini-2.0-flash-lite-preview-02-05", - "canonical_model": "google/gemini-2.0-flash-lite", - "verified": true - }, - { - "provider_model": "gemini-2.5-flash", - "canonical_model": "google/gemini-2.5-flash", - "verified": true - }, - { - "provider_model": "gemini-2.5-flash-image", - "canonical_model": "google/gemini-2.5-flash-image", - "verified": true - }, - { - "provider_model": "gemini-2.5-flash-image-preview", - "canonical_model": "google/gemini-2.5-flash-image", - "verified": true - }, - { - "provider_model": "gemini-2.5-flash-lite", - "canonical_model": "google/gemini-2.5-flash-lite", - "verified": true - }, - { - "provider_model": "gemini-2.5-flash-lite-preview-09-2025", - "canonical_model": "google/gemini-2.5-flash-lite", - "verified": true - }, - { - "provider_model": "gemini-2.5-flash-preview-09-2025", - "canonical_model": "google/gemini-2.5-flash", - "verified": true - }, - { - "provider_model": "gemini-2.5-pro", - "canonical_model": "google/gemini-2.5-pro", - "verified": true - }, - { - "provider_model": "gemini-3-pro-image-preview", - "canonical_model": "google/gemini-3-pro-image", - "verified": true - }, - { - "provider_model": "gemini-3-pro-preview", - "canonical_model": "google/gemini-3-pro", - "verified": true - }, - { - "provider_model": "gemma-3-12b-it", - "canonical_model": "google/gemma-3-12b-it", - "verified": true - }, - { - "provider_model": "gemma-3-27b-it", - "canonical_model": "google/gemma-3-27b-it", - "verified": true - }, - { - "provider_model": "gemma-3-4b-it", - "canonical_model": "google/gemma-3-4b-it", - "verified": true - }, - { - "provider_model": "gemma-3n-e4b-it", - "canonical_model": "google/gemma-3n-e4b-it", - "verified": true - } - ], - "tetrate": [] + "databricks": [] }, "mapped_models": [ { @@ -4445,24 +4461,24 @@ }, { "provider": "anthropic", - "model": "claude-opus-4-20250514", - "canonical": "anthropic/claude-opus-4" + "model": "claude-sonnet-4-20250514", + "canonical": "anthropic/claude-sonnet-4" + }, + { + "provider": "anthropic", + "model": "claude-opus-4-1-20250805", + "canonical": "anthropic/claude-opus-4.1" + }, + { + "provider": "anthropic", + "model": "claude-3-opus-20240229", + "canonical": "anthropic/claude-3-opus" }, { "provider": "anthropic", "model": "claude-haiku-4-5-20251001", "canonical": "anthropic/claude-haiku-4.5" }, - { - "provider": "anthropic", - "model": "claude-3-7-sonnet-20250219", - "canonical": "anthropic/claude-3.7-sonnet" - }, - { - "provider": "anthropic", - "model": "claude-sonnet-4-20250514", - "canonical": "anthropic/claude-sonnet-4" - }, { "provider": "anthropic", "model": "claude-sonnet-4-5-20250929", @@ -4473,64 +4489,24 @@ "model": "claude-3-5-haiku-20241022", "canonical": "anthropic/claude-3.5-haiku" }, + { + "provider": "anthropic", + "model": "claude-opus-4-20250514", + "canonical": "anthropic/claude-opus-4" + }, + { + "provider": "anthropic", + "model": "claude-3-7-sonnet-20250219", + "canonical": "anthropic/claude-3.7-sonnet" + }, { "provider": "anthropic", "model": "claude-3-haiku-20240307", "canonical": "anthropic/claude-3-haiku" }, - { - "provider": "anthropic", - "model": "claude-3-opus-20240229", - "canonical": "anthropic/claude-3-opus" - }, - { - "provider": "anthropic", - "model": "claude-opus-4-1-20250805", - "canonical": "anthropic/claude-opus-4.1" - }, { "provider": "openai", - "model": "o4-mini-2025-04-16", - "canonical": "openai/o4-mini" - }, - { - "provider": "openai", - "model": "gpt-4o-search-preview", - "canonical": "openai/gpt-4o-search" - }, - { - "provider": "openai", - "model": "gpt-3.5-turbo-1106", - "canonical": "openai/gpt-3.5-turbo" - }, - { - "provider": "openai", - "model": "gpt-4o-audio-preview-2025-06-03", - "canonical": "openai/gpt-4o-audio" - }, - { - "provider": "openai", - "model": "o3-deep-research", - "canonical": "openai/o3-deep-research" - }, - { - "provider": "openai", - "model": "gpt-4-0314", - "canonical": "openai/gpt-4" - }, - { - "provider": "openai", - "model": "gpt-5-mini", - "canonical": "openai/gpt-5-mini" - }, - { - "provider": "openai", - "model": "gpt-4o-mini-search-preview", - "canonical": "openai/gpt-4o-mini-search" - }, - { - "provider": "openai", - "model": "gpt-4o-2024-11-20", + "model": "gpt-4o", "canonical": "openai/gpt-4o" }, { @@ -4540,43 +4516,33 @@ }, { "provider": "openai", - "model": "gpt-4.1-mini-2025-04-14", - "canonical": "openai/gpt-4.1-mini" - }, - { - "provider": "openai", - "model": "gpt-4o-mini-2024-07-18", + "model": "gpt-4o-mini", "canonical": "openai/gpt-4o-mini" }, { "provider": "openai", - "model": "gpt-4o-search-preview-2025-03-11", - "canonical": "openai/gpt-4o-search" + "model": "gpt-5.1-codex-max", + "canonical": "openai/gpt-5.1-codex-max" }, { "provider": "openai", - "model": "gpt-3.5-turbo-0125", - "canonical": "openai/gpt-3.5-turbo" + "model": "o4-mini", + "canonical": "openai/o4-mini" }, { "provider": "openai", - "model": "o3-pro", - "canonical": "openai/o3-pro" + "model": "gpt-4-0314", + "canonical": "openai/gpt-4" }, { "provider": "openai", - "model": "o3-2025-04-16", - "canonical": "openai/o3" + "model": "gpt-5.1-2025-11-13", + "canonical": "openai/gpt-5.1" }, { "provider": "openai", - "model": "gpt-3.5-turbo-instruct", - "canonical": "openai/gpt-3.5-turbo-instruct" - }, - { - "provider": "openai", - "model": "gpt-5-nano", - "canonical": "openai/gpt-5-nano" + "model": "o3-mini", + "canonical": "openai/o3-mini" }, { "provider": "openai", @@ -4585,59 +4551,9 @@ }, { "provider": "openai", - "model": "gpt-4-0125-preview", - "canonical": "openai/gpt-4" - }, - { - "provider": "openai", - "model": "gpt-4-turbo-preview", - "canonical": "openai/gpt-4-turbo" - }, - { - "provider": "openai", - "model": "gpt-4o-2024-08-06", - "canonical": "openai/gpt-4o" - }, - { - "provider": "openai", - "model": "gpt-3.5-turbo", - "canonical": "openai/gpt-3.5-turbo" - }, - { - "provider": "openai", - "model": "gpt-5-pro", - "canonical": "openai/gpt-5-pro" - }, - { - "provider": "openai", - "model": "gpt-3.5-turbo-instruct-0914", - "canonical": "openai/gpt-3.5-turbo-instruct" - }, - { - "provider": "openai", - "model": "gpt-5-2025-08-07", - "canonical": "openai/gpt-5" - }, - { - "provider": "openai", - "model": "gpt-4o", - "canonical": "openai/gpt-4o" - }, - { - "provider": "openai", - "model": "gpt-4o-mini", + "model": "gpt-4o-mini-2024-07-18", "canonical": "openai/gpt-4o-mini" }, - { - "provider": "openai", - "model": "o3-deep-research-2025-06-26", - "canonical": "openai/o3-deep-research" - }, - { - "provider": "openai", - "model": "gpt-4o-mini-search-preview-2025-03-11", - "canonical": "openai/gpt-4o-mini-search" - }, { "provider": "openai", "model": "gpt-4-turbo-2024-04-09", @@ -4645,13 +4561,28 @@ }, { "provider": "openai", - "model": "o3-pro-2025-06-10", - "canonical": "openai/o3-pro" + "model": "gpt-4o-audio-preview-2024-12-17", + "canonical": "openai/gpt-4o-audio" }, { "provider": "openai", - "model": "gpt-4.1-nano", - "canonical": "openai/gpt-4.1-nano" + "model": "gpt-4.1-mini-2025-04-14", + "canonical": "openai/gpt-4.1-mini" + }, + { + "provider": "openai", + "model": "gpt-5-codex", + "canonical": "openai/gpt-5-codex" + }, + { + "provider": "openai", + "model": "gpt-5-pro", + "canonical": "openai/gpt-5-pro" + }, + { + "provider": "openai", + "model": "gpt-3.5-turbo-0125", + "canonical": "openai/gpt-3.5-turbo" }, { "provider": "openai", @@ -4660,19 +4591,59 @@ }, { "provider": "openai", - "model": "gpt-5-pro-2025-10-06", - "canonical": "openai/gpt-5-pro" + "model": "gpt-5.1", + "canonical": "openai/gpt-5.1" }, { "provider": "openai", - "model": "gpt-5", + "model": "gpt-4o-audio-preview", + "canonical": "openai/gpt-4o-audio" + }, + { + "provider": "openai", + "model": "o3-2025-04-16", + "canonical": "openai/o3" + }, + { + "provider": "openai", + "model": "gpt-5-2025-08-07", "canonical": "openai/gpt-5" }, { "provider": "openai", - "model": "gpt-4o-audio-preview-2024-12-17", + "model": "gpt-4-0613", + "canonical": "openai/gpt-4" + }, + { + "provider": "openai", + "model": "gpt-4o-audio-preview-2025-06-03", "canonical": "openai/gpt-4o-audio" }, + { + "provider": "openai", + "model": "gpt-4.1-nano-2025-04-14", + "canonical": "openai/gpt-4.1-nano" + }, + { + "provider": "openai", + "model": "chatgpt-4o-latest", + "canonical": "openai/chatgpt-4o-latest" + }, + { + "provider": "openai", + "model": "gpt-3.5-turbo-instruct-0914", + "canonical": "openai/gpt-3.5-turbo-instruct" + }, + { + "provider": "openai", + "model": "gpt-4", + "canonical": "openai/gpt-4" + }, + { + "provider": "openai", + "model": "o1", + "canonical": "openai/o1" + }, { "provider": "openai", "model": "gpt-5.1-codex-mini", @@ -4685,73 +4656,13 @@ }, { "provider": "openai", - "model": "gpt-4o-2024-05-13", - "canonical": "openai/gpt-4o" - }, - { - "provider": "openai", - "model": "gpt-4-1106-preview", - "canonical": "openai/gpt-4" - }, - { - "provider": "openai", - "model": "gpt-5.1", - "canonical": "openai/gpt-5.1" - }, - { - "provider": "openai", - "model": "o1-pro-2025-03-19", + "model": "o1-pro", "canonical": "openai/o1-pro" }, { "provider": "openai", - "model": "o4-mini-deep-research-2025-06-26", - "canonical": "openai/o4-mini-deep-research" - }, - { - "provider": "openai", - "model": "o1", - "canonical": "openai/o1" - }, - { - "provider": "openai", - "model": "gpt-5.1-codex", - "canonical": "openai/gpt-5.1-codex" - }, - { - "provider": "openai", - "model": "gpt-4o-audio-preview", - "canonical": "openai/gpt-4o-audio" - }, - { - "provider": "openai", - "model": "o1-2024-12-17", - "canonical": "openai/o1" - }, - { - "provider": "openai", - "model": "o3-mini", - "canonical": "openai/o3-mini" - }, - { - "provider": "openai", - "model": "o4-mini-deep-research", - "canonical": "openai/o4-mini-deep-research" - }, - { - "provider": "openai", - "model": "gpt-4", - "canonical": "openai/gpt-4" - }, - { - "provider": "openai", - "model": "gpt-4-0613", - "canonical": "openai/gpt-4" - }, - { - "provider": "openai", - "model": "gpt-4.1-nano-2025-04-14", - "canonical": "openai/gpt-4.1-nano" + "model": "gpt-5-mini", + "canonical": "openai/gpt-5-mini" }, { "provider": "openai", @@ -4760,8 +4671,8 @@ }, { "provider": "openai", - "model": "o1-pro", - "canonical": "openai/o1-pro" + "model": "gpt-4o-search-preview", + "canonical": "openai/gpt-4o-search" }, { "provider": "openai", @@ -4770,33 +4681,28 @@ }, { "provider": "openai", - "model": "gpt-5-codex", - "canonical": "openai/gpt-5-codex" + "model": "gpt-5", + "canonical": "openai/gpt-5" }, { "provider": "openai", - "model": "chatgpt-4o-latest", - "canonical": "openai/chatgpt-4o-latest" + "model": "o1-2024-12-17", + "canonical": "openai/o1" }, { "provider": "openai", - "model": "gpt-4-turbo", - "canonical": "openai/gpt-4-turbo" + "model": "gpt-4o-search-preview-2025-03-11", + "canonical": "openai/gpt-4o-search" }, { "provider": "openai", - "model": "gpt-5-mini-2025-08-07", - "canonical": "openai/gpt-5-mini" + "model": "gpt-4-1106-preview", + "canonical": "openai/gpt-4" }, { "provider": "openai", - "model": "gpt-5.1-codex-max", - "canonical": "openai/gpt-5.1-codex-max" - }, - { - "provider": "openai", - "model": "gpt-5.1-2025-11-13", - "canonical": "openai/gpt-5.1" + "model": "gpt-3.5-turbo", + "canonical": "openai/gpt-3.5-turbo" }, { "provider": "openai", @@ -4805,133 +4711,133 @@ }, { "provider": "openai", - "model": "o4-mini", - "canonical": "openai/o4-mini" - }, - { - "provider": "openrouter", - "model": "openai/gpt-5.1-chat", - "canonical": "openai/gpt-5.1-chat" - }, - { - "provider": "openrouter", - "model": "anthropic/claude-opus-4.5", - "canonical": "anthropic/claude-opus-4.5" - }, - { - "provider": "openrouter", - "model": "openai/gpt-5-codex", - "canonical": "openai/gpt-5-codex" - }, - { - "provider": "openrouter", - "model": "google/gemini-2.5-flash-preview-09-2025", - "canonical": "google/gemini-2.5-flash" - }, - { - "provider": "openrouter", - "model": "openai/gpt-4-turbo-preview", - "canonical": "openai/gpt-4-turbo" - }, - { - "provider": "openrouter", - "model": "openai/gpt-oss-120b", - "canonical": "openai/gpt-oss-120b" - }, - { - "provider": "openrouter", - "model": "openai/gpt-4o-2024-11-20", - "canonical": "openai/gpt-4o" - }, - { - "provider": "openrouter", - "model": "openai/o4-mini-high", - "canonical": "openai/o4-mini-high" - }, - { - "provider": "openrouter", - "model": "openai/gpt-4-0314", + "model": "gpt-4-0125-preview", "canonical": "openai/gpt-4" }, { - "provider": "openrouter", - "model": "openai/gpt-4o-2024-05-13", + "provider": "openai", + "model": "o3-pro-2025-06-10", + "canonical": "openai/o3-pro" + }, + { + "provider": "openai", + "model": "o4-mini-deep-research", + "canonical": "openai/o4-mini-deep-research" + }, + { + "provider": "openai", + "model": "gpt-3.5-turbo-1106", + "canonical": "openai/gpt-3.5-turbo" + }, + { + "provider": "openai", + "model": "gpt-4o-2024-05-13", + "canonical": "openai/gpt-4o" + }, + { + "provider": "openai", + "model": "gpt-4-turbo-preview", + "canonical": "openai/gpt-4-turbo" + }, + { + "provider": "openai", + "model": "gpt-4o-mini-search-preview-2025-03-11", + "canonical": "openai/gpt-4o-mini-search" + }, + { + "provider": "openai", + "model": "gpt-5.1-codex", + "canonical": "openai/gpt-5.1-codex" + }, + { + "provider": "openai", + "model": "o4-mini-deep-research-2025-06-26", + "canonical": "openai/o4-mini-deep-research" + }, + { + "provider": "openai", + "model": "gpt-4.1-nano", + "canonical": "openai/gpt-4.1-nano" + }, + { + "provider": "openai", + "model": "o3-deep-research", + "canonical": "openai/o3-deep-research" + }, + { + "provider": "openai", + "model": "gpt-5-mini-2025-08-07", + "canonical": "openai/gpt-5-mini" + }, + { + "provider": "openai", + "model": "gpt-5-nano", + "canonical": "openai/gpt-5-nano" + }, + { + "provider": "openai", + "model": "gpt-4o-2024-11-20", + "canonical": "openai/gpt-4o" + }, + { + "provider": "openai", + "model": "o4-mini-2025-04-16", + "canonical": "openai/o4-mini" + }, + { + "provider": "openai", + "model": "gpt-3.5-turbo-instruct", + "canonical": "openai/gpt-3.5-turbo-instruct" + }, + { + "provider": "openai", + "model": "o1-pro-2025-03-19", + "canonical": "openai/o1-pro" + }, + { + "provider": "openai", + "model": "gpt-4o-mini-search-preview", + "canonical": "openai/gpt-4o-mini-search" + }, + { + "provider": "openai", + "model": "gpt-5-pro-2025-10-06", + "canonical": "openai/gpt-5-pro" + }, + { + "provider": "openai", + "model": "gpt-4-turbo", + "canonical": "openai/gpt-4-turbo" + }, + { + "provider": "openai", + "model": "o3-deep-research-2025-06-26", + "canonical": "openai/o3-deep-research" + }, + { + "provider": "openai", + "model": "o3-pro", + "canonical": "openai/o3-pro" + }, + { + "provider": "openai", + "model": "gpt-4o-2024-08-06", "canonical": "openai/gpt-4o" }, { "provider": "openrouter", - "model": "openai/gpt-4o-audio-preview", - "canonical": "openai/gpt-4o-audio" + "model": "google/gemini-2.5-pro-preview-05-06", + "canonical": "google/gemini-2.5-pro" }, { "provider": "openrouter", - "model": "openai/o3", - "canonical": "openai/o3" + "model": "openai/codex-mini", + "canonical": "openai/codex-mini" }, { "provider": "openrouter", - "model": "anthropic/claude-3.7-sonnet", - "canonical": "anthropic/claude-3.7-sonnet" - }, - { - "provider": "openrouter", - "model": "anthropic/claude-sonnet-4", - "canonical": "anthropic/claude-sonnet-4" - }, - { - "provider": "openrouter", - "model": "google/gemma-3-27b-it", - "canonical": "google/gemma-3-27b-it" - }, - { - "provider": "openrouter", - "model": "openai/gpt-5.1-codex-mini", - "canonical": "openai/gpt-5.1-codex-mini" - }, - { - "provider": "openrouter", - "model": "openai/gpt-5-pro", - "canonical": "openai/gpt-5-pro" - }, - { - "provider": "openrouter", - "model": "openai/gpt-5-mini", - "canonical": "openai/gpt-5-mini" - }, - { - "provider": "openrouter", - "model": "openai/gpt-4o-mini-2024-07-18", - "canonical": "openai/gpt-4o-mini" - }, - { - "provider": "openrouter", - "model": "openai/gpt-5.1-codex-max", - "canonical": "openai/gpt-5.1-codex-max" - }, - { - "provider": "openrouter", - "model": "openai/gpt-oss-20b", - "canonical": "openai/gpt-oss-20b" - }, - { - "provider": "openrouter", - "model": "anthropic/claude-3-haiku", - "canonical": "anthropic/claude-3-haiku" - }, - { - "provider": "openrouter", - "model": "openai/gpt-4.1", - "canonical": "openai/gpt-4.1" - }, - { - "provider": "openrouter", - "model": "anthropic/claude-3-opus", - "canonical": "anthropic/claude-3-opus" - }, - { - "provider": "openrouter", - "model": "anthropic/claude-sonnet-4.5", - "canonical": "anthropic/claude-sonnet-4.5" + "model": "openai/o3-pro", + "canonical": "openai/o3-pro" }, { "provider": "openrouter", @@ -4940,13 +4846,18 @@ }, { "provider": "openrouter", - "model": "openai/gpt-4-1106-preview", - "canonical": "openai/gpt-4" + "model": "anthropic/claude-3.5-haiku-20241022", + "canonical": "anthropic/claude-3.5-haiku" }, { "provider": "openrouter", - "model": "openai/gpt-5.1-codex", - "canonical": "openai/gpt-5.1-codex" + "model": "anthropic/claude-3-haiku", + "canonical": "anthropic/claude-3-haiku" + }, + { + "provider": "openrouter", + "model": "openai/gpt-4o-audio-preview", + "canonical": "openai/gpt-4o-audio" }, { "provider": "openrouter", @@ -4955,12 +4866,107 @@ }, { "provider": "openrouter", - "model": "anthropic/claude-opus-4.1", - "canonical": "anthropic/claude-opus-4.1" + "model": "openai/gpt-5-mini", + "canonical": "openai/gpt-5-mini" }, { "provider": "openrouter", - "model": "openai/gpt-4-turbo", + "model": "openai/o4-mini-deep-research", + "canonical": "openai/o4-mini-deep-research" + }, + { + "provider": "openrouter", + "model": "openai/gpt-5-codex", + "canonical": "openai/gpt-5-codex" + }, + { + "provider": "openrouter", + "model": "anthropic/claude-3.7-sonnet:thinking", + "canonical": "anthropic/claude-3.7-sonnet:thinking" + }, + { + "provider": "openrouter", + "model": "openai/gpt-5.1-chat", + "canonical": "openai/gpt-5.1-chat" + }, + { + "provider": "openrouter", + "model": "openai/o3-mini-high", + "canonical": "openai/o3-mini-high" + }, + { + "provider": "openrouter", + "model": "google/gemini-2.5-pro", + "canonical": "google/gemini-2.5-pro" + }, + { + "provider": "openrouter", + "model": "openai/gpt-5-image", + "canonical": "openai/gpt-5-image" + }, + { + "provider": "openrouter", + "model": "openai/gpt-oss-120b:exacto", + "canonical": "openai/gpt-oss-120b" + }, + { + "provider": "openrouter", + "model": "anthropic/claude-3.5-sonnet", + "canonical": "anthropic/claude-3.5-sonnet" + }, + { + "provider": "openrouter", + "model": "google/gemini-2.5-flash", + "canonical": "google/gemini-2.5-flash" + }, + { + "provider": "openrouter", + "model": "openai/gpt-4o-2024-11-20", + "canonical": "openai/gpt-4o" + }, + { + "provider": "openrouter", + "model": "openai/gpt-4", + "canonical": "openai/gpt-4" + }, + { + "provider": "openrouter", + "model": "google/gemma-3-27b-it", + "canonical": "google/gemma-3-27b-it" + }, + { + "provider": "openrouter", + "model": "google/gemini-2.5-pro-preview", + "canonical": "google/gemini-2.5-pro" + }, + { + "provider": "openrouter", + "model": "openai/gpt-4o", + "canonical": "openai/gpt-4o" + }, + { + "provider": "openrouter", + "model": "openai/gpt-5", + "canonical": "openai/gpt-5" + }, + { + "provider": "openrouter", + "model": "openai/o1", + "canonical": "openai/o1" + }, + { + "provider": "openrouter", + "model": "openai/gpt-4o-2024-08-06", + "canonical": "openai/gpt-4o" + }, + { + "provider": "openrouter", + "model": "google/gemini-3-pro-preview", + "canonical": "google/gemini-3-pro" + }, + { + "provider": "openrouter", + "model": "openai/gpt-4-turbo-preview", "canonical": "openai/gpt-4-turbo" }, { @@ -4970,163 +4976,18 @@ }, { "provider": "openrouter", - "model": "anthropic/claude-3.7-sonnet:thinking", - "canonical": "anthropic/claude-3.7-sonnet:thinking" + "model": "openai/o3", + "canonical": "openai/o3" }, { "provider": "openrouter", - "model": "openai/o3-pro", - "canonical": "openai/o3-pro" + "model": "anthropic/claude-opus-4.5", + "canonical": "anthropic/claude-opus-4.5" }, { "provider": "openrouter", - "model": "openai/gpt-3.5-turbo-16k", - "canonical": "openai/gpt-3.5-turbo-16k" - }, - { - "provider": "openrouter", - "model": "google/gemini-2.5-flash-lite-preview-09-2025", - "canonical": "google/gemini-2.5-flash-lite" - }, - { - "provider": "openrouter", - "model": "openai/gpt-3.5-turbo", - "canonical": "openai/gpt-3.5-turbo" - }, - { - "provider": "openrouter", - "model": "openai/gpt-4.1-nano", - "canonical": "openai/gpt-4.1-nano" - }, - { - "provider": "openrouter", - "model": "openai/gpt-5", - "canonical": "openai/gpt-5" - }, - { - "provider": "openrouter", - "model": "openai/o4-mini-deep-research", - "canonical": "openai/o4-mini-deep-research" - }, - { - "provider": "openrouter", - "model": "openai/gpt-4o", - "canonical": "openai/gpt-4o" - }, - { - "provider": "openrouter", - "model": "openai/gpt-4o:extended", - "canonical": "openai/gpt-4o:extended" - }, - { - "provider": "openrouter", - "model": "openai/o4-mini", - "canonical": "openai/o4-mini" - }, - { - "provider": "openrouter", - "model": "google/gemini-2.0-flash-001", - "canonical": "google/gemini-2.0-flash" - }, - { - "provider": "openrouter", - "model": "openai/gpt-5-image", - "canonical": "openai/gpt-5-image" - }, - { - "provider": "openrouter", - "model": "google/gemini-2.5-flash-lite", - "canonical": "google/gemini-2.5-flash-lite" - }, - { - "provider": "openrouter", - "model": "openai/codex-mini", - "canonical": "openai/codex-mini" - }, - { - "provider": "openrouter", - "model": "google/gemini-2.5-pro-preview", - "canonical": "google/gemini-2.5-pro" - }, - { - "provider": "openrouter", - "model": "openai/o3-mini-high", - "canonical": "openai/o3-mini-high" - }, - { - "provider": "openrouter", - "model": "openai/o3-mini", - "canonical": "openai/o3-mini" - }, - { - "provider": "openrouter", - "model": "openai/gpt-4", - "canonical": "openai/gpt-4" - }, - { - "provider": "openrouter", - "model": "google/gemini-2.5-flash", - "canonical": "google/gemini-2.5-flash" - }, - { - "provider": "openrouter", - "model": "openai/gpt-5.1", - "canonical": "openai/gpt-5.1" - }, - { - "provider": "openrouter", - "model": "anthropic/claude-3.5-sonnet", - "canonical": "anthropic/claude-3.5-sonnet" - }, - { - "provider": "openrouter", - "model": "openai/gpt-4o-mini", - "canonical": "openai/gpt-4o-mini" - }, - { - "provider": "openrouter", - "model": "openai/gpt-oss-safeguard-20b", - "canonical": "openai/gpt-oss-safeguard-20b" - }, - { - "provider": "openrouter", - "model": "anthropic/claude-opus-4", - "canonical": "anthropic/claude-opus-4" - }, - { - "provider": "openrouter", - "model": "openai/gpt-oss-120b:exacto", - "canonical": "openai/gpt-oss-120b" - }, - { - "provider": "openrouter", - "model": "openai/gpt-5-image-mini", - "canonical": "openai/gpt-5-image-mini" - }, - { - "provider": "openrouter", - "model": "google/gemini-2.5-pro-preview-05-06", - "canonical": "google/gemini-2.5-pro" - }, - { - "provider": "openrouter", - "model": "google/gemini-3-pro-preview", - "canonical": "google/gemini-3-pro" - }, - { - "provider": "openrouter", - "model": "openai/gpt-4.1-mini", - "canonical": "openai/gpt-4.1-mini" - }, - { - "provider": "openrouter", - "model": "anthropic/claude-3.5-haiku-20241022", - "canonical": "anthropic/claude-3.5-haiku" - }, - { - "provider": "openrouter", - "model": "openai/o1", - "canonical": "openai/o1" + "model": "anthropic/claude-3.7-sonnet", + "canonical": "anthropic/claude-3.7-sonnet" }, { "provider": "openrouter", @@ -5135,8 +4996,88 @@ }, { "provider": "openrouter", - "model": "google/gemini-2.5-pro", - "canonical": "google/gemini-2.5-pro" + "model": "openai/gpt-5.1-codex-mini", + "canonical": "openai/gpt-5.1-codex-mini" + }, + { + "provider": "openrouter", + "model": "openai/gpt-3.5-turbo-16k", + "canonical": "openai/gpt-3.5-turbo-16k" + }, + { + "provider": "openrouter", + "model": "openai/gpt-4o:extended", + "canonical": "openai/gpt-4o:extended" + }, + { + "provider": "openrouter", + "model": "google/gemini-2.5-flash-lite-preview-09-2025", + "canonical": "google/gemini-2.5-flash-lite" + }, + { + "provider": "openrouter", + "model": "openai/gpt-5.1-codex-max", + "canonical": "openai/gpt-5.1-codex-max" + }, + { + "provider": "openrouter", + "model": "openai/gpt-5-nano", + "canonical": "openai/gpt-5-nano" + }, + { + "provider": "openrouter", + "model": "anthropic/claude-opus-4.1", + "canonical": "anthropic/claude-opus-4.1" + }, + { + "provider": "openrouter", + "model": "openai/gpt-oss-safeguard-20b", + "canonical": "openai/gpt-oss-safeguard-20b" + }, + { + "provider": "openrouter", + "model": "openai/gpt-4-turbo", + "canonical": "openai/gpt-4-turbo" + }, + { + "provider": "openrouter", + "model": "openai/gpt-5.1-codex", + "canonical": "openai/gpt-5.1-codex" + }, + { + "provider": "openrouter", + "model": "anthropic/claude-sonnet-4.5", + "canonical": "anthropic/claude-sonnet-4.5" + }, + { + "provider": "openrouter", + "model": "openai/o3-mini", + "canonical": "openai/o3-mini" + }, + { + "provider": "openrouter", + "model": "openai/gpt-4-0314", + "canonical": "openai/gpt-4" + }, + { + "provider": "openrouter", + "model": "anthropic/claude-opus-4", + "canonical": "anthropic/claude-opus-4" + }, + { + "provider": "openrouter", + "model": "openai/gpt-4-1106-preview", + "canonical": "openai/gpt-4" + }, + { + "provider": "openrouter", + "model": "openai/gpt-4.1-nano", + "canonical": "openai/gpt-4.1-nano" + }, + { + "provider": "openrouter", + "model": "openai/gpt-oss-120b", + "canonical": "openai/gpt-oss-120b" }, { "provider": "openrouter", @@ -5145,22 +5086,97 @@ }, { "provider": "openrouter", - "model": "openai/gpt-4o-2024-08-06", + "model": "openai/o4-mini", + "canonical": "openai/o4-mini" + }, + { + "provider": "openrouter", + "model": "openai/gpt-4.1", + "canonical": "openai/gpt-4.1" + }, + { + "provider": "openrouter", + "model": "openai/gpt-5-pro", + "canonical": "openai/gpt-5-pro" + }, + { + "provider": "openrouter", + "model": "anthropic/claude-sonnet-4", + "canonical": "anthropic/claude-sonnet-4" + }, + { + "provider": "openrouter", + "model": "anthropic/claude-3-opus", + "canonical": "anthropic/claude-3-opus" + }, + { + "provider": "openrouter", + "model": "openai/gpt-oss-20b", + "canonical": "openai/gpt-oss-20b" + }, + { + "provider": "openrouter", + "model": "google/gemini-2.0-flash-001", + "canonical": "google/gemini-2.0-flash" + }, + { + "provider": "openrouter", + "model": "openai/gpt-3.5-turbo", + "canonical": "openai/gpt-3.5-turbo" + }, + { + "provider": "openrouter", + "model": "google/gemini-2.5-flash-preview-09-2025", + "canonical": "google/gemini-2.5-flash" + }, + { + "provider": "openrouter", + "model": "openai/gpt-4o-mini", + "canonical": "openai/gpt-4o-mini" + }, + { + "provider": "openrouter", + "model": "openai/gpt-4o-mini-2024-07-18", + "canonical": "openai/gpt-4o-mini" + }, + { + "provider": "openrouter", + "model": "openai/gpt-4o-2024-05-13", "canonical": "openai/gpt-4o" }, { "provider": "openrouter", - "model": "openai/gpt-5-nano", - "canonical": "openai/gpt-5-nano" + "model": "openai/gpt-5-image-mini", + "canonical": "openai/gpt-5-image-mini" }, { - "provider": "google", - "model": "gemini-2.5-flash-lite-preview-09-2025", + "provider": "openrouter", + "model": "openai/gpt-5.1", + "canonical": "openai/gpt-5.1" + }, + { + "provider": "openrouter", + "model": "openai/gpt-4.1-mini", + "canonical": "openai/gpt-4.1-mini" + }, + { + "provider": "openrouter", + "model": "google/gemini-2.5-flash-lite", "canonical": "google/gemini-2.5-flash-lite" }, + { + "provider": "openrouter", + "model": "openai/o4-mini-high", + "canonical": "openai/o4-mini-high" + }, { "provider": "google", - "model": "gemini-2.5-flash", + "model": "gemini-2.0-flash-lite-001", + "canonical": "google/gemini-2.0-flash-lite" + }, + { + "provider": "google", + "model": "gemini-2.5-flash-preview-09-2025", "canonical": "google/gemini-2.5-flash" }, { @@ -5170,18 +5186,8 @@ }, { "provider": "google", - "model": "gemma-3n-e4b-it", - "canonical": "google/gemma-3n-e4b-it" - }, - { - "provider": "google", - "model": "gemini-3-pro-preview", - "canonical": "google/gemini-3-pro" - }, - { - "provider": "google", - "model": "gemini-2.0-flash-lite-001", - "canonical": "google/gemini-2.0-flash-lite" + "model": "gemini-2.0-flash", + "canonical": "google/gemini-2.0-flash" }, { "provider": "google", @@ -5195,17 +5201,37 @@ }, { "provider": "google", - "model": "gemini-2.5-flash-lite", - "canonical": "google/gemini-2.5-flash-lite" + "model": "gemini-3-pro-image-preview", + "canonical": "google/gemini-3-pro-image" }, { "provider": "google", - "model": "gemini-2.5-flash-preview-09-2025", + "model": "gemma-3n-e4b-it", + "canonical": "google/gemma-3n-e4b-it" + }, + { + "provider": "google", + "model": "gemini-2.5-flash", "canonical": "google/gemini-2.5-flash" }, { "provider": "google", - "model": "gemini-2.0-flash", + "model": "gemini-3-pro-preview", + "canonical": "google/gemini-3-pro" + }, + { + "provider": "google", + "model": "gemini-2.0-flash-lite", + "canonical": "google/gemini-2.0-flash-lite" + }, + { + "provider": "google", + "model": "gemma-3-4b-it", + "canonical": "google/gemma-3-4b-it" + }, + { + "provider": "google", + "model": "gemini-2.0-flash-001", "canonical": "google/gemini-2.0-flash" }, { @@ -5213,6 +5239,11 @@ "model": "gemini-2.0-flash-exp", "canonical": "google/gemini-2.0-flash" }, + { + "provider": "google", + "model": "gemini-2.5-flash-lite-preview-09-2025", + "canonical": "google/gemini-2.5-flash-lite" + }, { "provider": "google", "model": "gemini-2.5-pro", @@ -5220,12 +5251,12 @@ }, { "provider": "google", - "model": "gemini-2.0-flash-001", - "canonical": "google/gemini-2.0-flash" + "model": "gemma-3-27b-it", + "canonical": "google/gemma-3-27b-it" }, { "provider": "google", - "model": "gemini-2.0-flash-lite", + "model": "gemini-2.0-flash-lite-preview-02-05", "canonical": "google/gemini-2.0-flash-lite" }, { @@ -5235,98 +5266,83 @@ }, { "provider": "google", - "model": "gemini-2.0-flash-lite-preview-02-05", - "canonical": "google/gemini-2.0-flash-lite" - }, - { - "provider": "google", - "model": "gemini-3-pro-image-preview", - "canonical": "google/gemini-3-pro-image" - }, - { - "provider": "google", - "model": "gemma-3-27b-it", - "canonical": "google/gemma-3-27b-it" - }, - { - "provider": "google", - "model": "gemma-3-4b-it", - "canonical": "google/gemma-3-4b-it" + "model": "gemini-2.5-flash-lite", + "canonical": "google/gemini-2.5-flash-lite" } ], "model_counts": { - "databricks": 153, - "tetrate": 0, - "openrouter": 222, - "openai": 630, + "openrouter": 223, "google": 50, - "anthropic": 10 + "openai": 633, + "anthropic": 10, + "tetrate": 0, + "databricks": 153 }, "canonical_models_used": [ - "anthropic/claude-sonnet-4", - "anthropic/claude-opus-4", - "google/gemma-3-12b-it", - "openai/gpt-oss-120b", - "openai/chatgpt-4o-latest", + "anthropic/claude-sonnet-4.5", + "google/gemini-3-pro-image", + "anthropic/claude-3.7-sonnet", + "openai/gpt-4o-search", + "openai/gpt-5-image-mini", + "openai/gpt-3.5-turbo-16k", + "openai/o3-pro", + "anthropic/claude-3.5-sonnet", + "google/gemini-2.0-flash-lite", "openai/gpt-5.1-codex-mini", + "openai/gpt-4o-mini", + "anthropic/claude-opus-4.5", + "openai/chatgpt-4o-latest", + "openai/gpt-4o-audio", + "openai/gpt-5.1-codex-max", + "openai/gpt-4o-mini-search", + "openai/gpt-5-image", "openai/gpt-oss-20b", "google/gemini-2.5-flash-image", - "openai/gpt-4o-mini", - "google/gemini-2.5-flash-lite", - "openai/gpt-4-turbo", - "openai/gpt-5-image", - "openai/o3-pro", - "openai/gpt-4o", - "openai/gpt-5.1", - "openai/o1-pro", - "openai/gpt-5-mini", - "openai/gpt-4o-audio", - "openai/gpt-4.1", - "anthropic/claude-3.7-sonnet:thinking", - "google/gemma-3-4b-it", - "openai/gpt-3.5-turbo-16k", - "google/gemma-3-27b-it", - "openai/gpt-3.5-turbo", - "openai/gpt-5", - "openai/gpt-5.1-codex", - "openai/gpt-oss-safeguard-20b", - "anthropic/claude-haiku-4.5", - "openai/o3", - "openai/gpt-4.1-mini", - "anthropic/claude-3.5-sonnet", - "openai/gpt-5-image-mini", - "openai/gpt-4o:extended", - "anthropic/claude-3-haiku", - "google/gemini-2.0-flash-lite", - "openai/gpt-4o-search", - "openai/o1", - "openai/gpt-5.1-chat", - "google/gemini-2.0-flash", - "openai/o3-mini-high", - "openai/gpt-4", - "openai/o4-mini-high", - "openai/gpt-5-codex", - "google/gemini-2.5-pro", - "openai/codex-mini", - "openai/gpt-4o-mini-search", - "anthropic/claude-opus-4.5", - "anthropic/claude-sonnet-4.5", - "openai/gpt-5.1-codex-max", - "anthropic/claude-3.7-sonnet", - "google/gemini-2.5-flash", - "openai/gpt-5-pro", - "google/gemini-3-pro-image", - "google/gemini-3-pro", - "anthropic/claude-3.5-haiku", - "openai/o4-mini-deep-research", - "openai/gpt-5-nano", - "google/gemma-3n-e4b-it", - "openai/gpt-4.1-nano", - "openai/o3-deep-research", - "openai/gpt-3.5-turbo-instruct", "openai/o4-mini", - "anthropic/claude-3-opus", + "anthropic/claude-haiku-4.5", + "openai/gpt-5-pro", + "anthropic/claude-opus-4.1", + "openai/o3", + "openai/gpt-5", + "openai/gpt-4-turbo", + "openai/gpt-4.1-mini", + "openai/gpt-5-nano", + "openai/gpt-4", + "google/gemma-3-12b-it", + "openai/o3-deep-research", + "anthropic/claude-3.7-sonnet:thinking", + "openai/codex-mini", + "openai/o3-mini-high", "openai/o3-mini", - "anthropic/claude-opus-4.1" + "google/gemma-3-27b-it", + "openai/gpt-5-mini", + "openai/o4-mini-deep-research", + "google/gemma-3n-e4b-it", + "google/gemma-3-4b-it", + "openai/gpt-3.5-turbo", + "openai/gpt-oss-safeguard-20b", + "anthropic/claude-3-haiku", + "openai/gpt-4.1", + "openai/gpt-5.1-chat", + "google/gemini-3-pro", + "openai/gpt-4.1-nano", + "openai/o4-mini-high", + "google/gemini-2.0-flash", + "openai/gpt-4o:extended", + "openai/o1-pro", + "anthropic/claude-sonnet-4", + "google/gemini-2.5-flash", + "google/gemini-2.5-flash-lite", + "openai/gpt-5.1", + "anthropic/claude-3-opus", + "anthropic/claude-3.5-haiku", + "openai/gpt-5.1-codex", + "google/gemini-2.5-pro", + "openai/gpt-5-codex", + "openai/o1", + "openai/gpt-oss-120b", + "openai/gpt-4o", + "anthropic/claude-opus-4", + "openai/gpt-3.5-turbo-instruct" ] } \ No newline at end of file diff --git a/crates/goose/src/providers/canonical/data/canonical_models.json b/crates/goose/src/providers/canonical/data/canonical_models.json index deb2d390e5..7b4af5cfe0 100644 --- a/crates/goose/src/providers/canonical/data/canonical_models.json +++ b/crates/goose/src/providers/canonical/data/canonical_models.json @@ -5,7 +5,8 @@ "context_length": 200000, "max_completion_tokens": 4096, "input_modalities": [ - "text" + "text", + "image" ], "output_modalities": [ "text" @@ -25,7 +26,8 @@ "context_length": 200000, "max_completion_tokens": 4096, "input_modalities": [ - "text" + "text", + "image" ], "output_modalities": [ "text" @@ -45,7 +47,8 @@ "context_length": 200000, "max_completion_tokens": 8192, "input_modalities": [ - "text" + "text", + "image" ], "output_modalities": [ "text" @@ -65,7 +68,9 @@ "context_length": 200000, "max_completion_tokens": 8192, "input_modalities": [ - "text" + "text", + "image", + "file" ], "output_modalities": [ "text" @@ -85,7 +90,9 @@ "context_length": 200000, "max_completion_tokens": 64000, "input_modalities": [ - "text" + "text", + "image", + "file" ], "output_modalities": [ "text" @@ -105,7 +112,9 @@ "context_length": 200000, "max_completion_tokens": 64000, "input_modalities": [ - "text" + "text", + "image", + "file" ], "output_modalities": [ "text" @@ -125,6 +134,7 @@ "context_length": 200000, "max_completion_tokens": 64000, "input_modalities": [ + "image", "text" ], "output_modalities": [ @@ -145,7 +155,9 @@ "context_length": 200000, "max_completion_tokens": 32000, "input_modalities": [ - "text" + "image", + "text", + "file" ], "output_modalities": [ "text" @@ -165,7 +177,9 @@ "context_length": 200000, "max_completion_tokens": 32000, "input_modalities": [ - "text" + "image", + "text", + "file" ], "output_modalities": [ "text" @@ -185,6 +199,8 @@ "context_length": 200000, "max_completion_tokens": 32000, "input_modalities": [ + "file", + "image", "text" ], "output_modalities": [ @@ -205,7 +221,9 @@ "context_length": 1000000, "max_completion_tokens": 64000, "input_modalities": [ - "text" + "image", + "text", + "file" ], "output_modalities": [ "text" @@ -225,7 +243,9 @@ "context_length": 1000000, "max_completion_tokens": 64000, "input_modalities": [ - "text" + "text", + "image", + "file" ], "output_modalities": [ "text" @@ -245,7 +265,11 @@ "context_length": 1048576, "max_completion_tokens": 8192, "input_modalities": [ - "text" + "text", + "image", + "file", + "audio", + "video" ], "output_modalities": [ "text" @@ -265,7 +289,11 @@ "context_length": 1048576, "max_completion_tokens": 8192, "input_modalities": [ - "text" + "text", + "image", + "file", + "audio", + "video" ], "output_modalities": [ "text" @@ -285,7 +313,11 @@ "context_length": 1048576, "max_completion_tokens": 65535, "input_modalities": [ - "text" + "file", + "image", + "text", + "audio", + "video" ], "output_modalities": [ "text" @@ -305,9 +337,11 @@ "context_length": 32768, "max_completion_tokens": 32768, "input_modalities": [ + "image", "text" ], "output_modalities": [ + "image", "text" ], "tokenizer": "Gemini", @@ -325,7 +359,11 @@ "context_length": 1048576, "max_completion_tokens": 65535, "input_modalities": [ - "text" + "text", + "image", + "file", + "audio", + "video" ], "output_modalities": [ "text" @@ -345,7 +383,11 @@ "context_length": 1048576, "max_completion_tokens": 65536, "input_modalities": [ - "text" + "text", + "image", + "file", + "audio", + "video" ], "output_modalities": [ "text" @@ -365,7 +407,11 @@ "context_length": 1048576, "max_completion_tokens": 65536, "input_modalities": [ - "text" + "text", + "image", + "file", + "audio", + "video" ], "output_modalities": [ "text" @@ -385,9 +431,11 @@ "context_length": 65536, "max_completion_tokens": 32768, "input_modalities": [ + "image", "text" ], "output_modalities": [ + "image", "text" ], "tokenizer": "Gemini", @@ -443,7 +491,8 @@ "context_length": 131072, "max_completion_tokens": 131072, "input_modalities": [ - "text" + "text", + "image" ], "output_modalities": [ "text" @@ -463,7 +512,8 @@ "context_length": 96000, "max_completion_tokens": 96000, "input_modalities": [ - "text" + "text", + "image" ], "output_modalities": [ "text" @@ -482,7 +532,8 @@ "name": "Google: Gemma 3 4B", "context_length": 96000, "input_modalities": [ - "text" + "text", + "image" ], "output_modalities": [ "text" @@ -521,7 +572,8 @@ "context_length": 128000, "max_completion_tokens": 16384, "input_modalities": [ - "text" + "text", + "image" ], "output_modalities": [ "text" @@ -541,6 +593,7 @@ "context_length": 200000, "max_completion_tokens": 100000, "input_modalities": [ + "image", "text" ], "output_modalities": [ @@ -641,7 +694,8 @@ "context_length": 128000, "max_completion_tokens": 4096, "input_modalities": [ - "text" + "text", + "image" ], "output_modalities": [ "text" @@ -661,7 +715,9 @@ "context_length": 1047576, "max_completion_tokens": 32768, "input_modalities": [ - "text" + "image", + "text", + "file" ], "output_modalities": [ "text" @@ -681,7 +737,9 @@ "context_length": 1047576, "max_completion_tokens": 32768, "input_modalities": [ - "text" + "image", + "text", + "file" ], "output_modalities": [ "text" @@ -701,7 +759,9 @@ "context_length": 1047576, "max_completion_tokens": 32768, "input_modalities": [ - "text" + "image", + "text", + "file" ], "output_modalities": [ "text" @@ -721,7 +781,9 @@ "context_length": 128000, "max_completion_tokens": 16384, "input_modalities": [ - "text" + "text", + "image", + "file" ], "output_modalities": [ "text" @@ -741,6 +803,7 @@ "context_length": 128000, "max_completion_tokens": 16384, "input_modalities": [ + "audio", "text" ], "output_modalities": [ @@ -761,7 +824,9 @@ "context_length": 128000, "max_completion_tokens": 16384, "input_modalities": [ - "text" + "text", + "image", + "file" ], "output_modalities": [ "text" @@ -821,7 +886,9 @@ "context_length": 128000, "max_completion_tokens": 64000, "input_modalities": [ - "text" + "text", + "image", + "file" ], "output_modalities": [ "text" @@ -841,7 +908,9 @@ "context_length": 400000, "max_completion_tokens": 128000, "input_modalities": [ - "text" + "text", + "image", + "file" ], "output_modalities": [ "text" @@ -861,6 +930,8 @@ "context_length": 128000, "max_completion_tokens": 16384, "input_modalities": [ + "file", + "image", "text" ], "output_modalities": [ @@ -881,7 +952,8 @@ "context_length": 400000, "max_completion_tokens": 128000, "input_modalities": [ - "text" + "text", + "image" ], "output_modalities": [ "text" @@ -901,9 +973,12 @@ "context_length": 400000, "max_completion_tokens": 128000, "input_modalities": [ - "text" + "image", + "text", + "file" ], "output_modalities": [ + "image", "text" ], "tokenizer": "GPT", @@ -921,9 +996,12 @@ "context_length": 400000, "max_completion_tokens": 128000, "input_modalities": [ + "file", + "image", "text" ], "output_modalities": [ + "image", "text" ], "tokenizer": "GPT", @@ -941,7 +1019,9 @@ "context_length": 400000, "max_completion_tokens": 128000, "input_modalities": [ - "text" + "text", + "image", + "file" ], "output_modalities": [ "text" @@ -961,7 +1041,9 @@ "context_length": 400000, "max_completion_tokens": 128000, "input_modalities": [ - "text" + "text", + "image", + "file" ], "output_modalities": [ "text" @@ -981,7 +1063,9 @@ "context_length": 400000, "max_completion_tokens": 128000, "input_modalities": [ - "text" + "image", + "text", + "file" ], "output_modalities": [ "text" @@ -1001,7 +1085,9 @@ "context_length": 400000, "max_completion_tokens": 128000, "input_modalities": [ - "text" + "image", + "text", + "file" ], "output_modalities": [ "text" @@ -1021,6 +1107,8 @@ "context_length": 128000, "max_completion_tokens": 16384, "input_modalities": [ + "file", + "image", "text" ], "output_modalities": [ @@ -1041,7 +1129,8 @@ "context_length": 400000, "max_completion_tokens": 128000, "input_modalities": [ - "text" + "text", + "image" ], "output_modalities": [ "text" @@ -1061,7 +1150,8 @@ "context_length": 400000, "max_completion_tokens": 128000, "input_modalities": [ - "text" + "text", + "image" ], "output_modalities": [ "text" @@ -1081,6 +1171,7 @@ "context_length": 400000, "max_completion_tokens": 100000, "input_modalities": [ + "image", "text" ], "output_modalities": [ @@ -1159,7 +1250,9 @@ "context_length": 200000, "max_completion_tokens": 100000, "input_modalities": [ - "text" + "text", + "image", + "file" ], "output_modalities": [ "text" @@ -1179,7 +1272,9 @@ "context_length": 200000, "max_completion_tokens": 100000, "input_modalities": [ - "text" + "text", + "image", + "file" ], "output_modalities": [ "text" @@ -1199,7 +1294,9 @@ "context_length": 200000, "max_completion_tokens": 100000, "input_modalities": [ - "text" + "image", + "text", + "file" ], "output_modalities": [ "text" @@ -1219,7 +1316,9 @@ "context_length": 200000, "max_completion_tokens": 100000, "input_modalities": [ - "text" + "image", + "text", + "file" ], "output_modalities": [ "text" @@ -1239,7 +1338,8 @@ "context_length": 200000, "max_completion_tokens": 100000, "input_modalities": [ - "text" + "text", + "file" ], "output_modalities": [ "text" @@ -1259,7 +1359,8 @@ "context_length": 200000, "max_completion_tokens": 100000, "input_modalities": [ - "text" + "text", + "file" ], "output_modalities": [ "text" @@ -1279,7 +1380,9 @@ "context_length": 200000, "max_completion_tokens": 100000, "input_modalities": [ - "text" + "text", + "file", + "image" ], "output_modalities": [ "text" @@ -1299,7 +1402,9 @@ "context_length": 200000, "max_completion_tokens": 100000, "input_modalities": [ - "text" + "image", + "text", + "file" ], "output_modalities": [ "text" @@ -1319,6 +1424,8 @@ "context_length": 200000, "max_completion_tokens": 100000, "input_modalities": [ + "file", + "image", "text" ], "output_modalities": [ @@ -1339,7 +1446,9 @@ "context_length": 200000, "max_completion_tokens": 100000, "input_modalities": [ - "text" + "image", + "text", + "file" ], "output_modalities": [ "text"