Hello-Agents——第一章 初识智能体

第一章 初始智能体

1.1 什么是智能体?

关键词(四个基本要素+特性):传感器、环境、执行器、自主性、行动

由传感器感知所处环境,经由执行器进行自主决策而行动的实体

1.1.1 传统视角下的智能体

反射智能体:条件-动作(自动恒温器)

基于模型的反射智能体:状态-动作(自动驾驶的汽车)

基于目标的智能体:状态-目标-动作(GPS导航系统)

基于效用的智能体:状态-效用函数-目标-动作(权衡利弊)

学习型智能体:强化学习-智能体(正向激励正确决策,AlphaGo)

1.1.2 大语言模型驱动的新范式

LLM智能体可以直接处理高层级、模糊且充满上下文信息的自然语言指令。

1.1.3 智能体的类型

(1)基于内部决策架构的分类

(2)基于时间与反应性的分类

  • 反应式智能体:快速决策、及时响应。速度快、开销低、局部最优
  • 规划式智能体:思考、规划。战略性、远见、时间和计算成本高、错过最佳时机
  • 混合式智能体:结合前面两者的优点,思考-行动-观察的循环中运作

(3)基于知识表示的分类

  • 符号主义AI:逻辑明确、可追溯、可推理、结构化数据、已知世界的规则映射。未知、未覆盖的知识导致系统失灵。
  • 亚符号主义AI:神经网络、深度学习、非结构化数据、黑箱。逻辑推理不佳,会出现幻觉
  • 神经符号主义AI:结合前面两者的优点,像神经网络从数据中学习,也像符号系统进行逻辑推理。

LLM智能体是神经符号主义的实践范例。

1.2 智能体的构成与运行原理

1.2.1 任务环境定义

PEAS模型:

1.2.2 智能体的运行机制

智能体循环:感知-思考-⾏动-观察

  1. 感知(Perception):这是循环的起点。智能体通过其传感器(例如,API 的监听端⼝、⽤户输⼊接⼝)接收来⾃环境的输⼊信息。这些信息,即观察 (Observation),既可以是⽤户的初始指令,也可以是上⼀步⾏动所导致的环境状态变化反馈。

  2. 思考 (Thought):接收到观察信息后,智能体进⼊其核⼼决策阶段。对于 LLM 智能体⽽⾔,这通常是由⼤语⾔模型驱动的内部推理过程。如图所示,"思考"阶段可进⼀步细分为两个关键环节:

  • 规划 (Planning):智能体基于当前的观察和其内部记忆,更新对任务和环境的理解,并制定或调整⼀个⾏动计划。这可能涉及将复杂⽬标分解为⼀系列更具体的⼦任务。
  • ⼯具选择 (Tool Selection):根据当前计划,智能体从其可⽤的⼯具库中,选择最适合执⾏下⼀步骤的⼯具,并确定调⽤该⼯具所需的具体参数。
  1. ⾏动 (Action):决策完成后,智能体通过其执⾏器(Actuators)执⾏具体的⾏动。这通常表现为调⽤⼀个选定的⼯具(如代码解释器、搜索引擎 API),从⽽对环境施加影响,意图改变环境的状态。

1.3 第一个智能体的实现

以Java为例实现智能旅行助手Agent:

准备工作:

  • agent的系统提示词:应当包括该Agent的角色、可用的工具、输出格式的规范化要求、结束条件、是否包含思考过程等系统约束
  • 天气查询服务:免费的天气查询服务,wttr.in,将城市作为参数,通过HTTP请求获取天气数据,返回格式是JSON
  • 景点推荐服务:网络查询服务,tavily,通过官网注册,获取API密钥,通过城市和天气,通过该API搜索返回景点推荐
  • 大模型的选择与注册:选择一个大模型,注册获取key、请求地址、模型名

Agent构建:

  • 用户提示词:当前没有前端页面输入,直接代码中固定或者在命令行中输入城市
  • Agent请求循环设置:为防止无效Token的消耗或者大模型限于死循环,设置一定的交互次数阈值。
  • 步骤:构建大模型客户端------构建提示词------调用LLM------做大模型输出的冗余截断------格式化之后的大模型输出解析出工具名和输入参数------调用工具------记录结果------将上一步的结果加入提示词并进行构建,循环直至达成预设目标或者到达最大的循环次数。
  • 注意点:对大模型的输入和输出进行格式化冗余编辑,对异常条件做判断

这个案例主要演示了基于 Thought-Action-Observation 范式的智能体所具备的四项基本能⼒:任务分解、⼯具调⽤、上下⽂理解和结果合成。

1.4 智能体应用的协作模式

1.4.1 作为开发者⼯具的智能体

