chunker

package
v1.0.0 Latest Latest
Warning

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

Go to latest
Published: Jul 14, 2026 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Overview

Package chunker содержит реализации Chunker для разбиения документов на чанки.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BasicRuneChunker

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

BasicRuneChunker реализует базовый чанкинг по рунам с overlap и лимитом MaxChunks.

Важно: реализация статлесс и не читает env vars. Контракты валидации options находятся в публичном wrapper'е (pkg/draftrag). Здесь предполагается, что параметры уже валидированы.

func NewBasicRuneChunker

func NewBasicRuneChunker(chunkSize, overlap, maxChunks int) *BasicRuneChunker

NewBasicRuneChunker создаёт базовый чанкер по рунам.

func (*BasicRuneChunker) Chunk

func (c *BasicRuneChunker) Chunk(ctx context.Context, doc domain.Document) ([]domain.Chunk, error)

Chunk разбивает документ на чанки.

type ContextualChunker added in v1.0.0

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

@sk-task contextual-chunking#T1.1: ContextualChunker decorator (AC-001–AC-006)

func NewContextualChunker added in v1.0.0

func NewContextualChunker(base domain.Chunker, contextKey, template string) *ContextualChunker

NewContextualChunker создаёт контекстный чанкер-декоратор.

func (*ContextualChunker) Chunk added in v1.0.0

Chunk разбивает документ на чанки, обогащая каждый контекстом документа.

type SemanticChunker added in v1.0.0

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

@sk-task chunker-semantic#T2.1: semantic chunker algorithm (AC-001–AC-006, AC-008)

func NewSemanticChunker added in v1.0.0

func NewSemanticChunker(opts SemanticChunkerOptions) *SemanticChunker

NewSemanticChunker создаёт SemanticChunker с заданными опциями.

func (*SemanticChunker) Chunk added in v1.0.0

func (c *SemanticChunker) Chunk(ctx context.Context, doc domain.Document) ([]domain.Chunk, error)

Chunk разбивает документ на семантические сегменты по порогу сходства.

type SemanticChunkerOptions added in v1.0.0

type SemanticChunkerOptions struct {
	Embedder            domain.Embedder
	SimilarityThreshold float64
	MinChunkSize        int
	MaxChunkSize        int
}

SemanticChunkerOptions — параметры семантического чанкера (post-validation).

Jump to

Keyboard shortcuts

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