From 70f20f4603812ec6bd146e925972cc694cfc5252 Mon Sep 17 00:00:00 2001 From: lyqu Date: Sat, 21 Feb 2026 17:04:28 -0500 Subject: [PATCH] fix 404 issue for model = nvidia/nvidia/* , like nvidia/nvidia/nemotron-3-nano-30b-a3b --- pkg/providers/openai_compat/provider.go | 2 +- pkg/providers/openai_compat/provider_test.go | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/pkg/providers/openai_compat/provider.go b/pkg/providers/openai_compat/provider.go index b8528953a..aed2d7c23 100644 --- a/pkg/providers/openai_compat/provider.go +++ b/pkg/providers/openai_compat/provider.go @@ -240,7 +240,7 @@ func normalizeModel(model, apiBase string) string { prefix := strings.ToLower(model[:idx]) switch prefix { - case "moonshot", "nvidia", "groq", "ollama", "deepseek", "google", "openrouter", "zhipu": + case "moonshot", "groq", "ollama", "deepseek", "google", "openrouter", "zhipu": return model[idx+1:] default: return model diff --git a/pkg/providers/openai_compat/provider_test.go b/pkg/providers/openai_compat/provider_test.go index 42f9d42ab..e05bcb358 100644 --- a/pkg/providers/openai_compat/provider_test.go +++ b/pkg/providers/openai_compat/provider_test.go @@ -280,4 +280,7 @@ func TestNormalizeModel_UsesAPIBase(t *testing.T) { if got := normalizeModel("openrouter/auto", "https://openrouter.ai/api/v1"); got != "openrouter/auto" { t.Fatalf("normalizeModel(openrouter) = %q, want %q", got, "openrouter/auto") } + if got := normalizeModel("nvidia/nvidia/nemotron-3-8b", "https://integrate.api.nvidia.com/v1"); got != "nvidia/nvidia/nemotron-3-8b" { + t.Fatalf("normalizeModel(nvidia) = %q, want %q", got, "nvidia/nvidia/nemotron-3-8b") + } }