/** * 语义搜索类 - 基于向量嵌入的文档搜索 */ export interface SemanticSearchOptions { model?: string; topK?: number; minScore?: number; } export interface SemanticSearchResult { text: string; score: number; index: number; } export interface DocumentChunk { text: string; embedding?: number[]; metadata?: Record; } export declare class SemanticSearch { private embedder; private modelName; private chunks; constructor(modelName?: string); /** * 初始化嵌入模型 */ private getEmbedder; /** * 生成文本的向量嵌入 */ embed(text: string): Promise; /** * 将文档分割成块并索引 */ indexDocument(text: string, chunkSize?: number, overlap?: number): Promise; /** * 添加预处理的块 */ addChunk(text: string, metadata?: Record): Promise; /** * 语义搜索 */ search(query: string, options?: SemanticSearchOptions): Promise; /** * 计算余弦相似度 */ private cosineSimilarity; /** * 将文本分割成块 */ private splitIntoChunks; /** * 清空索引 */ clear(): void; /** * 获取索引块数量 */ getChunkCount(): number; /** * 释放资源 */ dispose(): Promise; } //# sourceMappingURL=SemanticSearch.d.ts.map