12 节课解锁 AI Agents,让AI替你打工(一): 简介

作者:AI大模型日期:2025/11/14

本文较长,建议点赞收藏。更多AI大模型应用开发学习视频及资料,在智泊AI

本系列教程主要是为了探索 AI Agent 的设计原理与真实世界应用

随着大语言模型(LLMs)的出现,人工智能取得了巨大飞跃。这些强大的系统彻底改变了自然语言处理,但当它们与智能体(即自主推理、规划和行动的能力)相结合时,其真正潜力才得以释放。这就是大语言模型智能体发挥作用的地方,它代表了我们与人工智能交互和利用方式的范式转变。

图片来源:letta

本文旨在全面概述 AI Agent,深入探讨其特征、组件和类型,同时探索其演进历程、挑战和未来发展方向。

让我们首先理解从 LLM 到 AI Agent 的演进过程。

1.从 LLM 到 AI Agent


LLM应用形态的演进是现代应用发展最快的领域之一。

图片来源:mongodb

1.1 传统聊天机器人到 LLM 驱动聊天机器人

聊天机器人并非新生事物,在生成式 AI(gen AI)概念出现前,你可能就与网站上的传统聊天机器人互动过。前 gen AI 时代的传统聊天机器人与当今 AI 驱动的对话 Agent 有本质区别:

基于启发式的响应:

  • 传统聊天机器人运行在规则逻辑("if-then"语句)上
  • 局限于预定义规则,无法处理复杂或模糊查询

固定回复模板:

  • 响应是静态且预定义的
  • 通过检测特定关键词或短语触发
  • 缺乏灵活性和对话深度

人工转接机制:

  • 始终包含"联系人工客服"按钮处理未解决问题
  • 复杂问题仍需人工干预

图片来源:mongodb

1.2 LLM 驱动聊天机器人的引入

ChatGPT 的发布: 2022年11月30日,OpenAI 推出基于 GPT-3.5 的ChatGPT,作为首个主流 LLM 应用。ChatGPT 保留了熟悉的聊天界面,但背后是经过海量互联网语料训练的高级LLM技术。

Transformer 架构: GPT(生成式预训练 Transformer )基于 Google 2017年提出的 Transformer 架构,使用自注意力机制分析输入序列,实现更深层次的上下文理解。

LLM 的能力: 与传统聊天机器人不同,LLM 能生成类人的、上下文相关的新文本。应用场景包括代码生成、内容创作、增强客服等。

局限性:

  • 个性化:难以在长对话中保持一致的个性化互动
  • 幻觉:可能生成事实错误但逻辑通顺的响应,基于概率而非验证知识输出

应对措施:

  • 探索检索增强生成(RAG) 等技术将输出锚定在可靠外部数据
  • 这些进步旨在减少错误并提升 LLM 系统的鲁棒性

1.3 从 LLM 聊天机器人到 RAG 聊天机器人和AI Agent

RAG 聊天机器人: 检索增强生成(RAG)将外部数据检索与 LLM 能力结合,生成准确且上下文接地的响应。

知识来源:

  • 非参数知识:从互联网或专有数据库获取的实时数据
  • 参数知识:LLM 训练中内嵌的知识

优势: 减少幻觉、提供最新信息、确保可验证响应

提示工程: 上下文学习(单样本、少样本)、思维链(CoT)、ReAct 等技术通过引导 LLM 的推理和输出生成提升响应质量

图片来源:mongodb

AI Agents: 从配备工具、多步规划和推理能力的 LLM 演进而来

工具使用: LLM 可通过分析任务并通过结构化模式(如 JSON)分配参数,调用程序化定义的函数或API

环境: AI Agents 在迭代执行环境中运行,支持基于反馈的动态决策和持续适应

Agent 式系统:由自主 Agent 组成的计算架构,能够集成多个系统组件、做出决策并实现目标

Agent 式 RAG:

  • 将 LLM 的推理、工具使用和规划能力与语义信息检索结合
  • 支持分解任务、执行复杂查询和利用工具解决问题的动态系统

图片来源:mongodb

从 LLM 聊天机器人到 RAG 聊天机器人和 AI Agent的转变,标志着向更智能、自适应和工具集成的系统演进,能够实时解决复杂问题。

2. 什么是 AI Agent?


