Skip to content

Baidu 文生图 API 接口文档

接口地址

https://www.dmxapi.cn/v1/images/generations

模型名称

musesteamer-air-image

Python 代码示例

以下示例展示了如何使用 DMXAPI 调用 musesteamer-air-image 模型进行图片编辑:

python

"""
╔══════════════════════════════════════════════════════════════════════════════╗
║                                                                              ║
║                    DMX API 图像生成脚本 (Image Generation)                    ║
║                                                                              ║
╠══════════════════════════════════════════════════════════════════════════════╣
║  描述: 使用 DMX API 的 musesteamer-air-image 模型生成 AI 图像                        
╚══════════════════════════════════════════════════════════════════════════════╝

功能说明:
    - 支持自定义提示词 (Prompt) 描述想要生成的图像
    - 支持多种图像尺寸输出
    - 返回生成图像的 URL 或 Base64 编码
"""

# ══════════════════════════════════════════════════════════════════════════════
# 导入依赖库
# ══════════════════════════════════════════════════════════════════════════════

import requests  # HTTP 请求库 - 用于与 API 服务器通信
import json      # JSON 处理库 - 用于解析和格式化 JSON 数据


# ══════════════════════════════════════════════════════════════════════════════
# API 基础配置
# ══════════════════════════════════════════════════════════════════════════════

# API 端点地址 (Endpoint URL)
# 说明: DMX API 的图像生成接口地址
url = "https://www.dmxapi.cn/v1/images/generations"

# API 认证密钥 (Authentication Key)
# ┌──────────────────────────────────────────────────────────────────────────┐
# │ ⚠️  安全提示:                                                            │
# │    - 请勿将 API Key 提交到公开的代码仓库                                  │
# │    - 建议使用环境变量或配置文件存储敏感信息                                │
# │    - 定期轮换 API Key 以确保安全                                         │
# └──────────────────────────────────────────────────────────────────────────┘
api_key = "sk-********************************"

# ══════════════════════════════════════════════════════════════════════════════
# HTTP 请求头配置 (Request Headers)
# ══════════════════════════════════════════════════════════════════════════════

headers = {
    # ┌──────────────────────────────────────────────────────────────────────┐
    # │ Content-Type: 指定请求体的数据格式                                    │
    # │ - application/json: 表示请求体为 JSON 格式                           │
    # │ - 服务器将按照 JSON 格式解析请求数据                                  │
    # └──────────────────────────────────────────────────────────────────────┘
    "Content-Type": "application/json",

    # ┌──────────────────────────────────────────────────────────────────────┐
    # │ Authorization: API 身份认证                                          │
    # │ - Bearer Token 认证方式                                              │
    # │ - 格式: "Bearer <your_api_key>"                                      │
    # │ - 用于验证请求者的身份和权限                                          │
    # └──────────────────────────────────────────────────────────────────────┘
    "Authorization": f"Bearer {api_key}"
}


# ══════════════════════════════════════════════════════════════════════════════
# 请求参数配置 (Request Payload)
# ══════════════════════════════════════════════════════════════════════════════

data = {
    # ╔════════════════════════════════════════════════════════════════════════╗
    # ║ model - 模型名称                                                       ║
    # ╠════════════════════════════════════════════════════════════════════════╣
    # ║ 当前使用: musesteamer-air-image                                        ║
    # ║ 模型特点:                                                              ║
    # ║   • MuseSteamer Air 图像生成模型                                       ║
    # ║   • 支持中英文提示词                                                   ║
    # ║   • 生成高质量 AI 艺术图像                                             ║
    # ╚════════════════════════════════════════════════════════════════════════╝
    "model": "musesteamer-air-image",

    # ╔════════════════════════════════════════════════════════════════════════╗
    # ║ prompt - 图像生成提示词                                                ║
    # ╠════════════════════════════════════════════════════════════════════════╣
    # ║ 说明: 用自然语言描述您想要生成的图像内容                                ║
    # ║                                                                        ║
    # ║ 提示词技巧:                                                            ║
    # ║   • 描述越详细,生成效果越好                                           ║
    # ║   • 可以指定风格: 写实、卡通、油画、水彩等                              ║
    # ║   • 可以指定场景: 室内、室外、白天、夜晚等                              ║
    # ║   • 可以指定颜色: 暖色调、冷色调、黑白等                                ║
    # ║                                                                        ║
    # ║ 示例:                                                                  ║
    # ║   • "画一个西瓜"                                                       ║
    # ║   • "一只可爱的橘猫在阳光下睡觉,水彩画风格"                            ║
    # ║   • "未来城市夜景,霓虹灯,赛博朋克风格,4K高清"                        ║
    # ╚════════════════════════════════════════════════════════════════════════╝
    "prompt": "画一个西瓜",

    # ╔════════════════════════════════════════════════════════════════════════╗
    # ║ size - 输出图片尺寸                                                    ║
    # ╠════════════════════════════════════════════════════════════════════════╣
    # ║                                                                        ║
    # ║  ┌─────────────┬─────────────┬──────────────────────────────────────┐  ║
    # ║  │   尺寸       │   比例      │   适用场景                           │  ║
    # ║  ├─────────────┼─────────────┼──────────────────────────────────────┤  ║
    # ║  │ 1024x1024   │   1:1       │   社交媒体头像、方形展示图            │  ║
    # ║  │ 1328x1328   │   1:1       │   高清方形图、产品展示                │  ║
    # ║  ├─────────────┼─────────────┼──────────────────────────────────────┤  ║
    # ║  │ 1280x720    │   16:9      │   横版壁纸、视频封面、横幅广告        │  ║
    # ║  │ 1664x928    │   16:9      │   高清横版、宽屏展示                  │  ║
    # ║  ├─────────────┼─────────────┼──────────────────────────────────────┤  ║
    # ║  │ 720x1280    │   9:16      │   手机壁纸、竖版海报、短视频封面      │  ║
    # ║  │ 928x1664    │   9:16      │   高清竖版、手机端展示                │  ║
    # ║  ├─────────────┼─────────────┼──────────────────────────────────────┤  ║
    # ║  │ 1152x864    │   4:3       │   传统显示器比例、文档配图            │  ║
    # ║  │ 1472x1104   │   4:3       │   高清 4:3 比例图像                   │  ║
    # ║  ├─────────────┼─────────────┼──────────────────────────────────────┤  ║
    # ║  │ 864x1152    │   3:4       │   竖版肖像、人物照片                  │  ║
    # ║  │ 1104x1472   │   3:4       │   高清竖版肖像 (当前选择)             │  ║
    # ║  └─────────────┴─────────────┴──────────────────────────────────────┘  ║
    # ║                                                                        ║
    # ╚════════════════════════════════════════════════════════════════════════╝
    "size": "1104x1472",

    # ╔════════════════════════════════════════════════════════════════════════╗
    # ║ response_format - 响应格式                                             ║
    # ╠════════════════════════════════════════════════════════════════════════╣
    # ║                                                                        ║
    # ║  可选值:                                                               ║
    # ║  ┌────────────┬────────────────────────────────────────────────────┐  ║
    # ║  │ "url"      │ 返回图像的 URL 地址 (推荐)                          │  ║
    # ║  │            │ • 响应速度快                                        │  ║
    # ║  │            │ • 需要再次请求下载图片                              │  ║
    # ║  │            │ • URL 可能有时效性限制                              │  ║
    # ║  ├────────────┼────────────────────────────────────────────────────┤  ║
    # ║  │ "b64_json" │ 返回图像的 Base64 编码                              │  ║
    # ║  │            │ • 响应体较大                                        │  ║
    # ║  │            │ • 可直接解码保存                                    │  ║
    # ║  │            │ • 适合需要立即处理的场景                            │  ║
    # ║  └────────────┴────────────────────────────────────────────────────┘  ║
    # ║                                                                        ║
    # ╚════════════════════════════════════════════════════════════════════════╝
    "response_format": "url"
}


