news 2026/8/8 15:24:21

从 Prompt 到 Agent:理解 AI Agent 的系统结构、决策循环与工程边界

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
从 Prompt 到 Agent:理解 AI Agent 的系统结构、决策循环与工程边界

本文根据视频《You’re Not Behind (Yet): Learn AI Agents in 13 Minutes》整理,并补充工程实现视角。重点不是介绍某一个具体产品,而是提炼一套可以迁移到不同 Agent 框架和平台的通用模型。

  1. AI Agent 解决的不是“回答问题”,而是“完成目标”

传统 Prompt 通常是一次请求、一次响应:用户给出问题,LLM 根据上下文生成文本。用户需要自己决定下一步,并不断纠正模型的输出。

Agent 则把一次对话扩展为一个可执行的任务循环:

用户目标 ↓ 任务拆解 → 工具调用 → 中间结果判断 → 下一步决策 ↑ ↓ └──────── 结果校验与重规划 ────────┘

因此,Agent 的关键变化不是“模型突然拥有了真正的意识”,而是 LLM 被放进了一个包含上下文、工具、策略、记忆和控制逻辑的系统中。

  1. Prompt 与 Agent 的技术差异

可以用“驾驶”来理解两者的差别:

模式用户提供的内容系统负责的内容适合场景
Prompt具体问题或单步指令生成一次结果写作、问答、解释、临时分析
Agent目标、约束和验收标准规划步骤、调用工具、处理异常周期任务、多步骤工作流、可复核自动化

例如,“写一篇行业文章”更像 Prompt;“每周收集行业新闻,筛选与公司相关的主题,参考历史文章生成草稿,经过检查后提交审核”才更接近 Agent 任务。

  1. Agent 的四类内部职责

视频将 Agent 拆解为四种功能角色。实际系统中它们不一定对应四个独立模型,也可以由同一个 LLM 在不同阶段承担。

3.1 Analyst:分析者

负责从输入数据中提取事实、模式和异常,例如:

  • 从工单中统计高频问题;
  • 从销售记录中识别客户流失信号;
  • 从文档集合中提取与当前任务相关的信息。

3.2 Planner:规划者

负责将目标转化为可执行步骤,并决定工具调用顺序。规划结果通常需要包含:

  • 当前任务的分解步骤;
  • 每一步所需的输入;
  • 成功条件与失败处理方式;
  • 是否需要人工确认。

3.3 Operator:执行者

负责与外部世界交互,例如调用搜索、数据库、代码执行环境、邮件系统或业务 API。工具调用是 Agent 产生实际业务价值的关键,但也是风险最集中的部分。

3.4 Auditor:审查者

负责检查结果是否满足目标,常见检查包括:

  • 是否遗漏关键数据;
  • 是否违反格式或业务规则;
  • 引用和数字是否可追溯;
  • 是否出现幻觉或不合理推断;
  • 是否需要回退或重新执行。
  1. OODA:让 Agent 能够处理异常路径

图中的循环可以对应到一个实际的 Agent Runtime:模型读取环境状态,结合任务上下文形成判断,选择工具并执行,然后把工具返回值重新放回上下文中。每一轮循环都应该留下可追踪的事件,而不是只保留最终答案。

固定自动化流程通常假设环境不会变化。例如,流程规定“每周五购买固定商品”,但商品缺货、人数变化或预算调整后,流程就可能直接失败。

Agent 更适合采用 OODA 循环:

  1. Observe

    :观察当前环境和工具返回结果;

  2. Orient

    :结合目标、约束和新信息重新判断;

  3. Decide

    :选择下一步行动;

  4. Act

    :执行行动并获得新反馈。

这并不意味着 Agent 可以无限自主运行。工程上必须设置最大循环次数、超时、预算、允许调用的工具范围,以及需要人工审批的节点。

  1. ARR:判断任务是否值得交给 Agent

并不是所有自动化都需要 Agent。可以使用 ARR 作为初筛标准:

  • Autonomous,自主性

    :任务是否可以在较少人工干预下执行?

  • Recurring,重复性

    :任务是否周期性发生?

  • Reviewable,可复核性

    :结果是否能够被明确检查、修改或撤销?

