立即注册

2PLM

查看: 66|回复: 0

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

[复制链接]
发表于 2025-7-17 16:43:45 | 显示全部楼层 |阅读模式
6. Agentic AI 系统的 5 个级别


上图是《5 Levels of Agentic AI Systems》(代理式人工智能系统的五个等级),展示了从最简单到最复杂的 智能体(Agentic AI)架构演进过程。这些模式是构建复杂AI系统时的不同阶段或能力层级,非常适合理解LangChain、AutoGPT、ChatDev等系统背后的设计理念。
________________________________________
🌱 1)Basic Responder(基础回应者)
•        工作原理: 用户发出一个查询(Query),直接交由一个 LLM(如 ChatGPT、DeepSeek 等)生成响应。
•        特点:
o        单轮对话。
o        不调用外部工具。
•        应用场景: 问答、写作、总结等基本任务。
________________________________________
🔀 2)Router Pattern(路由分发模式)
•        工作原理: 查询首先被送到一个“路由模型”(Router LLM),由其判断应该走哪条处理路径(例如不同的LLM或不同能力模块)。
•        特点:
o        根据上下文选择不同的模型或技能。
o        灵活性增强。
•        应用场景:
o        多语言支持(中文走模型A,英文走模型B)。
o        多任务系统(比如生成 vs 检索任务路由不同模块)。
________________________________________
🛠️ 3)Tool Calling(工具调用)
•        工作原理: LLM识别用户意图后,调用外部工具(API、本地函数、数据库、浏览器等)辅助完成任务。
•        特点:
o        LLM不仅生成文本,还能“执行操作”。
o        如调用天气API、运行SQL、浏览网页等。
•        应用场景:
o        AI助手、数据分析、代码生成执行、联网搜索等。
________________________________________
👥 4)Multi-agent Pattern(多智能体协作模式)
•        工作原理: 一个主控Agent(Manager Agent)将任务分配给多个子Agent(Sub-Agents),它们协作完成任务。
•        特点:
o        多个智能体之间可以沟通与协作。
o        实现“专业化分工”与复杂任务处理。
•        应用场景:
o        软件开发(ChatDev模型:产品经理→程序员→测试→部署)。
o        多步推理、协作性工作流(如文档审查 + 数据分析)。
________________________________________
🤖 5)Autonomous Pattern(自主智能体模式)
•        工作原理: 系统拥有完整闭环能力(如生成、执行、反馈、验证等),具备自我纠错、自我驱动能力,直到任务完成。
•        组成:
o        Generator Agent:生成候选方案。
o        Validator Agent:验证与反馈。
o        循环执行直到生成满意结果。
•        特点:
o        最复杂也最强大。
o        接近人类“项目执行者”的能力。
•        应用场景:
o        AutoGPT、BabyAGI 等具备自我迭代和目标驱动的AI系统。
o        可以在没有人类干预下完成整个任务链。
________________________________________
✅ 总结对比表:
______
7. 传统 RAG 与 HyDE 对比


上图清晰对比了两种检索增强生成(RAG,Retrieval-Augmented Generation)技术的工作机制:
________________________________________
用途:帮助我们理解传统RAG与HyDE(Hypothetical Document Embeddings)在 知识检索 与 问答系统 中的差异。
________________________________________
✅ 上半部分:Traditional RAG(传统RAG)
🧠 原理步骤:
1.        文档预处理
o        将额外知识(Additional documents)通过 Embedding model 编码为向量。
2.        向量入库
o        把这些向量数据索引进 Vector database(向量数据库)。
3.        用户查询编码
o        用户的 Query 也通过相同 Embedding 模型编码。
4.        相似度检索
o        在向量数据库中使用 Query 向量进行 相似度检索,找出最接近的文档向量。
5.        提取相关文档
o        找到若干与 Query 最相似的文档(即“检索到的上下文”)。
6.        拼接提示词(Prompt)
o        将 Query 和检索结果拼成 Prompt,送入大模型(LLM)。
7.        生成答案
o        LLM 生成带参考信息的响应(Response)。
________________________________________
🔵 下半部分:HyDE(Hypothetical Document Embeddings)
HyDE 是一种更高级的技术,使用大语言模型生成“假设文档”来提升检索质量。
🚀 与传统 RAG 的不同点:
•        核心思想:不是直接用 query 去查库,而是先让模型生成一段“假设文档”,用它来作为更丰富的语义检索向量。
🧠 原理步骤:
1-2. 同上:额外文档编码并索引进向量库。
1.        生成 Hypothetical Prompt
o        系统将用户 Query 作为提示词(Prompt: Write a passage about <query>)传入 LLM。
2.        LLM生成 Hypothetical 文本
o        模型生成一段与 Query 有关的“假设文本”(Hypothetical text)。
3.        对 Hypothetical Text 编码
o        将其编码为向量。
4.        以假设向量做相似度搜索
o        用它在向量数据库中检索最相似的文档(比原始 Query 更丰富)。
5.        提取上下文文档
6.        拼接 Prompt:Query + Hypothetical Text + 检索文档 → Prompt。
7.        最终响应生成:LLM 生成最终答案。
________________________________________
&#128269; 总结对比

________________________________________
&#128204; 应用建议
&#8226;        若你的 Query 较长、语义明确,用 传统 RAG 即可;
&#8226;        若你面临 模糊问题、复杂查询、用户表达不清楚 的情况,HyDE 能提升检索质量与回答准确性。

