Day 45 · 知识库模块:导入、切块、混合检索、引用
把 W3 的 RAG 代码产品化:按小标题切块并带上下文前缀、按内容 hash 增量导入 pgvector、向量 + BM25 用 RRF 融合、可选 rerank、引用编号检查和渲染。最后跑一份只评检索的基线:纯 BM25 在 31 条种子查询上 recall@5 是 0.935,漏掉的两条正好说明为什么还需要向量。
把 W3 的 RAG 代码产品化:按小标题切块并带上下文前缀、按内容 hash 增量导入 pgvector、向量 + BM25 用 RRF 融合、可选 rerank、引用编号检查和渲染。最后跑一份只评检索的基线:纯 BM25 在 31 条种子查询上 recall@5 是 0.935,漏掉的两条正好说明为什么还需要向量。
纯向量检索遇到 E1042 这种错误码就犯迷糊。今天加上 jieba + BM25 关键词检索,用 RRF 融合两路结果,用 bge-reranker 精排,让大模型改写口语化的问题;最后回到上游,处理 PDF、表格和扫描件的文档解析。