跳转到内容
返回主页

轮询状态

图片、视频等多模态生成通常需要一定执行时间,创建任务接口只负责创建异步任务,最终状态和结果需要通过轮询获取。

状态查询可以直接使用创建任务响应中的 status_url,也可以通过 BASE_URLendpointrequest_id 拼接请求路径。

Terminal window
curl -sS "${STATUS_URL}" \
"${COMMON_HEADERS[@]}"

状态查询响应用于确认任务是否仍需等待,并为后续获取结果或处理错误提供判断依据。

status说明下一步建议
IN_QUEUE任务已提交,等待执行继续轮询
IN_PROGRESS任务执行中继续轮询
COMPLETED任务已进入终态检查是否存在 error,成功后获取结果
{
"status": "IN_QUEUE",
"request_id": "mmsu_01hxyz...",
"queue_position": 0,
"response_url": "https://.../response"
}
{
"status": "IN_PROGRESS",
"request_id": "mmsu_01hxyz...",
"response_url": "https://.../response"
}

COMPLETED 只表示任务进入终态,响应可能对应任务成功或任务失败两种情况,是否成功要看是否存在 error 字段,以下为响应示例:

{
"status": "COMPLETED",
"request_id": "mmsu_01hxyz...",
"response_url": "https://.../response",
"metrics": {
"inference_time": 12.34
}
}

常见 error_type

error_type含义
INFERENCE_FAILURE模型执行失败
INFERENCE_TIMEOUT模型执行超时
REQUEST_INVALID请求参数无效或不符合模型要求
CONTENT_BLOCKED输入或输出内容被安全策略拦截
CANCELED任务已取消
INTERNAL_SERVER_ERROR服务内部错误