Case-Based Reasoning用于RAG

rag系列文章目录

文章目录


前言

在做大模型应用RAG的时候,会发现一种特殊的场景,就是基于之前的case进行回答,比如法律咨询、医疗诊断等等。这种情况的问答,需要有强有力的case支持才行,有了case支持,大模型回答会更加准确。


一、CBR简介

CBR这个概念已经很久了,它是一种人工智能推理方法,它的基本思想是:

遇到新问题时,先回忆相似的过去案例,再基于这些案例进行调整,得到新问题的解答。

• 关键步骤(通常被总结为 4R):

  1. Retrieve(检索):在案例库中找到与当前问题最相似的案例。
  2. Reuse(复用):借鉴案例的解决方案来应对当前问题。
  3. Revise(修正):对方案进行调整,使其更适合当前问题。
  4. Retain(保留):把新问题及解决方案存入案例库,供以后使用。

二、应用场景

CBR 在传统 AI 和现在的智能系统里都很有用,常见场景有:

• 医疗诊断:根据过往病例(案例)推理新病人的诊断和治疗方案。

• 法律咨询:检索相似案例判例,辅助新的法律推理。

• 技术支持/客服:根据历史工单问题,推荐解决方案。

• 教育领域:通过历史学生答题情况,给出个性化反馈。

• 工业故障诊断:借鉴历史设备故障案例,快速定位新故障原因。

三、RAG和CBR

RAG(Retrieval-Augmented Generation,检索增强生成)和 CBR 有相似之处:

• RAG:从知识库中检索文本片段,送入大模型作为上下文。

• CBR:从案例库中检索相似案例,借鉴其解决方案并调整。

在某种意义上,CBR 可以视为一种更结构化、更贴近应用的 RAG:

• RAG 偏重 "检索文档 → 辅助生成"。

• CBR 偏重 "检索案例 → 推理/调整解决方案"。

传统RAG,直接使用文本块作为知识,可能存在以下问题:

• 检索片段和问题语义不完全对齐;

• 模型无法直接借鉴完整的"解决方案";

• 缺乏可复用的 经验逻辑。

而引入 CBR 可以提升:

  1. 检索粒度:直接检索"完整案例"(问题 + 解决方案),比单纯的知识点更贴近用户问题。
  2. 推理效率:模型可以基于过去"怎么解决"的完整上下文,快速类比,而不是从零生成。
  3. 可解释性:回答可以展示"参考案例",让结果更可信。
  4. 持续学习:CBR 的 Retain 步骤可以不断积累新案例,相当于让 RAG 的库自动成长。

在论文中指出,使用CBR-RAG可以有效提高RAG问答准确率,其架构图如下:


总结

不仅在RAG中可以引入CBR,在agent中也可以引入CBR,比如在agent基于客户问题生成工作计划时,根据已有的案例生成工作计划,会更加可靠,防止大模型发散规划导致失败。

相关推荐
是Dream呀6 小时前
从课程入坑到玩转昇腾:昇腾 310 系列平台下 Qwen2.5-7B 大模型训练实践
人工智能·鲲鹏·昇腾
一只大侠的侠6 小时前
Python实现TTAO算法:优化神经网络中的时序预测任务
python·神经网络·算法
杜子不疼.6 小时前
NSP 新范式实战:AI 世界模型构建与物理规律建模指南
人工智能
AI架构师易筋6 小时前
多模态 LLM 与本地多模态检索 PoC:从原理到工程落地(图片 / 视频关键帧 / LaTeX 公式)
人工智能·llm·多模态·多模态llm
_OP_CHEN6 小时前
【Coze智能体开发】(二)从 0 到 1 精通 Coze 智能体开发:基础到实战全攻略,新手也能快速上手!
人工智能·大模型·大语言模型·模型优化·扣子平台·智能体开发·智能体调试
予枫的编程笔记6 小时前
【论文解读】DMD:解耦多模态蒸馏,开启情感识别新范式 (CVPR 2023)
人工智能·python·情感计算
百锦再6 小时前
AI视频生成模型从无到有:构建、实现与调试完全指南
人工智能·python·ai·小程序·aigc·音视频·notepad++
Haooog6 小时前
Spring AI 与 LangChain4j 对比
人工智能·大模型·springai·langchain4j
杜子不疼.7 小时前
计算机视觉热门模型手册:Spring Boot 3.2 自动装配新机制:@AutoConfiguration 使用指南
人工智能·spring boot·计算机视觉
无心水9 小时前
【分布式利器:腾讯TSF】7、TSF高级部署策略全解析:蓝绿/灰度发布落地+Jenkins CI/CD集成(Java微服务实战)
java·人工智能·分布式·ci/cd·微服务·jenkins·腾讯tsf