跳转到主要内容
千问

Qwen — OpenAI 兼容图像生成

通过 OpenAI Images 兼容协议调用千问图像生成与编辑模型进行文生图与图生图/图像编辑

POST
/compatible-mode/v1/images/generations
curl --location 'https://maas.qianwenaiapi.com/compatible-mode/v1/images/generations' \
--header 'Content-Type: application/json' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--data '{
  "model": "qwen-image-3.0-pro",
  "prompt": "画面是一张竖幅户外人像摄影,整体从上到下呈现温暖的午后街景氛围。顶部左侧到上方大面积被深绿色藤蔓和橙色小花覆盖,花叶从建筑檐口自然垂落,受阳光照射的叶片呈黄绿色高光,阴影处则偏深绿,形成浓密而柔和的背景层次。左上至中上区域是一块深蓝色横向招牌,招牌表面较暗、略带磨砂质感,上面以白色哥特体大字写着 Il Messaggero,文字位于画面左侧偏上,部分被前景花叶轻微遮挡,字体高对比、带装饰性尖角和粗细变化。招牌下方是报刊亭或书报摊的玻璃展示窗,黑色金属框架将橱窗分隔成多个矩形区域,内部陈列着许多报纸、杂志和书刊封面,但大多因景深虚化和光线反射而难以辨读,形成浅色纸张与深色边框交错的背景纹理。画面右上方是强烈的逆光区域,阳光从街道尽头照入,背景建筑被虚化成米灰色块面,边缘柔和,呈现明显的浅景深效果。画面中部偏右是一名年轻成年女性的半身至膝上人像,她回头面向镜头微笑,身体略向右转,肩背朝向观者,姿态自然放松。她有长而浓密的黑色波浪卷发,发丝被逆光勾勒出金色轮廓光,发梢在右侧向外散开,显得轻盈蓬松。她肤色白皙,脸型柔和偏鹅蛋形,眉形细致,眼睛明亮,眼妆清透,睫毛明显,面部带有自然高光,唇部为柔和珊瑚红色,笑容露齿,表情亲切明朗。她佩戴小巧耳饰,身穿黑色细肩带露背连衣裙,面料颜色深黑、轮廓简洁,细肩带从肩部向背部延伸,背部线条清晰。画面下部偏左到中部,她双手抱着一束玫瑰花,花束体积较大,主要由橙色、杏色、粉色和浅桃色玫瑰组成,花瓣层层卷曲,边缘被阳光照亮,绿色叶片和长花茎从花束下方垂出,花束与黑色裙装形成鲜明色彩对比。右侧背景是一条被阳光照亮的城市街道,地面呈暖灰与金黄色调,远处建筑、街边设施和一个模糊的红色圆形交通标志位于右下远景,均因焦外虚化而只保留色块和轮廓。整张照片采用暖色胶片感处理,带有细腻颗粒、柔和对比和明显逆光边缘光,人物位于视觉焦点,背景报刊亭、花藤、街道和阳光共同营造出浪漫、明亮、都市漫步式的氛围。",
  "size": "1024x1024",
  "n": 1,
  "prompt_extend": true
}'
{
  "created": 1788339600,
  "data": [
    {
      "url": "https://dashscope-result-sz.oss-cn-shenzhen.aliyuncs.com/xxx.png?Expires=xxx"
    }
  ],
  "usage": {
    "output_height": 1024,
    "output_width": 1024,
    "input_image_count": 0,
    "input_image_type": "qima_input_1k",
    "output_image_count": 1,
    "output_image_type": "qima_output_1k"
  }
}
先获取 API Key 并配置环境变量。如果使用 SDK,还需安装 SDK。
图像生成耗时较长,请显式设置足够大的客户端超时时间。多图输出(较大的 n)或并发场景建议从 600 秒起配置,避免客户端提前断开连接。

鉴权

string
header
必填

千问AI平台 API Key。详见获取 API Key。

请求体

application/json
enum<string>
必填

模型名称。

qwen-image-3.0-pro,qwen-image-3.0,qwen-image-2.1-pro
qwen-image-3.0-pro
string
必填

正向提示词,描述期望生成或编辑的图像内容、风格和构图。支持中英文,推荐不超过 4500 Token,不能为空字符串。

