网站Logo 爱摸鱼的小饼干

AI Agent该从何学起?

caodegao
6
2025-07-23

AI Agent 定义

一、Agent 基础概念

(一)你认为什么是:Agent/智能体/代理?

🎬 以下视频能帮你快速了解什么是Agent

点击观看

总而言之,Agent是指一种能够模拟人类思考和行为来自动执行任务,以解决复杂问题的程序或系统

(二)基本组成

现代Agent通常包含以下核心模块:

🎯 核心模块(必备)

  • 感知器(Perception):获取环境数据,是 Agent 与外界交互的接口,收集的数据类型多样,取决于应用场景。

  • 决策器(Decision-Maker):基于感知信息和内部状态生成行动计划,可采用基于规则、模型、数据或混合模式进行决策。

  • 执行器(Actuator):将决策转化为具体行动,如机器人的机械动作、软件系统的指令执行、生成回复等。

🧠 智能模块(重要)

  • 记忆模块(Memory):存储和管理信息,包括短期记忆(对话上下文)、长期记忆(用户偏好)和工作记忆(任务状态)。

  • 内部模型(Internal Model):对环境进行抽象表示,帮助 Agent 理解环境变化规律,预测未来状态,如地图、状态转移模型。

  • 规划模块(Planning):将复杂任务分解为子任务,制定执行策略和时间序列,管理资源分配。

🔧 功能模块(现代Agent常备)

  • 工具调用模块(Tool Calling):管理和调用外部工具、API接口,实现Agent能力扩展。

  • 通信接口(Communication Interface):处理与用户、其他Agent或系统的交互通信。

⚡ 高级模块(可选)

  • 学习机制(Learning Mechanism):从经验中学习,优化决策能力,学习算法包括强化学习、监督学习等。

  • 监控反馈(Monitoring & Feedback):监控行为效果,检测错误并进行自我调整。

 

 

(三)行为模式

  • 基于规则的(Rule-Based):依据预设规则决策,简单直观,但面对复杂或未知情况灵活性差。

  • 基于模型(Model-Based):利用内部模型预测环境状态,据此制定决策,适应性强,但模型构建和维护成本高。

  • 基于数据(Data-Driven):通过学习大量数据发现模式和关联进行决策,在数据丰富场景表现出色,依赖高质量数据。

  • 混合模式(Hybrid):结合多种行为模式,根据环境和任务需求切换,兼顾不同模式优点 。

(四)分类

按照自主程度和人机交互方式,Agent 可分为:

🎮 人工控制型Agent(Manual Agent)

特点: 完全由人类控制,按固定程序执行任务,无自主决策能力

产品比喻:

  • 洗衣机:按下按钮后按程序执行洗衣流程

  • 传统工业机器人:需要人工编程每个动作序列

  • 计算器:输入什么计算什么,无主动性

应用场景: 工业生产线、传统自动化设备、简单脚本程序

🚗 人机协作型Agent(Semi-Autonomous Agent)

特点: 具备一定自主性,能处理常规任务,但关键决策或复杂情况需人类干预

产品比喻:

  • 特斯拉Autopilot:大部分时间自动驾驶,复杂路况需人工接管

  • 智能客服机器人:简单问题自动回答,复杂问题转人工客服

  • Siri语音助手:理解语音指令但重要操作需用户确认

应用场景: 自动驾驶、智能客服、医疗诊断辅助、金融风控系统

🤖 全自主型Agent(Autonomous Agent)

特点: 完全自主运行,能独立感知环境、做出决策并执行行动

产品比喻:

  • 扫地机器人:自主规划清扫路径、避障、返回充电

  • ChatGPT:完全自主进行对话,无需人工干预

  • 股票交易机器人:自主分析市场数据并执行交易决策

  • AlphaGo:完全自主进行围棋对弈决策

应用场景: 智能对话系统、自主交易系统、游戏AI、智能家居控制

📊 分类对比表

类型

自主程度

人机交互

决策方式

典型产品

人工控制型

0%

完全依赖人工

固定程序

洗衣机、计算器

人机协作型

50-80%

人机结合

有限自主+人工审核

自动驾驶、智能客服

全自主型

90-100%

完全独立

完全自主

ChatGPT、扫地机器人

