在EC2实例通过Ollama调用Qwen 2.5 7B时随机挂起67分钟的问题排查
Qwen 2.5 7B 批量调用时随机挂起67分钟的问题
核心场景与异常信息
- 部署环境:EC2 C7i.8Xlarge实例,通过Ollama调用Qwen 2.5 7B模型
- 任务类型:遍历DataFrame生成批量提示词调用模型,单次调用耗时通常20秒左右(最快6秒,最慢57秒)
- 异常表现:随机出现任务挂起整整67分钟(4020秒),挂起的任务不固定,对应提示词长度偏长但远低于token上限
- 超时验证:
- 代码中已配置Ollama客户端超时:
llm = Ollama( model = "qwen2.5:latest", temperature = 0.3, timeout = 59 ) - 测试10秒超时设置时,约2/3批次能正常触发超时,说明客户端超时功能有效;但59秒超时无法阻止67分钟的挂起
- 相同代码、同一份500+行数据调用Mistral 7B、Llama3.1 8B、Llama3.2 3B均无异常
- 代码中已配置Ollama客户端超时:
临时解决方案
通过signal为模型调用函数设置独立超时,批量任务可正常运行。
可能原因推测
- Ollama服务端针对Qwen模型存在隐藏的高阈值默认超时:4020秒接近4000秒级阈值,可能服务端未遵循客户端设置的超时参数,在特定请求场景下触发了服务端层面的长超时等待
- Qwen 2.5 7B的Ollama适配层存在偶发阻塞/死锁:模型处理某些特定结构的提示词时,出现计算阻塞,但客户端超时仅检测网络请求层面,未覆盖模型内部计算阻塞的场景
- EC2实例底层资源偶发争抢:C7i实例基于Intel Xeon Scalable处理器,批量调用时可能遭遇CPU/内存瞬时资源瓶颈,导致模型进程被系统挂起,直到资源释放才恢复执行
内容的提问来源于stack exchange,提问作者29Clyde
相关产品推荐
相关产品推荐

