Skip to content
阅读进度

全文与向量为什么要混合召回? ​

返回 EachOf 项目 目录

项目版本说明

这些问答整合历史设计与实现资料;当前 main 分支 README 以工作包描述建设状态。具体能力、实验数据与设计目标的边界见项目状态与证据。

标准回答 ​

全文检索擅长处理名称、术语、编号和明确词项,向量检索更容易找到不同表达但语义相近的内容。只用全文可能漏掉同义表达,只用向量可能混淆相似但不满足精确条件的内容,因此 EachOf 组合两类候选。

召回、去重、排序和输出裁剪是不同阶段。候选阶段漏掉的内容,后续重排无法恢复;排序提高也不代表向量索引召回率提高。先检查目标是否进入某一路候选,再分析融合分数和最终预算。

PostgreSQL 同时保存结构化条件、全文与向量数据,可以减少跨存储的一致性协调,但数据库会同时承受业务事务和搜索压力。是否拆分专用搜索组件,需要根据实际负载和治理复杂度决定,不能从技术栈直接推导更高性能。

追问与回答 ​

关键词检索已经命中,向量分数为何还重要 ​

它可以帮助区分语义相关程度,但精确标识、权限和业务硬约束不能被高相似度抵消。

为什么不只把所有内容塞进模型上下文 ​

受成本、窗口和噪声影响,且仍需权限与失效控制。检索目标是提供当前允许且有用的有限上下文。

易混淆点 ​

  • 用重排收益证明候选召回阶段也改进了。

参考资料 ​

内容来源 ​

用完整回答理解机制,用真实证据解释项目。