Hello agent 习题 第一章
回顾本章内容(习题维度)
一、智能体分类相关
请分析以下四个
case中的主体是否属于智能体,如果是,那么属于哪种类型的智能体(可以从多个分类维度进行分析),并说明理由:
case A:一台符合冯·诺依曼结构的超级计算机,拥有高达每秒 2EFlop 的峰值算力
case B:特斯拉自动驾驶系统在高速公路上行驶时,突然检测到前方有障碍物,需要在毫秒级做出刹车或变道决策
case C:AlphaGo在与人类棋手对弈时,需要评估当前局面并规划未来数十步的最优策略
case D:ChatGPT 扮演的智能客服在处理用户投诉时,需要查询订单信息、分析问题原因、提供解决方案并安抚用户情绪|
第一章知识
-
是智能体 ⇔ 同时具备:感知环境、自主决策、执行动作、目标导向、与环境形成闭环。
-
只有算力、只有程序、只有模型权重,但没接感知-行动闭环 → 不是智能体,只是智能体的运行 substrate(载体/引擎)。
-
分类维度(第一章 1.1.3):
-
内部决策架构:简单反应式 → 基于模型 → 基于目标/效用 → 学习型
-
时间/反应性:反应式(Reactive) / 规划式(Deliberative) / 混合式(Hybrid)
-
载体:物理智能体 / 软件智能体 / LLM 原生智能体
-
Case A:2EFlop 冯·诺依曼超算
结论:不属于智能体。
-
它只是通用计算硬件/算力引擎,没有传感器、没有执行器、没有内置目标函数。
-
它被动等待人类把程序和数据喂进去,自己不会感知外部环境,也不会主动采取改变环境的动作。
-
按第一章定义,缺「自主性 + 感知-行动闭环」,所以连「反应式智能体」都算不上,只是智能体可能跑在上面的 substrate。
类比:GPU 不是画家,超算也不是 Agent。
Case B:特斯拉自动驾驶高速避障
结论:是智能体。 多维度归类:
-
内部决策架构:基于模型的反应式智能体(有内部道路/障碍物模型,但避障瞬间走感知→条件映射→控制,不是完整效用最大化搜索);整体车载系统也可视为基于效用(安全/舒适/交规)的智能体。
-
时间/反应性:典型反应式(Reactive)为主——毫秒级决策,障碍物出现即刹车/变道,不做数十步前瞻;但整车自动驾驶系统上层含规划模块,故整体可称混合式(Hybrid)。
-
载体:物理智能体(自主移动智能体),传感器=摄像头/雷达,执行器=方向盘/刹车。
-
理由:持续感知路况、毫秒级自主决策、直接改变车辆位姿(影响环境)、目标明确(避撞+守规),闭环完整。
Case C:AlphaGo 对弈
结论:是智能体。
-
内部决策架构:基于目标/效用的智能体 + 学习型智能体(以「胜率」为效用,通过 RL 自我进化策略网络/价值网络)。
-
时间/反应性:规划式(Deliberative)——用 MCTS 在内部世界模型里展开未来数十步状态空间,评估行动序列后再落子,不是即时刺激-响应。
-
载体:软件/游戏环境智能体(数字棋盘为环境,落子坐标为动作)。
-
理由:感知棋盘状态、内部推演、自主输出合法动作、以赢棋为目标,构成软件闭环。
Case D:ChatGPT 智能客服
结论:是智能体(LLM 原生 / 工具增强型)。
-
内部决策架构:LLM 驱动的新范式智能体,运行 ReAct 式「思考-行动-观察」循环;可外挂记忆、调用订单 API ⇒ 属于工具使用型(Tool-use)+ 任务型智能体。
-
时间/反应性:混合式(Hybrid)——宏观上规划「查单→归因→给方案→安抚」多步流程(规划),微观上对用户每句话即时生成回应、对 API 返回即时调整(反应)。
-
载体:数字/信息智能体(对话式),传感器=用户输入+API 返回值,执行器=文本回复+API 调用。
-
理由:不是单纯「被调用的模型权重」,而是接了订单系统、知识库、多轮上下文后自主决定下一步调什么工具、说什么话,指向「化解投诉+维护利益」的隐性目标。
反例边界:如果题目写成「裸 ChatGPT 模型本身」,那只是 LLM 不是 Agent;但「ChatGPT 扮演的智能客服」隐含了工具/上下文闭环,故算 Agent。
总结
|
Case |
是否 Agent |
决策架构维度 |
时间/反应性维度 |
载体维度 |
|---|---|---|---|---|
|
A 超算 |
否 |
—(无自主架构) |
— |
算力硬件 substrate |
|
B 特斯拉避障 |
是 |
基于模型/效用 |
反应式(整车混合) |
物理自主移动 Agent |
|
C AlphaGo |
是 |
基于目标/效用+学习型 |
规划式 |
软件博弈 Agent |
|
D ChatGPT 客服 |
是 |
LLM 驱动+工具使用 |
混合式 |
数字对话 Agent |
二、智能健身教练的 PEAS 任务环境刻画与环境特性辨析
假设你需要为一个"智能健身教练"设计任务环境。这个智能体能够:
请使用 PEAS 模型完整描述这个智能体的任务环境,并分析该环境具有哪些特性(如部分可观察、随机性、动态性等)。
- 通过可穿戴设备监测用户的心率、运动强度等生理数据
- 根据用户的健身目标(减脂/增肌/提升耐力)动态调整训练计划
- 在用户运动过程中提供实时语音指导和动作纠正
- 评估训练效果并给出饮食建议
按 Hello-Agents 第一章口径,智能体本体 = 通过传感器感知环境 + 自主通过执行器行动 + 指向特定目标的实体;设计智能体第一步就是用 PEAS(Performance / Environment / Actuators / Sensors)把任务环境钉死,再沿可观察性、确定性、序贯性、动态性、离散/连续、单/多智能体六维判环境复杂度。
1. PEAS 完整描述(智能健身教练 Agent)
|
维度 |
具体规约 |
|---|---|
|
P Performance 性能度量 |
目标达成度(减脂/增肌/耐力提升的周期性指标变化)、动作规范率(纠偏命中率)、心率区间达标率、用户留存与满意度、伤病/过度训练发生率(负向)、实时指导延迟(语音出声 < 800ms) |
|
E Environment 环境 |
用户身体(心率/摄氧/肌电/关节角)、运动场域(健身房/居家/户外)、可穿戴设备流、用户语音反馈、历史训练档案、饮食日志、睡眠与恢复数据、外部知识(动作库/营养学) |
|
A Actuators 执行器 |
语音合成播报(TTS)、App 界面推送(计划卡/图表)、震动/灯光提示(手表端)、训练计划写库(动态改明日组数)、调用营养建议生成器、紧急停止/降负荷指令 |
|
S Sensors 传感器 |
可穿戴心率带/手表(HR、HRV)、加速度计/陀螺仪(动作节奏)、麦克风(用户语音"我不行了")、App 表单(目标选择、主观疲劳 RPE)、API 拉取(睡眠/体重/饮食)、视频姿态估计(可选摄像头) |
2. 环境六大特性分析(对照第一章旅行助手范例的同构写法)
-
部分可观察(Partially Observable):Agent 能看到心率、加速度、RPE,但看不到肌肉微损伤、糖原储备、真实心理倦怠、潜藏关节隐患,只能由外显信号推断内部状态——典型部分可观察,必须靠内部世界模型+记忆补全。
-
随机性(Stochastic):同样计划、同样心率区间,用户今天可能抽筋明天能冲 PR;穿戴数据有噪声、用户可能谎报 RPE——非确定性,需概率化决策与置信度兜底。
-
动态(Dynamic):用户心率在 Agent 组织语言播报的几百毫秒里继续飙,环境不等 Agent 想完——高动态,要求感知-思考-行动-观察循环低延迟。
-
序贯(Sequential):今天超负荷→明天 DOMS→后天计划必须降量,当前动作改变未来状态,非片段式,需基于目标的长期效用权衡(减脂期 vs 增肌期不同贴现)。
-
连续(Continuous):心率、时长、重量、动作角度都是实值,状态-动作空间连续,不能用离散查表,得用控制论+LLM 混合。
-
单智能体为主,含多 Agent 影子:主 Agent 是单智能体;但环境里"用户本人"是带自主意志的行动者(可能突然停练),宏观上近似单 Agent + 非合作人类行动者,设计上按单 Agent 处理但要留人机协同接口。
3. 扣回第一章"本体知识性总结"的落点
-
该主体满足智能体四要素(感知穿戴数据 / 自主改计划与语音 / 目标指向减脂增肌耐力 / 闭环),不是 Workflow、不是裸 LLM,是 LLM 驱动+控制策略混合的效用型/目标型智能体。
-
用 PEAS 描述后立刻暴露设计痛点:部分可观察→要加记忆与状态推断;随机动态→Agent Loop 必须带实时重规划;连续序贯→不能只靠 ReAct 文本推理,需把"心率控制"交给反射层、把"周期计划"交给 LLM 规划层(混合式架构,呼应第一章反射/基于模型/基于目标/学习型四阶梯的融合)。
如果你要,下一步可以把这个 PEAS 直接落成 Hello-Agents 第四章风格的 FitnessCoachAgent 类:Sensors 接 WearableStream,Actuators 接 speak()/update_plan(),内部跑 Plan-and-Solve + 反射式心率护栏,对齐第一章 TravelAssistant 的代码骨架。
三、售后退款自动化:Workflow 与 Agent
在 1.3 节的智能旅行助手基础上,请思考如何添加以下功能(可以只描述设计思路,也可以进一步尝试代码实现)
- 添加一个"记忆"功能,让智能体记住用户的偏好(如喜欢历史文化景点、预算范围等)
- 当推荐的景点门票已售罄时,智能体能够自动推荐备选方案
- 如果用户连续拒绝了 3 个推荐,智能体能够反思并调整推荐策略
卡尼曼的"系统 1"(快速直觉)和"系统 2"(慢速推理)理论[2]为神经符号主义 AI 提供了很好的类比。请首先构思一个具体的智能体的落地应用场景,然后说明场景中的:
- 哪些任务应该由"系统 1"处理?
- 哪些任务应该由"系统 2"处理?
- 这两个系统如何协同工作以达成最终目标?
尽管大语言模型驱动的智能体系统展现出了强大的能力,但它们仍然存在诸多局限。请分析以下问题:
- 为什么智能体或智能体系统有时会产生"幻觉"(生成看似合理但实际错误的信息)?
- 在 1.3 节的案例中,我们设置了最大循环次数为 5 次。如果没有这个限制,智能体可能会陷入什么问题?
- 如何评估一个智能体的"智能"程度?仅使用准确率指标是否足够?
下面把这三组问题合并成「三、智能旅行助手的本体延展:记忆·反思·系统1/2协同·幻觉与评估」一节,严格沿用前几轮已锚定的 Hello-Agents 第一章「本体知识性总结」口径(智能体=感知+自主+执行+目标闭环;Workflow≠Agent;LLM Agent 属目标/效用型+混合式反应-规划),并尽量贴 1.3 节「智能旅行助手」的原型来答。
1. 在 1.3 智能旅行助手上加三件事(设计思路)
1.1 记忆功能:记住用户偏好
-
本体定位:第一章把「记忆」归为高级扩展(第八、九章),但本体上记忆是智能体维持跨轮状态、形成用户模型的必要模块,让 Agent 从「无状态函数」变「持续体」。
-
设计:
-
短期记忆:当前会话的
dialogue_buffer(最近 N 轮 + 当前意图)。 -
长期记忆:向量库存
user_profile_{uid}—— 标签(history_culture:0.9,budget_per_day:400,dislike_crowd:true)+ 原始对话摘要。 -
写入时机:每次用户显式说「我喜欢…」或隐式接受/拒绝推荐时,调
update_memory(user_id, delta)。 -
读取时机:Plan 前先
retrieve_profile(uid)注入 System Prompt 的<user_model>段。
-
-
代码片段(伪)
profile = memory.retrieve(user_id)
ctx = f"<user_model>{profile}</user_model>\n请规划杭州1日游"
plan = llm.react(ctx, tools=[search_spot, check_ticket])
1.2 门票售罄→自动备选
-
本体定位:这是「基于模型的世界状态感知 + 工具调用重规划」,属规划式(Deliberative)内的局部 ReAct 循环,不是 Workflow(因为备选集是运行时动态生成的)。
-
设计:
-
工具
check_ticket(spoit_id, date)返回sold_out / available / limited。 -
若主推景点
sold_out,Agent 进「观察→再思考」:调search_similar(spot, reason="同主题邻近")拿 3 个候选 → 用用户模型过滤 → 重排 → 语音/文本给出「灵隐寺票没了,改用永福寺+飞来峰联票,步行 8 分钟」。 -
限最大重查 2 次,防死循环。
-
1.3 连续拒 3 次→反思调策略
-
本体定位:把「用户拒绝」当环境反馈信号,触发元认知层(System 2 反思),改的不是某次计划,而是「推荐策略本身」——对应第一章「Agent 能调整自身决策路径」。
-
设计:
-
维护
reject_streak计数器,每次用户说「不喜欢/换一个」+1,接受或偏离主题清零。 -
达 3 时,强制走
reflect():调 LLM 做「为什么连拒?是主题错/预算错/节奏错/信息不足?」→ 产出strategy_patch(如「暂停寺庙类,改园林+博物馆,单价压到 200 内」)→ 写回短期记忆,下次 Plan 前注入。 -
等价于在 ReAct 循环外再套一层「反思循环」,上限 1 次/会话避免抖动。
-
三者合起来:记忆=状态延续,售罄备选=环境突变重规划,连拒反思=策略级元学习,正好把 1.3 的单轮 TravelAssistant 升成有状态、有韧性、有元认知的 Agent。
2. 卡尼曼系统 1 / 系统 2 落地场景与协同
选定场景:「城市当日即兴游伴」——用户边走边问「附近喝什么」「前面那建筑啥来历」「累了换个轻松的」。
系统 1(快、直觉、反射式)
-
实时语音唤醒与 ASR 兜底
-
基于规则的「附近 300m 咖啡店」POI 直查(不走 LLM)
-
心率/步数骤降→直接推「前方长椅+遮阳处」(反射护栏)
-
模板化闲聊「好的~」「马上查」
-
特征:低延迟、无世界模型展开、对应第一章「简单反应式智能体」。
系统 2(慢、推理、规划式)
-
把「用户想看民国建筑」+ 记忆「爱历史文化」+ 售罄状态 → 用 LLM 做多跳:查资料→排动线→算交通→出 3h 行程
-
连拒反思、跨天行程效用权衡(今天累则明天补博物馆)
-
工具编排(ticket/site/weather/memory)
-
特征:高延迟、内部状态搜索、对应「基于目标/效用 + 学习型」智能体。
协同方式(达成目标:让用户「不操心且信得过」)
-
门控路由:输入先过轻量分类器(规则或 tiny LM)——「附近啥」走 S1,「帮我重排半天」走 S2。
-
S1 托底 S2:S2 生成计划时,S1 层始终监听生理/位置异常,必要时打断 S2 输出(如 S2 正讲历史,S1 发现用户心率 190 直接插「先坐下」)。
-
S2 编译成 S1 习惯:常走路线、常拒类型经反思后写回用户模型,下次 S1 模板直接带偏置,逐步把 S2 结论「下沉」为 S1 直觉,降低 Token 成本。
-
本体上这就是第一章说的混合式(Hybrid)智能体:反应式与规划式共存,S1 是反射执行器前端,S2 是 LLM 决策内核。
3. 局限分析:幻觉 / 无限循环 / 智能如何评估
3.1 为什么会有幻觉
扣第一章「LLM 不是世界模型,是条件概率生成器」:
-
训练数据噪声:景点历史、门票政策本身在语料里就互相矛盾,模型平滑后编出「合理中位值」。
-
无真感知:Agent 没真连票务系统时就「脑补」有票;对应本体缺陷——部分可观察环境下用语言先验补状态,必然造假。
-
指令-知识冲突:System Prompt 说「自信回答」,用户问偏门野史,模型为保流畅度放弃「我不知道」。
-
工具结果未 grounding:拿到
check_ticketJSON 却读错字段,再用自然语言重述时走样。 -
根因:LLM 优化目标是「下一个 token 似然」不是「命题为真」,Agent 化后若缺「观察校验」闭环,幻觉直接变行动(乱买票)。
3.2 1.3 案例去掉 max_loop=5 会怎样
-
死循环(Reward Hacking / 自旋):Plan→观察售罄→重搜→又推同一个→再售罄… 尤其工具返回格式略变时 LLM 以为「没收到」反复调。
-
上下文溢出:每轮塞工具日志,第 8 轮超出窗口,Agent 忘首轮目标,开始聊天气。
-
成本爆炸:Tour 场景 5 轮≈1500 token,去限制可飙到 50 轮≈30k token/用户。
-
目标漂移:本来「一日游」越改越变成「找售票处」,效用函数被局部观察绑架。
-
所以
max_loop不是工程补丁,而是给自主智能体加「自我终止」这一本体能力——第一章强调 Agent 必须「有界自主」。
3.3 怎么评估「智能」?准确率够吗
不够。准确率只测「单步动作对不对」,但智能体本体是目标导向闭环,至少补五维:
-
任务成功率(Goal Achievement):用户最后去成没去成、满意度自评。
-
效用加权(Utility):时间/钱/体力综合贴现,不是「推荐对不对」而是「推荐值不值」。
-
鲁棒性(在部分可观察/随机下):售罄、拒答、GPS 漂移时是否还能交差。
-
样本效率与反思收益:连拒 3 次后策略是否真变好(A/B 看二轮接受率)。
-
可解释与可控:出的计划人能否审计、S2 反思日志是否可读。
-
准确率只是「S1 分类器指标」;Agent 评估要借 AgentBench / TravelBench 式「端到端任务完成 + 过程轨迹打分」,对应第一章第八、十二章讲的评估方法论。
-
一节收口(本体视角)
把 1.3 旅行助手加记忆、售罄重规划、连拒反思后,它从「单轮 ReAct 演示」升级为部分可观察、序贯、动态环境下的目标型混合智能体;系统 1/2 切分是混合架构的人本说法;幻觉源于 LLM 无真感知、无限循环源于缺自主终止、准确率不足以度量智能——这三句话恰好落在 Hello-Agents 第一章「本体知识性总结」的四要素+分类轴+局限边界里。
要的话,下一步可以把「记忆+售罄+连拒反思」直接写成 LangGraph 节点:retrieve_profile → plan → tool_check → (sold_out? reroute : ) → reflect_if_reject==3 → speak,对齐你前几轮用的第四章 ReAct 实战骨架。
更多推荐




所有评论(0)