满足 ARR 的任务通常适合 Agent,例如每日邮件分拣、每周客户反馈分析和会议准备。

如果任务是一次性的、目标不明确,或者结果无法验证,就应该优先使用普通 Prompt 或人工流程。

  1. GPS:自动化前的需求质量检查

Agent 不会自动修复含糊的需求。相反,它可能把错误目标执行得更快。因此,在设计 Agent 之前应先做 GPS 检查:

Goal:目标

能否用一句话明确描述任务最终要达成什么?

Proof:证明

如何判断结果是正确的?是否存在样例、评分标准或业务规则?

Steps:步骤

执行过程是否足够明确?数据从哪里来,调用什么工具,遇到异常如何处理?

例如,“每天总结我的邮件”过于模糊。更可执行的定义是:每天 07:00 读取未读邮件,按紧急程度分类,为常规请求生成草稿,并单独标记来自重点客户的邮件;任何发送动作必须等待人工确认。

  1. 一个可落地的 Agent 架构

7.1 一次任务执行的时序

用户 / 定时器 │ ▼ 任务触发器 ──→ 读取身份与策略 ──→ 加载相关记忆 │ │ └──────────────→ 规划器 ←──────────┘ │ ▼ 选择工具与参数 │ ▼ 权限与风险检查 ┌─────┴─────┐ │ │ 需审批 低风险 │ │ 等待人工 执行工具 │ │ └─────┬─────┘ ▼ 结果校验器 ┌─────┴─────┐ │ │ 通过 失败/不确定 │ │ 输出结果 重试、改计划或升级人工

7.2 最小 Agent Loop 伪代码

下面的伪代码展示了 Agent 的控制逻辑。实际实现还需要加入凭证管理、结构化输出校验、重试退避和审计记录。

def run_agent(task, context, tools, policy): state = {"task": task, "context": context, "steps": [], "budget": policy.max_steps} while state["budget"] > 0: plan = planner(state) action = plan.next_action if not policy.allow(action): return request_human_approval(state, reason="permission or risk") if action.is_external_write and not policy.approved(action): return request_human_approval(state, reason="external side effect") result = tools.execute(action) state["steps"].append({"action": action, "result": result}) state["budget"] -= 1 verdict = auditor(state) if verdict.is_complete: return render_final_output(state) if verdict.should_replan: state["context"] = update_context(state, verdict) return escalate(state, reason="step budget exhausted")

这里最重要的不是planner()的具体实现,而是控制边界:Agent 必须受到步数、权限、预算、审批和升级机制的约束。

一个生产级 Agent 通常不只是“LLM + Prompt”,而是由以下组件组成:

┌──────────────────────────────────────────┐ │ Agent Runtime │ │ │ │ Identity / Policy │ │ 任务目标、角色、边界、输出规范 │ │ │ │ Planner → Tool Router → Executor │ │ ↑ ↓ │ │ Memory ← Evaluator ← Result ←┘ │ │ │ │ Guardrails:权限、预算、超时、审批、审计 │ └──────────────────────────────────────────┘

Identity

描述 Agent 的职责、业务背景、用户偏好和输出规范。它相当于稳定的系统级上下文,可以减少每次对话重复解释。

Tools

连接外部系统。工具应遵循最小权限原则,明确区分只读、写入、发送和删除等高风险操作。

Skills

把重复任务固化为可复用的“操作配方”,包括输入、处理步骤、输出结构和验收规则。

Memory

保存长期有效的偏好、历史决策和任务经验。记忆必须可查看、可修改、可删除,不能把所有历史对话无条件塞进上下文。

  1. 生产环境中最容易被忽略的工程问题

视频主要用于建立概念,但真正落地时,还需要解决以下问题:

  1. 身份认证

    :Agent 以谁的身份访问系统?凭证如何轮换?

  2. 权限隔离

    :是否能访问不必要的数据?写入操作是否需要审批?

  3. 幂等性

    :任务重试时会不会重复发邮件、重复创建订单或重复写入?

  4. 可观测性

    :能否看到每次规划、工具调用、输入输出和失败原因?

  5. 错误处理

    :API 超时、权限过期、返回数据格式变化时如何降级?

  6. 数据安全

    :敏感数据是否会被发送到不合适的模型或第三方工具?

  7. 评估体系

    :如何持续判断 Agent 是否真的提升了效率和质量?

