fix: unifica el mapeo proveedor→URL, el botón "Probar conexión" tenía su propia copia sin Gemini

El fix anterior de Gemini (22efb9c) solo tocó providerDefaultURL, que usan
el chat/embeddings/whisper reales. TestAiConfigHandler (el botón "Probar
conexión" del panel de AI Config) tenía una tercera copia independiente del
mismo mapeo, sin caso para Gemini ni Deepseek — por eso el chat ya
funcionaba con Gemini pero la prueba de conexión seguía fallando.

Se exporta providerDefaultURL a services.ProviderDefaultURL y el controller
la reusa, en vez de mantener una copia más que se desactualiza cada vez que
se agrega un proveedor.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Lizandro Guarnizo
2026-08-12 21:38:16 -05:00
co-authored by Claude Sonnet 5
parent 22efb9ca70
commit 9dc44decd7
4 changed files with 10 additions and 14 deletions
+2 -2
View File
@@ -1265,7 +1265,7 @@ func callAI(ai *models.AiConfig, messages []agentMessage, tools []agentTool) (*a
func callOpenAICompatibleAI(ai *models.AiConfig, messages []agentMessage, tools []agentTool) (*agentMessage, error) {
baseURL := ai.BaseURL
if baseURL == "" {
baseURL = providerDefaultURL(ai.Provider)
baseURL = ProviderDefaultURL(ai.Provider)
}
baseURL = strings.TrimRight(baseURL, "/")
@@ -1483,7 +1483,7 @@ func callAnthropicAI(ai *models.AiConfig, messages []agentMessage, tools []agent
return result, nil
}
func providerDefaultURL(provider string) string {
func ProviderDefaultURL(provider string) string {
switch strings.ToLower(provider) {
case "openai":
return "https://api.openai.com/v1"
+1 -1
View File
@@ -29,7 +29,7 @@ func GenerarEmbeddings(ai *models.AiConfig, textos []string) ([][]float32, error
baseURL := ai.BaseURL
if baseURL == "" {
baseURL = providerDefaultURL(ai.Provider)
baseURL = ProviderDefaultURL(ai.Provider)
}
baseURL = strings.TrimRight(baseURL, "/")
+1 -1
View File
@@ -32,7 +32,7 @@ func TranscribirAudio(ai *models.AiConfig, audioPath string) (string, error) {
baseURL := ai.BaseURL
if baseURL == "" {
baseURL = providerDefaultURL(ai.Provider)
baseURL = ProviderDefaultURL(ai.Provider)
}
baseURL = strings.TrimRight(baseURL, "/")