[智能体-458]:Coze中的变量,包括节点变量与传统编程的变量的对应关系
2026/6/19 19:03:47 网站建设 项目流程

一、Coze 全类型变量分类(结合架构图)

Coze 里的变量分为5 大类,覆盖流程内临时数据、会话持久数据、全局共享数据、存储层持久数据:

  1. 节点局部变量(单节点内临时变量)
  2. 流程链路变量(节点间传递、循环迭代项)
  3. 共享全局变量(全工作流生命周期公共变量)
  4. 上行文(会话记忆变量,对话上下文持久)
  5. 持久存储变量(RAG 知识库 / 关系数据库 / 文件系统)

二、分类型:Coze 变量 ↔ 传统编程变量一一映射

1. 节点局部变量(代码节点内自定义变量)

Coze 定义

仅在「代码节点」Python 脚本定义,生命周期仅限当前代码块执行完毕,外部节点无法直接读取;

python

运行

# Coze代码节点内部 name = "测试文本" # 节点局部变量 num = 100
传统编程对应

函数内部局部变量(local variable

python

运行

def run(): name = "测试文本" # 函数局部变量,函数执行完销毁
生命周期

代码节点执行完成即销毁,仅当前脚本可用。

2. 流程链路变量(最常用:节点输出、循环项、输入参数)

包含三类子变量:

  • 输入节点入参:流程入口参数
  • 普通节点输出变量:大模型、插件、数据库、IF 选择器输出结果
  • 循环迭代变量:循环内当前项item、下标index、循环结果数组
Coze 特性
  • 作用域:整条工作流可见,上下游节点可互相引用;
  • 传递方式:节点连线自动透传,可视化拖拽绑定;
  • 循环迭代项:每次循环自动生成临时 item,一轮结束刷新。
传统编程对应
  1. 输入节点参数 = 函数形参(入参)

    python

    运行

    def workflow(user_input): # user_input 对应输入节点变量
  2. 普通节点输出 = 函数返回值、中间临时全局变量

    python

    运行

    llm_result = llm_call(user_input) # llm_result 对应大模型输出变量
  3. 循环 item = for 循环迭代变量

    python

    运行

    for item in data_list: # item 等价Coze循环内部当前项变量
生命周期

单次工作流执行周期内有效,流程结束自动销毁。

3. 共享全局变量(架构图底部:共享全局变量)

Coze 定义

整个工作流所有分支、所有节点、循环内外均可读写的公共变量,跨分支共享数据; 无需节点连线,直接全局读取 / 覆写。

传统编程对应

模块级全局变量global var

python

运行

# 全局变量,所有函数均可访问 global total_count total_count = 0 def add(): global total_count total_count += 1
生命周期

单次工作流执行全程有效,流程结束清空。

4. 上行文(会话记忆变量,架构图底部:上行文)

Coze 定义

会话级持久变量,多轮对话自动保存历史问答、关键上下文; 属于跨流程调用持久变量,同用户同会话多次调用工作流均可读取; 支持自动摘要压缩,控制 Token 消耗。

传统编程对应

会话缓存(Redis 会话存储 / Session 对象)

  • Web 开发HttpSession
  • 后端对话服务:Redis 存储 user_id 绑定的对话历史

python

运行

# 后端会话存储示例 session_key = f"chat_{user_id}" # 读取历史对话 history = redis.get(session_key) # 更新对话 redis.set(session_key, new_history, expire=3600)
生命周期

用户会话有效期内持久保存,不受单次工作流执行结束影响。

5. 持久层存储变量(RAG 知识库 / 关系数据库 / 文件系统)

Coze 定义

永久落盘存储,独立于工作流会话,可跨用户、跨工作流读写;

  • 关系数据库:结构化字段变量(表单、对话记录)
  • RAG 知识库:向量化文本片段(文档知识)
  • 文件系统:媒体二进制资源(图片 / 视频链接)
传统编程对应

数据库表、文件、向量库持久化存储

python

运行

# 关系数据库存储 sql = "INSERT INTO chat_log(user, content) VALUES (?, ?)" db.execute(sql, user, content) # 向量知识库存储 vector_db.add(text, embedding)
生命周期

永久持久,手动删除才会销毁。


三、Coze 「节点变量」细分详解(你提问重点)

1. 普通节点输出变量(所有功能节点通用)

每一个拖拽节点执行完成后,都会生成专属输出变量:

  • 大模型节点:content大模型回答、token消耗、结构化 json
  • 插件(视频生成):video_url、封面图、任务状态
  • IF 选择器:分支匹配标记、分支内输出数据
  • 数据库查询:多行数据数组、单条记录对象
  • 变量聚合:整合后的统一结构体变量

对应传统代码:每个独立函数的 return 返回值。

python

运行

def call_llm(prompt): return {"content": "回答文本", "token": 120} llm_out = call_llm(prompt) # llm_out = Coze大模型节点输出变量

2. 循环节点内置专属变量

循环内部自动生成 3 个内置变量,仅循环子流程内可见:

  1. item:当前遍历数组的单条元素
  2. index:当前循环下标(从 0 开始)
  3. loop_result:已完成轮次的结果数组,用于累加汇总对应传统代码:for 循环内置迭代变量

python

运行

data = ["A","B","C"] loop_result = [] for index, item in enumerate(data): res = sub_func(item) loop_result.append(res)

3. 代码节点局部变量

仅 Python 脚本内可用,无法直接给外部节点使用,需要通过「代码节点输出字段」中转暴露给流程。

python

运行

# 代码内部局部变量 temp_text = "临时数据" # 输出到流程全局链路变量,供下游读取 return {"output_text": temp_text}

对应传统代码:函数内局部变量,return 后外部才能获取。


四、核心对照表(一站式汇总)

表格

Coze 变量类型作用域 & 生命周期传统编程等价概念
代码节点内部局部变量仅当前代码块,执行完销毁函数内局部变量 local
节点输出变量(大模型 / 插件 / 数据库等)整条工作流单次执行有效函数返回值、中间临时变量
循环内置 item/index 变量仅循环子流程内,单轮刷新for 循环迭代变量
输入节点入参变量整条工作流全局可见函数入参 args/params
共享全局变量全工作流所有分支共享,单次流程生命周期模块全局 global 变量
上行文(会话记忆)同用户会话跨多次工作流调用持久Web Session / Redis 会话缓存
数据库 / 知识库持久数据永久落盘,跨会话、跨工作流MySQL / 向量库持久存储数据

五、关键差异补充(低代码变量 vs 传统代码变量)

  1. 可视化绑定替代代码赋值传统编程:var_a = func_return()文本赋值; Coze:可视化下拉选择上游节点输出,自动完成变量引用,无需手写赋值语句。
  2. 变量类型自动识别Coze 自动区分文本、数字、数组、对象、媒体链接,无需手动声明类型;传统静态语言需要定义变量类型。
  3. 分层存储自动封装传统开发需要手动写 Redis、数据库、向量库读写逻辑;Coze 通过专用节点读写持久变量,屏蔽底层存储 SDK。
  4. 会话变量原生内置传统程序需要自行实现会话缓存Coze 上行文记忆是平台原生能力,自动维护多轮上下文变量。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询