Documentation
¶
Index ¶
Constants ¶
View Source
const (
DefaultBaseURL = "https://api.anthropic.com/v1"
)
Variables ¶
View Source
var ErrEmptyResponse = errors.New("empty response")
ErrEmptyResponse is returned when the Anthropic API returns an empty response.
Functions ¶
This section is empty.
Types ¶
type ChatMessage ¶ added in v0.1.8
type Client ¶
type Client struct { Model string // UseLegacyTextCompletionsAPI is a flag to use the legacy text completions API. UseLegacyTextCompletionsAPI bool // contains filtered or unexported fields }
Client is a client for the Anthropic API.
func (*Client) CreateCompletion ¶
func (c *Client) CreateCompletion(ctx context.Context, r *CompletionRequest) (*Completion, error)
CreateCompletion creates a completion.
func (*Client) CreateMessage ¶ added in v0.1.8
func (c *Client) CreateMessage(ctx context.Context, r *MessageRequest) (*MessageResponsePayload, error)
CreateMessage creates message for the messages api.
type CompletionEvent ¶ added in v0.1.8
type CompletionEvent struct { Response *CompletionResponsePayload Err error }
type CompletionRequest ¶
type CompletionRequest struct { Model string `json:"model"` Prompt string `json:"prompt"` Temperature float64 `json:"temperature"` MaxTokens int `json:"max_tokens_to_sample,omitempty"` StopWords []string `json:"stop_sequences,omitempty"` TopP float64 `json:"top_p,omitempty"` Stream bool `json:"stream,omitempty"` // StreamingFunc is a function to be called for each chunk of a streaming response. // Return an error to stop streaming early. StreamingFunc func(ctx context.Context, chunk []byte) error `json:"-"` }
CompletionRequest is a request to create a completion.
type Content ¶ added in v0.1.11
type Content interface {
GetType() string
}
Content can be TextContent or ToolUseContent depending on the type.
type MessageEvent ¶ added in v0.1.8
type MessageEvent struct { Response *MessageResponsePayload Err error }
type MessageRequest ¶ added in v0.1.8
type MessageRequest struct { Model string `json:"model"` Messages []ChatMessage `json:"messages"` System string `json:"system,omitempty"` Temperature float64 `json:"temperature"` MaxTokens int `json:"max_tokens,omitempty"` TopP float64 `json:"top_p,omitempty"` Tools []Tool `json:"tools,omitempty"` StopWords []string `json:"stop_sequences,omitempty"` Stream bool `json:"stream,omitempty"` StreamingFunc func(ctx context.Context, chunk []byte) error `json:"-"` }
type MessageResponsePayload ¶ added in v0.1.8
type MessageResponsePayload struct { Content []Content `json:"content"` ID string `json:"id"` Model string `json:"model"` Role string `json:"role"` StopReason string `json:"stop_reason"` StopSequence string `json:"stop_sequence"` Type string `json:"type"` Usage struct { InputTokens int `json:"input_tokens"` OutputTokens int `json:"output_tokens"` } `json:"usage"` }
func (*MessageResponsePayload) UnmarshalJSON ¶ added in v0.1.11
func (m *MessageResponsePayload) UnmarshalJSON(data []byte) error
type Option ¶
Option is an option for the Anthropic client.
func WithHTTPClient ¶
WithHTTPClient allows setting a custom HTTP client.
func WithLegacyTextCompletionsAPI ¶ added in v0.1.8
WithLegacyTextCompletionsAPI enables the use of the legacy text completions API.
type TextContent ¶ added in v0.1.11
func (TextContent) GetType ¶ added in v0.1.11
func (tc TextContent) GetType() string
type Tool ¶ added in v0.1.11
type Tool struct { Name string `json:"name"` Description string `json:"description,omitempty"` InputSchema any `json:"input_schema,omitempty"` }
Tool used for the request message payload.
type ToolUseContent ¶ added in v0.1.11
type ToolUseContent struct { Type string `json:"type"` ID string `json:"id"` Name string `json:"name"` Input map[string]interface{} `json:"input"` }
func (ToolUseContent) GetType ¶ added in v0.1.11
func (tuc ToolUseContent) GetType() string
Click to show internal directories.
Click to hide internal directories.