代码执行节点
代码执行节点
【代码执行】节点用于在 AI Center 的工作流或对话流智能体中运行自定义逻辑。
你可以在其中编写 Python 或 Node.js 脚本,对输入变量进行计算、格式化、拼接、转换等操作,从而扩展系统内置节点的能力。
该节点常用于结构化数据处理、数学计算、自定义业务逻辑等复杂场景。

使用场景
1. 结构化数据处理
当 API、HTTP 请求或知识检索节点返回嵌套结构数据时,可用代码节点提取或转换字段。
例如,从 HTTP 节点返回的 JSON 数据中提取 data.name 字段:
def main(http_response: str) -> dict:
import json
data = json.loads(http_response)
return {
"result": data["data"]["name"]
}输出结果会自动写入 result 变量。
2. 数学计算
在需要执行复杂数学计算或统计分析时,可通过代码节点进行运算。 例如,计算一个数组的方差:
def main(x: list) -> dict:
mean = sum(x) / len(x)
return {
"result": sum([(i - mean) ** 2 for i in x]) / len(x)
}3. 拼接与整合数据
当需要将多个数据源(如不同知识库检索结果、API 返回值等)进行合并时,可使用代码节点:
def main(knowledge1: list, knowledge2: list) -> dict:
return {
"result": knowledge1 + knowledge2
}输入与输出
- 输入变量:在节点配置页中手动选择前置节点输出的变量,这些变量将传入代码函数参数中;
- 输出变量:代码执行完成后返回字典结构(
dict),其中键名为输出变量名称(如result)。
注意
输出变量必须在返回字典中声明,否则无法被后续节点引用。
执行环境与安全策略
为确保安全,AI Center 的代码执行节点运行在完全隔离的 沙箱环境 中。 沙箱机制限制了系统访问范围,防止执行危险操作:
- 禁止访问本地文件系统;
- 禁止执行系统命令(如
os.system、subprocess); - 禁止进行任意外部网络请求;
- 控制 CPU、内存、执行时间等资源占用。
该机制确保自定义脚本在安全、可控的范围内运行。
高级功能
1. 错误重试
当节点执行失败时,可自动重试以避免偶发性错误。
| 参数 | 说明 | 默认值 |
|---|---|---|
| 最大重试次数 | 可配置,最多 10 次 | 3 |
| 重试间隔 | 每次重试的间隔时间(毫秒) | 5000 |

2. 异常处理
若代码运行过程中出现异常(如语法错误、类型错误、除零错误等),可以启用「异常处理」功能:
- 在代码节点中开启 异常处理;
- 设置异常路径或错误分支节点;
- 当代码报错时,流程自动跳转到异常分支,避免流程中断。

总结
代码执行节点 是 AI Center 流程中的灵活扩展工具。 通过 Python 或 Node.js 脚本,你可以轻松实现:
- 自定义逻辑计算;
- 动态数据格式转换;
- 上下文信息拼接与增强;
- 智能体行为的差异化控制。
它为企业级自动化流程提供了强大的可编程能力。
