vtcode_config/models/model_id/
defaults.rs1use crate::models::Provider;
2
3use super::ModelId;
4
5impl ModelId {
6 pub fn fallback_models() -> Vec<ModelId> {
8 vec![
9 ModelId::ClaudeSonnet5,
10 ModelId::ClaudeOpus5,
11 ModelId::GPT56Sol,
12 ModelId::Gemini38Flash,
13 ModelId::OpenAIGptOss20b,
14 ModelId::ZaiGlm53,
15 ]
16 }
17
18 pub(crate) fn default_model() -> Self {
20 ModelId::ClaudeSonnet5
21 }
22
23 pub fn default_orchestrator() -> Self {
25 ModelId::ClaudeSonnet5
26 }
27
28 pub fn default_orchestrator_for_provider(provider: Provider) -> Self {
30 match provider {
31 Provider::Gemini => ModelId::Gemini38Flash,
32 Provider::OpenAI => ModelId::GPT56Sol,
33 Provider::Anthropic => ModelId::ClaudeOpus55,
34 Provider::Copilot => ModelId::CopilotAuto,
35 Provider::Minimax => ModelId::MinimaxM3,
36 Provider::MiMo => ModelId::MiMoV26Pro,
37 Provider::Mistral => ModelId::MistralLarge3,
38 Provider::DeepSeek => ModelId::DeepSeekFlash,
39 Provider::Meta => ModelId::MetaMuseSpark13,
40 Provider::HuggingFace => ModelId::HuggingFaceOpenAIGptOss120b,
41 Provider::Moonshot => ModelId::MoonshotKimiK3,
42 Provider::OpenRouter => ModelId::OpenRouterXiaomiMimoV26Pro,
43 Provider::Ollama => ModelId::OllamaGptOss20b,
44 Provider::OllamaCloud => ModelId::OllamaGptOss120bCloud,
45 Provider::LmStudio => ModelId::GPT56Sol,
46 Provider::LlamaCpp => ModelId::LlamaCppGptOss20b,
47 Provider::ZAI => ModelId::ZaiGlm53,
48 Provider::OpenCodeZen => ModelId::ClaudeSonnet5,
49 Provider::OpenCodeGo => ModelId::OpenCodeGoMinimaxM3,
50 Provider::Qwen => ModelId::DeepSeekFlash,
51 Provider::StepFun => ModelId::StepFun37Flash,
52 Provider::Evolink => ModelId::EvolinkGemini31Pro,
53 Provider::XAI => ModelId::XaiGrok47,
54 Provider::NVIDIA => ModelId::NvidiaNemotron3Ultra550bA55b,
55 Provider::MergeGateway => ModelId::MergeGatewayDefaultRouting,
56 Provider::Vercel => ModelId::VercelAnthropicClaudeSonnet5,
57 _ => ModelId::ClaudeSonnet5,
58 }
59 }
60
61 pub fn default_single_for_provider(provider: Provider) -> Self {
63 match provider {
64 Provider::Gemini => ModelId::Gemini38Flash,
65 Provider::OpenAI => ModelId::GPT56Sol,
66 Provider::Anthropic => ModelId::ClaudeSonnet5,
67 Provider::Copilot => ModelId::CopilotAuto,
68 Provider::Minimax => ModelId::MinimaxM3,
69 Provider::MiMo => ModelId::MiMoV26Pro,
70 Provider::Mistral => ModelId::MistralLarge3,
71 Provider::DeepSeek => ModelId::DeepSeekFlash,
72 Provider::Meta => ModelId::MetaMuseSpark13,
73 Provider::HuggingFace => ModelId::HuggingFaceOpenAIGptOss120b,
74 Provider::Moonshot => ModelId::MoonshotKimiK3,
75 Provider::OpenRouter => ModelId::OpenRouterXiaomiMimoV26Pro,
76 Provider::Ollama => ModelId::OllamaGptOss20b,
77 Provider::OllamaCloud => ModelId::OllamaGptOss120bCloud,
78 Provider::LmStudio => ModelId::GPT56Sol,
79 Provider::LlamaCpp => ModelId::LlamaCppGptOss20b,
80 Provider::ZAI => ModelId::ZaiGlm53,
81 Provider::OpenCodeZen => ModelId::ClaudeSonnet5,
82 Provider::OpenCodeGo => ModelId::OpenCodeGoMinimaxM3,
83 Provider::Qwen => ModelId::DeepSeekFlash,
84 Provider::StepFun => ModelId::StepFun37Flash,
85 Provider::Evolink => ModelId::EvolinkGemini31Pro,
86 Provider::XAI => ModelId::XaiGrok47,
87 Provider::NVIDIA => ModelId::NvidiaNemotron3Ultra550bA55b,
88 Provider::MergeGateway => ModelId::MergeGatewayDefaultRouting,
89 Provider::Vercel => ModelId::VercelAnthropicClaudeSonnet5,
90 _ => ModelId::ClaudeSonnet5,
91 }
92 }
93}