RAG和LLM:动态语言建模的新前沿
RAG和LLM:探索动态语言建模的新前沿

LLM带来了哪些挑战?诸如GPT-4和Llama2等传统语言模型面临固有的限制。它们的静态性质使它们与固定的知识截止日期绑定在一起,让它们对于其最后一次训练日期之后的发展毫无察觉。尽管它们包含了大量的数据,但它们的知识有限。注入新鲜信息通常意味着进行繁琐的重新训练循环-无论是在计算资源还是时间上。此外,它们的通常性方法有时缺乏专业领域所需的精确性。这就是Retrieval-Augmented Generation(RAG)发挥作用的地方。
介绍RAG(检索增强生成)
RAG是两个强大人工智能力量的革命性融合:检索器和生成器。它使语言模型能够动态地从大量的外部语料库中获取相关数据,然后基于这些信息构建一条连贯的答案。
RAG在日常应用中的力量
让我们看一个实际生活中的检索增强生成用例。考虑一个客户支持聊天机器人场景。最初,我向LLM模型查询有关Qwak的简单问题:“如何安装Qwak SDK?”在后续的方法中,我借鉴了Qwak官方文档中的见解,并将其注入到一个向量存储器中。
- OpenAI Dev Day 2023:创始人Sam Altman主题演讲中的四项重大公告,绝对不能错过!
- 如何编写高效的Python代码:初学者教程
- 加州大学伯克利分校的研究人员推出了Ghostbuster:一种用于检测LLM生成文本的SOTA AI方法
如您所见,没有RAG和向量存储器数据,模型无法生成专业答案。有了RAG,答案更加详细,并且丰富了其他相关信息。检索和生成的结合使模型具备了从最新的来源“提取”并提供更全面答案的能力。
RAG如何提升LLM
- 解决静态知识限制:RAG不受静态知识的限制,可以从不断演化的外部语料库中动态获取信息。
- 知识扩展:与像GPT-4这样的独立模型不同,RAG利用外部数据库,扩大了其知识范围。
- 最小化重新训练:RAG减少了定期重新训练的需求。相反,您可以刷新外部数据库,使AI系统保持最新状态,而无需彻底改造模型。
- 提升领域特定响应:RAG可以从领域特定数据库(例如医学存储库)中获取详细准确的答案。
- 平衡广度和深度:RAG融合了检索和生成的优势。虽然其生成方面确保了上下文相关性,但检索方面则提供了深入的见解。
检索增强生成-架构
- 数据摄取管道步骤:在此阶段,系统编排收集相关数据并将其转换为嵌入向量。然后,这些处理过的嵌入向量被结构化,为LLM模型提供生成响应所需的上下文。
- 检索步骤:在这一步骤中,检索机制发挥作用,定位出最相关的数据段。
- 生成步骤:随后,利用类似LLM的模型,生成组件综合了从检索到的数据中获得的信息,合成了一条既有根据又与上下文对齐的响应。

数据管道
数据管道是初始阶段,原始数据在此阶段被获取、处理和准备用于系统中的进一步使用。这通常涉及以下步骤:
- 数据收集:从各种来源获取原始数据。
- 预处理:清洁数据以删除任何不一致的、无关的信息或错误。此步骤可能涉及规范化、标记化和其他数据转换技术。
- 使用嵌入模型进行转换:将数据转换为适合后续层次使用的格式,将文本数据转换为数值向量或嵌入。主要目标是捕捉单词/短语之间的语义关系,使意义相近的词在嵌入空间中相近。
- 向量存储器插入:插入之前,向量经常进行索引以实现高效检索。最后,索引化的向量存储在向量数据库中。
检索步骤
- 查询处理:这是系统接收用户查询的初始阶段。
- 输入:可以是文本、图像等。
- 预处理:与数据插入流程类似,查询数据经过预处理以匹配嵌入模型所期望的格式。
- 查询嵌入:经过预处理的查询使用与插入流程中生成嵌入向量相同的模型(或兼容模型)转换成嵌入向量。
- 相似度搜索:然后使用查询嵌入来搜索向量存储以找到最近的邻居。
- 候选生成:基于最近的邻居,系统生成一组可能与查询相关的候选数据点。
- 筛选和排序:对检索到的邻居进行进一步筛选和排序,以选择最佳候选项。
生成步骤
对于某些系统,还会对候选项进行额外处理以生成最终输出。
后处理
生成的数据或响应在呈现给用户之前可能需要进行后处理。
- 格式化:确保数据以用户友好的格式呈现。
- 个性化:根据用户的偏好调整输出。
链接提示
该层管理如何将提示输入到LLM中以控制其输出或指导其生成过程。
- 提示设计:设计引导模型生成所需输出的提示。这可能涉及根据模型的响应进行迭代和改进。
- 顺序交互:某些任务可能需要连续发送多个提示,将一个提示的输出作为下一个提示的输入。这种“链接”有助于引导模型生成更精炼或特定的输出。
- 反馈循环:链接提示层可能包含一个反馈机制,其中分析模型的输出,然后相应地调整后续的提示。
这些对象和层之间的相互作用形成了一个有机的系统,其中原始数据通过语言模型的力量转化为可行的洞察、答案或其他所需的输出。
要构建这样的链接过程,像Langchain、LlamaIndex和AutoGPT等平台是常见解决方案。
总结
将RAG整合到LLM领域标志着我们在迈向更动态、更有见解的人工智能交互的旅程中迈出了重要的一步。这一进展将语言模型如GPT-4的能力转变了,使它们可以访问和利用最新信息,而不受其初始训练数据的限制。RAG通过将实时数据无缝地纳入对话中,确保ML模型始终保持相关和专业知识。这对于专业领域带来了深远的影响;无论是提供专家建议还是提供支持,RAG使ML模型能够提供精确和及时的见解。这是一次先进而复杂的飞跃,确保模型之间的沟通始终处于创新、准确和适应性的前沿。
在下一篇博文中,我们将介绍如何构建一个可供实际使用的RAG & LLM流程,请关注!
本文最初由Qwak发布在这里,已获得允许转载。





