当前位置:首页 > 文章列表 > 科技周边 > 人工智能 > 给RAG系统做一次全面「体检」,亚马逊开源RAGChecker诊断工具

给RAG系统做一次全面「体检」,亚马逊开源RAGChecker诊断工具

来源:机器之心 2024-08-22 22:13:09 0浏览 收藏

有志者,事竟成!如果你在学习科技周边,那么本文《给RAG系统做一次全面「体检」,亚马逊开源RAGChecker诊断工具》,就很适合你!文章讲解的知识点主要包括,若是你对本文感兴趣,或者是想搞懂其中某个知识点,就请你继续往下看吧~

给RAG系统做一次全面「体检」,亚马逊开源RAGChecker诊断工具
AIxiv专栏是本站发布学术、技术内容的栏目。过去数年,本站AIxiv专栏接收报道了2000多篇内容,覆盖全球各大高校与企业的顶级实验室,有效促进了学术交流与传播。如果您有优秀的工作想要分享,欢迎投稿或者联系报道。投稿邮箱:liyazhou@jiqizhixin.com;zhaoyunfeng@jiqizhixin.com

亚马逊上海人工智能研究院成立于 2018 年,已成为深度学习研究领域的领先机构之一,共发表了~90 篇论文。研究领域包括深度学习的基础理论、自然语言处理、计算机视觉、图机器学习、高性能计算、智能推荐系统、欺诈检测与风险控制、知识图谱构建以及智能决策系统等。研究院率先研究和开发了世界领先的深度图学习库 Deep Graph Library (DGL),结合了深度学习和图结构表示的优势,影响许多重要应用领域。

检索增强生成(Retrieval-Augmented Generation, RAG)技术正在彻底革新 AI 应用领域,通过将外部知识库和 LLM 内部知识的无缝整合,大幅提升了 AI 系统的准确性和可靠性。然而,随着 RAG 系统在各行各业的广泛部署,其评估和优化面临着重大挑战。现有的评估方法,无论是传统的端到端指标还是针对单一模块的评估,都难以全面反映 RAG 系统的复杂性和实际表现。特别是,它们只能提供一个最终打分报告,仅反映 RAG 系统的性能优劣。

人生病了需要去医院做检查,那 RAG 系统生病了,如何诊断呢?

近日,亚马逊上海人工智能研究院推出了一款名为 RAGChecker 的诊断工具为 RAG 系统提供细粒度、全面、可靠的诊断报告,并为进一步提升性能,提供可操作的方向。本文详细介绍了这个 RAG 的 “显微镜”,看看它如何帮助开发者们打造更智能、更可靠的 RAG 系统。

给RAG系统做一次全面「体检」,亚马逊开源RAGChecker诊断工具

  • 论文:https://arxiv.org/pdf/2408.08067
  • 项目地址:https://github.com/amazon-science/RAGChecker

RAGChecker: RAG 系统的全面诊断工具

想象一下,如果我们能对 RAG 系统进行一次全面的 “体检”,会是什么样子?RAGChecker 就是为此而生的。它不仅能评估系统的整体表现,还能深入分析检索和生成两大核心模块的性能。

给RAG系统做一次全面「体检」,亚马逊开源RAGChecker诊断工具

RAGChecker 的主要特点包括:

  1. 细粒度评估:RAGChecker 采用基于声明(claim)级别的蕴含关系检查,而非简单的回复级别评估。这种方法能够对系统性能进行更加详细和微妙的分析,提供深入的洞察。
  2. 全面的指标体系:该框架提供了一套涵盖 RAG 系统各个方面性能的指标,包括忠实度(faithfulness)、上下文利用率(context utilization)、噪声敏感度(noise sensitivity)和幻觉(hallucination)等。
  3. 经过验证的有效性:可靠性测试表明,RAGChecker 的评估结果与人类判断有很强的相关性,其表现超过了其他现有的评估指标。这保证了评估结果的可信度和实用性。
  4. 可操作的洞察:RAGChecker 提供的诊断指标为改进 RAG 系统提供了明确的方向指导。这些洞察能够帮助研究人员和实践者开发出更加有效和可靠的 AI 应用。

RAGChecker 的核心指标

RAGChecker 的指标体系可以用下图直观的理解:

给RAG系统做一次全面「体检」,亚马逊开源RAGChecker诊断工具

这些指标被分为三大类:

1. 整体指标: 

  • Precision(精确率):模型回答中正确陈述的比例
  • Recall(召回率):模型回答中包含的标准答案中陈述的比例
  • F1 score(F1 分数):精确率和召回率的调和平均数,提供平衡的性能度量

2. 检索模块指标: 

  • Context Precision(上下文精确率):在所有检索块中,包含至少一个标准答案陈述的块的比例
  • Claim Recall(陈述召回率):被检索块覆盖的标准答案陈述的比例

3. 生成模块指标: 

  • Context Utilization(上下文利用率):评估生成模块如何有效利用从检索块中获取的相关信息来产生正确的陈述。这个指标反映了系统对检索到的信息的利用效率。
  • Noise Sensitivity(噪音敏感度):衡量生成模块在回答中包含来自检索块的错误信息的倾向。这个指标帮助识别系统对不相关或错误信息的敏感程度。
  • Hallucination(幻觉):测量模型生成既不存在于检索块也不在标准答案中的信息的频率。这就像是捕捉模型 “凭空捏造” 信息的情况,是评估模型可靠性的重要指标。
  • Self-knowledge(模型内部知识):评估模型在未从检索块获得信息的情况下,正确回答问题的频率。这反映了模型在需要时利用自身内置知识的能力。
  • Faithfulness(忠实度):衡量生成模块的响应与检索块提供的信息的一致程度。这个指标反映了系统对给定信息的依从性。

这些指标就像是 RAG 系统的 “体检报告”,帮助开发者全面了解系统的健康状况,并找出需要改进的地方。

开始使用 RAGChecker

对于想要尝试 RAGChecker 的开发者来说,上手过程非常简单。以下是快速入门的步骤:

1. 环境设置:首先,安装 RAGChecker 及其依赖:
pip install ragcheckerpython -m spacy download en_core_web_sm

2. 准备数据:将 RAG 系统的输出准备成特定的 JSON 格式,包括查询、标准答案、模型回答和检索的上下文。数据格式应如下所示:
{ "results": [ { "query_id": "", "query": "", "gt_answer": "", "response": "", "retrieved_context": [ { "doc_id": "", "text": "" }, ... ] }, ... ]   }

3. 运行评估:

  • 使用命令行:
ragchecker-cli \--input_path=examples/checking_inputs.json \--output_path=examples/checking_outputs.json

  • 或者使用 Python 代码:
from ragchecker import RAGResults, RAGCheckerfrom ragchecker.metrics import all_metrics# 从 JSON 初始化 RAGResultswith open ("examples/checking_inputs.json") as fp:rag_results = RAGResults.from_json (fp.read ())# 设置评估器evaluator = RAGChecker ()# 评估结果evaluator.evaluate (rag_results, all_metrics)print (rag_results)

4. 分析结果:RAGChecker 会输出 json 格式的文件来展示评估指标,帮助你了解 RAG 系统的各个方面表现。

输出结果的格式如下:

给RAG系统做一次全面「体检」,亚马逊开源RAGChecker诊断工具

通过分析这些指标,开发者可以针对性地优化 RAG 系统的各个方面。例如:

  • 较低的 Claim Recall(陈述召回率)可能表明需要改进检索策略。这意味着系统可能没有检索到足够多的相关信息,需要优化检索算法或扩展知识库。
  • 较高的 Noise Sensitivity(噪音敏感度)表明生成模块需要提升其推理能力,以便更好地从检索到的上下文中区分相关信息和不相关或错误的细节。这可能需要改进模型的训练方法或增强其对上下文的理解能力。
  • 高 Hallucination(幻觉)分数可能指出需要更好地将生成模块与检索到的上下文结合。这可能涉及改进模型对检索信息的利用方式,或增强其对事实的忠实度。
  • Context Utilization(上下文利用率)和 Self-knowledge(模型内部知识)之间的平衡可以帮助你优化检索信息利用和模型固有知识之间的权衡。这可能涉及调整模型对检索信息的依赖程度,或改进其综合利用多种信息源的能力。

通过这种方式,RAGChecker 不仅提供了详细的性能评估,还为 RAG 系统的具体优化方向提供了清晰的指导。

在 LlamaIndex 中使用 RAGChecker

RAGChecker 现在已经与 LlamaIndex 集成,为使用 LlamaIndex 构建的 RAG 应用提供了强大的评估工具。如果你想了解如何在 LlamaIndex 项目中使用 RAGChecker,可以参考 LlamaIndex 文档中关于 RAGChecker 集成的部分。

结语

RAGChecker 的推出为 RAG 系统的评估和优化提供了一个新的工具。它为开发者提供了一把 “显微镜”,帮助他们深入了解、精准优化 RAG 系统。无论你是正在研究 RAG 技术的学者,还是致力于开发更智能 AI 应用的工程师,RAGChecker 都将是你不可或缺的得力助手。读者可以访问 https://github.com/amazon-science/RAGChecker 获取更多信息或参与到项目的开发中来。

文中关于工程的知识介绍,希望对你的学习有所帮助!若是受益匪浅,那就动动鼠标收藏这篇《给RAG系统做一次全面「体检」,亚马逊开源RAGChecker诊断工具》文章吧,也可关注golang学习网公众号了解相关技术文章。

版本声明
本文转载于:机器之心 如有侵犯,请联系study_golang@163.com删除
中国首次成功当选亚太经合组织能源工作组主席中国首次成功当选亚太经合组织能源工作组主席
上一篇
中国首次成功当选亚太经合组织能源工作组主席
在没有本地安装的情况下在 Postman 上测试您的端点
下一篇
在没有本地安装的情况下在 Postman 上测试您的端点
查看更多
最新文章
查看更多
课程推荐
  • 前端进阶之JavaScript设计模式
    前端进阶之JavaScript设计模式
    设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
    542次学习
  • GO语言核心编程课程
    GO语言核心编程课程
    本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
    508次学习
  • 简单聊聊mysql8与网络通信
    简单聊聊mysql8与网络通信
    如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
    497次学习
  • JavaScript正则表达式基础与实战
    JavaScript正则表达式基础与实战
    在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
    487次学习
  • 从零制作响应式网站—Grid布局
    从零制作响应式网站—Grid布局
    本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
    484次学习
查看更多
AI推荐
  • 美图AI抠图:行业领先的智能图像处理技术,3秒出图,精准无误
    美图AI抠图
    美图AI抠图,依托CVPR 2024竞赛亚军技术,提供顶尖的图像处理解决方案。适用于证件照、商品、毛发等多场景,支持批量处理,3秒出图,零PS基础也能轻松操作,满足个人与商业需求。
    16次使用
  • SEO标题PetGPT:智能桌面宠物程序,结合AI对话的个性化陪伴工具
    PetGPT
    SEO摘要PetGPT 是一款基于 Python 和 PyQt 开发的智能桌面宠物程序,集成了 OpenAI 的 GPT 模型,提供上下文感知对话和主动聊天功能。用户可高度自定义宠物的外观和行为,支持插件热更新和二次开发。适用于需要陪伴和效率辅助的办公族、学生及 AI 技术爱好者。
    15次使用
  • 可图AI图片生成:快手可灵AI2.0引领图像创作新时代
    可图AI图片生成
    探索快手旗下可灵AI2.0发布的可图AI2.0图像生成大模型,体验从文本生成图像、图像编辑到风格转绘的全链路创作。了解其技术突破、功能创新及在广告、影视、非遗等领域的应用,领先于Midjourney、DALL-E等竞品。
    43次使用
  • MeowTalk喵说:AI猫咪语言翻译,增进人猫情感交流
    MeowTalk喵说
    MeowTalk喵说是一款由Akvelon公司开发的AI应用,通过分析猫咪的叫声,帮助主人理解猫咪的需求和情感。支持iOS和Android平台,提供个性化翻译、情感互动、趣味对话等功能,增进人猫之间的情感联系。
    44次使用
  • SEO标题Traini:全球首创宠物AI技术,提升宠物健康与行为解读
    Traini
    SEO摘要Traini是一家专注于宠物健康教育的创新科技公司,利用先进的人工智能技术,提供宠物行为解读、个性化训练计划、在线课程、医疗辅助和个性化服务推荐等多功能服务。通过PEBI系统,Traini能够精准识别宠物狗的12种情绪状态,推动宠物与人类的智能互动,提升宠物生活质量。
    38次使用
微信登录更方便
  • 密码登录
  • 注册账号
登录即同意 用户协议隐私政策
返回登录
  • 重置密码