一个典型的 RAG 框架可以分为检索器(Retriever)和生成器(Generator)两块,检索过程包括为数据(如 Documents)做切分、嵌入向量(Embedding)、并构建索引(Chunks Vectors),再通过向量检索以召回相关结果,而生成过程则是利用基于检索结果(Context)增强的 Prompt 来激活 LLM 以生成回答(Result)。
https://arxiv.org/pdf/2402.19473
RAG 技术的关键在于其结合了这两种方法的优点:检索系统能提供具体、相关的事实和数据,而生成模型则能够灵活地构建回答,并融入更广泛的语境和信息。这种结合使得 RAG 模型在处理复杂的查询和生成信息丰富的回答方面非常有效,在问答系统、对话系统和其他需要理解和生成自然语言的应用中非常有用。相较于原生的大型模型,搭配 RAG 可以形成天然互补的优势:
-
避免“幻觉”问题:RAG 通过检索外部信息作为输入,辅助大型模型回答问题,这种方法能显著减少生成信息不准确的问题,增加回答的可追溯性。