(五)思考

  • LLM是Agent吗?

二、Agent 工作流程

 

 

三、Agent 开发流程

(一)选择正确的大模型(LLM)

挑选合适大模型对 Agent 性能至关重要,需考虑许可协议、成本、语言兼容性以及模型在编码、工具调用和推理等核心任务上的表现,常用评估基准有:

  • 大规模多任务语言理解(MMLU):衡量推理能力。

伯克利函数调用排行榜:评估工具选择和调用能力。
当前排行榜前几名(2024年数据):

排名

模型

总体准确率

成本估算

特点

1

Claude-3.5-Sonnet

92.3%

$3.2/1000次

综合能力强

2

GPT-4o

89.7%

$2.8/1000次

速度快

3

Gemini-Pro

85.4%

$2.1/1000次

成本较低

4

Llama-3.2-70B

78.9%

$1.5/1000次

开源最佳

HumanEval 和 BigCodeBench:测试编码能力。
🎯 实际应用意义
对于Agent开发的影响:

  • HumanEval高分的模型:

    • 适合做代码助手:修复bug、写小函数

    • 适合算法题解答:面试准备、编程练习

    • 适合教学场景:解释基础编程概念

  • BigCodeBench高分的模型:

    • 适合做开发伙伴:协助完整项目开发

    • 适合架构设计:系统设计、技术选型

    • 适合代码审查:理解复杂代码结构

🎯 选择建议:
如果您要构建的Agent主要用于:

  • 📝 代码教学、算法解答 → 关注HumanEval分数

  • 🏗️ 项目开发、系统设计 → 关注BigCodeBench分数

  • 🔧 代码审查、重构优化 → 两个分数都要高

  • 此外,大模型的上下文窗口大小也很关键,窗口越大越有利于处理复杂任务。可选择的大模型包括闭源的 GPT4-o、Claude 3.5,开源的 Llama 3.2、Qwen 2.5 等 。

(二)提示词工程

系统提示词是大模型与 AI Agent 智能体的核心差异所在。在系统提示词中可定义 AI Agent 智能体行为,常见模式有:

  • 工具使用:判断何时使用外部工具或自身知识库处理查询。

  • 反思:在回复用户前审视和修正答案。

  • 推理后行动(ReAct):不断推理解决查询的方法,执行操作,根据结果决定后续行动。

  • 计划后执行:预先规划任务,分解为子步骤后依次执行。
    实现这些行为需进行提示词工程,可利用结构化生成技术规范大模型输出格式 。

🎯 系统提示词的基本结构

基础模板框架

# 角色定义
你是一个专业的[Agent名称],专门负责[具体职责]。


# 核心能力
你具备以下能力:
- [能力1]
- [能力2]
- [能力3]


# 行为准则
在执行任务时,你需要:
- [行为准则1]
- [行为准则2]
- [行为准则3]


# 工具使用
你可以使用以下工具:
- [工具1]:[使用时机和方法]
- [工具2]:[使用时机和方法]


# 输出格式
请按照以下格式输出:
[具体的输出格式要求]


# 错误处理
当遇到问题时:
[错误处理策略]

💡 四种控制逻辑的具体提示词

工具使用模式

# 智能客服Agent
你是一个专业的客服助手,名为"小助手"。


## 核心职责
帮助用户解决问题,提供准确的信息和服务。


## 决策逻辑
对于每个用户问题,你需要判断:
- 如果问题涉及实时信息(天气、股价、新闻),使用相应API工具
- 如果问题涉及订单查询,使用订单查询工具
- 如果问题涉及计算,使用计算器工具
- 如果是常识性问题,使用你的知识库直接回答


## 可用工具
- weather_api(city): 查询指定城市天气
- order_query(order_id): 查询订单状态
- calculator(expression): 进行数学计算
- search_knowledge(query): 搜索知识库


## 工作流程
1. 分析用户问题类型
2. 判断是否需要使用工具
3. 如需工具,选择合适的工具并调用
4. 整合工具结果,给出完整回答

反思模式

# 代码审查Agent
你是一个专业的代码审查专家。


## 工作方式
对于每个代码审查请求,你需要进行两轮处理:


### 第一轮:初步分析
- 快速识别代码问题
- 给出初步建议


