九张图讲清楚AI Agent、LLM、RAG的工作原理(下篇)

232 阅读9分钟
  1. Agentic AI 系统的 5 个级别

图片

上图是 《5 Levels of Agentic AI Systems》 (代理式人工智能系统的五个等级),展示了从最简单到最复杂的 智能体(Agentic AI)架构演进过程。这些模式是构建复杂AI系统时的不同阶段或能力层级,非常适合理解LangChain、AutoGPT、ChatDev等系统背后的设计理念。


🌱 1)Basic Responder(基础回应者)

  • 工作原理:  用户发出一个查询(Query),直接交由一个 LLM(如 ChatGPT、DeepSeek 等)生成响应。
  • 特点:
    • 单轮对话。
    • 不调用外部工具。
  • 应用场景:  问答、写作、总结等基本任务。

🔀 2)Router Pattern(路由分发模式)

  • 工作原理:  查询首先被送到一个“路由模型”(Router LLM),由其判断应该走哪条处理路径(例如不同的LLM或不同能力模块)。
  • 特点:
    • 根据上下文选择不同的模型或技能。
    • 灵活性增强。
  • 应用场景:
    • 多语言支持(中文走模型A,英文走模型B)。
    • 多任务系统(比如生成 vs 检索任务路由不同模块)。

🛠️ 3)Tool Calling(工具调用)

  • 工作原理:  LLM识别用户意图后,调用外部工具(API、本地函数、数据库、浏览器等)辅助完成任务。
  • 特点:
    • LLM不仅生成文本,还能“执行操作”。
    • 如调用天气API、运行SQL、浏览网页等。
  • 应用场景:
    • AI助手、数据分析、代码生成执行、联网搜索等。

👥 4)Multi-agent Pattern(多智能体协作模式)

  • 工作原理:  一个主控Agent(Manager Agent)将任务分配给多个子Agent(Sub-Agents),它们协作完成任务。
  • 特点:
    • 多个智能体之间可以沟通与协作。
    • 实现“专业化分工”与复杂任务处理。
  • 应用场景:
    • 软件开发(ChatDev模型:产品经理→程序员→测试→部署)。
    • 多步推理、协作性工作流(如文档审查 + 数据分析)。

🤖 5)Autonomous Pattern(自主智能体模式)

  • 工作原理:  系统拥有完整闭环能力(如生成、执行、反馈、验证等),具备自我纠错、自我驱动能力,直到任务完成。
  • 组成:
    • Generator Agent:生成候选方案。
    • Validator Agent:验证与反馈。
    • 循环执行直到生成满意结果。
  • 特点:
    • 最复杂也最强大。
    • 接近人类“项目执行者”的能力。
  • 应用场景:
    • AutoGPT、BabyAGI 等具备自我迭代和目标驱动的AI系统。
    • 可以在没有人类干预下完成整个任务链。

✅ 总结对比表:

层级名称是否调用工具是否支持协作是否自主迭代
1Basic Responder
2Router Pattern✅(分路由)
3Tool Calling
4Multi-agent Pattern
5Autonomous Pattern

  1. 传统 RAG 与 HyDE 对比

图片

上图清晰对比了两种检索增强生成(RAG,Retrieval-Augmented Generation)技术的工作机制:


用途:帮助我们理解传统RAG与HyDE(Hypothetical Document Embeddings)在 知识检索 与 问答系统 中的差异。


✅ 上半部分:Traditional RAG(传统RAG)

🧠 原理步骤:

  1. 文档预处理
    • 将额外知识(Additional documents)通过 Embedding model 编码为向量。
  2. 向量入库
    • 把这些向量数据索引进 Vector database(向量数据库)
  3. 用户查询编码
    • 用户的 Query 也通过相同 Embedding 模型编码。
  4. 相似度检索
    • 在向量数据库中使用 Query 向量进行 相似度检索,找出最接近的文档向量。
  5. 提取相关文档
    • 找到若干与 Query 最相似的文档(即“检索到的上下文”)。
  6. 拼接提示词(Prompt)
    • 将 Query 和检索结果拼成 Prompt,送入大模型(LLM)。
  7. 生成答案
    • LLM 生成带参考信息的响应(Response)。

