图像(Image)
OpenAI 图像格式(Image)
官方文档
📝 简介
给定文本提示和/或输入图片,模型将生成新的图片。OpenAI 提供多种强大的图像生成模型,可以根据自然语言描述创建、编辑和修改图像。目前支持的模型包括:
| 模型 | 描述 |
|---|---|
| DALL·E 系列 | 包括 DALL·E 2 和 DALL·E 3 两个版本,它们在图像质量、创意表现和精确度上都有显著差异 |
| GPT-Image-1 | OpenAI最新图片模型,支持多图片编辑功能,能够基于多个输入图像创建新的组合图像 |
💡 请求示例
创建图片 ✅
# 基础图片生成
curl https://$Burncloud_API_BaseUrl/v1/images/generations \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $Burncloud_API_KEY" \
-d '{
"model": "dall-e-3",
"prompt": "一只可爱的小海獭",
"n": 1,
"size": "1024x1024"
}'
# 高质量图片生成
curl https://$Burncloud_API_BaseUrl/v1/images/generations \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $Burncloud_API_KEY" \
-d '{
"model": "dall-e-3",
"prompt": "一只可爱的小海獭",
"quality": "hd",
"style": "vivid",
"size": "1024x1024"
}'
# 使用 base64 返回格式
curl https://$Burncloud_API_BaseUrl/v1/images/generations \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $Burncloud_API_KEY" \
-d '{
"model": "dall-e-3",
"prompt": "一只可爱的小海獭",
"response_format": "b64_json"
}'
响应示例:
{
"created": 1589478378,
"data": [
{
"url": "https://...",
"revised_prompt": "一只可爱的小海獭在水中嬉戏,它有着圆圆的眼睛和毛茸茸的皮毛"
}
]
}
编辑图片 ✅
# dall-e-2 图片编辑
curl https://$Burncloud_API_BaseUrl/v1/images/edits \
-H "Authorization: Bearer $Burncloud_API_KEY" \
-F image="@otter.png" \
-F mask="@mask.png" \
-F prompt="一只戴着贝雷帽的可爱小海獭" \
-F n=2 \
-F size="1024x1024"
# gpt-image-1 多图片编辑示例
curl https://$Burncloud_API_BaseUrl/v1/images/edits \
-H "Authorization: Bearer $Burncloud_API_KEY" \
-F "model=gpt-image-1" \
-F "image[]=@body-lotion.png" \
-F "image[]=@bath-bomb.png" \
-F "image[]=@incense-kit.png" \
-F "image[]=@soap.png" \
-F "prompt=创建一个包含这四个物品的精美礼品篮" \
-F "quality=high"
响应示例 (dall-e-2):
{
"created": 1589478378,
"data": [
{
"url": "https://..."
},
{
"url": "https://..."
}
]
}
响应示例 (gpt-image-1):
{
"created": 1713833628,
"data": [
{
"b64_json": "..."
}
],
"usage": {
"total_tokens": 100,
"input_tokens": 50,
"output_tokens": 50,
"input_tokens_details": {
"text_tokens": 10,
"image_tokens": 40
}
}
}
生成图片变体 ✅
curl https://$Burncloud_API_BaseUrl/v1/images/variations \
-H "Authorization: Bearer $Burncloud_API_KEY" \
-F image="@otter.png" \
-F n=2 \
-F size="1024x1024"
响应示例:
{
"created": 1589478378,
"data": [
{
"url": "https://..."
},
{
"url": "https://..."
}
]
}
📮 请求
端点
创建图片
POST /v1/images/generations
根据文本提示创建图片。
编辑图片
POST /v1/images/edits
根据一个或多个原始图片和提示创建编辑或扩展的图片。此端点支持 dall-e-2 和 gpt-image-1 模型。
生成变体
POST /v1/images/variations
创建给定图片的变体。
鉴权方法
在请求头中包含以下内容进行 API 密钥认证:
Authorization: Bearer $Burncloud_API_KEY
其中 $OPENAI_API_KEY 是您的 API 密钥。
请求体参数
创建图片
prompt
- 类型:字符串
- 必需:是
- 说明:期望生成图片的文本描述。
- dall-e-2 最大长度为 1000 字符
- dall-e-3 最大长度为 4000 字符
- 提示:
- 使用具体和详细的描述
- 包含关键的视觉元素
- 指定期望的艺术风格
- 描述构图和视角
model
- 类型:字符串
- 必需:否
- 默认值:dall-e-2
- 说明:用于图像生成的模型。
n
- 类型:整数或 null
- 必需:否
- 默认值:1
- 说明:要生成的图片数量。必须在 1-10 之间。dall-e-3 仅支持 n=1。
quality
- 类型:字符串
- 必需:否
- 默认值:standard
- 说明:生成图片的质量。hd 选项会生成更细致和一致的图片。仅 dall-e-3 支持此参数。
response_format
- 类型:字符串或 null
- 必需:否
- 默认值:url
- 说明:返回生成图片的格式。必须是 url 或 b64_json 之一。URL 在生成后 60 分钟内有效。
size
- 类型:字符串或 null
- 必需:否
- 默认值:1024x1024
- 说明:生成图片的尺寸。dall-e-2 必须是 256x256、512x512 或 1024x1024 之一。dall-e-3 必须是 1024x1024、1792x1024 或 1024x1792 之一。
style
- 类型:字符串或 null
- 必需:否
- 默认值:vivid
- 说明:生成图片的风格。必须是 vivid 或 natural 之一。vivid 倾向于生成超现实和戏剧性的图片,natural 倾向于生成更自然、不那么超现实的图片。仅 dall-e-3 支持此参数。
user
- 类型:字符串
- 必需:否
- 说明:代表最终用户的唯一标识符,可帮助 OpenAI 监控和检测滥用行为。
编辑图片
image
- 类型:文件或文件数组
- 必需:是
- 说明:要编辑的图片。
- 对于 dall-e-2:必须是有效的 PNG 文件,小于 4MB,且为正方形。如果未提供 mask,图片必须具有透明度,这将用作蒙版。
- 对于 gpt-image-1:可以提供多个图片作为数组,每个图片应为 PNG、WEBP 或 JPG 文件,小于 25MB。
prompt
- 类型:字符串
- 必需:是
- 说明:期望生成图片的文本描述。
- dall-e-2 最大长度为 1000 字符
- gpt-image-1 最大长度为 32000 字符
mask
- 类型:文件
- 必需:否
- 说明:额外的图片,其完全透明区域(如 alpha 为零的区域)指示应该编辑的位置。如果提供了多个图片,mask 将应用于第一张图片。必须是有效的 PNG 文件,小于 4MB,且与 image 具有相同尺寸。
model
- 类型:字符串
- 必需:否
- 默认值:dall-e-2
- 说明:用于图像生成的模型。支持 dall-e-2 和 gpt-image-1。除非使用了 gpt-image-1 特有的参数,否则默认为 dall-e-2。
quality
- 类型:字符串或 null
- 必需:否
- 默认值:auto
- 说明:生成图片的质量。
- gpt-image-1 支持 high、medium 和 low
- dall-e-2 仅支持 standard
- 默认为 auto
size
- 类型:字符串或 null
- 必需:否
- 默认值:1024x1024
- 说明:生成图片的尺寸。
- gpt-image-1 必须是 1024x1024、1536x1024(横版)、1024x1536(竖版)或 auto(默认)之一
- dall-e-2 必须是 256x256、512x512 或 1024x1024 之一
其他参数与创建图片接口相同。
生成变体
image
- 类型:文件
- 必需:是
- 说明:作为变体基础的图片。必须是有效的 PNG 文件,小于 4MB,且为正方形。
其他参数与创建图片接口相同。
📥 响应
成功响应
所有三个端点都返回包含图片对象列表的响应。
created
- 类型:整数
- 说明:响应创建的时间戳
data
- 类型:数组
- 说明:生成的图片对象列表
usage(仅适用于 gpt-image-1)
- 类型:对象
- 说明:API 调用的令牌使用情况
total_tokens:使用的总令牌数input_tokens:输入使用的令牌数output_tokens:输出使用的令牌数input_tokens_details:输入令牌的详细信息(文本令牌和图像令牌)
图片对象
b64_json
- 类型:字符串
- 说明:如果 response_format 为 b64_json,则包含生成图片的 base64 编码 JSON
url
- 类型:字符串
- 说明:如果 response_format 为 url(默认),则包含生成图片的 URL
revised_prompt
- 类型:字符串
- 说明:如果提示有任何修改,则包含用于生成图片的修改后的提示
示例图片对象:
{
"url": "https://...",
"revised_prompt": "一只可爱的小海獭在水中嬉戏,它有着圆圆的眼睛和毛茸茸的皮毛"
}
🌟 最佳实践
Prompt 编写建议
- 使用清晰具体的描述
- 指定重要的视觉细节
- 描述期望的艺术风格和氛围
- 注意构图和视角的说明
参数选择建议
-
模型选择
- dall-e-3:适合需要高质量、精确细节的场景
- dall-e-2:适合快速原型或简单图像生成
-
尺寸选择
- 1024x1024:通用场景的最佳选择
- 1792x1024/1024x1792:适合横版/竖版场景
- 较小尺寸:适合缩略图或快速预览
-
质量和风格
- quality=hd:用于需要精细细节的图像
- style=vivid:适合创意和艺术效果
- style=natural:适合真实场景再现
gpt-image-2 参数
gpt-image-2 提供了丰富的参数,让你能精细地控制生成效果和成本。
- 参数 类型 说明 示例/备注
- model string 必填。指定使用的模型,目前为 gpt-image-2。 "gpt-image-2"
- prompt string 必填。描述你想要生成图像的文本。模型对多语言(尤其是中文)文字渲染能力很强。 "A serene cat..."
- quality string 可选。生成质量,直接影响价格和生成速度。 "low" (草稿), "medium" (社交媒体), "high" (印刷品)
- size string 可选。输出图像的尺寸。支持多种比例。 "1024x1024" (1:1), "1536x1024" (3:2), "1024x1792" (9:16)
- n integer 可选。一次提示词生成的图像数量。范围是 1-8。 1 (默认), 4
- output_format string 可选。输出图像的格式。 "png" (支持透明背景), "jpeg", "webp"
- background string 可选。设置背景是否为透明。 "auto", "transparent" (需配合 png 格式)
常见问题
-
图片生成失败
- 检查 prompt 是否符合内容政策
- 确认文件格式和大小限制
- 验证 API 密钥权限
-
结果与预期不符
- 优化 prompt 描述
- 调整质量和风格参数
- 考虑使用图片编辑或变体功能
Midjourney 图像格式(Midjourney Proxy/Midjourney Proxy Plus)
请你注意 该接口 非Midjourney官方的接口,而是基于作者 novicezk 的开源项目 midjourney-proxy 实现的midjourney代理接口。 该项目分为两个版本,New API 都已经适配:
- 开源版 midjourney-proxy
- 付费版 midjourney-proxy-plus 这里非常感谢作者的贡献,让我们可以方便使用midjourney的强大功能,如果有时间,请给作者一个Star,如果有能力,建议支持作者的付费版本,该版本支持更多功能。
| 功能类别 | 开源版 | 付费版 |
|---|---|---|
| 基础功能 | ||
| Imagine指令及相关动作 | ✓ | ✓ |
| 垫图支持 | ✓ | ✓ |
| Blend(图片混合) | ✓ | ✓ |
| Describe(图生文) | ✓ | ✓ |
| 任务实时进度 | ✓ | ✓ |
| 中文prompt翻译 | ✓ | ✓ |
| prompt敏感词检测 | ✓ | ✓ |
| user-token连接wss | ✓ | ✓ |
| 多账号配置 | ✓ | ✓ |
| 高级功能 | ||
| Shorten(prompt分析) | ✗ | ✓ |
| 焦点移动(Pan) | ✗ | ✓ |
| 图片变焦(Zoom) | ✗ | ✓ |
| 局部重绘(Vary Region) | ✗ | ✓ |
| 关联按钮动作和Remix模式 | ✗ | ✓ |
| 获取图片seed值 | ✗ | ✓ |
| 账号管理 | ||
| 账号池持久化 | ✗ | ✓ |
| 多种存储支持(Redis/MySQL) | ✗ | ✓ |
| 账号信息获取和设置 | ✗ | ✓ |
| 任务取消功能 | ✗ | ✓ |
| 内置管理后台 | ✗ | ✓ |
| 智能特性 | ||
| MJ V6.0支持 | ✗ | ✓ |
| 账号状态自动监控 | ✗ | ✓ |
| 模式自动切换 | ✗ | ✓ |
| niji・journey Bot支持 | ✗ | ✓ |
| InsightFace人脸服务 | ✗ | ✓ |
| 安全性能 | ||
| 动态配置支持 | ✗ | ✓ |
| token掉线问题修复 | ✗ | ✓ |
| 自动验证功能 | ✗ | ✓ |
| 违禁词自动申诉 | ✗ | ✓ |
📝 简介
Midjourney是一个强大的图像生成和处理模型,可以根据自然语言描述创建、编辑和修改图像。通过提供不同的接口,可以实现各种图像生成和处理任务。
🔄 流程示意图
流程说明
-
初始任务
- Imagine: 文本生成图片
- Blend: 多图混合
- Describe: 图片描述
- Swap Face: 人脸替换
-
图片处理
- U1-U4: 放大操作
- V1-V4: 变体生成
- Pan: 图片平移
- Zoom: 图片缩放
-
特殊流程
- Action + Modal: 需要弹窗确认的操作
- Action 直接执行: 不需要弹窗的操作
-
任务管理
- 获取任务详情
- 获取图片 Seed
- 上传至 Discord
💡 请求示例
提交Imagine任务 ✅
curl --location --request POST 'https://$Burncloud_API_BaseUrl/mj/submit/imagine' \
--header 'Authorization: Bearer $Burncloud_API_KEY' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data-raw '{
"botType": "MID_JOURNEY",
"prompt": "Cat",
"base64Array": [],
"accountFilter": {
"channelId": "",
"instanceId": "",
"modes": [],
"remark": "",
"remix": true,
"remixAutoConsidered": true
},
"notifyHook": "",
"state": ""
}'
响应示例:
{
"code": 1,
"description": "提交成功",
"properties": {},
"result": 1320098173412546
}
提交Blend任务 ✅
curl --location --request POST 'https://$Burncloud_API_BaseUrl/mj/submit/blend' \
--header 'Authorization: Bearer $Burncloud_API_KEY' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data-raw '{
"botType": "MID_JOURNEY",
"base64Array": [
"data:image/png;base64,xxx1",
"data:image/png;base64,xxx2"
],
"dimensions": "SQUARE",
"accountFilter": {
"channelId": "",
"instanceId": "",
"modes": [],
"remark": "",
"remix": true,
"remixAutoConsidered": true
},
"notifyHook": "",
"state": ""
}'
响应示例:
{
"code": 1,
"description": "提交成功",
"properties": {},
"result": 1320098173412546
}
提交Describe任务 ✅
curl --location --request POST 'https://$Burncloud_API_BaseUrl/mj/submit/describe' \
--header 'Authorization: Bearer $Burncloud_API_KEY' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data-raw '{
"botType": "MID_JOURNEY",
"base64": "data:image/png;base64,xxx",
"accountFilter": {
"channelId": "",
"instanceId": "",
"modes": [],
"remark": "",
"remix": true,
"remixAutoConsidered": true
},
"notifyHook": "",
"state": ""
}'
响应示例:
{
"code": 1,
"description": "提交成功",
"properties": {},
"result": 1320098173412546
}
提交Modal ✅
curl --location --request POST 'https://$Burncloud_API_BaseUrl/mj/submit/modal' \
--header 'Authorization: Bearer $Burncloud_API_KEY' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data-raw '{
"maskBase64": "",
"prompt": "",
"taskId": "14001934816969359"
}'
响应示例:
{
"code": 1,
"description": "提交成功",
"properties": {},
"result": 1320098173412546
}
提交swap_face任务 ✅
curl --location --request POST 'https://$Burncloud_API_BaseUrl/mj/insight-face/swap' \
--header 'Authorization: Bearer $Burncloud_API_KEY' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data-raw '{
"sourceBase64": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAkGBwgHBgkIBwgKCgkLDRYPDQwMDRsUFRAWIB0iIiAdHx8kKDQsJCYxJx8fLT0tMTU3Ojo6Iys/RDnYdriP1wsS81kwU8OVs/R3xu8s6bX7+zYnOH8coSqpmRSBjqerjcBlr2OB/lbAf/2Q==",
"targetBase64": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAkGBwgHBgkIBwgKCgkLDRYPDQwMDRsUFRAWIB0iIiAdHx8kKDQsJCYxJx8fLT0tMTU3Ojo6Iys/RD849k="
}'
响应示例:
{
"code": 0,
"description": "string",
"result": "string"
}
执行Action动作 ✅
curl --location --request POST 'https://$Burncloud_API_BaseUrl/mj/submit/action' \
--header 'Authorization: Bearer $Burncloud_API_KEY' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data-raw '{
"chooseSameChannel": true,
"customId": "MJ::JOB::upsample::1::82c51c9d-bc33-4c07-a471-36c3dcb1a6f0",
"taskId": "1728781324658687",
"accountFilter": {
"channelId": "",
"instanceId": "",
"modes": [],
"remark": "",
"remix": true,
"remixAutoConsidered": true
},
"notifyHook": "",
"state": ""
}'
响应示例:
{
"code": 1,
"description": "提交成功",
"properties": {},
"result": 1320098173412546
}
上传文件到discord ✅
curl --location --request POST 'https://$Burncloud_API_BaseUrl/mj/submit/upload-discord-images' \
--header 'Authorization: Bearer $Burncloud_API_KEY' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data-raw '{
"base64Array": [],
"filter": {
"channelId": "",
"instanceId": "",
"remark": ""
}
}'
响应示例:
{
"code": 0,
"description": "string",
"result": [
"string"
]
}
根据ID列表查询任务 ✅
curl --location --request POST 'https://$Burncloud_API_BaseUrl/mj/task/list-by-condition' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer $Burncloud_API_KEY' \
--header 'Content-Type: application/json' \
--data-raw '{
"ids": []
}'
响应示例:
[
{
"action": "IMAGINE",
"buttons": [
{
"customId": "string",
"emoji": "string",
"label": "string",
"style": 0,
"type": 0
}
],
"description": "string",
"failReason": "string",
"finishTime": 0,
"id": "string",
"imageUrl": "string",
"progress": "string",
"prompt": "string",
"promptEn": "string",
"properties": {},
"startTime": 0,
"state": "string",
"status": "NOT_START",
"submitTime": 0
}
]
指定ID获取任务 ✅
curl --location --request GET 'https://$Burncloud_API_BaseUrl/mj/task/{id}/fetch' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer $Burncloud_API_KEY' \
--header 'Content-Type: application/json'
响应示例:
{
"action": "IMAGINE",
"buttons": [
{
"customId": "string",
"emoji": "string",
"label": "string",
"style": 0,
"type": 0
}
],
"description": "string",
"failReason": "string",
"finishTime": 0,
"id": "string",
"imageUrl": "string",
"progress": "string",
"prompt": "string",
"promptEn": "string",
"properties": {},
"startTime": 0,
"state": "string",
"status": "NOT_START",
"submitTime": 0
}
获取任务图片的seed ✅
curl --location --request GET 'https://$Burncloud_API_BaseUrl/mj/task/{id}/image-seed' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer $Burncloud_API_KEY' \
--header 'Content-Type: application/json'
响应示例:
{
"code": 0,
"description": "string",
"result": "string"
}
📮 请求
端点
提交Imagine任务
POST /mj/submit/imagine
根据文本提示创建图片。
提交Blend任务
POST /mj/submit/blend
根据多个输入图片融合生成新图片。
提交Describe任务
POST /mj/submit/describe
根据输入图片生成文字描述。
提交Modal
POST /mj/submit/modal
提交模态信息,用于调整图片生成细节。
提交swap_face任务
POST /mj/insight-face/swap
根据源图片和目标图片进行人脸交换。
执行Action动作
POST /mj/submit/action
对已生成的图片进行后续操作,如放大、调整等。
上传文件到discord
POST /mj/submit/upload-discord-images
将图片上传到discord平台。
根据ID列表查询任务
POST /mj/task/list-by-condition
根据指定的任务ID列表查询任务详情。
指定ID获取任务
GET /mj/task/{id}/fetch
根据任务ID获取任务详情。
获取任务图片的seed
GET /mj/task/{id}/image-seed
获取指定任务生成图片的seed值。
鉴权方法
在请求头中包含以下内容进行 API 密钥认证:
Authorization: Bearer $Burncloud_API_KEY$OPENAI_API_KEY
其中 $OPENAI_API_KEY 是您的 API 密钥。
请求体参数
提交 Imagine 任务
botType
- 类型:枚举字符串
- 必需:否
- 默认值:MID_JOURNEY
- 可选值:
MID_JOURNEY: Midjourney 模型NIJI_JOURNEY: Niji Journey 模型
- 说明:选择使用的 bot 类型
prompt
- 类型:字符串
- 必需:是
- 说明:图像生成的文本提示词
- 提示:
- 使用清晰具体的描述
- 可以包含艺术风格、构图等细节
- 支持英文和中文输入
base64Array
- 类型:字符串数组
- 必需:否
- 说明:垫图的 base64 编码数组
- 格式:每个元素应为完整的 base64 图片字符串,包含 MIME 类型前缀
accountFilter
- 类型:对象
- 必需:否
- 属性:
channelId: 频道 IDinstanceId: 账号实例 IDmodes: 账号模式数组,可选值:RELAX、FAST、TURBOremark: 备注包含的内容remix: 账号是否支持 remixremixAutoConsidered: remix 自动提交设置
notifyHook
- 类型:字符串
- 必需:否
- 说明:任务完成后的回调地址,为空时使用全局 notifyHook
state
- 类型:字符串
- 必需:否
- 说明:自定义状态参数,可用于跟踪请求
提交 Blend 任务
base64Array
- 类型:字符串数组
- 必需:是
- 说明:要混合的图片 base64 编码数组
- 格式:必须包含 2-5 张图片的 base64 字符串
dimensions
- 类型:枚举字符串
- 必需:否
- 可选值:
PORTRAIT: 2:3 比例SQUARE: 1:1 比例LANDSCAPE: 3:2 比例
- 说明:输出图片的宽高比设置
提交 Describe 任务
base64
- 类型:字符串
- 必需:是
- 说明:需要描述的图片的 base64 编码
- 格式:完整的 base64 字符串,包含 MIME 类型前缀
提交 Modal 任务
maskBase64
- 类型:字符串
- 必需:否
- 说明:局部重绘的蒙版图片 base64 编码
prompt
- 类型:字符串
- 必需:否
- 说明:重绘区域的文本提示词
taskId
- 类型:字符串
- 必需:是
- 说明:原始任务的 ID
提交 Swap Face 任务
sourceBase64
- 类型:字符串
- 必需:是
- 说明:人脸源图片的 base64 编码
- 要求:图片必须包含清晰的人脸
targetBase64
- 类型:字符串
- 必需:是
- 说明:目标图片的 base64 编码
- 要求:图片必须包含要替换的人脸
执行 Action 动作
chooseSameChannel
- 类型:布尔值
- 必需:否
- 默认值:false
- 说明:是否选择同一频道下的账号
customId
- 类型:字符串
- 必需:是
- 说明:动作标识符
- 格式:特定格式的字符串,如 "MJ::JOB::upsample::1::xxx"
taskId
- 类型:字符串
- 必需:是
- 说明:要执行动作的任务 ID
上传文件到 Discord
base64Array
- 类型:字符串数组
- 必需:是
- 说明:要上传的图片 base64 编码数组
filter
- 类型:对象
- 必需:否
- 属性:
channelId: 目标频道 IDinstanceId: 账号实例 IDremark: 备注信息
根据 ID 列表查询任务
ids
- 类型:字符串数组
- 必需:是
- 说明:要查询的任务 ID 列表
通用响应格式
所有接口都返回相似的响应结构:
code
- 类型:整数
- 说明:状态码
| 状态码 | 说明 |
|---|---|
| 1 | 提交成功 |
| 22 | 任务排队中 |
| 21 | 参数错误 |
| 23 | 系统错误 |
| 24 | 账号不可用 |
| 25 | 余额不足 |
description
- 类型:字符串
- 说明:响应描述信息
properties
- 类型:对象
- 说明:扩展属性
result
- 类型:字符串或数组
- 说明:返回结果,可能是任务 ID 或其他数据
📥 响应
成功响应
action
- 类型:枚举字符串
- 说明:任务类型
| 字符串值 | 说明 |
|---|---|
IMAGINE |
创建图片 |
UPSCALE |
放大图片 |
VARIATION |
变体生成 |
ZOOM |
缩放图片 |
PAN |
平移图片 |
DESCRIBE |
图片描述 |
BLEND |
图片混合 |
SHORTEN |
缩短提示词 |
SWAP_FACE |
人脸替换 |
buttons
- 类型:对象数组
- 说明:可执行的操作按钮
| 数组包含属性 | 说明 |
|---|---|
customId |
动作标识 |
emoji |
按钮图标 |
label |
按钮文本 |
style |
样式(2=Primary, 3=Green) |
type |
系统内部使用的类型 |
description
- 类型:字符串
- 说明:任务描述信息
failReason
- 类型:字符串
- 说明:任务失败原因
finishTime
- 类型:整数
- 说明:任务完成时间戳
id
- 类型:字符串
- 说明:任务唯一标识符
imageUrl
- 类型:字符串
- 说明:生成图片的URL
progress
- 类型:字符串
- 说明:任务进度信息
prompt
- 类型:字符串
- 说明:原始提示词
promptEn
- 类型:字符串
- 说明:英文提示词
status
- 类型:枚举字符串
- 说明:任务状态
| 字符串值 | 说明 |
|---|---|
NOT_START |
未开始 |
SUBMITTED |
已提交 |
MODAL |
模态操作中 |
IN_PROGRESS |
进行中 |
FAILURE |
失败 |
SUCCESS |
成功 |
CANCEL |
已取消 |
submitTime
- 类型:整数
- 说明:任务提交时间戳
startTime
- 类型:整数
- 说明:任务开始执行时间戳
错误响应
当请求出现问题时,API 将返回错误响应:
HTTP 状态码
400 Bad Request: 请求参数无效401 Unauthorized: API 密钥无效或未提供403 Forbidden: 权限不足404 Not Found: 资源不存在429 Too Many Requests: 请求频率超限500 Internal Server Error: 服务器内部错误
错误响应格式
{
"code": <错误码>,
"description": "错误描述信息",
"result": null
}
💡 最佳实践
Prompt 编写建议
- 使用清晰简洁的语言描述期望的图像内容
- 可以参考Midjourney支持的各种参数来控制图片风格
- 适当使用否定描述以排除不需要的元素
- 可以通过图片URL作为参考来指导生成
图片生成流程
- 提交Imagine任务,获得初步图片
- 必要时通过Blend、Modal等任务进一步优化
- 执行Action动作进行图片微调
- 将满意的结果图片上传保存
图片格式要求
-
支持的图片格式:
-
JPEG/JPG
-
PNG
-
GIF (静态)
-
WEBP
-
-
图片大小限制:
-
文件大小:最大 4MB
-
分辨率:建议 1024x1024 或更高
-
宽高比:支持 1:1、2:3、3:2
-
性能优化建议
-
Base64 编码:
-
使用标准 Base64 编码格式
-
包含正确的 MIME 类型前缀
-
压缩图片以减少数据传输
-
-
任务处理:
-
使用 webhook 接收任务完成通知
-
合理设置重试策略
-
建议使用异步处理方式
-
错误处理
-
实现请求重试机制
-
添加错误日志记录
-
设置合理的超时时间
gemini-3 图片生成API [含4K]
2K图片 / 4K图片
请求
https://ai.burncloud.com/v1beta/models/gemini-3-pro-image-preview:generateContent?key=sk-xxxxxxxxxxxxxxxxxxx'
{
"contents": [
{
"role": "user",
"parts": [
{
"text": "画条狗"
}
]
}
]
, "generationConfig": {
"temperature": 1
,"maxOutputTokens": 32768
,"responseModalities": ["TEXT", "IMAGE"]
,"topP": 0.95
,"imageConfig": {
"aspectRatio": "1:1"
,"imageSize": "4K"
,"imageOutputOptions": {
"mimeType": "image/png"
}
,"personGeneration": "ALLOW_ALL"
}
}
}
参考图生图,改图,还是沿用上面的代码,只是修改以下部分content部分:
{
"contents": [
{
"role": "user",
"parts": [
{
"text": "画条狗"
},
{
"fileData": {
"mimeType": "image/jpeg",
"fileUri": "https://XXXXXX.com/i/2025/01/06/677bbb1f2411d.webp"
}
}
]
}
]