画面是一张竖幅户外人像摄影,整体从上到下呈现温暖的午后街景氛围。顶部左侧到上方大面积被深绿色藤蔓和橙色小花覆盖,花叶从建筑檐口自然垂落,受阳光照射的叶片呈黄绿色高光,阴影处则偏深绿,形成浓密而柔和的背景层次。左上至中上区域是一块深蓝色横向招牌,招牌表面较暗、略带磨砂质感,上面以白色哥特体大字写着 Il Messaggero,文字位于画面左侧偏上,部分被前景花叶轻微遮挡,字体高对比、带装饰性尖角和粗细变化。招牌下方是报刊亭或书报摊的玻璃展示窗,黑色金属框架将橱窗分隔成多个矩形区域,内部陈列着许多报纸、杂志和书刊封面,但大多因景深虚化和光线反射而难以辨读,形成浅色纸张与深色边框交错的背景纹理。画面右上方是强烈的逆光区域,阳光从街道尽头照入,背景建筑被虚化成米灰色块面,边缘柔和,呈现明显的浅景深效果。画面中部偏右是一名年轻成年女性的半身至膝上人像,她回头面向镜头微笑,身体略向右转,肩背朝向观者,姿态自然放松。她有长而浓密的黑色波浪卷发,发丝被逆光勾勒出金色轮廓光,发梢在右侧向外散开,显得轻盈蓬松。她肤色白皙,脸型柔和偏鹅蛋形,眉形细致,眼睛明亮,眼妆清透,睫毛明显,面部带有自然高光,唇部为柔和珊瑚红色,笑容露齿,表情亲切明朗。她佩戴小巧耳饰,身穿黑色细肩带露背连衣裙,面料颜色深黑、轮廓简洁,细肩带从肩部向背部延伸,背部线条清晰。画面下部偏左到中部,她双手抱着一束玫瑰花,花束体积较大,主要由橙色、杏色、粉色和浅桃色玫瑰组成,花瓣层层卷曲,边缘被阳光照亮,绿色叶片和长花茎从花束下方垂出,花束与黑色裙装形成鲜明色彩对比。右侧背景是一条被阳光照亮的城市街道,地面呈暖灰与金黄色调,远处建筑、街边设施和一个模糊的红色圆形交通标志位于右下远景,均因焦外虚化而只保留色块和轮廓。整张照片采用暖色胶片感处理,带有细腻颗粒、柔和对比和明显逆光边缘光,人物位于视觉焦点,背景报刊亭、花藤、街道和阳光共同营造出浪漫、明亮、都市漫步式的氛围。
string

输入图像的 URL 或 Base64 编码数据。不传为文生图(T2I);传入为图生图(I2I),qwen-image-3.0 系列支持 1-3 张,qwen-image-2.1-pro 支持 1-10 张。单张可传字符串,多张传字符串数组(数组顺序即图像顺序)。不能传 null 或空数组,否则返回 400。格式支持 JPG/JPEG/PNG/BMP/TIFF/WEBP/GIF,宽高建议 384-2048 像素,大小不超过 10MB。

支持的输入格式:

  1. 公网 URL:支持 HTTP 和 HTTPS 协议。
  2. Base64 编码:格式为 data:{MIME_type};base64,{base64_data}。
integer
默认值1

输出图像数量。字符串形式(如 "1")会返回 400,必须传整数。

1 <= x <= 6
string
默认值"auto"

输出分辨率,格式 宽x高(字母 x 分隔)。也可传 auto 由模型自动推荐。像素面积 512x512 至 2048x2048,宽高比 1:8 至 8:1。注意与 DashScope 协议的 * 分隔符不同,迁移时请修改。

1024x1024
string

反向提示词,描述不希望在画面中出现的内容。

integer

随机数种子。未传入时服务随机选择;固定种子可使结果相对稳定。

0 <= x <= 2147483647
boolean
默认值true

是否开启提示词智能改写(建议开启)。开启后按 prompt_extend_mode 优化正向提示词。

enum<string>
默认值"direct"

提示词改写方式。direct:直接提示词增强(DPE),T2I/I2I 均支持;agent:智能体提示词增强(APE),仅 T2I,I2I 传入返回 400。

direct,agent
boolean
默认值true

是否开启思考模式。开启时增强推理以提升出图质量,但增加耗时。仅在 prompt_extend=true 时生效,I2I Agent 暂不支持。

boolean
默认值false

是否添加水印。

响应

200-application/json
integer

响应创建时间的 Unix 时间戳(秒)。

object[]

生成结果列表。n 大于 1 时包含多个元素。

object

本次调用的资源使用情况,仅调用成功时返回。此处为图片输入/输出计量信息,不是 Token 用量。字段随模型系列不同:qwen-image-3.0 系列返回 output_* / input_* 字段,qwen-image-2.1-pro 返回 image_count / width / height。

object

错误信息,仅调用失败时返回。OpenAI 兼容模式不在响应体返回 request_id,请求唯一标识通过 HTTP 响应头 x-request-id 返回。使用 OpenAI Python SDK 时,成功可读 response._request_id,失败可从 APIStatusError.request_id 读取。