🔵 下半部分:HyDE(Hypothetical Document Embeddings)

HyDE 是一种更高级的技术,使用大语言模型生成“假设文档”来提升检索质量。

🚀 与传统 RAG 的不同点:

  • 核心思想:不是直接用 query 去查库,而是先让模型生成一段“假设文档”,用它来作为更丰富的语义检索向量。

🧠 原理步骤:

1-2. 同上:额外文档编码并索引进向量库。

  1. 生成 Hypothetical Prompt
    • 系统将用户 Query 作为提示词(Prompt: Write a passage about )传入 LLM。
  2. LLM生成 Hypothetical 文本
    • 模型生成一段与 Query 有关的“假设文本”(Hypothetical text)。
  3. 对 Hypothetical Text 编码
    • 将其编码为向量。
  4. 以假设向量做相似度搜索
    • 用它在向量数据库中检索最相似的文档(比原始 Query 更丰富)。
  5. 提取上下文文档
  6. 拼接 Prompt:Query + Hypothetical Text + 检索文档 → Prompt。
  7. 最终响应生成:LLM 生成最终答案。

🔍 总结对比

特征Traditional RAGHyDE
查询方式直接基于 Query 向量搜索基于 LLM 生成的“假设文档”向量搜索
语义丰富度依赖 Query 本身利用 Hypothetical 文本扩展 Query 语义
检索效果容易受限于 Query 质量对模糊、短语义 Query 更健壮
使用模型一个 Embedding 模型 + 一个 LLM一个 LLM(生成假设)+ 一个 Embedding 模型 + 一个 LLM(最终回答)

📌 应用建议

  • 若你的 Query 较长、语义明确,用 传统 RAG 即可;

  • 若你面临 模糊问题、复杂查询、用户表达不清楚 的情况,HyDE 能提升检索质量与回答准确性。

  1. RAG 与 Graph RAG 对比

图片

如图是对 传统 RAG 与 Graph RAG(基于图结构的检索增强生成)  的对比,旨在说明它们在信息检索与生成任务中的差异与优势。


🟢 上半部分:Traditional RAG(传统检索增强生成)

🧠 工作流程(步骤 1 ~ 7):

  1. 文档编码
    • 把额外的知识文档(Additional documents)送入 Embedding Model,转化为向量表示。
  2. 索引进向量数据库
    • 编码后的文档向量被存储于 Vector Database 中。
  3. 查询编码
    • 用户的 Query 同样通过 Embedding Model 编码成向量。
  4. 相似度检索
    • 使用 Query 向量在 Vector Database 中进行相似度搜索。
  5. 提取相似文档
    • 返回若干与查询语义相近的文档段落。
  6. 构造 Prompt
    • 将 Query 与文档内容拼接为 Prompt。
  7. 大模型生成回答(Final response)
    • Prompt 被送入 LLM,输出最终的回答。

🔵 下半部分:Graph RAG(图结构 RAG)

Graph RAG 引入了图数据库关系建模,让检索更具结构化、语义更清晰。

🧠 工作流程(步骤 1 ~ 10):

  1. 文档预处理
    • 将原始文本送入 LLM Graph Generator(一个专门的大模型模块)。
  2. 提取实体与关系
    • 模型从文档中提取出实体(Entities)和它们之间的关系(Relationships) ,如“公司A 属于 行业B”、“人物X 创立 公司Y”。
  3. 图构建完成
    • 实体关系被结构化后写入 Graph Database(图数据库) ,形成知识图谱。
  4. 文档编码(Embedding)
    • 原始文档也被送入 Embedding Model,生成向量表示,用于后续语义搜索。
  5. 构建图数据库
    • 存储的既包括实体关系图,也包括文档内容本身。
  6. Query 编码
    • 用户的查询也被 Embedding Model 编码为向量。
  7. 图遍历 + 向量检索
    • 查询不仅进行向量相似度搜索,还会通过图结构执行“图遍历”(例如:找到某个实体的直接上下游关系)。
  8. 获取上下文
    • 得到与 Query 相关的上下文文档 + 节点 + 实体关系。
  9. 构建 Prompt
    • 将 Query + 图数据上下文 合成 Prompt。
  10. LLM生成答案
  • Prompt 输入 LLM,生成最终的回答(Final Response)。