### 第二轮:反思检查
在给出最终回答前,请自我检查:
- 我的分析是否遗漏了重要问题?
- 我的建议是否实用和可行?
- 是否有更好的解决方案?
- 我的解释是否清晰易懂?


## 输出格式
请按以下格式输出:


**初步分析:**
[第一轮分析结果]


**反思检查:**
[自我检查过程]


**最终建议:**
[经过反思后的完善建议]

推理后行动(ReAct)模式

# 问题诊断Agent
你是一个专业的问题诊断专家。


## 工作方式
采用"推理-行动-观察"的循环模式:


### 推理阶段
基于当前信息,分析可能的原因和下一步行动


### 行动阶段
执行诊断行动(提问、查询、测试等)


### 观察阶段
分析行动结果,更新理解


## 输出格式
每轮请按以下格式输出:


**推理:** [当前情况分析和推理过程]
**行动:** [具体的诊断行动]
**观察:** [行动结果和新发现]


持续循环直到问题解决。


## 示例
推理:用户反映网站慢,可能是服务器、网络或代码问题
行动:询问用户具体的慢在哪里(加载时间、响应时间等)
观察:用户说主要是数据库查询慢

计划后执行模式

# 项目管理Agent
你是一个专业的项目管理助手。


## 工作方式
对于复杂任务,采用"计划-执行"模式:


### 计划阶段
1. 分析任务需求
2. 分解为子任务
3. 制定执行顺序
4. 预估时间和资源


### 执行阶段
严格按照计划执行,逐步完成各子任务


## 输出格式
**项目计划:**

🔧 高级技巧

结构化输出

# 使用JSON格式约束输出
请严格按照以下JSON格式输出:
{
"analysis": "问题分析",
"solution": "解决方案",
"confidence": "置信度(0-1)",
"next_steps": ["步骤1", "步骤2"]
}

条件分支

# 根据不同场景采用不同策略
如果用户问题类型是:
- 技术问题 → 使用技术专家模式
- 业务问题 → 使用业务分析模式
- 紧急问题 → 使用快速响应模式

上下文管理

# 记忆管理策略
- 始终记住用户的基本信息和偏好
- 保持对话连贯性
- 定期总结对话要点
- 重要信息需要确认后再执行

(三)定义 AI Agent 核心指令

在系统提示词中明确期望的功能和排除的功能,包括:

  • Agent 的名称和角色:明确 Agent 用途。

  • 语气和简洁度:设定回应风格和详细程度。

  • 使用工具的时机:确定依赖外部工具的场景。

  • 错误处理:指导 Agent 应对工具或流程问题的方法 。

(四)定义并优化核心工具

工具赋予 Agent 更多能力,常见工具如代码执行、网络搜索、文件读取和数据分析等。定义工具时需明确:

  • 工具名称:具有唯一性和描述性。

  • 工具描述:阐述工具功能和适用场景。

  • 工具输入格式:说明参数要求和限制。

  • 运行位置或方法指示词:告知工具运行方式。
    必要时对工具进行优化,如调整名称、描述,设置高级配置,筛选输出结果 。

(五)制定可靠的记忆处理策略

大模型受上下文窗口限制,需有效管理记忆。常见策略有:

  • 滑动记忆:保留最近 k 轮对话,删除旧对话。

  • 令牌记忆:保存最后 n 个令牌,丢弃其他令牌。

  • 总结记忆:利用大模型总结对话回合,删除单独消息。
    还可训练大模型识别关键信息存入长期记忆,提供个性化服务 。

(六)解析 AI Agent 原始输出

解析器将 Agent 的原始输出转换为应用程序可处理的格式,如 JSON。部分模型供应商(如 OpenAI)可直接提供可解析输出,开源模型可能需额外处理 。

四、大模型 Agent 相关要点

(一)大模型 Agent 框架模块

把大模型Agent想象成一个完整的人,这四个模块就是构成这个人的关键部分:

Profile 模块:人的"身份设定",定义和管理 Agent 角色特性与行为,包含角色、目标、能力等属性。角色生成方式有手工生成、LLM 生成、数据集对齐方法。

🎭 就像给演员设定角色一样