AI Agent 是通过传感器感知环境、处理信息,并通过执行器作用于环境以实现特定目标的系统。可以将其视为能够观察、思考和行动的数字化实体(类似人类与环境的互动方式,但以编程和有目的的方式实现)。

AI Agent 的概念建立在理性行为的基本理念上: Agent 应采取能最大化实现既定目标可能性的行动。这种理性将 AI Agent 与简单响应程序区分开来。

图片来源:Abhishek Reddy

2.1 AI Agent 的特征

AI Agent具备以下关键特征:

  1. 自主性:无需人工干预独立决策
  2. 反应与主动行为:响应环境变化并采取主动措施实现目标
  3. 适应性:通过处理新信息和经验学习进化
  4. 目标导向:致力于实现预定义目标或优化结果
  5. 交互性:与其他 Agent 或人类沟通协作
  6. 持续性:持续运行,监控和响应动态环境
  7. AI Agent 的核心组件

AI Agent 的核心由以下组件构成:

1. 感知(Preception)

2. 推理(Reasoning)

3. 行动(Action)

4. 知识库(Knowledge Base)

5. 学习(Learning)

6. 通信接口(Communication Interface)

3.1 感知(传感器)

使 Agent 能感知环境。可以是物理传感器(摄像头、麦克风)或数字输入(数据流、用户交互)。

3.2 推理(处理器)

Agent 的"大脑",处理传感器信息并确定适当行动。该组件实现 Agent的决策算法并维护必要内部状态。

AI Agent 使用各种决策机制,如基于规则的系统、专家系统和神经网络,以做出明智选择并有效执行任务。

3.3 行动(执行器)

Agent 影响环境的手段。可以是物理的(机械臂、扬声器)或数字的(数据库更新、显示输出)。

3.4 知识库

Agent 用于决策的信息存储库,包括预编程知识和学习获得的信息。

3.5 学习

使 Agent 能通过数据和经验学习随时间提升性能。使用强化学习、监督学习和无监督学习等技术持续改进 AI Agent 表现。

3.6 通信接口

允许 Agent 与其他 Agent、系统或人类交互。

Agent in Large Environment | 图片来源:Tim Cvetko

下文将详细说明 Agent 工作原理时逐一解析各组件。

4. AI Agent 如何与环境交互


交互周期通常称为"感知-规划-行动"循环或"感知-行动"循环。以自动驾驶汽车为例解析各阶段:

4.1 感知阶段

可视作 Agent 的"传感"阶段:

传感器 → 处理 → 状态更新

  • Agent 通过传感器接收输入
  • 信息被处理和解释
  • 根据新信息更新当前状态

4.2 决策阶段

Agent的"思考"阶段:

当前状态 + 目标 → 评估选项 → 选择最佳行动

  • 评估可能行动
  • 考虑目标和约束
  • 根据可用信息选择最优行动

4.3 行动阶段

Agent 的"执行"阶段:

执行行动 → 观察变化 → 开始新循环

  • 通过执行器执行选定行动
  • 环境因此发生变化
  • Agent 通过传感器观察结果,开始新循环

该循环持续重复,通常每秒多次。其强大之处在于:

1. 适应性: 若发生意外, Agent 能在下次感知阶段检测并调整行动

2. 学习机会: Agent 可比较预测结果与实际结果以改进未来决策

3. 目标导向行为: 每个循环都推动 Agent 向目标迈进,同时遵守约束(螺旋式上升)

通过恒温器类比,编程层面比较三个复杂度级别:

  1. 简单程序
11# 简单程序
232if temperature > desired_temperature:
453    turn_on_cooling()
6
  • 仅遵循固定规则
  • 不考虑后果
  • 无学习或适应

2. 响应式程序

11# 响应式程序
232if temperature > desired_temperature:
453    if time_of_day == "peak_hours":
674        turn_on_cooling_eco_mode()
895    else:
10116        turn_on_cooling_normal()
12
  • 更复杂规则
  • 一定上下文感知
  • 仍无真正智能

3. AI Agent