8. RAG 与 Graph RAG 对比


如图是对 传统 RAG 与 Graph RAG(基于图结构的检索增强生成) 的对比,旨在说明它们在信息检索与生成任务中的差异与优势。
________________________________________
&#128994; 上半部分:Traditional RAG(传统检索增强生成)
&#129504; 工作流程(步骤 1 ~ 7):
1.        文档编码
o        把额外的知识文档(Additional documents)送入 Embedding Model,转化为向量表示。
2.        索引进向量数据库
o        编码后的文档向量被存储于 Vector Database 中。
3.        查询编码
o        用户的 Query 同样通过 Embedding Model 编码成向量。
4.        相似度检索
o        使用 Query 向量在 Vector Database 中进行相似度搜索。
5.        提取相似文档
o        返回若干与查询语义相近的文档段落。
6.        构造 Prompt
o        将 Query 与文档内容拼接为 Prompt。
7.        大模型生成回答(Final response)
o        Prompt 被送入 LLM,输出最终的回答。
________________________________________
&#128309; 下半部分:Graph RAG(图结构 RAG)
Graph RAG 引入了图数据库和关系建模,让检索更具结构化、语义更清晰。
&#129504; 工作流程(步骤 1 ~ 10):
1.        文档预处理
o        将原始文本送入 LLM Graph Generator(一个专门的大模型模块)。
2.        提取实体与关系
o        模型从文档中提取出实体(Entities)和它们之间的关系(Relationships),如“公司A 属于 行业B”、“人物X 创立 公司Y”。
3.        图构建完成
o        实体关系被结构化后写入 Graph Database(图数据库),形成知识图谱。
4.        文档编码(Embedding)
o        原始文档也被送入 Embedding Model,生成向量表示,用于后续语义搜索。
5.        构建图数据库
o        存储的既包括实体关系图,也包括文档内容本身。
6.        Query 编码
o        用户的查询也被 Embedding Model 编码为向量。
7.        图遍历 + 向量检索
o        查询不仅进行向量相似度搜索,还会通过图结构执行“图遍历”(例如:找到某个实体的直接上下游关系)。
8.        获取上下文
o        得到与 Query 相关的上下文文档 + 节点 + 实体关系。
9.        构建 Prompt
o        将 Query + 图数据上下文 合成 Prompt。
10.        LLM生成答案
&#8226;        Prompt 输入 LLM,生成最终的回答(Final Response)。
________________________________________
&#128269; 两者对比总结:

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

这张图详细解释了 KV Caching(Key-Value 缓存)在大型语言模型(LLMs)中的作用原理。它是提高推理速度的核心优化手段之一,特别是在生成长文本时。我们可以分为上下两个部分进行理解:
________________________________________
&#128998; 上半部分:标准 Transformer 推理流程
&#9989; 工作流程:
1.        输入序列:如 KMeans is used for,逐词送入 Transformer。
2.        通过 Transformer 层:每个词被转化成隐藏状态(hidden states)。
3.        Projection(线性投影):将隐藏状态映射到词表空间(即 logits over vocabulary)。
4.        ArgMax 预测下一个词:取最大概率的词作为下一个输出。
&#128161; Insight 1:
预测下一个 token,只需要当前最后一个隐藏状态(last hidden state)即可。
________________________________________
&#129000; 下半部分:KV Caching 原理(多头注意力机制)
&#9989; 工作原理:
Attention 计算:
注意力机制核心是:


即:
&#8226;        用当前 token 的 Query 向量(如 Q_4 for "for")去和所有历史 Key 做点积(得到注意力权重),
&#8226;        然后乘以对应的 Value 向量,加权求和得到输出。
&#128161; Insight 2:
当前 token 的隐藏状态,只依赖于本 token 的 Query 向量,以及所有历史的 Key 和 Value 向量。
________________________________________
&#129001; 底部部分:KV Cache 的实用价值
&#9989; Token-by-token 生成过程示意:
以生成第 5、6、7 个 token 为例:

但第 6、7 个 token 生成时,仍然需要使用前面所有的 K/V 值(如 K&#8321;~&#8325;、V&#8321;~&#8325;)。
&#128190; KV Cache 的优化点:
&#8226;        K 和 V 向量在生成之后不会变,可以缓存下来(KV Caching)。
&#8226;        下次生成 token 时,直接复用已有的 K/V,而不是重新通过 Transformer 计算一遍,大幅提升效率。
________________________________________
&#129504; 总结一句话:
KV Caching 的核心思想:Query 每次重新计算,但 Key 和 Value 是历史不变的,可以缓存下来重复使用,从而极大加快推理速度。
________________________________________
&#9989; KV Caching 的应用场景:
&#8226;        LLM 文本生成(GPT、ChatGPT、LLAMA 等)
&#8226;        推理速度优化,特别是 streaming / auto-regressive generation
&#8226;        推理长对话、代码补全等任务中尤其关键



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

游客
回复
您需要登录后才可以回帖 登录 | 立即注册

小黑屋|手机版|Archiver| PLM的星空

GMT+8, 2025-8-2 07:31 , Processed in 0.079783 second(s), 18 queries .

PLM产品部技术团队 X3.4

© 2018-2023粤ICP备2021011559号粤公网安备 44060402002077号

快速回复 返回顶部 返回列表