X · Kimberly · 阅读原文

原始来源:X · Kimberly

发现渠道:X · AI 技术讨论

Kimberly 用一道面试题谈 RAG:用户问苹果手机价格,向量检索却把水果报价排在前面。她由此主张,把关键词检索、向量检索和重排组合起来。评论里的 HANS_DEV 不急着换算法,而是先问客服是否只负责手机;Dorian 则提出实体、关系和事件层面的检索方案。三人真正的分歧,是错误发生在候选排序、业务范围,还是知识表示这一层。面试经历未得到独立核实,这里讨论的是这个例题及各自提出的办法。

可信度 65 · 重要性 79 · 新颖度 54

技术与主题

评测与基准 · 检索与知识 · RAG · Hybrid Search · BM25 · Reranking · Metadata Filtering · Query Routing

Kimberly

观点原文

原帖用客服问价的面试例题,主张以混合检索和重排处理同名对象混淆。面试过程为作者自述。

原文短引:这才是消灭“红富士手机”的标准解法。

忠实转述(非原句):她叙述自己先想到更换更大的 Embedding 模型或缩小文本切块,被追问后转向关键词与向量结合的检索方案,再增加交叉编码器重排。她把这个组合视为生产应用应当采用的办法,而不只是备选优化。

HANS_DEV

观点原文

回应原帖:Kimberly

回应 Kimberly 的客服检索例题。先追问业务边界,再讨论候选排序;自述做过客服类检索。

原文短引:把库按品类切一刀比调检索省事

忠实转述(非原句):他的第一步是确认:这是不是只卖手机的客服?如果是,把水果资料放进可检索范围就已经出了问题。他说自己处理客服检索时,会先按负责的品类限定知识范围,再着手调整排序。这个建议以业务边界能够明确划分为前提。

Dorian

观点原文

回应原帖:Kimberly

回应同一客服例题,提出比单纯调整向量匹配更结构化的路线;本条评论未附实验或实现链接。

原文短引:疏忽了语义的理解产生的问题

忠实转述(非原句):他按顺序列出三种思路:先抽取实体和关系并建图,再做全文、向量等多路召回和重排;或改写问题、提取实体,再沿关系检索;还可以先把资料拆成实体与事件,分别进入向量库和关系数据库,查询时把检索到的对象关联到事件。他把最后一种称作 SAG,并借动态拼接 SQL 解释其查询过程。这里保留的是作者的方案设想,不把这个名称当作已核验的通行标准。

编辑评读

我更认同 HANS_DEV 先问业务范围的顺序,但不把它当成另一种万能答案。若客服只处理手机,水果资料本来就不该进入候选集合;若它服务的是综合电商,直接删掉水果类又会挡住正常问题。同一个错误例子,换了业务前提,合理的第一步就会变化。这里应先确认系统究竟允许回答什么,再讨论哪个检索器更强。

原帖的混合检索建议有用,过头的是把它说成能彻底解决这类错误。Elastic 文档把全文与向量检索的组合、结果融合,与 kNN 的过滤条件分别说明:前者合并两种召回结果,后者限定允许匹配的文档。[4][5] 两者解决的不是同一个问题。若候选集没有所需手机型号,或价格记录已过期,即便重排把最相关的一条放到第一位,也不能补出缺失的新报价。

Dorian 把讨论推进到实体、关系和事件,适合拿来思考同名对象以及跨资料的关系。但本帖没有比较实验,不能据此判断上图检索比按品类过滤更划算。对一个范围明确的客服系统,先修正元数据和查询路由,可能比另建一套知识表示容易维护;当问题真的要求跨实体推理时,再评估多出来的建模与更新成本。

一个可执行的排错办法是保存同一批失败问题的中间结果:正确资料是否存在、过滤后是否还在、是否进入召回候选、重排后去了哪里,以及最后引用了哪条证据。再分别比较纯向量、混合检索、带业务过滤和加重排的组合,记录漏召回、错误引用、延迟与成本。这是编辑建议的实验,不是帖子里已经测得的结果。它能让“加哪个组件”变成可检查的问题,而不是面试答案的记忆比赛。

需要留意

原帖是个人叙述;评论是方案建议或自述经验,不是同一数据集上的对照实验。

核查依据

所属事件

收录记录