举例:客服Agent的Profile
- 角色:专业客服代表
- 目标:解决用户问题,提升满意度
- 能力:产品知识、沟通技巧、问题解决
- 性格:耐心、友好、专业


生成方式:
- 手工生成:人工编写角色设定
- LLM生成:让大模型自己设计角色
- 数据集对齐:从客服对话数据中学习角色特征

Memory 模块:人的"记忆系统",存储和组织环境信息,分为短期和长期记忆。信息格式多样,操作包括读取、写入和反射。

🧠 就像人的记忆分为短期和长期记忆


短期记忆:
- 当前对话内容
- 最近的几轮交互
- 临时的上下文信息


长期记忆:
- 用户的历史偏好
- 过往成功的解决方案
- 积累的经验知识


操作方式:
- 读取:获取相关记忆
- 写入:存储新信息
- 反射:总结和整理记忆

Planning 模块:人的"规划能力",将复杂任务分解为子任务,制定策略。分为不依赖反馈和基于反馈的计划,后者根据任务执行反馈调整计划。

📋 就像人做事前会制定计划


无反馈计划:
- 一次性制定完整计划
- 严格按计划执行
- 例:写一篇文章的大纲


有反馈计划:
- 制定初步计划
- 根据执行结果调整
- 例:解决技术问题时边做边调整策略

Action 模块:人的"行动执行",将决策转化为具体行动,行动需考虑目标、生成方式、应用范围和影响 。

🎯 就像人的具体行为和动作


需要考虑:
- 目标:这个行动是为了什么?
- 生成方式:如何产生这个行动?
- 应用范围:在什么情况下使用?
- 影响:这个行动会产生什么结果?


举例:
- 目标:回答用户问题
- 生成方式:基于知识库生成回答
- 应用范围:技术支持场景
- 影响:用户满意度提升

(二)大模型 Agent 和 RLAgent 的关系

🤖 强化学习Agent = 专业技工(精通特定技能)

🧠 大模型Agent = 通用人才(具备广泛能力)

对比维度

强化学习Agent

大模型Agent

举例说明

创建方式

需要专门编程和训练

通过提示词即可创建

游戏AI需要几个月训练 vs 聊天机器人几分钟配置

输入输出

固定的数值格式

灵活的自然语言

只能接受[0,1,2,3]指令 vs 可以理解"帮我写代码"

状态理解

预设的状态空间

动态的上下文理解

只知道"敌人在前方" vs 理解"用户似乎很着急"

行动能力

有限的预定义动作

丰富的行动选择

只能"前进/后退/射击" vs 可以"搜索/计算/写作/翻译"

反馈机制

依赖人工设计的奖励

多样化的反馈来源

击杀+10分,死亡-5分 vs 用户满意度、任务完成度等

适应能力

环境变化需重新训练

快速适应新环境

换个游戏地图就不会了 vs 可以处理各种新问题

实际应用对比

强化学习Agent优势场景:

  • 游戏AI:在特定游戏中达到超人水平

  • 机器人控制:精确的动作控制

  • 量化交易:在固定市场规则下优化收益

大模型Agent优势场景:

  • 客服助手:处理各种用户问题

  • 内容创作:写作、翻译、编程

  • 知识问答:跨领域的信息服务

(三)大模型 Agent 的适用场景

大模型 Agent 适用于环境多变、目标复杂且难以量化、数据获取困难的场景,弥补强化学习在这些方面的不足 。

  • 机器人控制:机器人通过编程感知环境(光线、温度等)并做出相应动作,如家用机器人可打扫、回答问题、烹饪。

  • 游戏人工智能:模拟玩家或 NPC 行为,提升游戏交互体验,如策略游戏中 NPC 的行为可由 Agent 实现。

  • 聊天机器人:在自然语言处理领域,学习用户输入后提供回复,广泛应用于客服、教育、娱乐等行业。

  • 推荐系统:在电子商务、内容推荐等场景,依据用户历史行为和偏好推荐商品或内容,提高用户体验和满意度 。

(四)多 Agent 交互

现实当中我们需要在不同的Agent来回切换、调用,如之前爆火的Menus预览。

  • 多角色:自己属性,自己使命

  • 交互:设置双方交互策略,也可以让它们自己决定

动物装饰