11class SmartThermostat:
232    def perceive(self):
453        current_temp = get_temperature()
674        time = get_time()
895        electricity_price = get_current_price()
10116        weather_forecast = get_forecast()
12137        user_preferences = get_preferences()
14158        return Environment(current_temp, time, electricity_price,
16179                         weather_forecast, user_preferences)
181910
202111    def think(self, environment):
222312        possible_actions = [
242513            NoAction(),
262714            CoolNormal(),
282915            CoolEco(),
303116            PreCool(),
323317            WaitForOffPeak()
343518        ]
363719
383920        # 评估每个行动的预期结果
404121        best_action = None
424322        best_utility = float('-inf')
444523
464724        for action in possible_actions:
484925            predicted_state = predict_future_state(environment, action)
505126            utility = calculate_utility(predicted_state)
525327
545528            if utility > best_utility:
565729                best_action = action
585930                best_utility = utility
606131
626332        return best_action
646533
666734    def act(self, action):
686935        action.execute()
707136        monitor_results()
727337        update_learning_model()
74
  • 考虑多因素
  • 预测结果
  • 从经验中学习
  • 优化长期目标
  • 平衡竞争目标

该循环适用于所有 AI Agent:

  • 聊天机器人感知文本输入,决定响应并生成文本
  • 交易机器人感知市场数据,决定交易策略并下单
  • 扫地机器人感知房间布局和灰尘,决定清洁路径并启动清洁机制

5. AI Agent 如何运作?


假设你的智能冰箱不仅能在牛奶喝完时自动补货,还能根据你的浏览记录建议改用杏仁奶。这究竟是贴心服务还是令人不安?由你判断!

这正是 AI Agent 的典型应用。

AI Agent 能理解人类语言(借助 LLM)、推理信息、规划行动并自主执行任务。它们解决复杂问题,远超越简单自动化工具。与基础脚本不同,AI Agent 集成到软件系统中,实现与环境的复杂交互。

AI Agent 与简单自动化的区别?

区别源于两大核心能力:

  • 工具使用
  • 规划能力

你已见过 ChatGPT 在基础数学题上出错,因为它仅基于训练数据响应。同理,若要求你计算85乘65,作为人类,你可以直接作答(若已知答案)或使用计算器工具,对吗?

AI Agent 同理,赋予其工具访问权限。

第二要素是规划。

同一数学计算,只有知晓乘法或知道向计算器传递参数(85、65及乘法运算)才能解题。这正是规划与推理的作用。

以下是查询 AI Agent 时的流程:

5.1 编排层(控制中心)

假设创建会议安排 AI Agent,查询:"我想为所有学生举办网络研讨会"。

该查询将触发 AI Agent。

编排层 | 图片来源:Himanshu Ramchandani

查询可以是文本、音频、视频或图像。(已知无论数据类型如何,最终都会转换为机器可处理的数值)

查询由编排层(即 Agent 控制中心)处理。

编排层四大功能:

  • 记忆:维护整个交互过程的记忆
  • 状态:存储当前进程状态
  • 推理:指导 Agent 的推理过程
  • 规划:确定步骤及下一步行动

图片来源:lyzr

编排层将与模型(LLM)交互。

5.2 模型(大脑)

模型是整个 Agent 的中央决策者,通常是大型语言模型等AI模型。

AI Agent中的模型 | 图片来源:Himanshu Ramchandani

为理解查询、制定计划和确定下一步行动,模型使用推理和逻辑框架如:

  • ReAct(Reasion+Act): (推理+行动)确保审慎行动
  • 思维链: 通过中间步骤推理
  • 思维树: 探索多路径寻找最优解

模型决定采取的行动,并通过特定工具执行。

5.3 工具(双手)

通过工具, Agent 能与外部世界交互,如计算器、API、网络搜索、外部数据库等。

图片来源:Himanshu Ramchandani

工具使 Agent 能执行超越模型能力的行动、获取实时信息或完成现实任务。

6. ✅ 何时使用 Agent / ⛔ 何时避免使用


当需要 LLM 决定应用工作流时, Agent 很有用。但通常存在过度使用。核心问题是:是否真需要工作流灵活性来高效解决当前任务?若预定义工作流频繁失效,则需更高灵活性。以冲浪旅行网站客服应用为例:

已知请求属于两个预定义类别(基于用户选择),且每个类别有预定义工作流:

  1. 需要旅行知识 ⇒ 提供知识库搜索栏
  2. 联系销售 ⇒ 填写联系表单

