AI Agent 实现的 4 大类别:代码派、自然语言派、可视化派与 Graph 工作流派
做 Agent 的同学一定遇到过这个困惑:想做一个 Agent,但市面上的框架和工具多到让人选择困难。LangChain、LangGraph、CrewAI、Claude Code、Langflow、n8n、Dify、Google ADK……每个都说自己是"最好的 Agent 方案"。
这些工具其实可以按一个核心维度分成 4 大类——你用什么方式控制 Agent 的行为。控制方式决定了它的适用场景、学习成本、可调试性和生产化难度。这篇文章把这 4 大类讲清楚,每类补充代表框架和使用场景。
本文 outline
- 分类的维度:你靠什么控制 Agent
- 第一类:纯代码派
- 第二类:纯自然语言派
- 第三类:UI 可视化派
- 第四类:Graph 工作流派
- 四类怎么选:一张表 + 三个决策问题
1. 分类的维度:你靠什么控制 Agent
先给一个总的框架。Agent 的核心是一个循环:模型思考 → 决定动作 → 执行 → 观察结果 → 再思考。不同框架的差异,在于"循环怎么编排、行为怎么定义"。
| 类别 | 控制方式 | 代表 | 核心卖点 |
|---|---|---|---|
| 纯代码派 | 写代码编排 | LangChain/LangGraph、MS Agent Framework、CrewAI | 灵活、可测试、生产化 |
| 纯自然语言派 | 用文字定义行为 | Claude Code、Cursor、Hermes | 零门槛、上手快 |
| UI 可视化派 | 拖拽搭流程 | Langflow、n8n、Dify | 低代码、业务友好 |
| Graph 工作流派 | 代码连接确定性流程与 LLM | Google ADK | 确定性与非确定性统一 |
一个关键认知:这 4 类不是竞争关系,而是不同抽象层级。同一个人可能早上用 Claude Code 写代码(第二类),下午用 LangGraph 搭生产 Agent(第一类),晚上用 Langflow 给业务同事做原型(第三类)。
2. 第一类:纯代码派
核心思想:Agent 就是一个程序,用代码定义它的每一步。模型调用、工具选择、循环控制全部显式写在代码里。
代表框架:
- LangChain / LangGraph:LangChain 是最早出圈的 Agent 框架,提供了模型封装、工具、记忆、检索的一整套抽象。LangGraph 是它的进化——用图结构编排 Agent 状态机,支持条件分支、循环、持久化,是当前生产级 Agent 的主流选择。LangGraph 的节点就是 Python 函数,边就是状态转移,整个 Agent 是一个可暂停、可恢复的图执行。
- Microsoft Agent Framework(13.5k 星,MIT):微软推出的 Agent 编排框架,特点是云中立(Azure/OpenAI/LangGraph 都接)和多 Agent 编排,带可视化调试界面。它的定位是"企业级多 Agent 系统"。
- CrewAI:主打"角色扮演"式多 Agent 协作。你定义不同的 agent(研究员、写手、审校)和它们的任务,框架负责编排它们协作完成目标。适合模拟团队分工的场景。
适合场景:生产级应用、需要精细控制/可测试/可调试的复杂 Agent、有工程团队愿意维护代码的场景。代价:学习曲线陡,样板代码多,改一个流程要改代码重新部署。
# LangGraph 风格:Agent 是状态机,节点是函数
from langgraph.graph import StateGraph
def call_model(state): ... # 调 LLM
def call_tool(state): ... # 执行工具
graph = StateGraph(...)
graph.add_node("model", call_model)
graph.add_node("tools", call_tool)
graph.add_edge("model", "tools")3. 第二类:纯自然语言派
核心思想:不写代码,用文字定义 Agent 的行为。你把系统提示词、工具描述、规则写成自然语言,Agent 框架负责执行循环。
代表:
- Claude Code:Anthropic 的编程 Agent。你用自然语言给它下指令,它在终端里自主读代码、改代码、跑测试。它的"行为"由系统提示词 + 用户的自然语言指令 + CLAUDE.md(项目记忆)共同定义。
- Cursor:AI 代码编辑器。自然语言驱动补全和编辑,本质是"编辑器 + Agent 循环"。
- Hermes(Nous Research,24.5 万星,MIT):Nous 的开源 Agent,强调"the agent that grows with you"——用文件记忆(MEMORY.md/USER.md)和技能(Skills)让 Agent 随着使用积累能力。它的哲学是"Agent 的长期记忆和技能应该像 wiki 一样持续沉淀"。
核心卖点:零门槛。不需要懂代码就能用,上手以分钟计。代价:行为由模型决定,不可精确复现;复杂的确定性逻辑(比如"必须调用 A 再调用 B,失败重试 3 次")用自然语言很难约束;调试依赖"观察模型在想什么"。
# 自然语言派的使用方式:就是对话
claude "重构这个模块,保持 API 兼容,加好测试"一句话:代码派把 Agent 当程序写,自然语言派把 Agent 当同事指挥。后者爽快,但前者的可控性在关键业务里无法替代。
4. 第三类:UI 可视化派
核心思想:不写代码(或极少代码),在画布上拖拽节点、连线搭流程。每个节点是一个操作(LLM 调用、工具、条件判断、数据转换),连线决定数据流。
代表:
- Langflow(15.5 万星,MIT):可视化版 LangChain。拖拽组件搭 RAG 流水线、Agent 工作流,能导出为 Python 代码。适合快速原型和给非工程师演示。
- n8n(20.4 万星,fair-code):通用工作流自动化平台,原生支持 AI 节点(LLM、Agent、向量库)。它的强项是集成生态——几百个现成的应用连接器,适合把 Agent 接进业务流程(CRM、邮件、数据库)。
- Dify(15.6 万星):开源 LLM 应用平台,可视化的 Agent 编排 + RAG 流水线 + 完整应用管理(发布、监控、用户)。定位是"LLM 应用的一站式平台",既有可视化编排,也有 API 和插件。
适合场景:业务团队自己搭流程、快速原型验证、需要集成大量外部系统、不想维护代码的场景。代价:复杂的逻辑分支在画布上会变得混乱;版本控制难(流程是 JSON/配置而非代码);深度定制受限于平台提供的能力。
5. 第四类:Graph 工作流派
核心思想:这是很多人忽视、但其实是"生产级 Agent 的正确姿势"的一类——用代码把确定性的流程和不确定性的 LLM 调用,连接成一个 Graph(图)Agent 工作流。
代表是 Google ADK(Agent Development Kit,21.5k 星,Apache-2.0)。ADK 的核心设计:
- 代码优先(code-first):Agent 就是代码,不是配置文件、不是拖拽图
- Graph-based workflow:Agent 由节点(node)和边(edge)组成,每个节点可以是确定性函数,也可以是 LLM 调用
- 确定性与非确定性统一:固定流程(数据校验、调用订单 API、发通知)用确定性节点,需要判断的地方(理解用户意图、生成回复)用 LLM 节点,二者在同一张图里编排
看一个 ADK 风格的结构:
# ADK 风格:确定性节点 + LLM 节点在同一张图里
@node
def validate_input(state): # 确定性:校验参数
if not state.input.get("id"):
return {"error": "missing id"}
return state
@node
def route(state): # 非确定性:LLM 决定走哪条路
intent = llm.classify(state.input) # LLM 调用
return {"next": intent}
@node
def call_order_api(state): # 确定性:调订单系统
return api.orders.get(state.input["id"])
# 图:确定性流程 + LLM 决策点
graph = Graph()
graph.add_edge("validate_input", "route")
graph.add_conditional_edge("route", {"query": "call_order_api", "create": "create_order"})这个模式的本质:把"确定性的业务逻辑"和"非确定性的智能决策"明确分层。该确定的(校验、事务、幂等)绝不依赖模型,该灵活的(意图理解、内容生成)交给模型。这让 Agent 既能保证业务正确性,又保留了智能的弹性。
ADK 还带评估(evaluation)和追踪(tracing)工具,强调"生产级 Agent 需要可测试、可观测"。
同类框架:LangGraph 其实也可以归入这一类(它也是"代码 + 图编排 + 确定性/LLM 节点混合"),但 ADK 更明确地以"Graph agent workflow"为产品核心,且由 Google 提供多模态、多平台支持(Python/Android/Web)。语义内核 Semantic Kernel(微软)也属于这一类——用代码把 skill(确定性函数)和 planner(LLM 规划)组合。
适合场景:生产级、需要强正确性的 Agent(交易、客服、工作流自动化),要求流程可控、可测试、可审计的团队。
6. 四类怎么选:一张表 + 三个决策问题
| 决策维度 | 代码派 | 自然语言派 | UI 可视化派 | Graph 工作流派 |
|---|---|---|---|---|
| 学习成本 | 高 | 极低 | 低 | 中高 |
| 灵活性 | 极高 | 中(依赖模型) | 中 | 高 |
| 可控性 | 高 | 低 | 中 | 极高 |
| 可测试性 | 高 | 低 | 中 | 极高 |
| 生产化 | 成熟 | 难(不可复现) | 一般 | 成熟 |
| 代表 | LangGraph/CrewAI | Claude Code/Hermes | Langflow/n8n/Dify | Google ADK |
三个决策问题:
- 谁来用? 纯工程师团队 → 代码派或 Graph 派;有业务人员参与 → 可视化派;个人日常 → 自然语言派
- 对确定性要求多高? 涉及交易、合规、必须精确执行 → Graph 派(确定性节点兜底);只是生成内容、辅助决策 → 自然语言派或代码派
- 要生产还是要演示? 生产、长期维护、需要测试 → 代码派或 Graph 派;快速原型、验证想法 → 可视化派最快
最后提醒一个反直觉的点:4 类之间可以组合。Dify 这类平台底层可能是代码派框架;Claude Code 的底层循环是图式的;你完全可以用 LangGraph 搭核心逻辑,再用自然语言层包装成用户界面。理解这 4 类不是为了"选一个",而是为了知道当前这一层该用哪个工具。
参考
- LangGraph — 代码派,图编排 Agent 状态机
- Microsoft Agent Framework — 13.5k 星,企业级多 Agent
- CrewAI — 角色扮演式多 Agent 协作
- Claude Code — 自然语言编程 Agent
- Hermes — 24.5 万星,持续成长的开源 Agent
- Langflow — 15.5 万星,可视化 LangChain
- n8n — 20.4 万星,工作流自动化 + AI 节点
- Dify — 15.6 万星,LLM 应用一站式平台
- Google ADK — 21.5 万星,代码优先的 Graph Agent 工作流
- 前篇:AI Agent 全景指南 — 站内 Agent 技术全景
作者: itech001 来源: 公众号:AI人工智能时代(the-ai-era) 网站: https://www.theaiera.top/ 关注每日最新AI新闻和技术博客,主页有更多的文章的AI 技术参考:https://www.theaiera.top
关注公众号,获取更多 AI 技术干货!