java.lang.RuntimeException: Image generation still pending

📅 发布时间:2026/7/5 4:12:08 👁️ 浏览次数:
java.lang.RuntimeException: Image generation still pending
一、问题描述1、异常信息java.lang.RuntimeException: Image generation still pending at com.alibaba.cloud.ai.dashscope.image.DashScopeImageModel.lambda$call$1(DashScopeImageModel.java:165)~[spring-ai-alibaba-core-1.0.0.2.jar:1.0.0.2]at org.springframework.retry.support.RetryTemplate.doExecute(RetryTemplate.java:357)~[spring-retry-2.0.12.jar:na]at org.springframework.retry.support.RetryTemplate.execute(RetryTemplate.java:246)~[spring-retry-2.0.12.jar:na]at com.alibaba.cloud.ai.dashscope.image.DashScopeImageModel.lambda$call$3(DashScopeImageModel.java:149)~[spring-ai-alibaba-core-1.0.0.2.jar:1.0.0.2]at io.micrometer.observation.Observation.observe(Observation.java:564)~[micrometer-observation-1.15.3.jar:1.15.3]at com.alibaba.cloud.ai.dashscope.image.DashScopeImageModel.call(DashScopeImageModel.java:147)~[spring-ai-alibaba-core-1.0.0.2.jar:1.0.0.2]at com.atguigu.study.controller.Text2ImageController.image(Text2ImageController.java:49)~[classes/:na]at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)~[na:na]二、解决办法这个java.lang.RuntimeException: Image generation still pending错误通常出现在使用Spring AI Alibaba调用阿里云的文生图Image Generation服务时。这并不是代码本身的逻辑错误而是服务端处理状态的一种反馈。简单来说你的请求已经成功发送到阿里云但图片生成任务过于复杂或排队人数较多服务端在规定的时间内没有完成处理因此返回了“仍在处理中”的状态。以下是导致此问题的常见原因及解决方案1. 核心原因同步调用超时Spring AI 默认使用的是同步调用模式。这意味着你的 Java 程序会一直阻塞等待直到服务端返回结果或超时。现象如果图片生成时间超过了 Spring AI 客户端设置的读取超时时间Read Timeout客户端就会抛出异常提示任务仍在等待pending。解决方案增加超时时间在配置文件application.yml或application.properties中增加 HTTP 客户端的超时设置给服务端更多的时间来处理。spring:ai:dashscope:# 增加连接超时和读取超时单位毫秒例如设置为 60 秒connect-timeout:60000read-timeout:60000改用异步调用如果使用的是支持异步的版本可以使用ImageModel.callAsync()方法避免阻塞主线程。2. 模型负载或网络波动原因阿里云的免费或共享模型资源如wanx-v1系列在高峰期可能存在排队现象。此外如果网络不稳定数据传输慢也会导致看似“挂起”的状态。解决方案重试机制在代码中加入重试逻辑例如使用 Spring Retry当捕获到此异常时自动重试几次。检查网络确保你的服务器或本地环境可以顺畅访问阿里云的服务dashscope.aliyuncs.com。3. 请求参数复杂度过高原因如果你请求的图片分辨率极高如 1024x1024 或更高或者提示词Prompt非常复杂模型推理时间会显著增加容易触发超时。解决方案尝试降低图片分辨率如先试用 512x512。简化提示词看是否能快速出图。4. 版本兼容性问题原因你使用的 Spring AI Alibaba 版本可能对视频或图像生成任务的处理逻辑尚不完善特别是早期的 SNAPSHOT 版本。解决方案检查你的pom.xml或build.gradle尝试升级到最新的稳定版本。参考官方示例代码确认配置方式是否正确例如是否正确配置了DashScopeImageOptions。 建议的排查步骤先测通断写一个最简单的“你好”文字生成图片的请求看是否还会报错。如果简单请求正常复杂请求报错那就是超时问题。调整配置优先在配置文件中增加read-timeout的时间。查看文档确认你使用的模型Model是否支持同步快速返回或者是否必须使用异步任务模式。