错误类型
Dify的代码执行模块的输出类型校验比较严格,诸如List[List]等格式会被判定为非法格式。例如:
def main() :
return {
"result": [[1]]
}
报错:
Output result[0] is not an object, got <class 'list'> instead at index 0.
解决方法
选择输出类型为str,把输出变量转为字符串,后续再进行处理即可。
def main() :
return {
"result": str([[1]])
}
此外,Failed to parse response错误可能也是Dify沙盒环境对输出格式的限制导致的,一样可以用这个方法解决。