社区版Dify【代码执行 模型】Run failed: error: timeout
一、Dify sandox 代码执行时长限制
这个问题很简单,一开始我不知道是 什么原因,我写了一个API请求,时长 太长了,这里就开始报错:
神奇的是每次报错都是在执行的第15S 左右,
于是,我写了一个time.sleep 的代码:
在 Dify 代码执行模块上运行,就是延时了20S:
import time
def main(arg1: str, arg2: str) -> dict:
time.sleep(20)
return {
"result": arg1 + arg2,
}
果然:
二、解决方法
找Dify 的docker-compose.yaml 和.env,果然发现了问题:
在.env:
既然找到问题,就很好解决了:
修改.env 中的 为其他数值,重启 :
vi .env
SANDBOX_WORKER_TIMEOUT=100
:wq
重启:
sudo docker-compose down
sudo docker-compose up -d
即可解决。
如果你的代码执行期间超过60秒,还可能会报错:
请看你的错误是不是在60S左右报错的!!!
Run failed: Failed to execute code which is likely a network issue, please check if the sandbox service
这是因为.env 文件里面还有一个地方规定了代码执行的最大时长:
打开.env
CODE_EXCECUTION_READ_TIMEOUT=60
把这个数值改大然后重启就行:
三、Dify 安装和专栏的以往文章推荐
- Dify安装时会遇到的网络问题,已成功安装Dify教程
- Dify 部署LLM 可以参考这里,Dify实现Ollama3.2-vision多模态聊天
- 并且欢迎关注我的 社区版 Dify 开发专栏