diff --git a/pkg/config/migration.go b/pkg/config/migration.go index 8eae29258..bed0c144b 100644 --- a/pkg/config/migration.go +++ b/pkg/config/migration.go @@ -109,14 +109,14 @@ func ConvertProvidersToModelList(cfg *Config) []ModelConfig { }, { providerNames: []string{"zhipu", "glm"}, - protocol: "openai", + protocol: "zhipu", buildConfig: func(p ProvidersConfig) (ModelConfig, bool) { if p.Zhipu.APIKey == "" && p.Zhipu.APIBase == "" { return ModelConfig{}, false } return ModelConfig{ ModelName: "zhipu", - Model: "openai/glm-4", + Model: "zhipu/glm-4", APIKey: p.Zhipu.APIKey, APIBase: p.Zhipu.APIBase, Proxy: p.Zhipu.Proxy, @@ -125,14 +125,14 @@ func ConvertProvidersToModelList(cfg *Config) []ModelConfig { }, { providerNames: []string{"vllm"}, - protocol: "openai", + protocol: "vllm", buildConfig: func(p ProvidersConfig) (ModelConfig, bool) { if p.VLLM.APIKey == "" && p.VLLM.APIBase == "" { return ModelConfig{}, false } return ModelConfig{ ModelName: "vllm", - Model: "openai/auto", + Model: "vllm/auto", APIKey: p.VLLM.APIKey, APIBase: p.VLLM.APIBase, Proxy: p.VLLM.Proxy, @@ -141,14 +141,14 @@ func ConvertProvidersToModelList(cfg *Config) []ModelConfig { }, { providerNames: []string{"gemini", "google"}, - protocol: "openai", + protocol: "gemini", buildConfig: func(p ProvidersConfig) (ModelConfig, bool) { if p.Gemini.APIKey == "" && p.Gemini.APIBase == "" { return ModelConfig{}, false } return ModelConfig{ ModelName: "gemini", - Model: "openai/gemini-pro", + Model: "gemini/gemini-pro", APIKey: p.Gemini.APIKey, APIBase: p.Gemini.APIBase, Proxy: p.Gemini.Proxy, @@ -205,14 +205,14 @@ func ConvertProvidersToModelList(cfg *Config) []ModelConfig { }, { providerNames: []string{"shengsuanyun"}, - protocol: "openai", + protocol: "shengsuanyun", buildConfig: func(p ProvidersConfig) (ModelConfig, bool) { if p.ShengSuanYun.APIKey == "" && p.ShengSuanYun.APIBase == "" { return ModelConfig{}, false } return ModelConfig{ ModelName: "shengsuanyun", - Model: "openai/auto", + Model: "shengsuanyun/auto", APIKey: p.ShengSuanYun.APIKey, APIBase: p.ShengSuanYun.APIBase, Proxy: p.ShengSuanYun.Proxy, @@ -221,14 +221,14 @@ func ConvertProvidersToModelList(cfg *Config) []ModelConfig { }, { providerNames: []string{"deepseek"}, - protocol: "openai", + protocol: "deepseek", buildConfig: func(p ProvidersConfig) (ModelConfig, bool) { if p.DeepSeek.APIKey == "" && p.DeepSeek.APIBase == "" { return ModelConfig{}, false } return ModelConfig{ ModelName: "deepseek", - Model: "openai/deepseek-chat", + Model: "deepseek/deepseek-chat", APIKey: p.DeepSeek.APIKey, APIBase: p.DeepSeek.APIBase, Proxy: p.DeepSeek.Proxy, @@ -253,14 +253,14 @@ func ConvertProvidersToModelList(cfg *Config) []ModelConfig { }, { providerNames: []string{"volcengine", "doubao"}, - protocol: "openai", + protocol: "volcengine", buildConfig: func(p ProvidersConfig) (ModelConfig, bool) { if p.VolcEngine.APIKey == "" && p.VolcEngine.APIBase == "" { return ModelConfig{}, false } return ModelConfig{ ModelName: "volcengine", - Model: "openai/doubao-pro", + Model: "volcengine/doubao-pro", APIKey: p.VolcEngine.APIKey, APIBase: p.VolcEngine.APIBase, Proxy: p.VolcEngine.Proxy, diff --git a/pkg/config/migration_test.go b/pkg/config/migration_test.go index 01a11f6d3..dad5b32d9 100644 --- a/pkg/config/migration_test.go +++ b/pkg/config/migration_test.go @@ -205,8 +205,8 @@ func TestConvertProvidersToModelList_PreservesUserModel_DeepSeek(t *testing.T) { } // Should use user's model, not default - if result[0].Model != "openai/deepseek-reasoner" { - t.Errorf("Model = %q, want %q (user's configured model)", result[0].Model, "openai/deepseek-reasoner") + if result[0].Model != "deepseek/deepseek-reasoner" { + t.Errorf("Model = %q, want %q (user's configured model)", result[0].Model, "deepseek/deepseek-reasoner") } } @@ -302,8 +302,8 @@ func TestConvertProvidersToModelList_UsesDefaultWhenNoUserModel(t *testing.T) { } // Should use default model - if result[0].Model != "openai/deepseek-chat" { - t.Errorf("Model = %q, want %q (default)", result[0].Model, "openai/deepseek-chat") + if result[0].Model != "deepseek/deepseek-chat" { + t.Errorf("Model = %q, want %q (default)", result[0].Model, "deepseek/deepseek-chat") } } @@ -335,8 +335,8 @@ func TestConvertProvidersToModelList_MultipleProviders_PreservesUserModel(t *tes t.Errorf("OpenAI Model = %q, want %q (default)", mc.Model, "openai/gpt-4o") } case "deepseek": - if mc.Model != "openai/deepseek-reasoner" { - t.Errorf("DeepSeek Model = %q, want %q (user's)", mc.Model, "openai/deepseek-reasoner") + if mc.Model != "deepseek/deepseek-reasoner" { + t.Errorf("DeepSeek Model = %q, want %q (user's)", mc.Model, "deepseek/deepseek-reasoner") } } } @@ -350,7 +350,7 @@ func TestConvertProvidersToModelList_ProviderNameAliases(t *testing.T) { }{ {"gpt", "openai/gpt-4-custom", ProviderConfig{APIKey: "key"}}, {"claude", "anthropic/claude-custom", ProviderConfig{APIKey: "key"}}, - {"doubao", "openai/doubao-custom", ProviderConfig{APIKey: "key"}}, + {"doubao", "volcengine/doubao-custom", ProviderConfig{APIKey: "key"}}, {"tongyi", "qwen/qwen-custom", ProviderConfig{APIKey: "key"}}, {"kimi", "moonshot/kimi-custom", ProviderConfig{APIKey: "key"}}, } @@ -430,8 +430,8 @@ func TestConvertProvidersToModelList_NoProviderField_SingleProvider(t *testing.T } // Model should use the user's model with protocol prefix - if result[0].Model != "openai/glm-4.7" { - t.Errorf("Model = %q, want %q", result[0].Model, "openai/glm-4.7") + if result[0].Model != "zhipu/glm-4.7" { + t.Errorf("Model = %q, want %q", result[0].Model, "zhipu/glm-4.7") } }