Dify: The length of output variable result must be below 30 elements.
你遇到的错误信息:

根本原因
这个错误来自 Code 节点(代码执行节点)的输出数组长度验证。当 Workflow 中的 Code 节点(Python/JS 代码)返回了一个超过 30 个元素的数组时,就会被拦截。
验证链路
| 步骤 | 位置 | 说明 |
|---|---|---|
| 配置定义 | api/configs/feature/__init__.py:173-183 | CODE_MAX_STRING_ARRAY_LENGTH=30, CODE_MAX_OBJECT_ARRAY_LENGTH=30 |
| 环境变量默认值 | api/.env.example:515-517 | 同上 |
| 读取并传递限制 | api/core/workflow/node_factory.py:304-312 | 构造 CodeNodeLimits 传给 graphon 包 |
| 抛出错误 | graphon 外部包 (graphon==0.5.3) 的 code_node.py | 在 _transform_array_string_output() / _normalize_output_object_array() 中验证,超限则抛出 OutputValidationError |
具体原因
招投标文档-单文件处理 工具内部(很可能是一个 Workflow as a Tool 或包含 Code 节点的工作流),其中的 Code 节点 输出变量 result 是一个数组(字符串数组或对象数组),其元素数量 >= 30,触发了验证。
解决方案
有两种方式:
方案一:增大限制(推荐,如果确实需要更多元素)
在 api/.env 或环境变量中设置:
复制代码CODE_MAX_STRING_ARRAY_LENGTH=100
CODE_MAX_OBJECT_ARRAY_LENGTH=100
方案二:修改 Code 节点的输出逻辑
检查 招投标文档-单文件处理 这个 Workflow 中的 Code 节点,确保其 result 输出的数组元素不超过 30 个,或对输出做分页/分批处理。
注意
- 这个限制只作用于 Code 代码节点,不是工具节点本身的限制
- 如果输出是对象数组就用
CODE_MAX_OBJECT_ARRAY_LENGTH,字符串数组就用CODE_MAX_STRING_ARRAY_LENGTH - 数字数组的限制是 1000,一般不会触发
-
07.17
明日方舟沉沦者黑流树海 明日方舟沉沦者活动关卡黑流树海全攻略
-
07.17
龙之谷启程地狱副本通关指南 龙之谷启程高难度副本打法解析
-
07.17
崩坏因缘精灵娜娜巫强度解析 崩坏因缘娜娜巫角色培养与实战表现
-
07.17
九洲傲天录冲榜攻略 九洲傲天录高效冲榜顺序及实战技巧
-
07.17
点点英雄兑换码大全 点点英雄最新有效兑换码汇总
-
07.17
决斗学院开服时间表|决斗学院最新开服日期及详细安排解析
推荐专题
热门阅读
-
-
下载
- |
-
-
下载
- 《行尸走肉第一章》免安装中文汉化硬盘版下载
- 单机|436 MB
- 一款以动作冒险为主题的游戏
-
-
下载
- 《街头霸王X铁拳》免安装中文汉化硬盘版下载
- 单机|111MB
- 一款非常好玩的格斗游戏
-
-
下载
- |
-
-
下载
- 《暗黑破坏神3》免安装繁体中文正式版下载
- 单机|7630 MB
- 一款以角色扮演为主题的游戏
-
-
下载
- 《马克思佩恩3》免安装硬盘版下载
- 单机|27033 MB
- 一款以第三人称射击为主题的游戏