Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var LLMProviders = []LLMProvider{LLMProviderOpenAI, LLMProviderOllama}
Functions ¶
func RoughEstimateCodeTokens ¶
Types ¶
type LLMClient ¶
type LLMClient interface {
Send(ctx context.Context, messages []Message) (*LLMSendResponse, error)
Stream(ctx context.Context, messages []Message) <-chan LLMStreamEvent
}
func NewClient ¶
func NewClient(provider LLMProvider, opts LLMClientOptions) (client LLMClient, err error)
type LLMClientOptions ¶
type LLMClientOptions struct {
Model string
}
type LLMProvider ¶
type LLMProvider string
const ( LLMProviderOpenAI LLMProvider = "openai" LLMProviderOllama LLMProvider = "ollama" )
type LLMSendResponse ¶
type LLMSendResponse struct {
Content string
Usage LLMTokenUsage
}
type LLMStreamEvent ¶
type LLMStreamEvent struct {
Content string
Usage LLMTokenUsage
Type LLMStreamEventType
}
type LLMStreamEventType ¶
type LLMStreamEventType string
const ( LLMStreamEventTypeMessage LLMStreamEventType = "content" LLMStreamEventTypeComplete LLMStreamEventType = "complete" LLMStreamEventTypeError LLMStreamEventType = "error" )
type LLMTokenUsage ¶
type Message ¶
type Message struct {
Role MessageRole
Content string
Hidden bool
}
type MessageRole ¶
type MessageRole string
const ( Assistant MessageRole = "assistant" User MessageRole = "user" System MessageRole = "system" )
Click to show internal directories.
Click to hide internal directories.