model

package
v1.79.0 Latest Latest
Warning

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

Go to latest
Published: Apr 27, 2024 License: Apache-2.0 Imports: 30 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// https://docs.cohere.com/docs/command-beta#whats-the-context-window-on-the-command-models
	CohereDefaultMaxTokens   int            = 4096
	CohereDefaultTemperature float64        = 0.75
	CohereModelMaxTokens     map[string]int = map[string]int{
		"command-light":         4096,
		"command-light-nightly": 8192,
		"command":               4096,
		"command-nightly":       8192,
	}
)

Functions

func AddPrices added in v1.55.0

func AddPrices(price1 float64, price2 float64) float64

func ChatCompletionRequest added in v1.39.0

func ChatCompletionRequest(model string, messages []openai.ChatCompletionMessage, temperature float32, topP float32, frequencyPenalty float32, presencePenalty float32) openai.ChatCompletionRequest

func GetOpenAiMaxTokens added in v1.55.0

func GetOpenAiMaxTokens(model string) int

GetOpenAiMaxTokens returns the max tokens for a given OpenAI model.

func GetTokenSize

func GetTokenSize(model string, prompt string) (int, error)

func NewiFlytekModelProvider

func NewiFlytekModelProvider(subType string, secretKey string, temperature float32, topK int) (*iFlytekModelProvider, error)

func OpenaiRawMessagesToGpt4VisionMessages added in v1.55.0

func OpenaiRawMessagesToGpt4VisionMessages(messages []*RawMessage) ([]openai.ChatCompletionMessage, error)

func OpenaiRawMessagesToMessages added in v1.55.0

func OpenaiRawMessagesToMessages(messages []*RawMessage) []openai.ChatCompletionMessage

func RefinePrice added in v1.69.0

func RefinePrice(price float64) float64

Types

type ChatGLMModelProvider

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

func NewChatGLMModelProvider

func NewChatGLMModelProvider(subType string, clientSecret string) (*ChatGLMModelProvider, error)

func (*ChatGLMModelProvider) GetPricing added in v1.50.0

func (c *ChatGLMModelProvider) GetPricing() string

func (*ChatGLMModelProvider) QueryText

func (p *ChatGLMModelProvider) QueryText(question string, writer io.Writer, history []*RawMessage, prompt string, knowledgeMessages []*RawMessage) (*ModelResult, error)

type ChatMessage added in v1.42.0

type ChatMessage struct {
	Role    string  `json:"role"`
	Message string  `json:"message"`
	User    *string `json:"user,omitempty"`
}

type ClaudeModelProvider

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

func NewClaudeModelProvider

func NewClaudeModelProvider(subType string, secretKey string) (*ClaudeModelProvider, error)

func (*ClaudeModelProvider) GetPricing added in v1.50.0

func (p *ClaudeModelProvider) GetPricing() string

func (*ClaudeModelProvider) QueryText

func (p *ClaudeModelProvider) QueryText(question string, writer io.Writer, history []*RawMessage, prompt string, knowledgeMessages []*RawMessage) (*ModelResult, error)

type CohereModelProvider added in v1.42.0

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

func NewCohereModelProvider added in v1.42.0

func NewCohereModelProvider(subType string, secretKey string) (*CohereModelProvider, error)

func (*CohereModelProvider) GetPricing added in v1.50.0

func (c *CohereModelProvider) GetPricing() string

GetPricing returns the pricing of the model https://cohere.com/pricing

func (*CohereModelProvider) QueryText added in v1.42.0

func (p *CohereModelProvider) QueryText(message string, writer io.Writer, chat_history []*RawMessage, prompt string, knowledgeMessages []*RawMessage) (*ModelResult, error)

type ErnieModelProvider

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

func NewErnieModelProvider

func NewErnieModelProvider(subType string, apiKey string, secretKey string, temperature float32, topP float32, presencePenalty float32) (*ErnieModelProvider, error)

func (*ErnieModelProvider) GetPricing added in v1.50.0

func (p *ErnieModelProvider) GetPricing() string

func (*ErnieModelProvider) QueryText

func (p *ErnieModelProvider) QueryText(question string, writer io.Writer, history []*RawMessage, prompt string, knowledgeMessages []*RawMessage) (*ModelResult, error)

type GeminiModelProvider added in v1.33.0

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

func NewGeminiModelProvider added in v1.33.0

func NewGeminiModelProvider(subType string, secretKey string, temperature float32, topP float32, topK int) (*GeminiModelProvider, error)

func (*GeminiModelProvider) GetPricing added in v1.50.0

func (p *GeminiModelProvider) GetPricing() string

func (*GeminiModelProvider) QueryText added in v1.33.0

func (p *GeminiModelProvider) QueryText(question string, writer io.Writer, history []*RawMessage, prompt string, knowledgeMessages []*RawMessage) (*ModelResult, error)

type HuggingFaceModelProvider

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

func NewHuggingFaceModelProvider

func NewHuggingFaceModelProvider(subType string, secretKey string, temperature float32) (*HuggingFaceModelProvider, error)

func (*HuggingFaceModelProvider) GetPricing added in v1.50.0

func (p *HuggingFaceModelProvider) GetPricing() string

func (*HuggingFaceModelProvider) QueryText

func (p *HuggingFaceModelProvider) QueryText(question string, writer io.Writer, history []*RawMessage, prompt string, knowledgeMessages []*RawMessage) (*ModelResult, error)

type LocalModelProvider

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

func NewAzureModelProvider

func NewAzureModelProvider(typ string, subType string, deploymentName string, secretKey string, temperature float32, topP float32, frequencyPenalty float32, presencePenalty float32, providerUrl string, apiVersion string) (*LocalModelProvider, error)

func NewLocalModelProvider

func NewLocalModelProvider(typ string, subType string, secretKey string, temperature float32, topP float32, frequencyPenalty float32, presencePenalty float32, providerUrl string) (*LocalModelProvider, error)

func NewOpenAiModelProvider

func NewOpenAiModelProvider(typ string, subType string, secretKey string, temperature float32, topP float32, frequencyPenalty float32, presencePenalty float32) (*LocalModelProvider, error)

func (*LocalModelProvider) CalculatePrice added in v1.55.0

func (p *LocalModelProvider) CalculatePrice(modelResult *ModelResult) error

func (*LocalModelProvider) GetPricing added in v1.48.0

func (p *LocalModelProvider) GetPricing() string

func (*LocalModelProvider) QueryText

func (p *LocalModelProvider) QueryText(question string, writer io.Writer, history []*RawMessage, prompt string, knowledgeMessages []*RawMessage) (*ModelResult, error)

type MiniMaxModelProvider

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

func NewMiniMaxModelProvider

func NewMiniMaxModelProvider(subType string, groupID string, apiKey string, temperature float32) (*MiniMaxModelProvider, error)

func (*MiniMaxModelProvider) GetPricing added in v1.50.0

func (p *MiniMaxModelProvider) GetPricing() string

func (*MiniMaxModelProvider) QueryText

func (p *MiniMaxModelProvider) QueryText(question string, writer io.Writer, history []*RawMessage, prompt string, knowledgeMessages []*RawMessage) (*ModelResult, error)

type ModelProvider

type ModelProvider interface {
	GetPricing() string
	QueryText(question string, writer io.Writer, history []*RawMessage, prompt string, knowledgeMessages []*RawMessage) (*ModelResult, error)
}

func GetModelProvider

func GetModelProvider(typ string, subType string, clientId string, clientSecret string, temperature float32, topP float32, topK int, frequencyPenalty float32, presencePenalty float32, providerUrl string, apiVersion string) (ModelProvider, error)

type ModelResult added in v1.48.0

type ModelResult struct {
	PromptTokenCount   int
	ResponseTokenCount int
	TotalTokenCount    int
	ImageCount         int
	TotalPrice         float64
	Currency           string
}

type MoonshotModelProvider added in v1.76.0

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

func NewMoonshotModelProvider added in v1.76.0

func NewMoonshotModelProvider(subType string, secretKey string, temperature float64) (*MoonshotModelProvider, error)

func (*MoonshotModelProvider) GetPricing added in v1.76.0

func (p *MoonshotModelProvider) GetPricing() string

func (*MoonshotModelProvider) QueryText added in v1.76.0

func (p *MoonshotModelProvider) QueryText(question string, writer io.Writer, history []*RawMessage, prompt string, knowledgeMessages []*RawMessage) (*ModelResult, error)

type OpenRouterModelProvider

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

func NewOpenRouterModelProvider

func NewOpenRouterModelProvider(subType string, secretKey string, temperature float32, topP float32) (*OpenRouterModelProvider, error)

func (*OpenRouterModelProvider) GetPricing added in v1.50.0

func (p *OpenRouterModelProvider) GetPricing() string

func (*OpenRouterModelProvider) QueryText

func (p *OpenRouterModelProvider) QueryText(question string, writer io.Writer, history []*RawMessage, prompt string, knowledgeMessages []*RawMessage) (*ModelResult, error)

type RawMessage added in v1.29.2

type RawMessage struct {
	Text   string
	Author string
}

func OpenaiGenerateMessages added in v1.55.0

func OpenaiGenerateMessages(prompt string, question string, recentMessages []*RawMessage, knowledgeMessages []*RawMessage, model string, maxTokens int) ([]*RawMessage, error)

Jump to

Keyboard shortcuts

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