本文是基于 LangGraph 官方文档的深度解释
随着大模型能力快速增强,开发者在构建 LLM 应用时面临一个核心选择:
到底要使用 Workflows(工作流)还是 Agents(智能体)?
这两种架构经常被混用,但在 LangChain / LangGraph 的框架中,它们有非常清晰的边界、应用场景和设计哲学。理解它们的区别,有助于你选择更稳定、更智能、也更容易维护的系统设计。
本文主题:
- LLM 功能如何被增强
- 各类 Workflows 的模式
- 什么是 Agents
- Workflows 与 Agents 的核心区别
- 真实项目中如何选择
1. LLM 与增强机制:所有系统的基石
不论是 Workflows 还是 Agents,本质上都建立在 LLM 的核心能力之上。 LangChain 文档强调:
Workflows and agentic systems are based on LLMs and the various augmentations you add to them.
也就是说,LLM 是核心,开发者通过"增强(augmentations)"让它更可靠、更易控。
官方列出了三类关键增强能力:
① 结构化输出(Structured outputs)
强制 LLM 输出 JSON / Pydantic 模式,从而保证可控性与一致性。
② 工具调用(Tool calling)
LLM 不再只生成文本,而能调用外部函数、API、数据库访问、搜索工具等。
例如:
python
@tool
def search(query: str):
...
model = model.bind_tools([search])
③ 短期记忆(Short-term memory)
让 LLM 在一个工作流/智能体循环中拥有"状态",能够记住上一步行动的结果。
这些能力为 Workflows 与 Agents 打下共同的基础。
2. Workflows:可控、稳定、可预测的系统架构
Workflows 是 预定义路径的 LLM 编排方式,它强调:
- 流程由代码控制
- 每一步的执行顺序固定
- 适用于确定性任务
LangGraph 官方文档将 Workflows 分成几类典型模式:
2.1 Prompt Chaining(提示链)
最经典的工作流,每次 LLM 调用处理上一步输出。

常用于:
- 翻译 + 校对
- 内容生成 + 审核
- 多步加工过程
特点: 顺序固定、非常可控。
2.2 Parallelization(并行化)
多个 LLM 调用同时进行。

适用于:
- 大文件分段处理
- 多维度评估
- 多路径探索(如多种风格输出)
优点: 大幅提升吞吐量和速度。
2.3 Routing(路由)
LLM 用一次调用决定"把输入送往哪个分支"。

如:
- 多语言客服
- 意图识别
- 分类处理
本质是: LLM 做路由决策,但流程结构仍由开发者定义。
2.4 Orchestrator--Worker(协调者--工人模型)
一个 orchestrator(协调者)拆解任务,多个 worker 并行处理,最后 synthesize(合成)。

例如:
- 生成长篇文章
- 拆解大任务并行执行
- 代码多文件重构
这种模式非常适合:需要规模化、结构化的大型生成任务。
2.5 Evaluator--Optimizer(评估者--优化器)
生成 → 评估 → 优化 → 循环。

用于:
- 提升文本质量
- 自动校对
- 反思与改进(self-reflection)
- 多次迭代直到满足标准
特点: 引入反馈环,但流程依然固定,循环范围受控。
2.6 Workflows 的本质总结
官方定义的关键总结如下:
Workflows have predetermined code paths and are designed to operate in a certain order.
通俗讲:
🌟 Workflows 是"你写规则,LLM 执行规则"。 流程完全可控,几乎不会"乱跑"。
适用于:
- 高稳定要求
- 对结果质量可控性强
- 数据处理类任务
- 生产环境
3. Agents:具有自主性的智能体系统
与 Workflows 相反,Agents 扮演一个"可以自己决定下一步做什么"的角色。
LangChain 文档给出了清晰定义:
Agents are implemented as an LLM performing actions using tools. They operate in continuous feedback loops and have more autonomy.

一句话总结:
🌟 Agents 是让 LLM 自主行动的系统:它决定要做什么,而不是你写死流程。
Agent 的核心机制包含:
① LLM 决策行动(Action Selection)
LLM 观察当前对话状态,决定下一步调用哪个工具。
② 调用外部工具(Tool Calling)
如搜索、数据库、计算器、文件读取等。
③ 根据环境反馈做下一步动作(Feedback Loop)
环境可能返回:
- 工具执行结果
- 用户反馈
- 系统状态
LLM 再根据反馈生成下一步计划。
④ 自动循环直到任务完成
Agent 的流程是 动态生成的,不写死在代码里。
4. Workflows vs Agents:核心区别
| 项目 | Workflows(工作流) | Agents(代理) |
|---|---|---|
| 谁控制流程? | 开发者 | LLM |
| 流程是否固定? | 固定顺序 | 动态决定 |
| 适用任务 | 结构化、可控任务 | 探索性、复杂任务 |
| 可预测性 | 高 | 较低 |
| 智能灵活性 | 限制较多 | 高 |
| 安全性稳定性 | 高 | 需更多约束 |
| 典型用法 | 数据处理、文档生成、链式推理 | 工具调度、搜索、规划、多步骤决策 |
一句话:
✨ Workflows 注重"可靠完成任务" ✨ Agents 注重"自主探索并找到解决方式"
5. 如何选择:真实项目中的实践建议
根据 LangChain 文档,建议如下:
如果你的任务是......
✔ 可预测、有明确步骤 ✔ 对稳定性和性能要求高 ✔ 生产环境在线服务
👉 优先使用 Workflows
如果你的任务是......
✔ 不确定性高 ✔ 需要工具调度 ✔ 需要多步骤探索 ✔ 结果方式不固定
👉 适合使用 Agents
也可以混合使用
一个常见的最佳实践:
- 用 Workflows 负责主流程(保证稳定)
- 在关键节点用 Agent 做自主决策(提升智能性)
例如:
- "内容生成流程+自动校对" 用 Workflow
- "自动检索相关知识" 用 Agent
- "复杂任务规划" 用 Agent
- "执行步骤" 用 Workflow
这种混合结构在 LangGraph 中非常容易实现。
6. 结语:从可控到智能,选择最适合的架构
随着大模型能力增强,我们有越来越多的方式构建智能系统。 Workflows 和 Agents 并非对立,而是解决不同类型问题的工具。
Workflows 给你稳定性与可控性;Agents 给予灵活性与自主性。
在实际开发中:
- 先用 Workflows 保证稳定
- 需要"智能探索"时再加 Agent
- 用 LLM 增强工具(结构化输出、工具调用、短期记忆)提升两者可靠性
最终目标不是选择其中一方,而是 ✨ 构建一个既可靠又智能的系统。