anthropic

package
v0.0.0-...-c3aade2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 12, 2024 License: MIT Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Client

type Client struct {
	*Completer
}

func New

func New(options ...Option) (*Client, error)

type Completer

type Completer struct {
	*Config
}

func NewCompleter

func NewCompleter(options ...Option) (*Completer, error)

func (*Completer) Complete

func (c *Completer) Complete(ctx context.Context, messages []provider.Message, options *provider.CompleteOptions) (*provider.Completion, error)

type Config

type Config struct {
	// contains filtered or unexported fields
}

type Content

type Content struct {
	Type ContentType `json:"type"`

	Text   string         `json:"text,omitempty"`
	Source *ContentSource `json:"source,omitempty"`
}

type ContentSource

type ContentSource struct {
	Type string `json:"type"`

	MediaType string `json:"media_type"`
	Data      string `json:"data"`
}

type ContentType

type ContentType string
var (
	ContentTypeText      ContentType = "text"
	ContentTypeTextDelta ContentType = "text_delta"
	ContentTypeImage     ContentType = "image"
)

type EventType

type EventType string
var (
	EventTypePing EventType = "ping"

	EventTypeMessageStart EventType = "message_start"
	EventTypeMessageDelta EventType = "message_delta"
	EventTypeMessageStop  EventType = "message_stop"

	EventTypeContentBlockStart EventType = "content_block_start"
	EventTypeContentBlockDelta EventType = "content_block_delta"
	EventTypeContentBlockStop  EventType = "content_block_stop"
)

type Message

type Message struct {
	Role MessageRole `json:"role"`

	Content  string    `json:"content"`
	Contents []Content `json:"contents,omitempty"`
}

func (*Message) MarshalJSON

func (m *Message) MarshalJSON() ([]byte, error)

func (*Message) UnmarshalJSON

func (m *Message) UnmarshalJSON(data []byte) error

type MessageRole

type MessageRole string
var (
	MessageRoleUser      MessageRole = "user"
	MessageRoleAssistant MessageRole = "assistant"
)

type MessagesEvent

type MessagesEvent struct {
	Type EventType `json:"type"`

	Index int `json:"index"`

	Message      *MessagesResponse `json:"message,omitempty"`
	MessageDelta *MessagesResponse `json:"message_delta,omitempty"`

	ContentBlock *Content `json:"content_block,omitempty"`
	Delta        *Content `json:"delta,omitempty"`
}

type MessagesRequest

type MessagesRequest struct {
	Model string `json:"model"`

	Stream bool   `json:"stream"`
	System string `json:"system,omitempty"`

	Messages []Message `json:"messages"`

	MaxTokens     int      `json:"max_tokens,omitempty"`
	Temperature   *float32 `json:"temperature,omitempty"`
	StopSequences []string `json:"stop_sequences,omitempty"`
}

type MessagesResponse

type MessagesResponse struct {
	ID string `json:"id"`

	Type  ResponseType `json:"type"`
	Model string       `json:"model"`

	Role MessageRole `json:"role"`

	Content []Content `json:"content"`

	StopReason   StopReason `json:"stop_reason,omitempty"`
	StopSequence []string   `json:"stop_sequence,omitempty"`
}

type Option

type Option func(*Config)

func WithClient

func WithClient(client *http.Client) Option

func WithModel

func WithModel(model string) Option

func WithToken

func WithToken(token string) Option

type ResponseType

type ResponseType string
var (
	ResponseTypeMessage ResponseType = "message"
)

type StopReason

type StopReason string
var (
	StopReasonEndTurn      StopReason = "end_turn"
	StopReasonMaxTokens    StopReason = "max_tokens"
	StopReasonStopSequence StopReason = "stop_sequence"
)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL