微信扫码
与创始人交个朋友
我要投稿
RAG
(Retrieval-Augmented Generation, 检索增强生成)是一种将信息检索与生成模型结合的方法,也是企业落地大模型应用最常见的方式。
RAG
接受用户输入,从一个大型文档集合中检索相关信息,然后将用户问题与检索信息发送到大模型,大模型生成最终答案。
RAG
可以借助外部知识源,从而提升回答的准确性和信息丰富度,相当于为LLM配置了一个书架,虽然有些知识不知道,但可以参考相关书籍从而获取不错的答案。可以用来做文档问答系统、客服系统、企业内私有数据的问答系统。
基础RAG
分为三个阶段Indexing
、Retrieval
与Generation
:
Embedding
模型将数据块向量化,存放在VectorDB
(向量数据库)中VectorDB
中匹配相关内容RAG
应用根据复杂程度可分为三类:
Naive RAG
遵循传统的RAG
索引、检索和生成过程。简而言之,用户输入用于查询相关文档,然后这些文档与提示相结合并传递给模型以生成最终响应。如果应用程序涉及多轮对话交互,则可以将对话历史集成到提示中。
Naive RAG
实现简单但有一些局限性,例如精度低(没有检索到相关片段)、召回率低(未能检索到所有相关片段)。
Advanced RAG
在Naive RAG
的基础上,通过一些技术手段提高了检索质量,涉及优化预检索、检索和后检索过程。
Modular RAG
整合了Advanced RAG
的各种模块和技术,以改善整体的RAG
系统。包括搜索、路由、内存、融合等模块,朴素RAG与高级RAG只是其中的特例。
目前比较流行的RAG
框架有LlamaIndex
与LangChain
,可以根据使用场景选择合适的框架,当然这些框架也在不断发展。
LlamaIndex
是一个构建大模型应用的数据框架,从名字可以看出专注于大模型应用数据处理,比如加载、索引、查询等。LangChain
是一个通用的大模型应用开发框架,使用模块化设计方便开发人员构建大模型应用,比如问答系统、智能客服、智能代理等。RAG
应用的流程较长,每一步都会影响到最终效果,那么怎么知道我的RAG
应用哪里需要优化呢?这就需要用到RAG
评估。
通过设置一些指标,常见的如Correctness(答案准确性)、Answer Relevancy(答案相关性)、Faithfulness(忠诚度)、Context Precision(上下文精度)等,来评估应用各个阶段的表现情况,可以人工打分也可以借助LLM来实现,根据打分结果来做对应的优化。
本文总结了RAG
应用的相关内容,包括原理、开发范式、常用框架以及评估等。当然RAG
应用还面临了不少挑战,随着LLM的快速发展,RAG
必定也会推陈出新。
53AI,企业落地应用大模型首选服务商
产品:大模型应用平台+智能体定制开发+落地咨询服务
承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2024-11-23
如何提高RAG系统准确率?12大常见痛点及巧妙解!
2024-11-23
RAG 2.0性能提升:优化索引与召回机制的策略与实践
2024-11-22
RAG技术在实际应用中的挑战与解决方案
2024-11-22
从普通RAG到RAPTOR,10个最新的RAG框架
2024-11-22
如何使用 RAG 提高 LLM 成绩
2024-11-21
提升RAG性能的全攻略:优化检索增强生成系统的策略大揭秘 | 深度好文
2024-11-20
FastGraphRAG 如何做到高达 20%优化检索增强生成(RAG)性能优化
2024-11-20
为裸奔的大模型穿上"防护服":企业AI安全护栏设计指南
2024-07-18
2024-05-05
2024-07-09
2024-07-09
2024-05-19
2024-06-20
2024-07-07
2024-07-07
2024-07-08
2024-07-09
2024-11-06
2024-11-06
2024-11-05
2024-11-04
2024-10-27
2024-10-25
2024-10-21
2024-10-21