provider_options.go

 1package anthropic
 2
 3import "github.com/charmbracelet/ai/ai"
 4
 5type ProviderOptions struct {
 6	SendReasoning          *bool
 7	Thinking               *ThinkingProviderOption
 8	DisableParallelToolUse *bool
 9}
10
11type ThinkingProviderOption struct {
12	BudgetTokens int64
13}
14
15type ReasoningMetadata struct {
16	Signature    string
17	RedactedData string
18}
19
20type ProviderCacheControlOptions struct {
21	CacheControl CacheControl
22}
23
24type CacheControl struct {
25	Type string
26}
27
28func NewProviderOptions(opts *ProviderOptions) ai.ProviderOptions {
29	return ai.ProviderOptions{
30		"anthropic": opts,
31	}
32}
33
34func NewProviderCacheControlOptions(opts *ProviderCacheControlOptions) ai.ProviderOptions {
35	return ai.ProviderOptions{
36		"anthropic": opts,
37	}
38}