Agent 落地指南:流程编排的正确用法

一句话核心:编排层管“流程”,能力层管“智能”。复杂逻辑写代码,可变配置用拖拽。


一、核心观点

很多人用 Dify、RagFlow 这类工具时,陷入一个误区:把所有逻辑都用节点拖出来。结果是一个巨大的“蜘蛛网”——难调试、难维护、难复用。

正确的做法是:黑盒化。

  • 能力层(代码):封装复杂、稳定、用户不关心的逻辑
  • 编排层(可视化):暴露简洁、可变、用户需要调整的流程

两者结合,各取所长。


二、一个对比:两种方案

维度纯编排(蜘蛛网)黑盒化(推荐)
做法把所有步骤都拖成节点复杂逻辑封成工具节点,编排只留高层流程
节点数量几十个3-5个
可读性像蜘蛛网,新人看不懂一目了然
可维护性改一个细节要动整张图改代码即可,编排层不变
调试难度难,只能看节点日志易,代码层可断点、单步

结论:对开发者而言,LangChain + AI Coding 在灵活性、效率、可维护性上完胜拖拽。可视化编排的价值不在“替代代码”,而在“面向业务的可视化交付”。


三、判断标准:什么放编排,什么写代码?

用一个问题决定:

“这个逻辑,用户(或交付对象)未来会不会有动力、有能力去修改?”

答案放哪里举例
会编排层审批阈值、通知渠道、提示词模板、分支条件
不会/不能能力层(代码)PDF解析、数据库连接、核心模型调用、数据清洗算法

四、架构模式:关注点分离

┌─────────────────────────────────────────────┐
│           编排层(Dify / RagFlow)           │
│    ┌─────┐    ┌─────┐    ┌─────┐            │
│    │输入 │ -> │工具 │ -> │判断 │            │
│    └─────┘    └──┬──┘    └──┬──┘            │
│                  │          │               │
│                  ▼          ▼               │
│            ┌─────────┐  ┌─────────┐         │
│            │通知A    │  │通知B    │         │
│            └─────────┘  └─────────┘         │
└─────────────────────────────────────────────┘
                       │
                       │ 调用(黑盒)
                       ▼
┌─────────────────────────────────────────────┐
│          能力层(LangChain / 自定义代码)      │
│  ┌─────────────────────────────────────┐    │
│  │  process_financial_pdf(pdf_path)    │    │
│  │  {                                  │    │
│  │    解析 -> 清洗 -> 模型调用 -> 返回    │    │
│  │  }                                  │    │
│  └─────────────────────────────────────┘    │
└─────────────────────────────────────────────┘

五、正例 vs 反例

❌ 反例(蜘蛛网)

在 Dify 里用 10+ 个节点实现“PDF解析 → 表格提取 → 数据清洗 → 模型调用 → 结果判断 → 分支处理”。流程僵化、难调试、换一个 PDF 结构就崩。

✅ 正例(黑盒化)

  1. 能力层:用 LangChain 写一个函数 analyze_pdf(pdf_path) -> dict,内部封装所有复杂逻辑
  2. 编排层:只暴露 3 个节点
    • 节点1:上传 PDF
    • 节点2:调用 analyze_pdf 工具(黑盒)
    • 节点3:根据返回的 risk_level 分支(high 发邮件,否则存档)

业务人员可以随意改分支逻辑和动作,但永远不用碰解析代码。


六、什么时候该用纯代码方案?

如果满足以下任意一条,直接用 LangChain + AI Coding,别碰编排工具:

  • 你是唯一开发者,不需要交付给非技术人员修改
  • 流程极其复杂,可视化也无法简化
  • 你需要精细的调试(断点、单步、单元测试)
  • 你需要版本控制(git diff、review、回滚)

七、什么时候该用编排工具?

如果满足以下全部,Dify/RagFlow 是更好的选择:

  • 需要交付给非技术人员(业务方、客户)自行调整逻辑
  • 流程以分支和判断为主,智能任务不多
  • 团队里有产品/运营需要参与 AI 流程配置
  • 追求 “上午开会,下午演示” 的原型速度

八、终极判断

你的角色推荐方案
开发者,为自己写LangChain + AI Coding
开发者,交付给业务方能力层写代码 + 编排层暴露可配节点
非技术人员Dify / RagFlow 纯编排

九、总结成三句话

  1. 复杂逻辑写代码,可变配置用拖拽 —— 不要把蜘蛛网画在编排工具里。
  2. 编排层管流程,能力层管智能 —— 两者各司其职,才是最佳实践。
  3. 用“用户会不会改”来判断 —— 会改的放编排,不会的封装成黑盒。

这份指南的核心观点来自我们之前的讨论,希望对你的 Agent 落地有帮助。