# 图片生成
图片生成API用于根据给定的文本提示词同步生成图像。其业务逻辑为接收包含模型名称、文本提示词以及图片生成参数（如图像尺寸、随机数种子等）的请求，调用相应模型进行图片生成，并返回生成结果的URL以及相关状态和使用信息。
#### 前提条件
- 预置服务：已在"模型推理 \> 在线推理 \> 预置服务"页签开通Qwen_Image、Qwen-Image-Edit模型的预置服务。具体操作，请参见[MaaS开通预置服务](https://support.huaweicloud.com/model-call-maas/model-call-052.html)。
- 自定义接入点：已在"模型推理 \> 在线推理 \> 自定义接入点"页签为Qwen_Image、Qwen-Image-Edit模型创建了自定义接入点。具体操作，请参见[使用自定义接入点](https://support.huaweicloud.com/model-call-maas/model-call-048.html#ZH-CN_TOPIC_0000002549717747)。
 
#### 约束限制
- 该功能仅支持"西南-贵阳一"区域。
- Qwen-Image-Edit模型的图片限制如下：
  - 20251028版本：上传的图片文件总大小≤20MB。
  
  - 20250913版本：上传的单个图片文件大小≤15MB。
   
 
#### 接口信息
表1接口信息 
| 名称     | 说明             | 取值                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
|:---|:---|:---|
| API地址    | 调用图片生成的API地址。 | https://api.modelarts-maas.com/v1/images/generations                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| model参数 | model参数调用名称。 | 您可以任选以下方式获取model参数值。 - 在"模型推理 \> 在线推理 \> 预置服务"页签的服务名称左侧，单击![](https://support.huaweicloud.com/model-call-maas/figure/zh-cn_image_0000002374467304.png "点击放大")图标，在"model参数"列查看取值。具体操作，请参见[MaaS开通预置服务](https://support.huaweicloud.com/model-call-maas/model-call-052.html)。 图1预置服务-model参数 ![](https://support.huaweicloud.com/model-call-maas/figure/zh-cn_image_0000002476796972.png "点击放大")   - 在"模型推理 \> 在线推理 \> 自定义接入点"页签的"model参数"列查看取值。更多信息，请参见[使用自定义接入点](https://support.huaweicloud.com/model-call-maas/model-call-048.html#ZH-CN_TOPIC_0000002549717747)。 图2自定义接入点-model参数 ![](https://support.huaweicloud.com/model-call-maas/figure/zh-cn_image_0000002508637433.png "点击放大")    |
   
#### 支持模型列表
表2支持模型列表 
| **模型**                | 版本           | model参数值            | 支持地域          | 应用场景                 |
|:---|:---|:---|:---|:---|
| Qwen_Image          | 20250821      | qwen-image            | 西南-贵阳一       | 文字生成图像          |
| Qwen-Image-Edit  | 20251028（主推版本） | qwen-image-edit-2509 | 西南-贵阳一  | 文生图、图像编辑  |
| Qwen-Image-Edit  | 20250913        | qwen_image_edit     | 西南-贵阳一  | 文生图、图像编辑  |
   
#### 请求参数说明
- **Qwen-Image模型**
  表3请求body参数（**body体需要≤8MB** ） 
  | 参数名称              | 参数类型            | 是否必填 | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | 示例值            |
  |:---|:---|:---|:---|:---|
  | model            | string       | 是     | **参数解释：** 模型名称。 **约束限制：** 不涉及 **取值范围**： qwen-image **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | qwen-image     |
  | prompt            | string  | 是      | **参数解释：** 文本提示词，用于引导模型生成图像。 **约束限制：** 支持中英文，长度不超过800个字符，每个汉字/字母占一个字符，超过部分会自动截断。长度不超过2000Tokens。 **取值范围**： 不涉及。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | A running cat |
  | size            | string       | 是      | **参数解释：** 生成图像尺寸，宽度和高度范围为\[512x512, 2048x2048\]像素，宽度和高度需要被8整除，否则会向下兼容。 **约束限制：** 不涉及。 **取值范围**： 宽高比及宽高像素值推荐如下： - 1:1，例如2048x2048、1536x1536、1024x1024、512x512。  - 4:3，例如2304x1728。  - 3:4，例如1728x2304。  - 16:9，例如2560x1440。  - 9:16，例如1440x2560。  - 3:2，例如2496x1664。  - 2:3，例如1664x2496。   **默认取值：** 不涉及。 | 1024x1024      |
  | response_format | string       | 否     | **参数解释：** 返回格式。 **约束限制：** 目前仅支持b64_json格式。 **取值范围**： - url  - b64_json   **默认取值：** b64_json                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | b64_json      |
  | seed              | int          | 否      | **参数解释：** 随机种子，取值范围为\[0, 2147483648\]，您可以按需配置，不配置则在范围内随机。 **约束限制：** 不涉及。 **取值范围**： \[0, 2147483648\] **默认取值：** 范围内随机数。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | 333           |
  | watermark        | boolean        | 否     | **参数解释：** 是否对图片进行水印处理。 **约束限制：** 不涉及。 **取值范围**： - true：对图片进行水印处理。  - false：对图片不进行水印处理。   **默认取值：** false                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | true            |
     
  
- **Qwen-Image-Edit模型** **（20250913版本）**
  表4请求body参数（**body体需要≤20MB** ） 
  | 参数名称     | 参数类型          | 是否必填 | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | 示例值              |
  |:---|:---|:---|:---|:---|
  | model       | string          | 是     | **参数解释：** 模型名称。 **约束限制：** 不涉及 **取值范围**： qwen_image_edit **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | qwen_image_edit |
  | prompt      | string  | 是   | **参数解释：** 文本提示词，用于引导模型生成图像。 **约束限制：** 长度支持800 tokens以下（每个单词和标点都算一个token）。如果长度超过800，会自动截断为800 tokens，超过2000 tokens则会报错。 **取值范围**： 不涉及。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | A running cat   |
  | size      | string         | 否     | **参数解释：** 生成图像的尺寸，宽度和高度范围为\[512,2048\]像素。 如果用户填写size，系统将按照size生成图片；如果用户不填写size，系统将按照传入图片的尺寸生成图片。 **约束限制：** 不涉及。 **取值范围**： 宽高比及宽高像素值推荐如下： - 1:1，例如2048x2048、1024x1024、512x512、1328x1328。  - 4:3，例如2304x1728。  - 3:4，例如1728x2304。  - 16:9，例如2560x1440。  - 9:16，例如1440x2560。  - 3:2，例如2496x1664。  - 2:3，例如1664x2496。   **默认取值：** 不涉及。 | 1024x1024        |
  | seed       | int           | 否   | **参数解释：** 随机种子，取值范围为\[0, 2147483648\]，您可以按需配置，不配置则在范围内随机。 **约束限制：** 不涉及。 **取值范围**： \[0, 2147483648\] **默认取值：** 范围内随机数。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | 333               |
  | image      | string       | 是   | **参数解释：** 生成的图片返回格式。 **约束限制：** 不涉及。 **取值范围：** - 支持图片格式：png、jpeg、jpg、webp、bmp、tiff。  - 支持使用Base64形式传递图片或公网可访问的URL。  - 图片尺寸的宽度和高度范围为\[512,2048\]像素。  - 生成图像支持分辨率：面积=宽度x高度。 最小面积：512x512；最大面积：3072x3072。例如，支持1024x4096。    **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   | Base64    |
  | watermark | boolean        | 否     | **参数解释：** 是否对图片进行水印处理。 **约束限制：** 不涉及。 **取值范围：** - true：对图片进行水印处理。  - false：对图片不进行水印处理。   **默认取值：** false                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | true            |
     
  
- **Qwen-Image-Edit模型** **（20251028版本）**
  表5请求body参数**（body体需要≤30MB）** 
  | 参数名称      | 参数类型          | 是否必填 | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | 示例值                   |
  |:---|:---|:---|:---|:---|
  | model     | string       | 是     | **参数解释：** 模型名称。 **约束限制：** 不涉及。 **取值范围**： qwen-image-edit-2509 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | qwen-image-edit-2509 |
  | prompt   | string  | 是       | **参数解释：** 文本提示词，用于引导模型生成图像。 **约束限制：** 长度支持800 tokens以下（每个单词和标点都算一个token）。如果长度超过800，会自动截断为800 tokens，超过2000 tokens则会报错。 **取值范围**： 不涉及。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 将图1中背景颜色修改为图2湖面颜色     |
  | size      | string      | 否      | **参数解释：** 生成图像的尺寸，宽度和高度范围为\[512,3072\]像素。 **约束限制：** - 如果用户填写size，系统将按照size生成图片。size需满足以下条件。 - 宽高比在1:12或12:1以内，否则会报错。  - 生成图像支持分辨率：面积=宽度x高度。 可生成的图片最小面积：512x512；可生成的图片最大面积：3072x3072。 如果输入超出面积的范围，系统将按size比例缩放输入尺寸，以使总面积接近允许的最小值或最大值。     - 如果用户不填写size，系统将按照传入image中第一张图片尺寸和格式生成图片。   **取值范围**： 宽高比及宽高像素值推荐如下： - 1:1，例如1024x1024、1536x1536、2048x2048、3072x3072。  - 4:3，例如2304x1728。  - 3:4，例如1728x2304。  - 16:9，例如2560x1440。  - 9:16，例如1440x2560。  - 3:2，例如2496x1664。  - 2:3，例如1664x2496。   **默认取值：** 不涉及。 | 1024x1024            |
  | seed      | int           | 否    | **参数解释：** 随机种子，取值范围为\[0, 2147483648\]，您可以按需配置，不配置则在范围内随机。 **约束限制：** 不涉及。 **取值范围**： \[0, 2147483648\] **默认取值：** 范围内随机数。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 | 333                 |
  | image    | string        | 是      | **参数解释：** 生成的图片返回格式。 **约束限制：** 不涉及。 **取值范围：** - 支持图片格式：png、jpeg、jpg、webp、bmp、tiff。当用户输入两张图片的格式不一致时，系统将按照传入image中第一张图片的格式生成图片。  - 宽度和高度范围：\[512,3072\]像素。  - 生成图像支持分辨率：面积=宽度x高度。如果超出面积，系统会报错。 最小面积要求：512x512；最大面积要求：3072x3072。例如，支持1024x4096。   - 图像size需要满足宽高比在1:12或12:1以内，否则会报错。  - 支持输入1\~2张图的Base64数据或者是1\~2张图的公网URL地址。 - Base64示例： ``` "Base64字符串1,Base64字符串2" ```   - URL示例： ``` "URL1, URL2" ```      **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | Base64                |
  | watermark | boolean       | 否     | **参数解释：** 是否对图片进行水印处理。 **约束限制：** 不涉及。 **取值范围：** - true：对图片进行水印处理。  - false：对图片不进行水印处理。   **默认取值：** false                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       | true               |
     
  
 
#### 响应参数说明
**状态码：200**
| 参数          | 参数类型          | 说明                                                                                                                                                                                                                                                                                |
|:---|:---|:---|
| model   | string       | **参数解释：** 本次请求使用的模型参数值。 **取值范围：** 本次请求使用的模型参数值。 |
| created | int           | **参数解释：** 任务创建时间的Unix时间戳（毫秒）。 **取值范围：** 不涉及。    |
| data     | list\[dict\] | **参数解释：** 图片数据列表，图片格式与输入图片保持一致，数据格式： ``` [{"url": null, "b64_json": "Base64字符串"}] ```                                                                                                              |
| error     | error结构      | **参数解释：** 文生图为同步接口，当前error结构体暂时弃用。                                                                                                                                                                   |
| usage     | usage结构        | **参数解释：** 结构内容为json结构体，KV值可自定义，例如： ``` { "model_latency"：6000, "prompt_tokens": 0, "completion_tokens": 0, "total_tokens": 0, "width": 1024, "height": 1024 } ```                                    |
   
#### 单图编辑请求示例-Qwen-Image-Edit（20250913版本）
此处以使用Qwen-Image-Edit（20250913版本）模型通过Python脚本和Curl命令进行图像编辑为例，展示单张图像编辑的基础用法。
- [Python]
  ```
  import requests
  import json
  import base64
  #  Base64 编码格式
  def encode_image(image_path):
      with open(image_path, "rb") as image_file:
          return base64.b64encode(image_file.read()).decode("utf-8")
  base64_image = encode_image("test.jpg")
  if __name__ == '__main__':
      url = "https://api.modelarts-maas.com/v1/images/generations"  # API地址
      api_key = "MAAS_API_KEY"  # 把MAAS_API_KEY替换成已获取的API Key
      # Send request.
      headers = {
          'Content-Type': 'application/json',
          'Authorization': f'Bearer {api_key}'
      }
      data = {
          "model": "qwen_image_edit",  # model参数
          "prompt": "将湖面颜色修改为蓝色",  # 支持中英文
          "size": "1024x1024",
          # 生成图像尺寸qwen_image_edit要求介于[512x512,2048x2048]。
          # 推荐：2048x2048,1536x1536,1024x1024, 512x512，其中height和width需要被16整除，否则会向下兼容。
          "image": f"data:image/jpg;base64,{base64_image}",
          # 支持图片格式 ["png", "jpeg", "jpg", "webp", "bmp", "tiff"]，支持使用Base64形式或公网可访问的URL传递图片。
          "seed": 44  # 取值范围在[0, 2147483648]， 随机种子
      }
      response = requests.post(url, headers=headers, data=json.dumps(data), verify=False)
      # Print result.
      print(response.status_code)
      print(response.text)
  ```
- [Curl]
  ```
  curl -X POST https://api.modelarts-maas.com/v1/images/generations \
    -H "Content-Type: application/json" \
    -H "Authorization: Bearer $MAAS_API_KEY" \
    -d '{
      "model": "qwen_image_edit",
      "prompt": "将湖面颜色修改为蓝色",
      "size": "1024x1024",
      "image": "data:image/jpg;base64,$BASE64_IMAGE",
      "seed": 44
  }'
  ```
#### 单图编辑响应示例-Qwen-Image-Edit（20250913版本）
```
{
    "model": "qwen_image_edit",
    "created": 1757948064800,
    "data":
    [
        {
            "url": null,
            "b64_json": "data:image/jpg;base64,/9j/4AAQSkZJ....JtSWh//2Q=="
        }
    ],
    "usage":
    {
        "model_latency": 17509,
        "prompt_tokens": 0,
        "completion_tokens": 0,
        "total_tokens": 0
    },
    "error": null
}
```
#### 多图编辑请求示例-Qwen-Image-Edit（20251028版本）
此处以使用Qwen-Image-Edit（20251028版本）模型通过Python脚本和Curl命令进行图像编辑为例，展示多张图像编辑的基础用法。
- [Python]
  ```
  import requests
  import json
  import base64
  #  Base64 编码格式
  def encode_image(image_path):
      with open(image_path, "rb") as image_file:
          return base64.b64encode(image_file.read()).decode("utf-8")
  base64_image1 = encode_image("test1.jpg")
  base64_image2 = encode_image("test2.jpg")
  if __name__ == '__main__':
      url = "https://api.modelarts-maas.com/v1/images/generations"  # API地址
      api_key = "MAAS_API_KEY"  # 把MAAS_API_KEY替换成已获取的API Key
      # Send request.
      headers = {
          'Content-Type': 'application/json',
          'Authorization': f'Bearer {api_key}'
      }
      data = {
          "model": "qwen-image-edit-2509",  # model参数
          "prompt": "将图1中背景颜色修改为图2湖面颜色",  # 支持中英文
          "size": "1024x1024",
          # [非必填]生成图像的宽度和高度范围为[512, 3072]像素，不填会根据传入的image尺寸生成。
          # 推荐尺寸[1024x1024,1536x1536,2048x2048,3072x3072]
          "image": f"data:image/jpg;base64,{base64_image1},data:image/jpg;base64,{base64_image2}",
          # 支持图片格式["png", "jpeg", "jpg", "webp", "bmp", "tiff"]，支持使用Base64形式或公网可访问的URL传递图片。
          "seed": 44  # 取值范围在[0, 2147483648]， 随机种子
      }
      response = requests.post(url, headers=headers, data=json.dumps(data), verify=False)
      # Print result.
      print(response.status_code)
      print(response.text)
  ```
- [Curl]
  ```
  curl -X POST https://api.modelarts-maas.com/v1/images/generations \
    -H "Content-Type: application/json" \
    -H "Authorization: Bearer $MAAS_API_KEY" \
    -d '{
      "model": "qwen-image-edit-2509",
      "prompt": "将图1中背景颜色修改为图2湖面颜色",
      "size": "1024x1024",
      "image": "data:image/jpg;base64,$BASE64_IMAGE1,data:image/jpg;base64,$BASE64_IMAGE2",
      "seed": 44
  }'
  ```
#### 多图编辑响应示例-Qwen-Image-Edit（20251028版本）
```
{
    "model": "qwen-image-edit-2509",
    "created": 1762134592684,
    "data": [
        {
            "url": null,
            "b64_json": "data:image/jpg;base64,/9j/4AAQSkZ....lFxdpI//2Q=="
        }
    ],
    "usage": {
        "model_latency": 39800,
        "prompt_tokens": 0,
        "completion_tokens": 0,
        "total_tokens": 0,
        "width": 3072,
        "height": 3072
    },
    "error": null
}
```
