import type { KnowledgeBase, EmbeddingProvider, TextChunk, SearchResult, DocMeta } from './types.js'; /** * 内存知识库实现 * * 当注入 EmbeddingProvider 时使用语义向量检索(余弦相似度); * 未注入时回退到 TF-IDF 关键词匹配(余弦相似度)。 * * 零外部依赖,适合开发/测试及小规模知识库场景。 */ export declare class InMemoryKnowledgeBase implements KnowledgeBase { /** 文档存储:docId -> StoredDoc */ private docs; /** 嵌入向量提供者(可选) */ private embeddingProvider?; /** 全局文档频率:term -> 包含该词的文档数 */ private df; /** 总文档数(用于 IDF 计算) */ private totalDocs; /** 缓存的 chunk TF-IDF 向量:chunkId -> TFIDFVector */ private chunkVectors; constructor(embeddingProvider?: EmbeddingProvider); ingest(docId: string, chunks: TextChunk[]): Promise; search(query: string, topK?: number): Promise; remove(docId: string): Promise; list(): Promise; /** 计算文本的 TF-IDF 稀疏向量 */ private computeTFIDF; } //# sourceMappingURL=in-memory-kb.d.ts.map