智能体被深度集成到开发者的⼯作流中,作为⼀种强⼤的辅助⼯具。

  • GitHubCopilot:由 GitHub 与 OpenAI 联合开发,深度集成于 Visual Studio Code 等主流编辑器中,以其强⼤的代码⾃动补全能⼒⽽闻名。
  • Claude Code:由 Anthropic 开发的 AI 编程助⼿,旨在通过⾃然语⾔指令帮助开发者在终端中⾼效地完成编码任务。它能够理解完整的代码库结构,执⾏代码编辑、测试和调试等操作,⽀持从描述功能到代码实现的全流程开发。
  • Trae:为开发者提供精准的代码建议和⾃动化重构⽅案。特⾊在于其轻量级的设计和快速响应能⼒,特别适合需要频繁迭代和快速原型开发的场景。
  • Cursor:AI 原⽣的代码编辑器。让 AI 理解整个代码库的上下⽂,从⽽实现更深层次的问答、重构和调试。

共同指向了⼀个明确的趋势:AI 正在深度融⼊软件开发的全⽣命周期,通过构建⾼效的⼈机协同⼯作流,深刻地重塑着软件⼯程的效率边界与开发范式。

1.4.2 作为⾃主协作者的智能体

在该模式下,我们将⼀个⾼层级的⽬标委托给它。智能体会像⼀个真正的项⽬成员⼀样,独⽴地进⾏规划、推理、执⾏和反思,直到最终交付成果。它标志着我们与 AI 的关系从"命令-执⾏"演变为"⽬标-委托"。智能体不再是被动的⼯具,⽽是主动的⽬标追求者。

  • 单智能体⾃主循环:早期的典型范式,如 AgentGPT 所代表的模式。其核⼼是⼀个通⽤智能体通过"思考-规划-执⾏-反思"的闭环,不断进⾏⾃我提示和迭代,以完成⼀个开放式的⾼层级⽬标。
  • 多智能体协作:这是当前最主流的探索⽅向,旨在通过模拟⼈类团队的协作模式来解决复杂问题。它⼜可细分为不同模式: ⻆⾊扮演式对话 :如 CAMEL 框架,通过为两个智能体(例如,"程序员"和"产品经理")设定明确的⻆⾊和沟通协议,让它们在⼀个结构化的对话中协同完成任务。 组织化⼯作流:如 MetaGPT 和 CrewAI,它们模拟⼀个分⼯明确的"虚拟团队"(如软件公司或咨询⼩组)。每个智能体都有预设的职责和⼯作流程(SOP),通过层级化或顺序化的⽅式协作,产出⾼质量的复杂成果(如完整的代码库或研究报告)。AutoGen 和 AgentScope 则提供了更灵活的对话模式,允许开发者⾃定义智能体间的复杂交互⽹络。
  • ⾼级控制流架构:诸如 LangGraph 等框架,则更侧重于为智能体提供更强⼤的底层⼯程基础。它将智能体的执⾏过程建模为状态图(State Graph),从⽽能更灵活、更可靠地实现循环、分⽀、回溯以及⼈⼯介⼊等复杂流程。

1.4.3 Workflow 和 Agent 的差异

Workflow 是让 AI 按部就班地执⾏指令,⽽ Agent 则是赋予 AI ⾃由度去⾃主达成⽬标。

⼯作流是⼀种传统的⾃动化范式,其核⼼是对⼀系列任务或步骤进⾏预先定义的、结构化的编排。它本质上是⼀个精确的、静态的流程图,规定了在何种条件下、以何种顺序执⾏哪些操作。

基于⼤型语⾔模型的智能体是⼀个具备⾃主性的、以⽬标为导向的系统。它不仅仅是执⾏预设指令,⽽是能够在⼀定程度上理解环境、进⾏推理、制定计划,并动态地采取⾏动以达成最终⽬标。基于实时信息进⾏动态推理和决策的能⼒,正是 Agent 的核⼼价值所在。


参考链接:https://github.com/datawhalechina/hello-agents

相关推荐
七夜zippoe1 小时前
WorkBuddy Agent + Blender 5.2 程序化建模实战:11 轮迭代建一台复古胶片单反,附棚拍伪影定位法
agent·blender·迭代·workbuddy·程序化建模
效率工作实验室3 小时前
AI Agent 管理平台如何与现有 DevOps 和 ITSM 体系集成?
ai·agent·devops·集成·管理平台
腾讯云开发者3 小时前
培训讲师的降本增效:WorkBuddy + Obsidian 搞定公式教材与自动出题
agent
10年前端老司机3 小时前
LangChain Agent 切面钩子实战:解耦业务,一键复用通用能力
人工智能·langchain·agent
SharpCJ4 小时前
Koog(1) —— JVM 下的 Agent 框架
llm·agent
hpoenixf4 小时前
从让模型少想一点,到让 Runtime 少管一点:重新理解 Agent、Runtime、MCP 与 Skill 的分工
agent
Chengyunlai4 小时前
Agent应用开发和渲染之间关系的思考
agent
智能RPA4 小时前
能源电力行业智能体自动化平台对比评测(调度与抄表场景)
人工智能·自动化·能源·agent·rpa
沛东的认知和实践5 小时前
LLM-Wiki总论:把知识库编译成 Wiki,再把检索权交给 LLM——彻底搞懂LLM Wiki第一篇
agent