openrouter

package
v0.6.0 Latest Latest
Warning

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

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

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewProvider

func NewProvider() (provider provider.Provider)

NewProvider returns an "openrouter.ai" provider.

Types

type Model added in v0.6.0

type Model struct {
	// ID holds the model id.
	ID string `json:"id"`
	// Name holds the model name.
	Name string `json:"name"`

	// Pricing holds the pricing information of a model.
	Pricing Pricing `json:"pricing"`
}

Model holds a model.

type ModelsList added in v0.6.0

type ModelsList struct {
	Models []Model `json:"data"`
}

ModelsList holds a list of models.

type Pricing added in v0.6.0

type Pricing struct {
	// Prompt holds the price for a prompt in dollars per token.
	Prompt string `json:"prompt"`
	// Completion holds the price for a completion in dollars per token.
	Completion string `json:"completion"`
	// Request holds the price for a request in dollars per request.
	Request string `json:"request"`
	// Image holds the price for an image in dollars per token.
	Image string `json:"image"`
}

Pricing holds the pricing information of a model.

type Provider

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

Provider holds an "openrouter.ai" provider using its public REST API.

func (*Provider) Available

func (p *Provider) Available(logger *log.Logger) (err error)

Available checks if the provider is ready to be used. This might include checking for an installation or making sure an API access token is valid.

func (*Provider) ID

func (p *Provider) ID() (id string)

ID returns the unique ID of this provider.

func (*Provider) Models

func (p *Provider) Models() (models []model.Model, err error)

Models returns which models are available to be queried via this provider.

func (*Provider) Query

func (p *Provider) Query(ctx context.Context, modelIdentifier string, promptText string) (response string, err error)

Query queries the provider with the given model name.

func (*Provider) SetToken

func (p *Provider) SetToken(token string)

SetToken sets a potential token to be used in case the provider needs to authenticate a remote API.

Jump to

Keyboard shortcuts

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