# ══════════════════════════════════════════════════════════════════════════════
# 发送 API 请求
# ══════════════════════════════════════════════════════════════════════════════

# ┌──────────────────────────────────────────────────────────────────────────────┐
# │ 发送 HTTP POST 请求到 API 服务器                                             │
# │                                                                              │
# │ 参数说明:                                                                    │
# │   • url: API 端点地址                                                        │
# │   • headers: HTTP 请求头 (包含认证信息和内容类型)                             │
# │   • json: 请求体数据 (自动序列化为 JSON 格式)                                 │
# │                                                                              │
# │ 返回值:                                                                      │
# │   • response: Response 对象,包含服务器返回的所有信息                         │
# └──────────────────────────────────────────────────────────────────────────────┘
response = requests.post(url, headers=headers, json=data)


# ══════════════════════════════════════════════════════════════════════════════
# 处理并输出响应结果
# ══════════════════════════════════════════════════════════════════════════════

# ┌──────────────────────────────────────────────────────────────────────────────┐
# │ HTTP 状态码说明                                                              │
# │                                                                              │
# │ 常见状态码:                                                                  │
# │   • 200 OK              - 请求成功                                           │
# │   • 400 Bad Request     - 请求参数错误                                       │
# │   • 401 Unauthorized    - API Key 无效或过期                                 │
# │   • 403 Forbidden       - 没有访问权限                                       │
# │   • 429 Too Many Req    - 请求频率超限                                       │
# │   • 500 Internal Error  - 服务器内部错误                                     │
# └──────────────────────────────────────────────────────────────────────────────┘
print("状态码:", response.status_code)

# ┌──────────────────────────────────────────────────────────────────────────────┐
# │ 输出 API 返回的 JSON 数据                                                    │
# │                                                                              │
# │ json.dumps() 参数说明:                                                       │
# │   • indent=4: 缩进 4 个空格,使输出更易读                                    │
# │   • ensure_ascii=False: 允许输出中文字符 (不转义为 Unicode)                  │
# │                                                                              │
# │ 成功响应示例:                                                                │
# │ {                                                                            │
# │     "created": 1234567890,                                                   │
# │     "data": [                                                                │
# │         {                                                                    │
# │             "url": "https://example.com/generated-image.png"                 │
# │         }                                                                    │
# │     ]                                                                        │
# │ }                                                                            │
# └──────────────────────────────────────────────────────────────────────────────┘
print("响应内容:")
print(json.dumps(response.json(), indent=4, ensure_ascii=False))

返回示例

执行上述代码后,你将看到类似以下的输出:

json
状态码: 200
响应内容:
{
    "data": [
        {
            "url": "http://qianfan-modelbuilder-img-gen.bj.bcebos.com/musesteamer-air-image/05af4e1bc2f34215b6681e95cfad46bd/05af4e1bc2f34215b6681e95cfad46bd/img-bea4b703-2c06-42bb-6f86-922782fec6a4.jpeg?authorization=bce-auth-v1%2F50c8bb753dcb4e1d8646bb1ffefd3503%2F2025-12-11T09%3A42%3A19Z%2F86400%2Fhost%2Fad1b698504524f29750b7990da3172c7739ce769fd5c55a6c0c5372a189596cf"
        }
    ],
    "created": 1765446128
}

© 2025 DMXAPI - Baidu 文生图 API 文档

一个 Key 用全球大模型