Skip to content

Qwen-Image 千问图片生成

星算云千问图片网关提供 qwen-image-3.0 / qwen-image-3.0-pro 图片生成与编辑模型(阿里云百炼 DashScope)——文生图(T2I)与图生图(I2I)走同一接口,支持中英文提示词、智能改写与多图输出,适用于设计素材、营销配图、图像编辑等场景。

请求/响应原样透传 DashScope 官方接口(路径、字段名、错误结构 1:1 一致),平台仅做鉴权、模型校验、计费与落账。端点路径与 DashScope 官方完全相同,官方 SDK / 示例代码只改两处即可接入:

  • 地址 base_http_api_url = https://xingsuan.cloud(SDK 直接指平台域名即可;HTTP 直调用下方完整接入地址)
  • 鉴权 Authorization: Bearer xsk_...(平台 API Key,xsk_ 开头)

即:把下文示例里的 DashScope 地址 / DASHSCOPE_API_KEY 换成平台地址 / 平台 API Key 即可,请求体协议不变(model 填平台 model_code)。

基础信息

项目内容
接入地址POST https://xingsuan.cloud/api/v1/services/aigc/multimodal-generation/generation(与 DashScope 官方路径完全一致)
协议HTTP 同步(一次请求返回整包结果;无任务轮询、无流式)
鉴权Authorization: Bearer xsk_...
模型qwen-image-3.0qwen-image-3.0-pro(model_code 以控制台模型列表为准)
调用模式T2I(文生图)/ I2I(图生图,1-3 张参考图)同一端点
计费按张四档计费(输入/输出 × 1K/2K),成功响应返回前一次性结算
输出格式png,图片 URL 24 小时有效

API Key 安全

只在服务端保存 API Key,不要在浏览器 / 客户端代码中明文嵌入。

概述

  • 文生图 + 图生图同接口input.messages[].content[] 里只放 {text} 即文生图;加入 1-3 个 {image} 项即图生图(编辑 / 改写 / 融合参考图)
  • 支持中英文提示词;prompt_extend 提示词智能改写默认开启(direct / agent 两种模式)
  • 输出尺寸 512×512 至 2048×2048,宽高比 1:8 至 8:1;size星号分隔写作 "1024*1024"
  • 单次最多生成 6 张(parameters.n),支持负向提示词 negative_prompt 与随机种子 seed
  • 生成图带水印开关 watermark(默认关闭)

工作原理

网关为同步调用:客户端发起一次 POST,平台完成鉴权与模型校验后,将请求体(仅重写 model 为上游模型名,其余字段原样)转发 DashScope,等待整包结果返回后原样透传给客户端,并在响应前按 usage 完成计费落账。无任务登记、无需轮询。

上游错误(参数不合法、内容安全拦截、限流等)以 HTTP 4xx/5xx + DashScope 错误体 {code, message, request_id} 原样透传,失败不计费

前提条件

  • 已在星算云控制台获取 API Key(xsk_ 开头)。
  • 已知悉计费口径:I2I 的每张参考图也计费(详见计费),高分辨率多图请求成本线性增长。

快速开始

curl(文生图)

bash
curl -X POST "https://xingsuan.cloud/api/v1/services/aigc/multimodal-generation/generation" \
  -H "Authorization: Bearer xsk_..." \
  -H "Content-Type: application/json" \
  -d '{
    "model": "qwen-image-3.0",
    "input": {
      "messages": [
        { "role": "user", "content": [{ "text": "一只戴墨镜的橘猫,像素风格,明快配色" }] }
      ]
    },
    "parameters": { "size": "1024*1024", "n": 1 }
  }'

Python(DashScope SDK)

DashScope 官方 SDK 设置 base_http_api_url 指向平台即可,模型名与 Key 换为平台的:

python
import os
import dashscope
from dashscope import MultiModalConversation

# 星算云平台:SDK 只改 base_http_api_url + api_key
dashscope.base_http_api_url = "https://xingsuan.cloud"
dashscope.api_key = os.environ["XINGSUAN_API_KEY"]

result = MultiModalConversation.call(
    model="qwen-image-3.0",  # 平台 model_code
    messages=[{
        "role": "user",
        "content": [{"text": "一只戴墨镜的橘猫,像素风格,明快配色"}],
    }],
    size="1024*1024",
    n=1,
)

# 输出结构与官方一致
image_url = result.output.choices[0].message.content[0]["image"]
print(image_url)
print(result.usage)  # 计费口径见下文「计费」
print(result.request_id)  # 幂等键(同 request_id 不重复计费)

图生图(I2I)

