当前位置: 首页 > news >正文

[论文阅读] 人工智能 | 真实场景下 RAG 系统的工程实践指南

面向实际应用的RAG系统工程:设计、开发与评估

论文标题

Engineering RAG Systems for Real-World Applications: Design, Development, and Evaluation

主要作者及单位信息
  • 作者:Md Toufique Hasan, Muhammad Waseem, Kai-Kristian Kemell, Ayman Asad Khan, Mika Saari, Pekka Abrahamsson
  • 单位:芬兰坦佩雷大学信息技术与通信学院

研究背景:当AI“记忆”不够用时,RAG如何补全拼图?

想象一下:你向AI询问“如何诊断脑部动脉瘤”,它可能滔滔不绝,但如果最新的临床指南更新了治疗方案,AI却不知道——这就是传统大语言模型(LLMs)的痛点:静态知识无法实时更新,容易“胡说八道”(幻觉)

RAG的出现:检索增强生成(RAG)就像给AI配了一个“外挂知识库”。当AI回答问题时,先从外部数据库检索最新信息,再结合自身“理解”生成答案,完美解决了LLMs“记忆有限”的问题。

现有研究的缺口:尽管RAG概念火热,但多数研究停留在实验室或英文数据集,缺乏真实场景(如医疗、农业)的落地案例,也很少有系统记录开发中的“坑”。就像造了一辆理论上很牛的车,却没试过在复杂路况下开。

创新点:五个真实领域的RAG“实战报告”

  1. 跨领域落地:首次在市政治理、网络安全、农业、工业研究、医疗诊断五个高门槛领域开发RAG系统,每个系统都“量身定制”。
  2. 用户视角评估:找了100个真实用户,从易用性、准确性等6个维度打分,而非仅靠技术指标。
  3. 工程经验总结:提炼出12条“避坑指南”,涵盖技术、运营、伦理,比如“OCR识别错误会毁掉整个系统”。

研究方法和思路:RAG系统的“组装说明书”

1. 两阶段核心设计
  • 检索阶段:用户提问→转为向量→在数据库中“搜相似文档”(如用FAISS或Pinecone)。
  • 生成阶段:把搜到的文档和问题一起喂给LLM(如GPT-4o或芬兰优化的Poro-34B),生成回答。
2. 关键组件(以医疗诊断系统为例)
  • 数据源:医学文献、临床指南(用Tesseract OCR提取图片文字)。
  • 向量数据库:存文档的“数字指纹”,快速匹配。
  • LLM:用GPT-4生成诊断建议,结合检索到的最新研究。
3. 用户评估怎么做?

100名参与者(含研究者、学生、行业专家)试用系统,回答6个问题:

  • “用起来顺手吗?”(易用性)
  • “答案靠谱吗?”(准确性)
  • “能看出信息从哪来吗?”(透明度)。

主要贡献:给RAG开发者的“实用大礼包”

  1. 落地模板:提供五个领域的RAG系统搭建方案,比如农业系统用芬兰语模型Poro-34B,医疗系统用GPT-4。
  2. 用户反馈证据:发现“易用性”和“准确性”是用户最关注的点,而“透明度”因领域而异(如网络安全系统为保密不显示来源)。
  3. 避坑指南
    • 技术:OCR错误必须清理,文档分块大小200-500字最佳。
    • 运营:用SQLite记录用户反馈,定期维护网页爬虫。
    • 伦理:医疗系统必须显示文献来源,但安全系统可隐藏。

思维导图

在这里插入图片描述


详细总结

一、研究背景与目标
  1. RAG的重要性:RAG作为一种关键方法,可将大型语言模型(LLMs)与外部知识结合,解决事实准确性和上下文相关性方面的局限。
  2. 现有研究不足:缺乏基于真实用例的RAG实现开发、通过普通用户参与进行的评估以及经验教训的系统记录。
  3. 研究目标:开发五个领域特定的RAG应用,进行用户评估,记录工程实践中的经验教训。
二、系统设计与实现
领域系统名称核心技术数据规模LLM模型
市政治理Kankaanpää City AI多语言OCR、FAISS1000+ PDFs(2023-2024)gpt-4o-mini
网络安全Disarm RAG向量嵌入、安全服务器红/蓝队策略文档LaMA 2-uncensored
农业AgriHubi AI Assist芬兰语优化模型、FAISS200+芬兰语PDFPoro-34B
工业研究FEMMa OracleGPT-4o、OpenAI向量存储约28篇工程文档GPT-4o
医疗诊断Assist Doctor嵌入搜索、Streamlit临床数据与文献GPT-4
三、用户评估
  1. 参与者情况:100名参与者,包括44%研究人员、20%学生等。
  2. 评估维度与结果
    • 易用性:各系统表现较好,如Kankaanpää City AI达81.8%好评。
    • 准确性:FEMMa Oracle达64.7%“准确”或“高度准确”评价。
    • 透明度:存在差异,Disarm RAG因安全原因透明度低。
四、经验教训
  1. 技术开发
    • 领域特定模型至关重要,通用模型在特定领域和语言查询中表现不佳。
    • OCR错误会影响管道质量,需采用多种OCR工具和正则表达式清理。
  2. 运营因素
    • 数据清理可提升检索质量,去除OCR噪声和重复数据。
    • 用户反馈驱动系统调优,帮助发现弱点。
  3. 伦理考虑
    • 提供源文件引用可建立信任,但安全用例需隐藏来源。
    • 数据集偏差影响检索平衡,需重新排序以提高多样性。
五、研究贡献与未来方向
  1. 贡献:端到端开发部署多语言、领域特定的RAG系统;进行用户为中心的评估;提供实用工程见解。
  2. 未来方向:开发评估代理模型,自动检查AI生成响应的准确性、相关性和完整性。

关键问题

  1. 在真实应用中开发RAG系统面临的主要技术挑战是什么?
    • 答案:主要技术挑战包括领域特定模型的必要性,通用模型如GPT-4o在处理领域特定和芬兰语查询时表现不佳;OCR错误影响管道质量,农业和医疗PDF的OCR噪声降低了FAISS检索质量;FAISS在大型语料库(>10k嵌入)中的可扩展性限制,导致延迟增加。
  2. 用户对不同领域RAG系统的评估结果呈现出哪些共性与差异?
    • 答案:共性是各系统在易用性和答案准确性方面普遍获得正面评价。差异在于透明度和推荐意愿因领域而异,如Disarm RAG因安全敏感性隐藏来源,导致透明度低,但仍有55%的参与者表示会推荐该系统。
  3. 该研究为RAG系统的未来发展提出了怎样的方向?
    • 答案:研究提出未来需开发评估代理模型,这是一种系统内部模块,可在向用户展示响应前检查AI生成响应的准确性、相关性和完整性,在检测到弱点时触发第二阶段检索或提示重新表述,形成自适应反馈循环,以提高高风险真实应用中RAG系统的可靠性和可信度。

相关文章:

  • 数据结构之顺序表(C语言版本)
  • PHP在做爬虫时的解决方案
  • 跨芯片 AI 算子库 FlagGems 正式加入PyTorch 基金会生态项目体系
  • idea的EasyCode插件连接瀚高数据库(APP)
  • 基于Anaconda环境开发IntelliJ IDEA实用JSON转Java实体插件
  • ASM1042在矿山设备通信中的抗干扰性能优化研究
  • JavaEE-Spring事务和事务的传播机制
  • SpringMVC系列(四)(请求处理的十个实验(下))
  • LabVIEW疲劳试验机模糊PID
  • 人工智能-基础篇-3-什么是深度学习?(DL,卷积神经网络CNN,循环神经网络RNN,Transformer等)
  • 华为云Flexus+DeepSeek征文|高可用部署 Dify 平台构建 Flux 绘画中台 Chatflow 的设计与实现
  • Android11 wifi开启源码分析
  • SQl中多使用EXISTS导致多查出了一条不符合条件的数据
  • 设计模式之房产中介——代理模式
  • redisTemplate简单实现幂等性校验
  • 机器人 URDF学习笔记
  • 51单片机教程(十三)- 单片机串口通信
  • mac docker desktop 安装 oracle
  • 并发基础7(守护线程)
  • Python基础知识之文件