在使用本地模型的时候,经常调用出现超时。我就多了几次测试:
结论: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本地模型

Logo

小龙虾开发者社区是 CSDN 旗下专注 OpenClaw 生态的官方阵地,聚焦技能开发、插件实践与部署教程,为开发者提供可直接落地的方案、工具与交流平台,助力高效构建与落地 AI 应用

更多推荐