SAG / ARCHITECTURE NOTE
DPR 与 bi-encoder:快速检索海量文档的语义搜索
结合研究和官方文档,介绍 DPR 的定义与必要性、工作原理、在 SAG 架构中的适用标准以及实践检查清单。
一句话定义
DPR 是一种稠密检索方式:分别将问题和文档编码为向量,并快速查找彼此接近的向量。
核心答案:即使用词不同,也能关联语义相同的问题与文档;此外,可以预先计算文档向量,从而快速搜索大型集合。
为什么需要这项技术?
即使用词不同,也能关联语义相同的问题与文档;此外,可以预先计算文档向量,从而快速搜索大型集合。
工作原理
问题 encoder 和文档 encoder 通过训练,使相关问题与文档对之间的距离更近。搜索阶段可以专注于广泛召回候选项,再由后续 reranker 进行精细判断。
设计时不能只关注准确率。还必须同时明确延迟、成本、数据边界、更新周期以及失败时的行为,才能在生产环境中获得可复现的结果。对于自动化无法确定的值,不要将其改为 0 或成功状态;保留为未测量或需要审核的状态更安全。
与 SAG 技术的关联
如果将其应用于 SAG,应在 tenant 范围内为客户问题和已批准的依据文档建立索引,并在搜索结果中记录文档 ID 和版本。这是当前尚未连接外部模型这一范围下的应用原则。
实践检查清单
- 确认向量搜索也应用了 tenant 过滤器
- 使用 hard negative 训练和评估容易混淆的文档
- 记录向量模型和索引版本
- 将失败、空结果和权限错误的状态与成功状态区分开
- 在相同条件下重新验证变更前后的结果
研究与官方文档
参考文档为原理和建议提供依据。它们不保证搜索曝光、AI 提及、排名或销售额;实际应用效果应通过服务数据以及在相同条件下的观测来确认。
选择标准与具体应用示例
由于只需将一个问题向量与预先存储的文档向量进行比较,因此可以减少为每篇文档重新运行模型的成本。不过,像“可用”和“不可用”这样语义接近但含义相反的条件也可能进入候选结果,因此需要核查条件是否匹配。
在 SAG 中的适用范围
本文讨论搜索 AI 的研究原理和扩展设计。阅读时可以结合 SAG 的页面采集、依据记录和报告验证结构,但不要将其理解为论文中的搜索算法已全部部署到生产流水线中。是否已应用,应通过搜索模块、评估数据和执行记录进行确认。
如何继续阅读这项技术
比较 RAG、GraphRAG 和 Self-RAG 论文及其适用条件。
SAG / KNOWLEDGE LINKS
