切换导航
首页
服务项目
知识付费
COZE扣子实操教学
京东外卖基础运营
美团私人影院基础运营
美团闪购基础运营
美团医美高级运营
口腔电商运营
生美电商运营
医美电商运营
联络我
会员中心
登录
注册
COZE能帮助你实现什么?
COZE扣子token费用
COZE扣子平台架构
手把手教COZE搭建案例
在COZE搭建一个 AI 翻译应用
通过模板搭建智能体
COZE 智能体
搭建COZE扣子 助手智能体
智能体基础设置 - 多 Agent 模式
智能体基础设置 - 对话流模式
智能体基础设置 - 设置模型
智能体基础设置 - 提示词
智能体添加 - 插件
智能体添加 - 工作流
智能体添加 - 触发器
智能体添加 - 卡片样式
智能体添加 - 知识
智能体添加 - 记忆
记忆 - 数据库
记忆 - 长期记忆
记忆 - 文件盒子
智能体 - 提升对话体验
对话体验 - 快捷指令
对话体验 - 声纹识别
对话体验 - 音视频通话
COZE 工作流
工作流 与 对话流
工作流使用限制
工作流常见问题
使用工作流
基础节点 - 开始和结束节点
基础节点 - 大模型节点
基础节点 - 插件节点
基础节点 - 工作流节点
业务逻辑节点 - 代码节点
业务逻辑节点 - 选择器节点
业务逻辑节点 - 意图识别节点
业务逻辑节点 - 循环节点
业务逻辑节点 - 批处理节点
业务逻辑节点 - 变量聚合节点
工作流 - 输入节点
工作流 - 输出节点
工作流数据库节点 - SQL 自定义节点
工作流数据库节点 - 新增数据节点
工作流数据库节点 - 查询数据节点
工作流数据库节点 - 更新数据节点
工作流数据库节点 - 删除数据节点
知识和数据节点 - 变量赋值节点
知识和数据节点 - 知识库写入节点
知识和数据节点 - 知识库检索节点
知识和数据节点 - 长期记忆节点
图像处理节点 - 图像生成节点
图像处理节点 - 画板节点
图像处理插件节点
音视频处理节点 - 视频生成节点
音视频处理节点 - 视频提取音频节点
音视频处理节点 - 视频抽帧节点
组件节点 - HTTP 请求节点
组件节点 - 文本处理节点
组件节点 - 问答节点
组件节点 - JSON 反序列化节点
组件节点 - JSON 序列化节点
触发器节点 - 设置定时触发器
删除定时触发器节点
查询定时触发器节点
会话管理节点 - 创建会话节点
修改会话节点
删除会话节点
查看会话列表节点
会话历史节点 - 查询会话历史节点
清空会话历史节点
消息节点 - 创建消息节点
修改消息节点
删除消息节点
查询消息列表节点
管理工作流版本
封装与解散工作流
插件
搜索结果
没有相关内容~~
业务逻辑节点 - 代码节点
最新修改于
2025-08-03 15:33
代码节点支持通过编写代码来生成返回值。扣子支持在代码节点内使用 IDE 工具,通过 AI 自动生成代码或编写自定义代码逻辑,来处理输入参数并返回响应结果。 ## 配置代码节点 ### 基础配置 代码节点的配置参数说明如下: | **配置** | **说明** | | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | **输入** | 声明代码中需要使用的变量。添加输入参数时需要设置参数名和变量值,其中变量值支持设置为固定值或引用上游节点的输出参数。在代码中引用输入参数时,直接通过 params['input'] 取值即可。 | | **代码**: | 代码节点中需要执行的代码片段。你可以直接编写代码,也可以通过 AI 自动生成代码。* 引用变量:直接使用输入参数中的变量,通过return一个对象来输出处理结果。* 函数限制:不支持编写多个函数。即使仅有一个输出值,也务必保持以对象的形式返回。支持 JavaScript 和 Python 两种语言。详细说明可参考[开发语言](https://www.coze.cn/open/docs/guides/code_node#79fb9b0d)。 | | **输出** | 代码运行成功后,输出的参数。你可以根据实际需求,在输出结构中只保留必要的参数。当节点的异常处理方式设置为返回设定内容或执行异常流程时,同时返回isSuccess、errorBody参数,用于在节点执行异常时传递详细信息。确保此处定义的参数名、类型与代码的**return**对象完全一致。以代码节点默认提供的代码为例,输出的参数与代码中定义的**return **对象完全一致。 | * 节点执行超时:单请求限制 60s。 * 暂不支持 HTTP/HTTPS 以外的其他协议。 * 每个工作流中最多添加 50 个代码节点。 ### 异常设置 ## 示例 ## 开发语言 代码节点支持 JavaScript 和 Python 两种语言。 ### JavaScript 支持 V8 引擎的 11.3.244.8 版本(对应 Node.js 20.3.1 版本),并兼容 ECMAScript 2022 语法。 代码 IDE 支持 TypeScript,提供静态语言的编码体验。 在 JavaScript 中,仅内置了两个三方依赖库: * dayjs(版本 1.8.36) * lodash(版本 4.17.20) 。 JavaScript 运行时遵循 [WinterCG](https://wintercg.org/) 规范,并支持一系列 Web API,包括: * atob()、btoa()、console、setTimeout()、clearTimeout()、structuredClone()、URL、URLSearchParams、AbortController、AbortSignal、TextEncoder、TextDecoder * WebStreams * WebCrypto(算法仅支持 AES、HMAC、SHA) JavaScript 的三方依赖库示例代码如下: ```JavaScript //only dayjs and lodash are allowed import dayjs from 'dayjs'; import _ from 'lodash'; async function main({ params }: Args): Promise { // get input params by this way return { content: params.name }; } ``` ### Python 基于 Python 3.11.3 的标准库,大多数模块都能正常运行。不支持的模块包括 curses、dbm、ensurepip、fcntl、grp、idlelib、lib2to3、msvcrt、pwd、resource、syslog、termios、tkinter、turtle.py、turtledemo、venv、winreg、winsound、multiprocessing*、*threading*、*sockets*、*pty 和 tty*。* 在 Python 环境中,仅内置了两个第三方依赖库:requests\_async 和 numpy。其中,requests\_async 与 requests 类似,但在使用时需要搭配 await。 * Python 运行时暂不支持 Http.client 方式的请求。 * 不支持使用除 requests\_async 、numpy 以外的第三方依赖库。 * time.sleep() 方法由于是阻塞调用,会对代码执行性能产生影响,因此推荐使用异步版本的 asyncio.sleep() 来替代。 示例如下: ```Python import requests_async as requests async def main(args: Args) -> Output: # you can get url by this way url = args.params['url'] response = await requests.get(url) ret = { 'code': response.status_code, 'res': response.text, } return ret ``` ## 使用代码 IDE 编写代码 扣子提供了网页版代码 IDE 环境供你使用,无需考虑代码部署等问题,只要关注代码逻辑即可。代码 IDE 还提供了 AI 插件,辅助你生成代码。 在节点内的**代码**区域单击在IDE中编辑可通过代码 IDE 编辑和调试代码。  常用操作说明如下: | **操作** | **说明** | | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | 使用 AI 生成代码 | 你可以在 IDE 底部单击**尝试 AI**,并输入自然语言设定代码逻辑,AI 将自动生成代码。你也可以选中代码片段,通过快捷键(macOS 为Command + I、Windows 为Ctrl + I)唤起 AI,并输入自然语言让 AI 帮助你修改代码。 | | 补全代码 | 如果你已经为代码节点配置好了输入参数,编辑时支持自动补全参数。 | ## 试运行代码节点 试运行代码节点时,填写输入参数,并单击**运行**。平台会自动执行代码片段,并展示运行结果。运行结果中包括输入参数和输出内容,其中输出内容由原始输出和最终输出组成。 * **原始输出**:代码执行的真实输出结果,包含代码中定义的所有输出参数。你也可以单击 Sync output to Node,将原始输出的参数结构同步到代码节点。 * **最终输出**:按照代码节点中指定的**输出**参数结构生成的输出结果。  ## 常见问题 ### 可以在代码节点中引入依赖包吗? 代码节点仅支持引用以下第三方依赖,引入其他依赖的语句不生效。 * JavaScript:dayjs、lodash * Python:requests\_async 、numpy ### 为什么代码节点输出了 tako\_bot\_userhistory? 如果在代码节点中通过函数遍历所有变量,可能会识别到部分系统变量,例如系统变量 tako\_bot\_userhistory,导致代码节点运行报错。如果需要在代码中使用代码节点定义的输入变量,直接通过 params['input'] 取值即可,无需通过函数遍历。 tako\_bot\_userhistory 为 String 格式,表示会话中的上下文消息,例如 TAKO\_BOT\_HISTORY :[{"content":"早上好","name":"小张","role":"user"}]。此系统变量即将下线,如需获取会话中的上下文消息,推荐使用[查询消息列表节点](https://www.coze.cn/open/docs/guides/query_message_list)节点。 ### 代码节点中如何使用 sleep 函数? 代码节点中,推荐使用 Python 标准库的 asyncio.sleep 函数,time.sleep 函数会阻塞工作流执行、导致触发限流。 asyncio.sleep 函数在异步编程中挂起当前任务、实现非阻塞的延迟,最长可延迟 1 分钟。此函数常用于需要在异步操作之间添加延迟的场景,例如在异步的数据处理中控制处理速率。目前工作流暂不支持异步插件节点,如果下游节点需要使用异步插件的执行结果,可以通过循环节点实现异步等待和结果轮询,其中异步等待由代码节点的 asyncio.sleep 函数实现。 例如以下示例代码表示等待 30 秒:  ### 如何用 AI 生成代码? 在 IDE 底部单击**尝试 AI**,并输入自然语言设定代码逻辑,AI 将自动生成代码。你也可以选中代码片段,通过快捷键(macOS 为 Command + I、Windows 为 Ctrl + I)唤起 AI,并输入自然语言让 AI 帮助你修改代码。  常见的 AI 生成代码的场景包括: import re async def main(args: Args) -> Output: input\_str = args.params['input'] # 使用正则表达式匹配 result = re.sub(r'[\\u4e00-\\u9fff。]+(\\s+)', '', input\_str) return {'key0': result}
请输入访问密码
开始访问