一. 变量赋值
变量赋值节点是Dify工作流中的数据处理节点,用于将工作流内的临时变量写入到可写变量中(主要是会话变量),实现数据的跨轮次存储和复用。
在默认情况下,工作流里的数据是“线性流转”的:节点 A 传给节点 B,B 传给 C。但如果你遇到以下场景,就需要变量赋值了:
- 记录状态: 比如做一个对话机器人,你需要记录用户一共问了多少个问题。
- 累加信息: 比如在一个长文本摘要任务中,把每一段生成的摘要拼接到一起。
- 记忆更新: 在对话中更新用户的偏好(比如用户说“我不喜欢吃辣”,你需要把这个信息存入变量)。
| 变量类型 | 说明 | 应用场景 |
|---|---|---|
| 会话变量 | 整个对话会话期间保持有效 | 记录用户偏好、历史记忆 |
| 循环变量 | 在循环节点内部使用 | 迭代计数、累加结果 |
二. 参数详解

2.1 选择目标变量
你需要先在工作流的最左侧**“变量管理”**中定义好变量,然后在这里通过选择器找到它。
2.2 操作模式
这是决定“怎么记笔记”的关键:
- 覆盖: 不管原来是什么,直接把新值填进去。
- 清空:将变量内容置空。
- 设置:手动指定固定值,无需源变量
- +,-,*,/: 仅针对数字,对原值进行加减乘除
2.3 赋值内容
这里是你想要存入的值,根据你选择的模式填写。
三. 实例:制作一个“复读计数器”
我们来动手模拟一个简单的场景:每次用户说话,我们都记录这是第几次对话。
3.1 定义变量
在工作流面板左侧的 “变量 (Variables)” 栏目中,点击添加:
- 变量名:
chat_count - 类型: Number (数字)
- 作用域: Conversation (会话变量)
3.2 添加赋值节点
在工作流中插入“变量赋值”节点:
- 选择变量:
conversation.chat_count - 操作模式: 选择
+(自增) - 值: 输入
1
3.3 引用变量
在最后的“回复”节点中,你可以写:
“这是你今天跟我说的第 {{#conversation.chat_count#}} 句话!”
四. 注意事项
- 数据类型匹配: 如果你定义的变量是“数字”,却尝试把一段“文本”赋给它,节点会报错。
- 只读 vs 可写: 只有你手动定义的“变量”是可以被赋值的。系统自带的变量(如
sys.query)是只读的,不能更改。 - 节点顺序: 赋值节点一定要放在你想要引用该变量的节点之前。
变量赋值节点让你的 AI 拥有了“记忆”和“逻辑处理”的能力。它不再只是一个复读机,而是一个能根据历史数据做出不同反应的智能体。
© 文章版权归白小菌所有,🫰欢迎转发分享。未经允许请勿抄袭转载。








