1. AI Agent 智能体全景技术图
AI 等级划分:基于 Agent(智能体)能力的 AI 等级划分,可以借鉴类似自动驾驶级别的划分方式,将 AI 智能体的能力从低到高进行分级。以下是一个简化的 AI Agent 能力划分描述:
-
L0 - 没有人工智能
在这一级别,Agent 并不具备人工智能特性,只能执行预定或固定的任务,没有感知、决策或学习的能力。 -
L1 - 规则符号智能
Agent 开始具备基于规则的决策能力,能够根据预设的规则和符号进行简单的判断和执行。这种智能体通常只能处理特定情境下的任务,且缺乏灵活性和适应性。 -
L2 - 推理决策智能
Agent 能够利用逻辑推理能力来解决问题,不再仅仅依赖于预设的规则。它能够根据当前的环境信息和目标,进行一定程度的推理和决策,以选择最合适的行动方案。 -
L3 - 记忆反思智能
在 L3 级别,Agent 不仅具备推理决策能力,还开始拥有记忆和反思的能力。它能够记住过去的经验和教训,并在未来的决策中加以利用。这种智能体能够自我优化和改进,以适应不断变化的环境和任务。 -
L4 - 自主学习智能
自主学习是 L4 级别 Agent 的主要特征。它能够自主地从数据中学习新知识和技能,无需人类的明确指导。这种智能体能够处理更复杂的问题,并在面对新情境时展现出更强的适应性和创造力。 -
L5 - 个性群体智能
在最高级别,Agent 不仅具备高度自主的学习和决策能力,还展现出个性化的特征。它能够根据自身的特点和偏好来执行任务,并与其他 Agent 进行协作和沟通。此外,L5 级别的 Agent 还能够理解和适应人类社会的复杂性和多样性,与人类实现更加紧密和自然的交互。
-
AI Agent 智能体全景技术图
2. 大模型 Agent 架构设计模式
架构设计模式已成为程序员的重要技能。然而,当我们转向大模型应用领域,情况可能会有所不同。面对新兴技术,比如:AI 大模型 Agent,我们尚缺乏成熟的设计模式来支撑这些解决方案。
根据我多年的架构设计经验,我在这里整理总结了一些针对大模型 Agent 应用的设计方法和架构模式,试图应对和解决大模型 Agent 应用实现中的一些挑战,比如:成本问题、延迟问题以及生成的幻觉等问题。
2.1 Agent 路由分发架构模式
当用户输入一个 Prompt 查询时,该查询会被发送到路由转发模块,而路由转发模块则扮演着对输入 Prompt 进行分类的角色。
如果 Prompt 查询是可以识别的,那么它会被路由到小模型进行处理,这通常是一个更准确、响应更快且成本更低的操作。然而,如果 Prompt 查询无法被识别,那么它将由大模型来处理。尽管大模型的运行成本较高,但它能够成功返回更多种类型查询的答案。通过这种方式,大模型应用产品可以在成本、性能和用户体验之间实现平衡。
2.2 大模型 Agent 代理架构模式
在任何一个生态系统中,都会有多个针对特定任务领域的专家,并行工作以处理特定类型的查询,然后将这些响应整合在一起,形成一个全面的答案。
这样的架构模式非常适合复杂的问题解决场景,在这种场景中,问题的不同方面需要不同的专业知识,就像一个由专家组成的小组,每个专家负责处理更大问题的一个方面。
更大的模型(比如:GPT-4)负责理解上下文,并将其分解为特定的任务或信息请求,这些任务或信息请求被传递给更小的代理模型。这些代理模型可能是较小模型,它们已经接受过特定任务的训练,或者是具有特定功能的通用模型,比如:BERT、Llama-2、上下文提示和函数调用。
2.3 基于缓存的微调 Agent 架构模式
将缓存和微调引入到大模型应用架构中,可以解决成本高、推理速度慢以及幻觉等组合问题。
通过缓存初始结果,能够在后续查询中迅速提供答案,从而显著提高了效率。
当我们累积了足够的数据后,微调层将启动,利用早期交互的反馈,进一步完善一个更为专业化的私有大模型。
专有私有大模型不仅简化了操作流程,也使专业知识更好地适应特定任务,使其在需要高度精确性和适应性的环境中,比如:客户服务或个性化内容创建,表现得更为高效。
对于刚入门的用户,可以选择使用预先构建的服务,比如:GPTCache,或者使用常见的缓存数据库:Redis、Cassandra、Memcached 来运行自己的服务。
2.4 面向目标的 Agent 架构模式
对于用户的 Prompt 提示词,Agent 会基于大模型先做规划(Planning),拆解成若干子任务,然后对每个子任务分别执行(Action),同时对每一步的执行结果进行观测(Observation),如果观测结果合格,就直接返回给用户最终答案,如果观测结果不合格或者执行出错,会重新进行规划(Replanning)。
这种面向目标的 Agent 架构模式非常常见,也是 AGI 大模型时代,每一个程序员同学都需要掌握的架构设计模式。
2.5 Agent 智能体组合架构模式
该架构设计模式强调了灵活性,通过模块化 AI 系统,能自我重新配置以优化任务性能。这就像一个多功能工具,可以根据需求选择和激活不同的功能模块,对于需要为各种客户需求或产品需求定制解决方案的企业来说,这是非常有效的。
可以通过使用各种自主代理框架和体系结构来开发每个 Agent 智能体,比如:CrewAI、Langchain、LLamaIndex、Microsoft Autogen 和 superAGI 等。
通过组合不同的模块,一个 Agent 可以专注于预测,一个处理预约查询,一个专注于生成消息,一个 Agent 来更新数据库。将来,随着专业 AI 公司提供的特定服务的增多,我们可以将一个模块替换为外部或第三方服务,以处理特定的任务或领域的问题。
2.6 Agent 双重安全架构设计模式
围绕大模型的核心安全性至少包含两个关键组件:一是用户组件,我们将其称为用户 Proxy 代理;二是防火墙,它为大模型提供了保护层。
用户 Proxy 代理在查询发出和返回的过程中对用户的 Prompt 查询进行拦截。该代理负责清除个人身份信息和知识产权信息,记录查询的内容,并优化成本。
防火墙则保护大模型及其所使用的基础设施。尽管我们对人们如何操纵大模型以揭示其潜在的训练数据、潜在功能以及当今恶意行为知之甚少,但我们知道这些强大的大模型是脆弱的。
在安全性相关的技术栈中,可能还存在其他安全层,但对于用户的查询路径来说,Proxy 代理和防火墙是最关键的。
3.Agent 框架总结
单智能体 = 大语言模型(LLM) + 观察(obs) + 思考(thought) + 行动(act) + 记忆(mem)
多智能体 = 智能体 + 环境 + SOP + 评审 + 通信 + 成本
-
多智能体优点:
-
多视角分析问题
:虽然 LLM 可以扮演很多视角,但会随着 system prompt 或者前几轮的对话快速坍缩到某个具体的视角上; -
复杂问题拆解
:每个子 agent 负责解决特定领域的问题,降低对记忆和 prompt 长度的要求; -
可操控性强
:可以自主的选择需要的视角和人设; -
开闭原则
:通过增加子 agent 来扩展功能,新增功能无需修改之前的 agent; -
(可能)更快的解决问题:解决单 agent 并发的问题;
多智能体缺点:
-
成本和耗时的增加;
-
交互更复杂、定制开发成本高;
-
简单的问题 single Agent 也能解决;
多智能体能解决的问题:
-
解决复杂问题;
-
生成多角色交互的剧情;
Multi-Agent 并不是 Agent 框架的终态,Multi-Agent 框架是当前有限的 LLM 能力背景下的产物,更多还是为了解决当前 LLM 的能力缺陷,通过 LLM 多次迭代、弥补一些显而易见的错误,不同框架间仍然存在着极高的学习和开发成本。随着 LLM 能力的提升,未来的 Agent 框架肯定会朝着更加的简单、易用的方向发展。
- 应用方向
游戏场景(npc 对话、游戏素材生产)、内容生产、私域助理、OS 级别智能体、部分工作的提效
3.1 Multi-Agent 框架
多 agent 应该像人类的大脑一样,分工明确、又能一起协作,比如,大脑有负责视觉、味觉、触觉、行走、平衡,甚至控制四肢行走的区域都不一样。
参考 MetaGPT 和 AutoGen 生态最完善的两个 Multi-Agent 框架,可以从以下几个角度出发:
环境 & 通讯
:Agent 间的交互,消息传递、共同记忆、执行顺序,分布式 agent,OS-agent
SOP
:定义 SOP,编排自定义 Agent
评审
:Agent 健壮性保证,输入输出结果解析
成本
:Agent 间的资源分配
Proxy
:自定义 proxy,可编程、执行大小模型
3.2 Single Agent 框架
执行架构优化 论文数据支撑
CoT to XoT
,从一个 thought 一步 act 到一个 thought 多个 act,从链式的思考方式到多维度思考;
长期记忆的优化: 具备个性化能力的 agent,模拟人的回想过程,将长期记忆加入 agent 中;
多模态能力建设: agent 能观察到的不仅限于用户输入的问题,可以加入包括触觉、视觉、对周围环境的感知等;
自我思考能力: 主动提出问题,自我优化;
如何学习大模型 AI ?
由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。
但是具体到个人,只能说是:
“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。
这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
第一阶段(10天):初阶应用
该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。
- 大模型 AI 能干什么?
- 大模型是怎样获得「智能」的?
- 用好 AI 的核心心法
- 大模型应用业务架构
- 大模型应用技术架构
- 代码示例:向 GPT-3.5 灌入新知识
- 提示工程的意义和核心思想
- Prompt 典型构成
- 指令调优方法论
- 思维链和思维树
- Prompt 攻击和防范
- …
第二阶段(30天):高阶应用
该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。
- 为什么要做 RAG
- 搭建一个简单的 ChatPDF
- 检索的基础概念
- 什么是向量表示(Embeddings)
- 向量数据库与向量检索
- 基于向量检索的 RAG
- 搭建 RAG 系统的扩展知识
- 混合检索与 RAG-Fusion 简介
- 向量模型本地部署
- …
第三阶段(30天):模型训练
恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。
到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?
- 为什么要做 RAG
- 什么是模型
- 什么是模型训练
- 求解器 & 损失函数简介
- 小实验2:手写一个简单的神经网络并训练它
- 什么是训练/预训练/微调/轻量化微调
- Transformer结构简介
- 轻量化微调
- 实验数据集的构建
- …
第四阶段(20天):商业闭环
对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。
- 硬件选型
- 带你了解全球大模型
- 使用国产大模型服务
- 搭建 OpenAI 代理
- 热身:基于阿里云 PAI 部署 Stable Diffusion
- 在本地计算机运行大模型
- 大模型的私有化部署
- 基于 vLLM 部署大模型
- 案例:如何优雅地在阿里云私有部署开源大模型
- 部署一套开源 LLM 项目
- 内容安全
- 互联网信息服务算法备案
- …
学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。
如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。