若确定性工作流适配所有查询,直接编码即可!这将提供 100% 可靠系统,避免不可预测 LLM 介入导致错误。为简化和稳健性,建议规范化避免使用 Agent 行为。

但若工作流无法预先确定?

例如用户查询:"我周一能来,但忘带护照可能延迟到周三,能否周二早上接我和装备冲浪,并提供取消保险?"该问题涉及多因素,上述预定义标准均不适用。

若预定义工作流频繁失效,则需更高灵活性。这正是 Agent 式设置的用武之地。

此例中,可构建多步 Agent,配备天气 API 获取预报、Google Maps API 计算行程、员工可用性看板和知识库 RAG 系统。

传统计算机程序受限于预定义工作流,通过堆叠 if/else 开关处理复杂性,专注于极窄任务(如"计算数字总和"或"寻找图最短路径")。但现实任务(如上述旅行案例)往往不适用预定义工作流。 Agent 式系统为程序开启了现实任务处理的广阔天地!

7. 应用领域


AI Agent 是多功能工具,提升各领域生产力、效率和智能化水平,正日益应用于日常应用和高影响领域。

图片来源:lyzr

8. 结论


AI Agent 正改变技术交互方式,提供前所未有的自主性、智能和适应性。从简单反射 Agent 到复杂学习系统,它们正被跨行业应用以解决复杂问题和增强人类能力。但构建有效 AI Agent 面临伦理关切、数据依赖和可扩展性等挑战。

随着 AI 技术持续演进,AI Agent 未来潜力巨大。通过关注通用 AI、人机协作和伦理考量,我们可创建不仅高效执行任务,且符合人类价值观并为社会积极贡献的 Agent。

  • AI Agent 是能感知、决策和行动以实现目标的自主系统
  • 核心组件包括传感器、执行器、决策引擎和学习模块
  • 应用于虚拟助手、自动驾驶和医疗等领域

通过理解基础原理并关注进展,我们能利用 AI Agent 推动创新,创造更美好未来。

学习资源推荐

如果你想更深入地学习大模型,以下是一些非常有价值的学习资源,这些资源将帮助你从不同角度学习大模型,提升你的实践能力。

本文较长,建议点赞收藏。更多AI大模型应用开发学习视频及资料,在智泊AI


12 节课解锁 AI Agents,让AI替你打工(一): 简介》 是转载文章,点击查看原文


相关推荐


Lua 的 Coroutine 模块
hubenchang05152025/11/13

#Lua 的 Coroutine 模块 请查看 Lua 标准库模块列表 了解更多相关 API。 函数说明coroutine.create创建协程对象coroutine.close 关闭协程对象coroutine.resume恢复协程coroutine.yield让出协程coroutine.wrap创建协程对象,返回一个恢复函数coroutine.isyieldable检查协程能否让出coroutine.running获取正在运行的协程对象coroutine.status获取协程状态 Lua


Node.js 开发环境搭建全攻略(2025版)
Java私教2025/11/11

本文将详细介绍如何在本地搭建一个高效、可维护的 Node.js 开发环境,适用于 Windows、macOS 与 Linux。无论你是后端新手还是资深全栈工程师,都能通过本文快速构建一个标准化的 Node.js 开发环境。 一、什么是 Node.js? Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行时,它让开发者可以在服务器端运行 JavaScript。 它以 事件驱动、非阻塞 I/O 的特性著称,非常适合构建高性能的 Web 服务和微服务架构。 二、安


类比前端知识来学习Java的Spring Boot实现MySql的全栈CRUD功能——搭配Svelte+Vite
水冗水孚2025/11/9

前言 本文梳理了后端的相关操作流程环节 使用Svelte+Vite(前端)搭配Spring Boot(后端) 实现了一个增删改查全栈项目 有助于前端更好理解后端java的分层思想,数据流转控制 和Svelte尝鲜学习了解 完整前后端代码在github:github.com/shuirongshu… 大道至简,一些知识点是相通的比如——python里面也有闭包这个概念 所谓编程即:学习规则语法、理解规则语法、合理运用规则语法、从而自定义规则... Java、Spring、Spring Bo


Bash 的 if 条件语句
hubenchang05152025/11/7

