From b3b0f392188843be568fae775ef1bce786347835 Mon Sep 17 00:00:00 2001 From: Andrey Nering Date: Thu, 11 Sep 2025 15:08:21 -0300 Subject: [PATCH] refactor: rename `ProviderOptionsKey` into `OptionsKey` --- anthropic/anthropic.go | 14 +++++++------- anthropic/provider_options.go | 6 +++--- openai/openai.go | 8 ++++---- openai/provider_options.go | 6 +++--- 4 files changed, 17 insertions(+), 17 deletions(-) diff --git a/anthropic/anthropic.go b/anthropic/anthropic.go index 7055c4b77d56071737924d236a201fdb6441bead..d70d4bffe93ee20f97ad59109642332f23b292ff 100644 --- a/anthropic/anthropic.go +++ b/anthropic/anthropic.go @@ -123,7 +123,7 @@ func (a languageModel) Provider() string { func (a languageModel) prepareParams(call ai.Call) (*anthropic.MessageNewParams, []ai.CallWarning, error) { params := &anthropic.MessageNewParams{} providerOptions := &ProviderOptions{} - if v, ok := call.ProviderOptions[ProviderOptionsKey]; ok { + if v, ok := call.ProviderOptions[OptionsKey]; ok { providerOptions, ok = v.(*ProviderOptions) if !ok { return nil, nil, ai.NewInvalidArgumentError("providerOptions", "anthropic provider options should be *anthropic.ProviderOptions", nil) @@ -222,7 +222,7 @@ func (a languageModel) prepareParams(call ai.Call) (*anthropic.MessageNewParams, } func getCacheControl(providerOptions ai.ProviderOptions) *CacheControl { - if anthropicOptions, ok := providerOptions[ProviderOptionsKey]; ok { + if anthropicOptions, ok := providerOptions[OptionsKey]; ok { if options, ok := anthropicOptions.(*ProviderCacheControlOptions); ok { return &options.CacheControl } @@ -231,7 +231,7 @@ func getCacheControl(providerOptions ai.ProviderOptions) *CacheControl { } func getReasoningMetadata(providerOptions ai.ProviderOptions) *ReasoningOptionMetadata { - if anthropicOptions, ok := providerOptions[ProviderOptionsKey]; ok { + if anthropicOptions, ok := providerOptions[OptionsKey]; ok { if reasoning, ok := anthropicOptions.(*ReasoningOptionMetadata); ok { return reasoning } @@ -664,7 +664,7 @@ func (a languageModel) Generate(ctx context.Context, call ai.Call) (*ai.Response content = append(content, ai.ReasoningContent{ Text: reasoning.Thinking, ProviderMetadata: ai.ProviderMetadata{ - ProviderOptionsKey: &ReasoningOptionMetadata{ + OptionsKey: &ReasoningOptionMetadata{ Signature: reasoning.Signature, }, }, @@ -677,7 +677,7 @@ func (a languageModel) Generate(ctx context.Context, call ai.Call) (*ai.Response content = append(content, ai.ReasoningContent{ Text: "", ProviderMetadata: ai.ProviderMetadata{ - ProviderOptionsKey: &ReasoningOptionMetadata{ + OptionsKey: &ReasoningOptionMetadata{ RedactedData: reasoning.Data, }, }, @@ -756,7 +756,7 @@ func (a languageModel) Stream(ctx context.Context, call ai.Call) (ai.StreamRespo Type: ai.StreamPartTypeReasoningStart, ID: fmt.Sprintf("%d", chunk.Index), ProviderMetadata: ai.ProviderMetadata{ - ProviderOptionsKey: &ReasoningOptionMetadata{ + OptionsKey: &ReasoningOptionMetadata{ RedactedData: chunk.ContentBlock.Data, }, }, @@ -832,7 +832,7 @@ func (a languageModel) Stream(ctx context.Context, call ai.Call) (ai.StreamRespo Type: ai.StreamPartTypeReasoningDelta, ID: fmt.Sprintf("%d", chunk.Index), ProviderMetadata: ai.ProviderMetadata{ - ProviderOptionsKey: &ReasoningOptionMetadata{ + OptionsKey: &ReasoningOptionMetadata{ Signature: chunk.Delta.Signature, }, }, diff --git a/anthropic/provider_options.go b/anthropic/provider_options.go index d46a0ed9597523de611b32853f80e4f2b56cf383..248c051b204579303c1885c77e2772c157f55715 100644 --- a/anthropic/provider_options.go +++ b/anthropic/provider_options.go @@ -2,7 +2,7 @@ package anthropic import "github.com/charmbracelet/ai/ai" -const ProviderOptionsKey = "anthropic" +const OptionsKey = "anthropic" type ProviderOptions struct { SendReasoning *bool @@ -35,12 +35,12 @@ type CacheControl struct { func NewProviderOptions(opts *ProviderOptions) ai.ProviderOptions { return ai.ProviderOptions{ - ProviderOptionsKey: opts, + OptionsKey: opts, } } func NewProviderCacheControlOptions(opts *ProviderCacheControlOptions) ai.ProviderOptions { return ai.ProviderOptions{ - ProviderOptionsKey: opts, + OptionsKey: opts, } } diff --git a/openai/openai.go b/openai/openai.go index 239620e536b90c01823bd2e962438606f7ff5736..13b18430fe93188a08f44b30ce04ec29ee115ffb 100644 --- a/openai/openai.go +++ b/openai/openai.go @@ -151,7 +151,7 @@ func (o languageModel) prepareParams(call ai.Call) (*openai.ChatCompletionNewPar params := &openai.ChatCompletionNewParams{} messages, warnings := toPrompt(call.Prompt) providerOptions := &ProviderOptions{} - if v, ok := call.ProviderOptions[ProviderOptionsKey]; ok { + if v, ok := call.ProviderOptions[OptionsKey]; ok { providerOptions, ok = v.(*ProviderOptions) if !ok { return nil, nil, ai.NewInvalidArgumentError("providerOptions", "openai provider options should be *openai.ProviderOptions", nil) @@ -471,7 +471,7 @@ func (o languageModel) Generate(ctx context.Context, call ai.Call) (*ai.Response }, FinishReason: mapOpenAiFinishReason(choice.FinishReason), ProviderMetadata: ai.ProviderMetadata{ - ProviderOptionsKey: providerMetadata, + OptionsKey: providerMetadata, }, Warnings: warnings, }, nil @@ -733,7 +733,7 @@ func (o languageModel) Stream(ctx context.Context, call ai.Call) (ai.StreamRespo Usage: usage, FinishReason: finishReason, ProviderMetadata: ai.ProviderMetadata{ - ProviderOptionsKey: streamProviderMetadata, + OptionsKey: streamProviderMetadata, }, }) return @@ -923,7 +923,7 @@ func toPrompt(prompt ai.Prompt) ([]openai.ChatCompletionMessageParamUnion, []ai. imageURL := openai.ChatCompletionContentPartImageImageURLParam{URL: data} // Check for provider-specific options like image detail - if providerOptions, ok := filePart.ProviderOptions[ProviderOptionsKey]; ok { + if providerOptions, ok := filePart.ProviderOptions[OptionsKey]; ok { if detail, ok := providerOptions.(*ProviderFileOptions); ok { imageURL.Detail = detail.ImageDetail } diff --git a/openai/provider_options.go b/openai/provider_options.go index 62332185fe94f8f317843f1218ca31b8d97e7fa3..3d7261c8864cf750c51cf1936b877a5337762084 100644 --- a/openai/provider_options.go +++ b/openai/provider_options.go @@ -5,7 +5,7 @@ import ( "github.com/openai/openai-go/v2" ) -const ProviderOptionsKey = "openai" +const OptionsKey = "openai" type ReasoningEffort string @@ -56,12 +56,12 @@ func ReasoningEffortOption(e ReasoningEffort) *ReasoningEffort { func NewProviderOptions(opts *ProviderOptions) ai.ProviderOptions { return ai.ProviderOptions{ - ProviderOptionsKey: opts, + OptionsKey: opts, } } func NewProviderFileOptions(opts *ProviderFileOptions) ai.ProviderOptions { return ai.ProviderOptions{ - ProviderOptionsKey: opts, + OptionsKey: opts, } }