provider

package
v0.0.20 Latest Latest
Warning

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

Go to latest
Published: Jan 1, 2025 License: MIT Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ChunkToMessage added in v0.0.10

func ChunkToMessage[T messages.Response, M messages.ModelMessage](dst *messages.Message[M], src Chunk[T])

func ResponseToMessage added in v0.0.10

func ResponseToMessage[T messages.Response, M messages.ModelMessage](dst *messages.Message[M], src Response[T])

Types

type Chunk added in v0.0.10

type Chunk[T messages.Response] struct {
	RunID     uuid.UUID       `json:"run_id"`
	TurnID    uuid.UUID       `json:"turn_id"`
	Chunk     T               `json:"chunk"`
	Timestamp strfmt.DateTime `json:"timestamp,omitempty"`
	Meta      gjson.Result    `json:"meta,omitempty"`
}

func (Chunk[T]) MarshalJSON added in v0.0.10

func (c Chunk[T]) MarshalJSON() ([]byte, error)

MarshalJSON implements custom JSON marshaling for Chunk[T]

func (*Chunk[T]) UnmarshalJSON added in v0.0.10

func (c *Chunk[T]) UnmarshalJSON(data []byte) error

UnmarshalJSON implements custom JSON unmarshaling for Chunk[T]

type CompletionParams added in v0.0.10

type CompletionParams struct {
	RunID          uuid.UUID
	Instructions   string
	Thread         *shorttermmemory.Aggregator
	Stream         bool
	ResponseSchema *jsonschema.Schema
	Model          interface {
		Name() string
		Provider() Provider
	}
	Tools []tool.Definition
	// contains filtered or unexported fields
}

type Delim added in v0.0.10

type Delim struct {
	RunID  uuid.UUID `json:"run_id"`
	TurnID uuid.UUID `json:"turn_id"`
	Delim  string    `json:"delim"`
}

func (Delim) MarshalJSON added in v0.0.10

func (d Delim) MarshalJSON() ([]byte, error)

MarshalJSON implements custom JSON marshaling for Delim

func (*Delim) UnmarshalJSON added in v0.0.10

func (d *Delim) UnmarshalJSON(data []byte) error

UnmarshalJSON implements custom JSON unmarshaling for Delim

type Error added in v0.0.10

type Error struct {
	RunID     uuid.UUID       `json:"run_id"`
	TurnID    uuid.UUID       `json:"turn_id"`
	Err       error           `json:"error"`
	Timestamp strfmt.DateTime `json:"timestamp,omitempty"`
	Meta      gjson.Result    `json:"meta,omitempty"`
}

func (Error) Error added in v0.0.10

func (e Error) Error() string

func (Error) MarshalJSON added in v0.0.10

func (e Error) MarshalJSON() ([]byte, error)

MarshalJSON implements custom JSON marshaling for Error

func (*Error) UnmarshalJSON added in v0.0.10

func (e *Error) UnmarshalJSON(data []byte) error

UnmarshalJSON implements custom JSON unmarshaling for Error

type Provider

type Provider interface {
	ChatCompletion(context.Context, CompletionParams) (<-chan StreamEvent, error)
}

type Response added in v0.0.10

type Response[T messages.Response] struct {
	RunID      uuid.UUID                  `json:"run_id"`
	TurnID     uuid.UUID                  `json:"turn_id"`
	Checkpoint shorttermmemory.Checkpoint `json:"checkpoint"`
	Response   T                          `json:"response"`
	Timestamp  strfmt.DateTime            `json:"timestamp,omitempty"`
	Meta       gjson.Result               `json:"meta,omitempty"`
}

func (Response[T]) MarshalJSON added in v0.0.10

func (r Response[T]) MarshalJSON() ([]byte, error)

MarshalJSON implements custom JSON marshaling for Response[T]

func (*Response[T]) UnmarshalJSON added in v0.0.10

func (r *Response[T]) UnmarshalJSON(data []byte) error

UnmarshalJSON implements custom JSON unmarshaling for Response[T]

type StreamEvent added in v0.0.10

type StreamEvent interface {
	// contains filtered or unexported methods
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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