#Bash 的 if 条件语句 Bash 的 if 条件语句的语法为: if 条件命令 then 命令 ... elif 条件命令 then 命令 ... else 命令 ... fi 其中,条件命令返回成功(0)时为真(true),返回失败(非 0)时为假(false)。 如果省略(部分)换行,则需要使用分号(;)区分: if 条件命令; then 命令; 命令; elif 条件命令; then 命令; 命令; else 命令; 命令; fi


hive的SQL练习3
普通网友2025/11/3

根据如上表格信息,实现如下需求: 查询五一期间(2023-05-01 ~ 2023-05-07),每个餐厅的订单总数量及排名with t as ( select *,        count(1) over(partition by restaurant_id) countNum        from orders where substr(order_date,1,10)     between '2023-05-01' and '2023-05-07' ) select d


游戏盾是如何保障游戏安全稳定的
上海云盾第一敬业销售2025/10/31

上海云盾SDK游戏盾是如何保障游戏安全稳定的 防攻击保流畅:游戏服务器易遭受 UDP Flood、CC 攻击等针对性威胁,这类攻击会导致服务器负载过高,引发玩家掉线、操作卡顿。游戏盾能深度解析游戏协议,快速识别攻击流量并进行清洗,同时依托多节点部署,将攻击流量引流至防护节点,避免源服务器受冲击,确保游戏全程流畅不中断。 阻外挂护公平:外挂、作弊脚本会破坏游戏内平衡,导致合规玩家失去兴趣,损害游戏生态。游戏盾内置外挂检测机制,可实时监控异常行为,如数据篡改、加速作弊等,通过特征匹配与行为分


前端别再乱存数据了!这3种存储方案让你的应用快如闪电
良山有风来2025/10/28

你是不是也遇到过这样的场景? 用户刚填完一个超长的表单,不小心刷新了页面,所有数据都没了... 从接口请求的数据,用户每次操作都要重新加载,体验卡成PPT... 应用离线状态下完全无法使用,用户直接流失... 别担心!今天我就带你彻底解决这些问题。看完这篇文章,你将掌握一套完整的数据交互方案,让你的应用在任何网络状态下都能流畅运行。 为什么数据存储这么重要? 想象一下,你去超市购物,每次想买什么东西,都要跑回家查一下购物清单,然后再跑回超市... 这得多累啊! 网页应用也是同样的道理。合理的数据


Bash 的变量
hubenchang05152025/10/25

#Bash 的变量 Bash 中的变量定义语法如下: 变量名=值 注意,等号(=)两边不能有空格。 变量名的命名应当遵循如下规则: 只能包含字母,数字和下划线(_),并且不能以数字开头。 不能使用 Bash 保留的关键字,如:if then else fi for while do done 等 环境变量和常量使用全大写字母,单词间使用下划线分隔 普通变量使用全小写字母,单词间使用下划线分隔 函数内的局部变量使用 local 关键字声明 例如: PI=3.1415925 URL="htt


搜索百科(5):Easysearch — 自主可控的国产分布式搜索引擎
极限实验室2025/10/23

大家好,我是 INFINI Labs 的石阳。 欢迎关注 《搜索百科》 专栏!每天 5 分钟,带你速览一款搜索相关的技术或产品,同时还会带你探索它们背后的技术原理、发展故事及上手体验等。 在上一篇我们介绍了 OpenSearch —— 那个因协议争议而诞生的开源搜索分支。今天,我们把目光转向国内,聊聊极限科技研发的一款轻量级搜索引擎:Easysearch。 引言 在搜索技术的世界里,从 Lucene 的出现到 Solr、Elasticsearch 的崛起,搜索引擎技术已经发展了二十余年。然而,随


Swift 字符串与字符完全导读(一):从字面量到 Unicode 的实战之旅
unravel20252025/10/22

前言 Swift 的 String 看起来“像 NSString 的弟弟”,但骨子里是一套全新的 Unicode 抽象模型。 String 与 Character 的本质 String:由“扩展字形簇”(extended grapheme cluster)构成的有序集合。 Character:一个扩展字形簇,人类眼中的“一个字符”,占用的字节数可变。 // 1 个 Character,由 2 个 Unicode 标量合成 let eAcute: Character = "é"

首页编辑器站点地图

Copyright © 2025 聚合阅读

License: CC BY-SA 4.0