8.1 工具设计:不要把内部 API 直接暴露给模型

工具应该是面向任务的窄接口,而不是把数据库、Shell 或内部服务的全部能力直接交给模型。例如,不建议提供一个任意 SQL 执行工具;更稳妥的方式是提供带有参数约束的业务工具:

{ "name": "search_customer_tickets", "description": "查询指定时间范围内的客户工单摘要", "input_schema": { "type": "object", "properties": { "customer_id": {"type": "string"}, "start_date": {"type": "string", "format": "date"}, "end_date": {"type": "string", "format": "date"} }, "required": ["customer_id", "start_date", "end_date"] } }

这种设计可以把权限、参数校验和审计逻辑收敛在工具服务中,减少模型生成危险参数的机会。

8.2 读操作与写操作必须分级

等级操作类型示例推荐控制
L0纯计算格式化、分类、摘要自动执行
L1外部只读搜索、查库、读日历自动执行 + 日志
L2可撤销写入创建草稿、生成工单自动执行 + 校验
L3不可逆或高风险发送邮件、删除数据、下单强制人工审批

Agent 的自主性应该随着任务风险变化,而不是“一键全自动”。

8.3 可靠性指标

除了模型回答质量,还应该度量 Agent 系统本身:

  • Task success rate

    :任务成功率;

  • Tool error rate

    :工具调用失败率;

  • Human takeover rate

    :需要人工接管的比例;

  • Replan rate

    :发生重规划的比例;

  • Cost per task

    :每个任务的 Token、API 和基础设施成本;

  • Time to completion

    :从触发到完成的耗时;

  • Side-effect error rate

    :错误写入、重复发送等副作用错误率。

如果只看最终文本是否流畅,无法发现权限错误、重复执行和隐性成本等问题。

8.4 记忆不是“无限聊天记录”

Agent 记忆至少可以分为三层:

  1. 短期上下文

    :当前任务中的消息、工具结果和中间状态;

  2. 工作记忆

    :当前项目的规则、文件和阶段性结论;

  3. 长期记忆

    :稳定的用户偏好、历史决策和可复用经验。

长期记忆需要具备来源、时间、置信度和失效机制。否则,过期信息会以“事实”的形式影响后续决策。

因此,Agent 生成文本往往只是最容易的一环。真正的系统能力来自工具集成、权限控制、调度、监控和可靠性设计。

  1. 从 Demo 到生产:推荐的渐进式路线

阶段一:只读助手

让 Agent 查询资料、总结数据和生成草稿,不允许修改外部系统。这个阶段的目标是验证任务定义、数据质量和输出格式。

阶段二:可审查执行

允许 Agent 创建草稿、生成工单或准备变更,但所有外部写入都需要人工确认。重点建设审计日志和失败重试。

阶段三:低风险自动化

对稳定、可回滚、可验证的低风险操作开放自动执行,并设置额度、频率和异常升级策略。

阶段四:多 Agent 协作

只有在单 Agent 的边界、评估和监控都稳定后,再考虑拆分分析、规划、执行和审查角色。多 Agent 会增加上下文传递、状态同步和故障定位成本,不应作为默认起点。

  1. 适合 Agent 化的任务模板

任务名称:每周客户反馈简报 触发器:每周一 07:00 输入:客服工单、产品反馈、销售备注 目标:识别本周最常见的三个问题,并生成一页管理层简报 步骤: 1. 拉取过去七天的数据 2. 去重并按主题聚类 3. 统计频次、影响客户数和趋势 4. 为每个主题附上可追溯样本 5. 生成简报草稿 验收:数字可追溯、主题不超过三个、每个主题有证据 副作用:只能创建草稿,不能直接发送 失败处理:数据源不可用时通知负责人,不生成推测性结论

这个模板体现了视频中的核心原则:任务足够窄、重复发生、结果可复核,而且每个外部动作都有明确边界。

  1. 结论:从“会用工具”转向“会设计工作系统”

