Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func DefaultTokenEstimator ¶
DefaultTokenEstimator provides a rough token count estimate (4 chars per token)
Types ¶
type ChunkedSummarizer ¶
type ChunkedSummarizer struct {
// Configuration
ChunkThresholdPercent float64 // Percentage of context window (default: 0.7)
MaxSummaryBytes int // Max bytes for summary input (default: 16384)
TokenEstimator TokenEstimator
// contains filtered or unexported fields
}
ChunkedSummarizer handles summarization of large texts by splitting into chunks and combining partial summaries into a coherent final result.
func NewChunkedSummarizer ¶
func NewChunkedSummarizer(client llm.Client) *ChunkedSummarizer
NewChunkedSummarizer creates a new ChunkedSummarizer
func (*ChunkedSummarizer) Summarize ¶
func (cs *ChunkedSummarizer) Summarize(ctx context.Context, content string, opts SummarizeOptions) (*SummaryResult, error)
Summarize summarizes content with automatic chunking if needed
type SummarizeOptions ¶
type SummarizeOptions struct {
Context string // Additional context (e.g., URL, file path)
BasePrompt string // The main summarization goal
MaxBytes int // Override default MaxSummaryBytes
Timeout time.Duration
ProgressCallback func(status string)
}
SummarizeOptions configures the summarization process
type SummaryResult ¶
type SummaryResult struct {
Summary string
ChunksUsed int
TotalTokens int
ChunkSummaries []string // Partial summaries before final combination
}
SummaryResult contains the result of a summarization operation
type TokenEstimator ¶
TokenEstimator estimates token count for text
Click to show internal directories.
Click to hide internal directories.