Postsread more
Dify 深度玩法(三):节点自定义的五个层级
Dify 深度玩法(三):节点自定义的五个层级
上一篇:部署选型与模型 Key。 进了画布,第一个问题是"这东西到底能改多深"。答案是分层看:参数、逻辑、数据流三层几乎不设限;节点类型可靠插件扩展;硬边界只有两处。
五个层级总览
flowchart TD
L1["L1 参数级<br/>每个节点的配置项"] --> L2["L2 逻辑级<br/>Code 与 HTTP 逃生门"]
L2 --> L3["L3 数据流级<br/>变量系统 + 容错策略"]
L3 --> L4["L4 节点类型级<br/>插件定义新节点"]
L4 --> L5["L5 协议级<br/>DSL 手改 + 外部知识库 API"]
L1 -.- N1["自由度:低,但覆盖日常"]
L2 -.- N2["自由度:高,万能逃生门"]
L4 -.- N4["自由度:最高,成本也最高"]
L1 参数级:每个节点都有一层配置
- LLM 节点:每个节点独立选模型、独立调参数(温度、最大输出等),提示词模板可引用任意上游变量,支持结构化输出、视觉输入、会话记忆。
- 知识检索节点:可挂多个知识库,检索模式、返回条数、相似度阈值、重排模型逐项可配。
- 问题分类器 / 参数提取器:分类类别和抽取字段完全由你定义,抽取方式可选函数调用或提示词驱动。
这一层覆盖了八成日常需求,特点是"改配置不改逻辑"。
L2 逻辑级:两个万能逃生门
Code 节点(Python 3.10+ 或 Node.js 18+)负责任意数据变换。一个真实可用的例子——对抓取结果做归一化去重: