on main help sign in
chore: improve azure support (#1351)
commitc467d135f93d7ea9d9d52cbebf39576dda5a4362 authorKujtim Hoxha <kujtimii.h@gmail.com> dateFri 31 Oct 2025, 17:10 (1 year ago) parent07eb36c
3 files changed+5−14
go.mod+1−1 go.sum+2−2 internal/agent/coordinator.go+2−11
go.mod+1−1
@@ -3,7 +3,7 @@ module github.com/charmbracelet/crush
33go 1.25.0
44
55require (
6− charm.land/fantasy v0.1.4
6+ charm.land/fantasy v0.1.5
77 github.com/JohannesKaufmann/html-to-markdown v1.6.0
88 github.com/MakeNowJust/heredoc v1.0.0
99 github.com/PuerkitoBio/goquery v1.10.3
go.sum+2−2
@@ -1,5 +1,5 @@
1−charm.land/fantasy v0.1.4 h1:H/l2GfMy6Pon0GcXoj4/kuHKZ0jm//xDe2Got0eF3AU=
2−charm.land/fantasy v0.1.4/go.mod h1:GT1Y8uYNmmu7OkUxWEiOyzdAf1jYopPJfpWvoDRzGiM=
1+charm.land/fantasy v0.1.5 h1:7sta5yC+cSU32Kb+cNQb4b/3fyn13tYOgXsnXhdMlX0=
2+charm.land/fantasy v0.1.5/go.mod h1:GT1Y8uYNmmu7OkUxWEiOyzdAf1jYopPJfpWvoDRzGiM=
33cloud.google.com/go v0.116.0 h1:B3fRrSDkLRt5qSHWe40ERJvhvnQwdZiHu0bJOpldweE=
44cloud.google.com/go v0.116.0/go.mod h1:cEPSRWPzZEswwdr9BxE6ChEn01dWlTaF05LiC2Xs70U=
55cloud.google.com/go/auth v0.17.0 h1:74yCm7hCj2rUyyAocqnFzsAYXgJhrG26XCFimrc/Kz4=
internal/agent/coordinator.go+2−11
@@ -193,7 +193,7 @@ func getProviderOptions(model Model, providerCfg config.ProviderConfig) fantasy.
193193 }
194194
195195 switch providerCfg.Type {
196− case openai.Name:
196+ case openai.Name, azure.Name:
197197 _, hasReasoningEffort := mergedOptions["reasoning_effort"]
198198 if !hasReasoningEffort && model.ModelCfg.ReasoningEffort != "" {
199199 mergedOptions["reasoning_effort"] = model.ModelCfg.ReasoningEffort
@@ -250,16 +250,6 @@ func getProviderOptions(model Model, providerCfg config.ProviderConfig) fantasy.
250250 if err == nil {
251251 options[google.Name] = parsed
252252 }
253− case azure.Name:
254− _, hasReasoningEffort := mergedOptions["reasoning_effort"]
255− if !hasReasoningEffort && model.ModelCfg.ReasoningEffort != "" {
256− mergedOptions["reasoning_effort"] = model.ModelCfg.ReasoningEffort
257− }
258− // azure uses the same options as openaicompat
259− parsed, err := openaicompat.ParseOptions(mergedOptions)
260− if err == nil {
261− options[azure.Name] = parsed
262− }
263253 case openaicompat.Name:
264254 _, hasReasoningEffort := mergedOptions["reasoning_effort"]
265255 if !hasReasoningEffort && model.ModelCfg.ReasoningEffort != "" {
@@ -566,6 +556,7 @@ func (c *coordinator) buildAzureProvider(baseURL, apiKey string, headers map[str
566556 opts := []azure.Option{
567557 azure.WithBaseURL(baseURL),
568558 azure.WithAPIKey(apiKey),
559+ azure.WithUseResponsesAPI(),
569560 }
570561 if c.cfg.Options.Debug {
571562 httpClient := log.NewHTTPClient()