3.1: Sentence-aware chunk splitting at ". ", "? ", "! " boundaries when paragraphs exceed ChunkConfig.Size. Overlap now aligns to word boundaries to avoid mid-word splits. 3.2: VectorStore interface gains ListCollections and CollectionInfo methods. New collections.go with ListCollections, DeleteCollection, CollectionStats helpers returning backend-agnostic CollectionInfo. Mock updated accordingly. 3.3: KeywordFilter re-ranks QueryResults by boosting scores for keyword matches (case-insensitive, +10% per keyword). QueryConfig.Keywords flag enables automatic extraction and filtering. 3.4: Mock-only benchmarks for chunking, query, ingest, formatting, and keyword filtering. Co-Authored-By: Virgil <virgil@lethean.io>
18 lines
641 B
Go
18 lines
641 B
Go
package rag
|
|
|
|
import "context"
|
|
|
|
// ListCollections returns all collection names from the given vector store.
|
|
func ListCollections(ctx context.Context, store VectorStore) ([]string, error) {
|
|
return store.ListCollections(ctx)
|
|
}
|
|
|
|
// DeleteCollection removes a collection from the given vector store.
|
|
func DeleteCollection(ctx context.Context, store VectorStore, name string) error {
|
|
return store.DeleteCollection(ctx, name)
|
|
}
|
|
|
|
// CollectionStats returns backend-agnostic metadata about a collection.
|
|
func CollectionStats(ctx context.Context, store VectorStore, name string) (*CollectionInfo, error) {
|
|
return store.CollectionInfo(ctx, name)
|
|
}
|