Versions in this module Expand all Collapse all v0 v0.1.1 Apr 12, 2026 Changes in this version + const LLM_ALIBABA + const LLM_ANTHROPIC + const LLM_COZE + const LLM_LMSTUDIO + const LLM_OLLAMA + const LLM_OPENAI + const OutputFormatHTML + const OutputFormatJSON + const OutputFormatJSONObject + const OutputFormatJSONSchema + const OutputFormatSQL + const OutputFormatText + const OutputFormatXML + const ProviderAlibaba + const ProviderAnthropic + const ProviderCoze + const ProviderLMStudio + const ProviderOllama + const ProviderOpenAI + func BuildQueryExpansionUserPrompt(text string, maxTerms int) string + func BuildQueryRewriteUserPrompt(userQuery string, extraInstruction string) string + func ExpandedQueryFromModelAnswer(original, modelOut string, maxTerms int, separator string) (expanded string, terms []string) + func ExtractJSONFromLLMOutput(s string, maxChars int) string + func GenerateLingRequestID() string + func NormalizeRewrittenQuery(s string) string + type AlibabaHandler struct + func NewAlibabaHandler(ctx context.Context, llmOptions *LLMOptions) (*AlibabaHandler, error) + func (h *AlibabaHandler) GetMaxMemoryMessages() int + func (h *AlibabaHandler) Interrupt() + func (h *AlibabaHandler) Provider() string + func (h *AlibabaHandler) Query(text, model string) (string, error) + func (h *AlibabaHandler) QueryStream(text string, options *QueryOptions, ...) (*QueryResponse, error) + func (h *AlibabaHandler) QueryWithOptions(text string, options *QueryOptions) (*QueryResponse, error) + func (h *AlibabaHandler) ResetMemory() + func (h *AlibabaHandler) SetMaxMemoryMessages(n int) + func (h *AlibabaHandler) SummarizeMemory(model string) (string, error) + type AnthropicHandler struct + func NewAnthropicHandler(ctx context.Context, llmOptions *LLMOptions) (*AnthropicHandler, error) + func (h *AnthropicHandler) GetMaxMemoryMessages() int + func (h *AnthropicHandler) Interrupt() + func (h *AnthropicHandler) Provider() string + func (h *AnthropicHandler) Query(text, model string) (string, error) + func (h *AnthropicHandler) QueryStream(text string, options *QueryOptions, ...) (*QueryResponse, error) + func (h *AnthropicHandler) QueryWithOptions(text string, options *QueryOptions) (*QueryResponse, error) + func (h *AnthropicHandler) ResetMemory() + func (h *AnthropicHandler) SetMaxMemoryMessages(n int) + func (h *AnthropicHandler) SummarizeMemory(model string) (string, error) + type CompletionTokensDetails struct + AcceptedPredictionTokens int + AudioTokens int + ReasoningTokens int + RejectedPredictionTokens int + type CozeHandler struct + func NewCozeHandler(ctx context.Context, llmOptions *LLMOptions) (*CozeHandler, error) + func (h *CozeHandler) GetMaxMemoryMessages() int + func (h *CozeHandler) Interrupt() + func (h *CozeHandler) Provider() string + func (h *CozeHandler) Query(text, model string) (string, error) + func (h *CozeHandler) QueryStream(text string, options *QueryOptions, ...) (*QueryResponse, error) + func (h *CozeHandler) QueryWithOptions(text string, options *QueryOptions) (*QueryResponse, error) + func (h *CozeHandler) ResetMemory() + func (h *CozeHandler) SetMaxMemoryMessages(n int) + func (h *CozeHandler) SummarizeMemory(model string) (string, error) + type FewShotExample struct + Assistant string + User string + type LLMDetails struct + AppliedResponseFormat string + BaseURL string + Choices []QueryChoice + ChoicesCount int + ChoicesRawJSON string + Created int64 + EstimatedMaxOutputChars int + FilterEmoji bool + Input string + MaxTokens int + Model string + N int + Object string + PromptFilterResultsJSON string + Provider string + RawResponseJSON string + RequestID string + RequestedOutputFormat string + ResponseFormatApplied bool + ResponseID string + ServiceTierJSON string + SystemFingerprint string + SystemPrompt string + Usage *TokenUsage + UsageRawJSON string + type LLMHandler interface + GetMaxMemoryMessages func() int + Interrupt func() + Provider func() string + Query func(text, model string) (string, error) + QueryStream func(text string, options *QueryOptions, ...) (*QueryResponse, error) + QueryWithOptions func(text string, options *QueryOptions) (*QueryResponse, error) + ResetMemory func() + SetMaxMemoryMessages func(n int) + SummarizeMemory func(model string) (string, error) + func NewLLMProvider(ctx context.Context, provider, apiKey, apiURL, systemPrompt string) (LLMHandler, error) + func NewProviderHandler(ctx context.Context, provider string, llmOptions *LLMOptions) (LLMHandler, error) + type LLMOptions struct + ApiKey string + BaseURL string + FewShotExamples []FewShotExample + Logger *zap.Logger + Provider string + SystemPrompt string + type LLMProvider string + func (lp LLMProvider) ToString() string + type LMStudioHandler struct + func NewLMStudioHandler(ctx context.Context, llmOptions *LLMOptions) (*LMStudioHandler, error) + func (h *LMStudioHandler) GetMaxMemoryMessages() int + func (h *LMStudioHandler) Interrupt() + func (h *LMStudioHandler) Provider() string + func (h *LMStudioHandler) Query(text, model string) (string, error) + func (h *LMStudioHandler) QueryStream(text string, options *QueryOptions, ...) (*QueryResponse, error) + func (h *LMStudioHandler) QueryWithOptions(text string, options *QueryOptions) (*QueryResponse, error) + func (h *LMStudioHandler) ResetMemory() + func (h *LMStudioHandler) SetMaxMemoryMessages(n int) + func (h *LMStudioHandler) SummarizeMemory(model string) (string, error) + type OllamaHandler struct + func NewOllamaHandler(ctx context.Context, llmOptions *LLMOptions) (*OllamaHandler, error) + func (h *OllamaHandler) GetMaxMemoryMessages() int + func (h *OllamaHandler) Interrupt() + func (h *OllamaHandler) Provider() string + func (h *OllamaHandler) Query(text, model string) (string, error) + func (h *OllamaHandler) QueryStream(text string, options *QueryOptions, ...) (*QueryResponse, error) + func (h *OllamaHandler) QueryWithOptions(text string, options *QueryOptions) (*QueryResponse, error) + func (h *OllamaHandler) ResetMemory() + func (h *OllamaHandler) SetMaxMemoryMessages(n int) + func (h *OllamaHandler) SummarizeMemory(model string) (string, error) + type OpenaiHandler struct + func NewOpenaiHandler(ctx context.Context, llmOptions *LLMOptions) (*OpenaiHandler, error) + func (oh *OpenaiHandler) GetMaxMemoryMessages() int + func (oh *OpenaiHandler) Interrupt() + func (oh *OpenaiHandler) Provider() string + func (oh *OpenaiHandler) Query(text, model string) (string, error) + func (oh *OpenaiHandler) QueryStream(text string, options *QueryOptions, ...) (*QueryResponse, error) + func (oh *OpenaiHandler) QueryWithOptions(text string, options *QueryOptions) (*QueryResponse, error) + func (oh *OpenaiHandler) ResetMemory() + func (oh *OpenaiHandler) SetMaxMemoryMessages(n int) + func (oh *OpenaiHandler) SummarizeMemory(model string) (string, error) + type PromptTokensDetails struct + AudioTokens int + CachedTokens int + type QueryChoice struct + Content string + FinishReason string + Index int + type QueryExpansion struct + Debug map[string]any + Expanded string + Original string + Terms []string + type QueryOptions struct + EmotionalTone bool + EnableJSONOutput bool + EnableQueryExpansion bool + EnableQueryRewrite bool + EnableSelfQueryJSONOutput bool + ExpansionMaxTerms int + ExpansionSeparator string + FilterEmoji bool + LogitBias map[string]int + MaxTokens int + Model string + N int + OutputFormat string + QueryRewriteInstruction string + QueryRewriteModel string + Temperature float32 + TopP float32 + type QueryResponse struct + Choices []QueryChoice + Expansion *QueryExpansion + Model string + Provider string + Rewrite *QueryRewrite + Usage *TokenUsage + type QueryRewrite struct + Original string + Rewritten string + type SelfQueryExtractor struct + AllowedFields []string + LLM LLMHandler + func NewSelfQueryExtractor(h LLMHandler, allowedFields []string) *SelfQueryExtractor + func (e *SelfQueryExtractor) Extract(ctx context.Context, question string, opt *SelfQueryOptions) (*SelfQueryResult, error) + type SelfQueryFilterSpec struct + Dates []string + DocType string + Location string + Namespace string + Source string + TagsAny []string + Years []string + type SelfQueryOptions struct + AllowedFields []string + MaxJSONChars int + Model string + UsePlainQuery bool + type SelfQueryResult struct + Filters map[string]any + Query string + Raw string + Spec SelfQueryFilterSpec + func SelfQueryExtract(ctx context.Context, h LLMHandler, question string, allowedFields []string, ...) (*SelfQueryResult, error) + type TokenUsage struct + CompletionTokens int + CompletionTokensDetails *CompletionTokensDetails + PromptTokens int + PromptTokensDetails *PromptTokensDetails + TotalTokens int