链载Ai

标题: 参数知识”是指在 LLM 训练阶段学习的信息。 [打印本页]

作者: 链载Ai    时间: 前天 09:32
标题: 参数知识”是指在 LLM 训练阶段学习的信息。

背景

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

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

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

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

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

什么是RAG?

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

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

RAG架构

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

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

索引

  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/)







欢迎光临 链载Ai (https://www.lianzai.com/) Powered by Discuz! X3.5