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 文档