content 中在 {text} 之外加入 1-3 个 {image} 项(公网 URL)即图生图:

python
result = MultiModalConversation.call(
    model="qwen-image-3.0-pro",
    messages=[{
        "role": "user",
        "content": [
            {"image": "https://example.com/cat.png"},      # 参考图 1(每张计费)
            # {"image": "https://example.com/bg.png"},     # 参考图 2(可选,最多 3 张)
            {"text": "把背景换成雪山,保持猫的姿态"},
        ],
    }],
    size="2048*2048",
    n=1,
)

参考图也计费

I2I 模式下每张参考图按输入档位(INPUT_1K/2K)计费:3 张参考图 + n=4 输出 = 7 个计费基数。请按需控制参考图张数与输出张数。

请求参数

字段类型必填说明
modelstring平台 model_code,如 qwen-image-3.0
input.messages[]array有且只有一个 role:"user" 消息对象(上游约束)
input.messages[].content[]arrayT2I:仅一个 {text};I2I:1-3 个 {image} + 一个 {text}
parameters.prompt_extendboolean提示词智能改写,默认 true
parameters.prompt_extend_modestringdirect / agentagent 仅 T2I)
parameters.ninteger输出张数,1-6,默认 1
parameters.sizestring"宽*高"星号分隔(如 "1024*1024");缺省由模型自荐
parameters.negative_promptstring反向提示词
parameters.seedinteger随机种子,[0, 2147483647]
parameters.watermarkboolean结果图水印,默认 false

messages 结构、text 唯一性、n 范围、size 合法性、参考图张数等细粒度校验由上游裁决,不合法请求会原样返回上游 400 错误体。

响应

json
{
  "request_id": "54bb0f03-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
  "output": {
    "choices": [
      {
        "finish_reason": "stop",
        "message": {
          "role": "assistant",
          "content": [{ "image": "https://dashscope-result-xxx.oss-cn-beijing.aliyuncs.com/xxx.png?Expires=..." }]
        }
      }
    ]
  },
  "usage": {
    "output_width": 1024,
    "output_height": 1024,
    "input_image_count": 0,
    "input_image_type": "qima_input_1k",
    "output_image_count": 1,
    "output_image_type": "qima_output_1k"
  }
}
字段说明
output.choices[].finish_reason自然停止为 stop
output.choices[].message.content[].image生成图 URL(png)
usage.input_image_count / input_image_type输入(参考)图张数与档位——计费读取
usage.output_image_count / output_image_type输出图张数与档位——计费读取
usage.output_width / output_height输出像素
request_id请求唯一 ID(幂等键)

图片 URL 有效期

生成图 URL 由上游 OSS 提供,24 小时有效,请及时下载转存。

仅支持同步调用

本接口仅支持同步调用;X-DashScope-Async 异步任务模式(/tasks/{id} 轮询)暂未开放,携带该头的请求平台按同步转发。

计费

张四档计费(USD/张),档位由上游 usage.*_image_type 判定(单图面积 ≤ 2,250,000 像素 → 1K 档,否则 2K 档,由上游计算,平台采信):

档位计费对象
INPUT_1K / INPUT_2KI2I 参考图,每张按其档位计费(T2I 不产生输入费)
OUTPUT_1K / OUTPUT_2K生成图,每张按其档位计费(n=4 即 4 张)
费用 = INPUT_档 单价 × 参考图张数 + OUTPUT_档 单价 × 生成图张数
  • 计费时点:成功响应返回前一次性结算;请求失败(4xx/5xx)不计费。
  • 幂等:同一次生成的 request_id 不重复计费;客户端重试产生的新请求正常计费。
  • 具体单价以控制台模型详情页为准。

错误

错误体为 DashScope 风格信封(顶层三字段,各语言官方 SDK 可原生解析):

json
{ "code": "InvalidApiKey", "message": "...", "request_id": "e5c2xxxx..." }
HTTPcode场景
400InvalidParameter请求体非法 / 非图片模型 / 非 DashScope 通道模型
401InvalidApiKeyAPI Key 缺失 / 无效 / 过期
402Arrearage企业钱包余额不足
403AccessDeniedKey 未授权该模型 / IP 不允许 / 企业禁用
404ModelNotFound模型不存在或未启用
429Throttling.QuotaAPI Key 额度超限
502InternalError上游网络错误
504InternalError.TimeOut上游超时

上游 DashScope 返回的业务错误(如参数不合法、内容安全拦截)状态码与错误体原样透传code 为上游错误码。

详见 错误码

支持的模型

  • qwen-image-3.0
  • qwen-image-3.0-pro

(model_code 以控制台模型列表为准)