AI Agent 的长期竞争力不在于某个产品的按钮或某个最新模型,而在于能否把工作拆成清晰、可验证、可复用的系统。

可以用下面的顺序开始实践:

  1. 找到一个高频、重复、令人厌烦的窄任务;
  2. 用 GPS 明确目标、验收标准和执行步骤;
  3. 只授予 Agent 完成任务所需的最小工具权限;
  4. 先以“生成草稿 + 人工审核”运行;
  5. 记录失败案例,逐步沉淀为 Skill、规则和评估用例;
  6. 只有在结果稳定、可回滚时,才扩大自动化权限。

最终,人不会因为 AI 产生更多内容而变得更有价值;真正稀缺的是定义什么是好结果、识别什么是坏结果,以及判断什么时候应该信任 Agent、什么时候必须由人接管。

学AI大模型的正确顺序,千万不要搞错了

🤔2026年AI风口已来!各行各业的AI渗透肉眼可见,超多公司要么转型做AI相关产品,要么高薪挖AI技术人才,机遇直接摆在眼前!

有往AI方向发展,或者本身有后端编程基础的朋友,直接冲AI大模型应用开发转岗超合适!

就算暂时不打算转岗,了解大模型、RAG、Prompt、Agent这些热门概念,能上手做简单项目,也绝对是求职加分王🔋

📝给大家整理了超全最新的AI大模型应用开发学习清单和资料,手把手帮你快速入门!👇👇

学习路线:

✅大模型基础认知—大模型核心原理、发展历程、主流模型(GPT、文心一言等)特点解析
✅核心技术模块—RAG检索增强生成、Prompt工程实战、Agent智能体开发逻辑
✅开发基础能力—Python进阶、API接口调用、大模型开发框架(LangChain等)实操
✅应用场景开发—智能问答系统、企业知识库、AIGC内容生成工具、行业定制化大模型应用
✅项目落地流程—需求拆解、技术选型、模型调优、测试上线、运维迭代
✅面试求职冲刺—岗位JD解析、简历AI项目包装、高频面试题汇总、模拟面经

以上6大模块,看似清晰好上手,实则每个部分都有扎实的核心内容需要吃透!

我把大模型的学习全流程已经整理📚好了!抓住AI时代风口,轻松解锁职业新可能,希望大家都能把握机遇,实现薪资/职业跃迁~

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/8 15:22:28

UE5多线程开发环境搭建与FRunnable实战指南

1. UE5多线程开发环境搭建基础在UE5引擎中进行多线程开发,首先需要确保开发环境配置正确。与单线程开发不同,多线程编程对开发环境有更严格的要求,特别是在线程安全和调试工具方面。1.1 硬件与系统要求多线程开发对硬件配置有一定要求&#x…

作者头像 李华
网站建设 2026/8/8 15:20:20

终极指南:如何用Ryujinx模拟器在电脑上畅玩任天堂Switch游戏

终极指南:如何用Ryujinx模拟器在电脑上畅玩任天堂Switch游戏 【免费下载链接】Ryujinx 用 C# 编写的实验性 Nintendo Switch 模拟器 项目地址: https://gitcode.com/GitHub_Trending/ry/Ryujinx 想在电脑上体验《塞尔达传说:王国之泪》的壮丽冒险…

作者头像 李华
网站建设 2026/8/8 15:19:08

本地AI新闻阅读器PageForth部署指南:On-Device摘要与隐私保护实践

这次我们来看一个本地 AI 新闻阅读器项目:PageForth。它的核心思路很直接——让你在本地设备上,就能让 AI 自动抓取、阅读并总结任何网页文章,整个过程数据不出本地,隐私性拉满。对于经常需要快速浏览大量资讯、研究论文或技术文档…

作者头像 李华
网站建设 2026/8/8 15:10:05

STM32 HAL库实现步进电机T型加减速控制:从原理到工程实践

1. 项目概述:从脉冲到精准运动搞嵌入式开发的,尤其是玩电机控制的,对步进电机肯定不陌生。它不像直流电机那样给电就转,而是需要控制器按特定顺序给线圈通电,每给一个脉冲,电机才转动一个固定的角度&#x…

作者头像 李华