OpenClaw使用本地Ollama模型时,timeoutSeconds配置要求
在使用本地模型的时候,经常调用出现超时。我就多了几次测试:,单位是秒,配为1800时,就是30分钟。后台日志报的durationMs代表毫秒,即1/1000秒。为了更好的使用Ollama本地模型,减少超时,建议将超时时间改大写,我是设置为1800,即30分钟。当我改为1800之后,还时有很多超时,是因为有些Agent没有刷新配置,即使重启Gateway,也不会刷新,必须要新建Session,会通过
在使用本地模型的时候,经常调用出现超时。我就多了几次测试:
结论:agent.defaults.timeoutSeconds,单位是秒,配为1800时,就是30分钟。
后台日志报的durationMs代表毫秒,即1/1000秒。
为了更好的使用Ollama本地模型,减少超时,建议将超时时间改大写,我是设置为1800,即30分钟。
当我改为1800之后,还时有很多超时,是因为有些Agent没有刷新配置,即使重启Gateway,也不会刷新,必须要新建Session,会通过对话让它刷新。
分析过程
一开始,我以为agent.defaults.timeoutSeconds是秒,所以1800秒,就是30分钟。但是看到后台报错如下,对应的durationMs=180090,应该是3分钟就超时了。让我很困惑。并让我一度怀疑openclaw.json里面的单位。
07:19:21 error diagnostic {"subsystem":"diagnostic"} lane task error: lane=session:agent:cogito-planner:subagent:47c10284-4c3c-4701-b6bc-beefcf2619c9 durationMs=180090 error="FailoverError: Request was aborted"
验证过程
为了验证,创建一个Agent,它只能用Ollama模型。并与它对话,发超长的文字内容给它。并不断调整超时的配置。
提示词:
我有个文件,在/mnt/d/workspace/README_zh.md,把这个文档翻译成英文。并生成新的文件README_en.md
或
将下面的内容,翻译为英文,不要触发其他Skill,直接翻译(给它一大段内容):
当配置agent.defaults.timeoutSeconds=100时,后台提示,跟我的Agent名称对应,超时时间是100秒。
09:58:52 error diagnostic {"subsystem":"diagnostic"} lane task error: lane=session:agent:oloa:main durationMs=100115 error="FailoverError: Request was aborted."
我还发现Session可能会有缓存,即timeoutSeconds,可能会缓存起来,必须要重启Gateway,再创建新的会话。
当配置为agent.defaults.timeoutSeconds=50时,重启Gateway,并新建会话,后台有如下报错,说明配置生效了:
10:58:38 error diagnostic {"subsystem":"diagnostic"} lane task error: lane=session:agent:oloa:main durationMs=51404 error="FailoverError: Request was aborted."
关键词:lane task error,timeoutSeconds,durationMs,Ollama本地模型
更多推荐

所有评论(0)