昆仑弟子_xtVs
08-16·泰德网聚(北京)科技股份有限公司员工
RAG长文检索的“粗排+精排”漏斗模型
今天接到一个朋友电话,他的RAG系统是前1-2年建的,当时核心目标是“有和没有”的问题——长文直接塞进向量库,搜索时拿短文硬匹配。现在业务要求精度了,长短文本语义不对齐的问题就暴露出来了。我的建议是:不要试图在同一个向量空间里硬碰硬,而是拆成三层渐进式漏斗。第一层:长文预处理(他已做了,保留)长文本直接向量化会丢失局部语义。采用滑动窗口重叠切分,把长文拆成与短文粒度相当的语义单元,同时保留上下文重叠区域,避免关键信息在边界处断裂。第二层:双路粗排召回对每个分块构建两种向量表征:全文语义向量捕捉整体主题;关键词稀疏向量(jieba提取核心实体后单独向量化)捕捉短句中的精确意图。检索时query同时走这两路,从主题覆盖和实体匹配两个维度捞回候选集,召回率明显提升。第三层:Cross-Encoder精排对齐召回后的候选集通常几十到上百条,噪声不少。引入交叉编码器,将query与每个候选片段拼接后同时输入,让模型在深层语义层面做细粒度交互,输出0-1的匹配分数。计算成本虽高,但只对粗排后的少量候选做,工程上完全可控。最后向量分数与精排分数做加权融合——向量保证覆盖面,精排保证精度。
发布于 北京
分享
评论
未登录
友善发言
image-upload
评论
加载中