简介:本文面向大模型应用开发者与技术负责人,系统讲解Agent与Workflow两种构建范式的本质区别:Workflow是显式控制流,执行路径由开发者预先编排;Agent是隐式决策流,行动路径由大模型在运行时自主决策。教程给出选型判断方法、两类范式的通用实现伪代码、结果验证手段与常见问题排查思路,帮助读者在实际业务中正确选型、稳步落地。
在构建大模型应用时,很多开发者的第一个困惑就是:任务到底该编排成固定的工作流(Workflow),还是交给智能体(Agent)自主完成?本教程要帮助读者完成三件事:
适合读者:正在或计划构建大模型应用的开发者、负责技术选型的架构师与技术负责人、需要评估智能化落地路径的企业用户。
适用场景:智能客服、文档抽取与处理、审批自动化、数据分析助手、研发提效工具等需要引入大模型能力的业务场景。
流程由开发者预先编排:每个步骤的顺序、分支条件、终止规则都写在代码或配置里。大模型在其中的角色只是某个“节点”,通常只负责单点的文本生成、信息抽取或分类,并不决定流程走向。
可以把它类比成一张固定食谱,或者银行审批贷款时的核查清单:第一步查什么、第二步核什么、什么条件通过、什么条件退回,全部事先定义,执行时逐条照做即可。它非常适合那些流程标准化、步骤相对固定的任务。
Workflow 在业界常见的组织形态包括:
做什么、先做什么、调用哪个工具、什么时候结束,都由大模型在运行时自主决定。开发者不再写死执行路径,只负责提供目标描述、可用工具清单和使用边界。
可以把它类比成身边那些“有眼力劲儿”的聪明助手:面对新状况或预料之外的任务,能够审时度势、自主决策并采取行动。也可以想象成一位顶级大厨——不管厨房里剩下什么食材,都能根据现有条件变出一桌大餐。它适合开放性强、路径难以预先穷举的任务。
列出完成该任务所需的所有步骤,逐一标注:这一步的执行顺序是否固定?是否执行取决于运行时的中间结果?最终产出一张“步骤—依赖表”。
判断要点:如果绝大部分执行路径都能预先画成流程图,说明任务确定性高,偏向 Workflow;如果连“需要做哪几步”本身都要根据输入临时决定,说明任务不确定性高,偏向 Agent。
决策点少、规则明确(例如“资料不齐全就退回”),用 Workflow 的条件分支即可覆盖;决策点多、规则难以穷举、需要综合理解语义后动态规划行动序列,则更适合 Agent。
金融风控、审批等强合规场景,要求每一步可审计、可复现,应优先 Workflow;开放式调研、问题排查、代码修复等允许试错的探索性任务,Agent 更合适。此步骤依赖步骤一、二的盘点结果,建议形成书面结论后再动手实现。
以下以通用的资料审批流程为例给出伪代码:
def approval_workflow(application):# 第1步:资料完整性校验(固定入口)check = validate_materials(application)if not check.passed:return reject(check.reason) # 固定分支:不完整即退回# 第2步:调用大模型完成信息抽取(模型只是流程中的节点)fields = llm_extract(application.text)# 第3步:规则判定(显式控制流)risk = rule_engine(fields)if risk.level == "high":return route_to_human(risk) # 固定分支:高风险转人工return approve(fields) # 固定出口
注意:每一步“做什么、为什么做、失败怎么办”都由代码写死,这正是 Workflow 可审计、可复现的价值来源。
Agent 的通用骨架是“感知—思考—行动—观察”的循环:
def agent_loop(task, tools, max_steps=10):context = [system_prompt, task]for _ in range(max_steps):decision = llm.decide(context, tools) # 模型自主决定下一步if decision.type == "final_answer":return decision.answer # 模型判断任务已完成observation = run_tool(decision.tool, decision.args) # 执行动作context.append(observation) # 观察结果回填,进入下一轮return fallback() # 超限兜底,防止失控
注意:开发者不再编排路径,只负责三件事——定义目标(提示词)、提供工具清单与描述、设置边界(最大步数、兜底策略)。
Workflow 验证方法:逐节点编写单元测试,覆盖每一条显式分支;用设计好的流程图对照执行日志,确认每次运行路径与设计一致;构造边界样本(资料缺失、条件临界)验证分支正确性。
Agent 验证方法:记录并回放“思考—行动—观察”轨迹,人工检查工具调用序列是否合理;建立离线评估集,统计任务成功率、平均步数、平均成本;用无解任务、缺少所需工具的异常任务验证兜底策略是否生效。
一句话回顾本教程核心:Workflow 把控制权交给开发者,路径显式、可复现,适合标准化的固定流程;Agent 把控制权交给大模型,路径隐式、更灵活,适合开放多变的任务。选型的本质,是判断你的任务中“不确定性”占比多少。实践建议从 Workflow 起步,按需引入 Agent,最终形成“骨架可控、局部智能”的混合架构。后续可继续关注工具调用可靠性设计、评估体系搭建与成本优化等进阶方向。