RAG
(Retrieval - Augmented Generation)即检索增强生成技术,是一种结合信息检索和语言生成的技术。它的核心在于利用外部知识源来增强语言模型的生成能力,使模型能够生成更准确、更有依据的回答。
- 检索部分:当接收到一个问题或任务时,首先在外部知识源(如文档数据库、知识图谱等)中进行检索。这个检索过程可以基于各种检索算法,例如向量空间模型、倒排索引等。检索的目的是找到与问题相关的知识片段,这些知识片段可以是文本段落、知识图谱中的实体关系等。
- 生成部分:将检索到的知识片段作为额外的输入提供给语言生成模型(如 Transformer 架构的语言模型)。语言模型利用这些知识以及自身学习到的语言模式来生成回答。例如,在生成自然语言回答时,语言模型会根据问题的语义、检索到的知识和自身训练的语言规则来构建句子结构,选择合适的词汇,从而生成一个完整的回答。
应用: 问答系统,内容生成,知识图谱填充和生成
langchain中应用RAG
langchain做到了什么
- 对于给定的输入(问题),模型首先使用检索系统从大型文档集合中查找相关的文档或段落。这个检索系统通常基于密集向量搜索,例如ChromaDB、Faiss这样的向量数据库。
- 上下文编码:找到相关的文档或段落后,模型将它们与原始输入(问题)一起编码。
- 生成:使用编码的上下文信息,模型生成输出(答案)。这通常当然是通过大模型完成的。
RAG 的一个关键特点是,它不仅仅依赖于训练数据中的信息,还可以从大型外部知识库中检索信息。这使得RAG模型特别适合处理在训练数据中未出现的问题。
langchain都提供了相关工具
-
数据准备与加载
-
数据预处理
-
embedding嵌入向量生成
- 将文本转换为向量表示 这些向量将用于后续的相似度检索
-
向量存储与检索
-
语言模型生成回答
-
构建提示
-
放到一起对比 果然人只能答出来真正理解的东西吗 也不一定
lstm和transformer区别
对agent的理解 多智能体协同
Agent
在计算机科学和人工智能领域,agent(智能体)是一种能够感知环境、进行决策并采取行动以实现特定目标的实体。它可以是软件程序、机器人或其他具有自主行为能力的系统。
你觉得如果你能回答上来 感知 决策 行动 会不会很好
对langchain的一个整体大致理解
模型I/O:输入提示,调用模型,解析输出 提示工程 调用模型 输出解析 链 记忆 代理