Skip to content

豆包即梦 seededit 网络图片编辑API接口文档

模型名称

doubao-seedream-4-0-250828

seededit-3.0

豆包官方文档

即梦4:https://www.volcengine.com/docs/82379/1541523

即梦3:https://www.volcengine.com/docs/82379/1548482#图片编辑

如何使用POST请求

请求方式

  • 方法: POST
  • URL: https://www.dmxapi.cn/v1/images/generations
  • Content-Type: application/json

请求头设置

Content-Type: application/json
Authorization: Bearer sk-your-api-key-here

请求参数

参数名类型必填说明
modelstring模型名称,如 doubao-seedream-4-0-250828
promptstring图像编辑的文本描述
imagestring要编辑的原始图像URL

请求示例

bash
curl -X POST "https://www.dmxapi.cn/v1/images/generations" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer sk-your-api-key-here" \
  -d '{
    "model": "doubao-seedream-4-0-250828",
    "prompt": "改成方块形状的泡泡",
    "image": "https://ark-project.tos-cn-beijing.volces.com/doc_image/seededit_i2i.jpeg"
  }'

响应格式

成功响应示例:

json
{
  "data": [
    {
      "url": "https://example.com/generated-image.jpg"
    }
  ]
}

Python调用示例

python
import json
import requests

# DMXAPI 图像生成接口配置
url = "https://www.dmxapi.cn/v1/images/generations"  # DMXAPI 图像生成的API端点
api_key = "sk-********************************************"  # DMXAPI 的访问令牌

# 设置HTTP请求头
# Content-Type: 指定请求体为JSON格式
# Authorization: 使用Bearer Token认证方式传递API密钥
headers = {
    "Content-Type": "application/json", 
    "Authorization": f"Bearer {api_key}"
}

# 构造请求参数
# model: 指定使用的AI模型,这里使用豆包的图像编辑模型
# prompt: 图像编辑的文本描述,告诉AI如何修改图像
# image: 要编辑的原始图像URL
payload = {
    "model": "doubao-seedream-4-0-250828",  # 豆包图像编辑模型
    "prompt": "改成方块形状的泡泡",  # 编辑指令:将泡泡改成方块形状
    "image": "https://ark-project.tos-cn-beijing.volces.com/doc_image/seededit_i2i.jpeg",  # 原始图像URL
}

try:
    # 发送POST请求到DMXAPI
    # 将payload转换为JSON字符串发送
    response = requests.post(url, headers=headers, data=json.dumps(payload))

    # 检查HTTP响应状态码
    # 如果状态码不是2xx(成功),会抛出HTTPError异常
    response.raise_for_status()

    # 解析API返回的JSON响应数据
    imagesResponse = response.json()

    # 提取并打印生成的图像URL
    # 检查响应结构:确保有data字段且包含至少一个图像结果
    if imagesResponse and "data" in imagesResponse and len(imagesResponse["data"]) > 0:
        # 打印第一个生成图像的URL
        print(imagesResponse["data"][0]["url"])
    else:
        # 如果响应结构不符合预期,打印完整响应内容用于调试
        print("未能从响应中获取图片URL,请检查返回内容:")
        print(imagesResponse)

except requests.exceptions.RequestException as e:
    # 捕获网络请求相关的异常(如网络连接失败、超时等)
    print(f"请求失败: {e}")
except KeyError as e:
    # 捕获JSON解析时的键值错误(如响应结构与预期不符)
    print(f"解析响应失败,找不到键: {e}")
    # 可以取消注释下面这行来打印原始响应内容进行调试
    # print(response.text)

注意

返回结果里的 url 需要转义, 把 \\u0026 替换成 & 即可正常访问。

概念说明

  1. Prompt工程:描述越详细,生成效果越好。建议包含:

    • 主体内容
    • 艺术风格
    • 色彩要求
    • 构图细节
  2. 随机种子(seed)

    • 固定seed可生成相同图片
    • -1表示每次随机生成
  3. 安全注意事项

    • API密钥需妥善保管
    • 建议设置调用频率限制
    • 生成内容需符合法律法规

错误处理

常见错误码:

  • 401 - 认证失败
  • 400 - 参数错误
  • 429 - 请求过于频繁
  • 500 - 服务器内部错误

一个 Key 用全球大模型