From c467d135f93d7ea9d9d52cbebf39576dda5a4362 Mon Sep 17 00:00:00 2001 From: Kujtim Hoxha Date: Fri, 31 Oct 2025 17:10:51 +0100 Subject: [PATCH] chore: improve azure support (#1351) --- go.mod | 2 +- go.sum | 4 ++-- internal/agent/coordinator.go | 13 ++----------- 3 files changed, 5 insertions(+), 14 deletions(-) diff --git a/go.mod b/go.mod index 5b9e2b24e520909092e8c5e33e633f49d4821572..79ff03750645aa557fcc524c3db20f2e1eceea81 100644 --- a/go.mod +++ b/go.mod @@ -3,7 +3,7 @@ module github.com/charmbracelet/crush go 1.25.0 require ( - charm.land/fantasy v0.1.4 + charm.land/fantasy v0.1.5 github.com/JohannesKaufmann/html-to-markdown v1.6.0 github.com/MakeNowJust/heredoc v1.0.0 github.com/PuerkitoBio/goquery v1.10.3 diff --git a/go.sum b/go.sum index a82a08657d31b36664df8f87233fd527ff24f0d6..6c07c06a54da857cd6c0feb849254aa5381a8aea 100644 --- a/go.sum +++ b/go.sum @@ -1,5 +1,5 @@ -charm.land/fantasy v0.1.4 h1:H/l2GfMy6Pon0GcXoj4/kuHKZ0jm//xDe2Got0eF3AU= -charm.land/fantasy v0.1.4/go.mod h1:GT1Y8uYNmmu7OkUxWEiOyzdAf1jYopPJfpWvoDRzGiM= +charm.land/fantasy v0.1.5 h1:7sta5yC+cSU32Kb+cNQb4b/3fyn13tYOgXsnXhdMlX0= +charm.land/fantasy v0.1.5/go.mod h1:GT1Y8uYNmmu7OkUxWEiOyzdAf1jYopPJfpWvoDRzGiM= cloud.google.com/go v0.116.0 h1:B3fRrSDkLRt5qSHWe40ERJvhvnQwdZiHu0bJOpldweE= cloud.google.com/go v0.116.0/go.mod h1:cEPSRWPzZEswwdr9BxE6ChEn01dWlTaF05LiC2Xs70U= cloud.google.com/go/auth v0.17.0 h1:74yCm7hCj2rUyyAocqnFzsAYXgJhrG26XCFimrc/Kz4= diff --git a/internal/agent/coordinator.go b/internal/agent/coordinator.go index 7bf0167fa1cf0de0323e3227823bbc9c4ab99e5c..3fd57c69d2b90ecf1477eccda399cbfceb3c0ef6 100644 --- a/internal/agent/coordinator.go +++ b/internal/agent/coordinator.go @@ -193,7 +193,7 @@ func getProviderOptions(model Model, providerCfg config.ProviderConfig) fantasy. } switch providerCfg.Type { - case openai.Name: + case openai.Name, azure.Name: _, hasReasoningEffort := mergedOptions["reasoning_effort"] if !hasReasoningEffort && model.ModelCfg.ReasoningEffort != "" { mergedOptions["reasoning_effort"] = model.ModelCfg.ReasoningEffort @@ -250,16 +250,6 @@ func getProviderOptions(model Model, providerCfg config.ProviderConfig) fantasy. if err == nil { options[google.Name] = parsed } - case azure.Name: - _, hasReasoningEffort := mergedOptions["reasoning_effort"] - if !hasReasoningEffort && model.ModelCfg.ReasoningEffort != "" { - mergedOptions["reasoning_effort"] = model.ModelCfg.ReasoningEffort - } - // azure uses the same options as openaicompat - parsed, err := openaicompat.ParseOptions(mergedOptions) - if err == nil { - options[azure.Name] = parsed - } case openaicompat.Name: _, hasReasoningEffort := mergedOptions["reasoning_effort"] if !hasReasoningEffort && model.ModelCfg.ReasoningEffort != "" { @@ -566,6 +556,7 @@ func (c *coordinator) buildAzureProvider(baseURL, apiKey string, headers map[str opts := []azure.Option{ azure.WithBaseURL(baseURL), azure.WithAPIKey(apiKey), + azure.WithUseResponsesAPI(), } if c.cfg.Options.Debug { httpClient := log.NewHTTPClient()