大数跨境

记一次智能问答系统的review过程——细节决定成败

记一次智能问答系统的review过程——细节决定成败 AI探索时代
2025-10-22
1
导读:“ 一个好的智能问答系统是由细节决定的,而不是由流程决定的。

 一个好的智能问答系统是由细节决定的,而不是由流程决定的。



今天在公司项目组review了一下作者最近一直在做的一个基于RAG技术的智能问答系统;在review的过程中也发现了一些问题,就是虽然召回质量还过得去,但还是存在一些小问题。


比如说,偶尔会出现记忆不存在的问题,表面上来看就是连续两个有关联的问题,但回答的时候却没有任何关联性;简单来说就是,记忆功能没用好。


还有就是所有的技术手段都用上了,包括召回,去重,重排等;但还是会召回一些无关的数据回来,而这很明显是有问题的。


所以,出现这些问题的原因是什么,以及怎么解决这些问题?






细节决定成败




今天在项目review的时候,我们技术经理说的一句话作者认为非常对;不要以为流程上对了就代表没问题了;大模型应用不同于传统的WEB应用,一就是一,二就是二,大模型存在很大的偶然性,即使流程上都没问题,但结果并不一定没有问题。


这次review发现作者就是犯了一个典型的错误,那就是流程上都是正确的,但结果却不是很理想。


在基于rag的智能问答系统,在文档处理阶段,召回阶段都做了相对比较完善的优化;如文档数据的清洗,格式转换,元数据处理;召回阶段的问题补充优化,问题改写,元数据召回,相似度召回,以及去重,重排序等等。


虽然流程上处理的好像还不错,召回率也基本上能符合要求,但在某些时候还是会出现一些问题;而这就是细节上没有处理好,导致出现各种各样乱七八糟的问题。


而且,从这段时间开发RAG系统的感受来说,RAG的技术手段真的很有限,更多的是需要从设计和架构上对系统进行优化和调整。


RAG是一项技术,而智能问答是应用场景。


为什么说细节决定成败呢?


在基于RAG的智能问答系统中,RAG的流程基本上是固定的,哪怕玩出花来,它的技术手段就那么多,每个环节能优化的点也就那么多,而优化方式就更少了。


然后,再加上大模型本身的不稳定性,就会直接一个小问题被无限的放大,最终导致效果无法达到要求,或者说不稳定。


以作者为例,在优化查询问题时明明指定了根据历史记录进行改写,但在多轮对话中改写的问题却没有任何连贯性;因此,这也间接导致了两个问题成为完全独立的问题,在外人看来就是,你基本的记忆功能都没有做,甚至会怀疑你的专业能力。


还有就是被动RAG和主动RAG的区别:


所谓的被动RAG就是传统RAG,先根据问题召回文档,然后再根据文档回答问题;但事实上,在真实的对话场景中,有些对话并不需要参考文档,比如说 谢谢;而主动RAG是基于agent代理技术的RAG系统,通过让模型根据用户的问题自主判断,是否需要调用检索工具进行文档召回;如不不需要就可以根据模型自身的能力来回答问题,如果需要再调用召回工具进行文档召回。


这两种方式RAG的方式,就能部分解决召回无关文档的问题。


当然,做一个智能问答系统并不难,但要想做好一个智能问答系统却并不简单,







【声明】内容源于网络
0
0
AI探索时代
专注AI工程化落地,让你的技术不再纸上谈兵
内容 367
粉丝 0
AI探索时代 专注AI工程化落地,让你的技术不再纸上谈兵
总阅读133
粉丝0
内容367