🔍 两者对比总结:

特征Traditional RAGGraph RAG
数据结构向量(无结构)图结构(结构化)
检索方式纯相似度匹配向量匹配 + 图遍历
语义表达可能模糊、浅层更深层次理解实体与关系
上下文构建语义最相似段落语义 + 结构相关节点
适用场景普通问答、知识补充知识图谱问答、多跳问答、实体推理

✅ 总结建议:

  • 若你想在问答中引入更丰富、可追溯的背景知识,Graph RAG 是升级选项
  • 特别适合复杂的关系推理,如医学、金融、科研、法律等场景。
  • 相比传统 RAG,Graph RAG 可以回答例如“谁是A公司的创始人的配偶?”这种多跳复杂问题。
  1. KV 缓存图片

这张图详细解释了 KV Caching(Key-Value 缓存)在大型语言模型(LLMs)中的作用原理。它是提高推理速度的核心优化手段之一,特别是在生成长文本时。我们可以分为上下两个部分进行理解:


🟦 上半部分:标准 Transformer 推理流程

✅ 工作流程:

  1. 输入序列:如 KMeans is used for,逐词送入 Transformer。
  2. 通过 Transformer 层:每个词被转化成隐藏状态(hidden states)。
  3. Projection(线性投影) :将隐藏状态映射到词表空间(即 logits over vocabulary)。
  4. ArgMax 预测下一个词:取最大概率的词作为下一个输出。

💡 Insight 1:

预测下一个 token,只需要当前最后一个隐藏状态(last hidden state)即可。


🟨 下半部分:KV Caching 原理(多头注意力机制)

✅ 工作原理:

Attention 计算:

注意力机制核心是:

图片

即:

  • 用当前 token 的 Query 向量(如 Q_4 for "for")去和所有历史 Key 做点积(得到注意力权重),
  • 然后乘以对应的 Value 向量,加权求和得到输出。

💡 Insight 2:

当前 token 的隐藏状态,只依赖于本 token 的 Query 向量,以及所有历史的 Key 和 Value 向量


🟩 底部部分:KV Cache 的实用价值

✅ Token-by-token 生成过程示意:

以生成第 5、6、7 个 token 为例:

TokenKey (K) 来源Value (V) 来源
第 5 个 tokenK₅(新生成)V₅(新生成)
第 6 个 tokenK₆(新生成)V₆(新生成)
第 7 个 tokenK₇(新生成)V₇(新生成)

但第 6、7 个 token 生成时,仍然需要使用前面所有的 K/V 值(如 K₁~₅V₁~₅)。

💾 KV Cache 的优化点:

  • K 和 V 向量在生成之后不会变,可以缓存下来(KV Caching)
  • 下次生成 token 时,直接复用已有的 K/V,而不是重新通过 Transformer 计算一遍,大幅提升效率。

🧠 总结一句话:

KV Caching 的核心思想:Query 每次重新计算,但 Key 和 Value 是历史不变的,可以缓存下来重复使用,从而极大加快推理速度。


✅ KV Caching 的应用场景:

  • LLM 文本生成(GPT、ChatGPT、LLAMA 等)

  • 推理速度优化,特别是 streaming / auto-regressive generation

  • 推理长对话、代码补全等任务中尤其关键

    原文地址:https://mp.weixin.qq.com/s/wXbxQi8LRkWAKEIAxtyA5g