AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


参数知识”是指在 LLM 训练阶段学习的信息。
发布日期:2024-04-21 19:29:02 浏览次数: 1842



背景

LLMs 是个很神奇的工具,但是当我们需要最新数据信息时,它们就毫无用处。其原因是 LLMs 的学习策略为所有“参数知识”。

“参数知识”是指在 LLM 训练阶段学习的信息。在训练过程中,LLM 学会将训练数据集中的信息编码到其内部模型参数中,即模型的参数化知识。

为了添加新的参数知识,我们必须微调 LLM 训练,无论是预训练还是微调,都是昂贵且缓慢的。昂贵和缓慢不是我们需要保持 LLM 知识更新时想要的特性。

检索增强生成(RAG)已成为我们解决这个问题的方法。不是通过微调将知识融入 LLM 中,而是将外部“知识库”插入到 LLM。而且这个知识库是可扩展的,我们可以像管理传统数据库一样管理它,而且它可能比微调更可靠。

例如:LLMs 支持的最强大的应用程序之一是复杂的问答 (Q&A) 聊天机器人。这些应用程序可以回答有关特定源信息的问题。这些应用程序使用检索增强生成(RAG)的技术,从外部数据源检索相关信息,用这些额外的源知识来增强我们的 Prompt,并将该信息输入到 LLM。

什么是RAG?

一句话总结:RAG 是一种用附加数据来增强 LLM 知识的技术。

LLMs 可以推理广泛的主题,但他们的知识仅限于他们接受训练的特定时间点的公共数据。如果我们想要构建能够推理私有数据或模型截止日期之后引入的数据的 AI 应用程序,就需要使用模型所需的特定信息来增强模型的知识。引入适当的信息并将其插入模型提示的过程称为检索增强生成 (RAG)。

RAG架构

典型的 RAG 应用程序有两个主要组件:

  • 索引:用于从源获取数据并为其建立索引的管道。这通常发生在离线状态。
  • 检索和生成:实际的 RAG chain,它在运行时接受用户查询并从索引中检索相关数据,然后将其传递给模型。

从原始数据到答案的最常见的完整流程如下所示:

索引

  1. 加载:首先我们需要加载数据。
  2. 分割:文本分割器将大的 Documents 分成更小的块。这对于索引数据和将其传递到模型都很有用,因为大块更难搜索并且不适合模型的有限上下文窗口。
  3. 存储:我们需要某个地方来存储和索引我们的分割,以便以后可以搜索它们。这通常是使用 VectorStore 和 Embeddings 模型来完成的。

检索和生成

  1. 检索:给定用户输入,使用检索器从存储中检索相关分割。
  2. 生成:ChatModel / LLM 使用提示生成答案,其中包括问题和检索到的数据。

参考资料:

Q&A with RAG | ?️? LangChain (https://python.langchain.com/docs/use_cases/question_answering/)

Making Retrieval Augmented Generation Fast | Pinecone (https://www.pinecone.io/learn/fast-retrieval-augmented-generation/)



53AI,企业落地应用大模型首选服务商

产品:大模型应用平台+智能体定制开发+落地咨询服务

承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

与创始人交个朋友

回到顶部

 
扫码咨询