UIUIAPI AI调用代码示例
  1. 🖼️ 图像(Image)
UIUIAPI AI调用代码示例
  • UIUIAPI聚合平台AI api调用说明
  • 💬 聊天(Chat)
    • OpenAI 对话格式(Chat Completions)
    • OpenAI 响应格式(Responses)
    • OpenAI 对话格式(Python)
    • Anthropic 对话格式(Messages)
    • Anthropic 对话格式(Python)
    • Deepseek reasoning 对话格式(类Chat Completions)
    • Google Gemini 对话格式(Generate Content)
  • 🔤 嵌入(Embeddings)
    • OpenAI 嵌入格式(Embeddings)
  • 🔄 重排序(Rerank)
    • Jina AI 重排序格式(Rerank)
    • Cohere 重排序格式(Rerank)
    • Xinference 重排序格式(Rerank)
  • ⚡ 实时对话(Realtime)
    • OpenAI 实时对话接口
  • 🖼️ 图像(Image)
    • OpenAI 图像格式(Dall·E)
    • Midjourney 图像格式(Midjourney Proxy/Midjourney Proxy Plus)
    • GPT-4o生图格式
    • GPT 编图格式
  • 🔊 音频(Audio)
    • OpenAI 音频格式
  • 🎵 音乐(Music)
    • Suno 音乐格式(Music)
  • 🤖AI在线工具
    • UIUIChat在线助手使用教程
  1. 🖼️ 图像(Image)

Midjourney 图像格式(Midjourney Proxy/Midjourney Proxy Plus)

请你注意
该接口 非Midjourney官方的接口,而是基于作者 novicezk 的开源项目 midjourney-proxy 实现的midjourney代理接口。
该项目分为两个版本,UIUI 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是一个强大的图像生成和处理模型,可以根据自然语言描述创建、编辑和修改图像。通过提供不同的接口,可以实现各种图像生成和处理任务。

🔄 流程示意图#

2181129.png

流程说明#

1.
初始任务
2.
Imagine: 文本生成图片
3.
Blend: 多图混合
4.
Describe: 图片描述
5.
Swap Face: 人脸替换
6.
图片处理
7.
U1-U4: 放大操作
8.
V1-V4: 变体生成
9.
Pan: 图片平移
10.
Zoom: 图片缩放
11.
特殊流程
12.
Action + Modal: 需要弹窗确认的操作
13.
Action 直接执行: 不需要弹窗的操作
14.
任务管理
15.
获取任务详情
16.
获取图片 Seed
17.
上传至 Discord

💡 请求示例#

提交Imagine任务 ✅#

响应示例:

提交Blend任务 ✅#

响应示例:

提交Describe任务 ✅#

响应示例:

提交Modal ✅#

响应示例:

提交swap_face任务 ✅#

响应示例:

执行Action动作 ✅#

响应示例:

上传文件到discord ✅#

响应示例:

根据ID列表查询任务 ✅#

响应示例:

指定ID获取任务 ✅#

响应示例:

获取任务图片的seed ✅#

响应示例:

📮 请求#

端点#

提交Imagine任务#

根据文本提示创建图片。

提交Blend任务#

根据多个输入图片融合生成新图片。

提交Describe任务#

根据输入图片生成文字描述。

提交Modal#

提交模态信息,用于调整图片生成细节。

提交swap_face任务#

根据源图片和目标图片进行人脸交换。

执行Action动作#

对已生成的图片进行后续操作,如放大、调整等。

上传文件到discord#

将图片上传到discord平台。

根据ID列表查询任务#

根据指定的任务ID列表查询任务详情。

指定ID获取任务#

根据任务ID获取任务详情。

获取任务图片的seed#

获取指定任务生成图片的seed值。

鉴权方法#

在请求头中包含以下内容进行 API 密钥认证:
其中 $OPENAI_API_KEY 是您的 API 密钥。

请求体参数#

提交 Imagine 任务#

botType#
类型:枚举字符串
必需:否
默认值:MID_JOURNEY
可选值:
MID_JOURNEY: Midjourney 模型
NIJI_JOURNEY: Niji Journey 模型
说明:选择使用的 bot 类型
prompt#
类型:字符串
必需:是
说明:图像生成的文本提示词
提示:
使用清晰具体的描述
可以包含艺术风格、构图等细节
支持英文和中文输入
base64Array#
类型:字符串数组
必需:否
说明:垫图的 base64 编码数组
格式:每个元素应为完整的 base64 图片字符串,包含 MIME 类型前缀
accountFilter#
类型:对象
必需:否
属性:
channelId: 频道 ID
instanceId: 账号实例 ID
modes: 账号模式数组,可选值:RELAX、FAST、TURBO
remark: 备注包含的内容
remix: 账号是否支持 remix
remixAutoConsidered: 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: 目标频道 ID
instanceId: 账号实例 ID
remark: 备注信息

根据 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: 服务器内部错误

错误响应格式#

💡 最佳实践#

Prompt 编写建议#

1.
使用清晰简洁的语言描述期望的图像内容
2.
可以参考Midjourney支持的各种参数来控制图片风格
3.
适当使用否定描述以排除不需要的元素
4.
可以通过图片URL作为参考来指导生成

图片生成流程#

1.
提交Imagine任务,获得初步图片
2.
必要时通过Blend、Modal等任务进一步优化
3.
执行Action动作进行图片微调
4.
将满意的结果图片上传保存

图片格式要求#

1.
支持的图片格式:
2.
JPEG/JPG
3.
PNG
4.
GIF (静态)
5.
WEBP
6.
图片大小限制:
7.
文件大小:最大 4MB
8.
分辨率:建议 1024x1024 或更高
9.
宽高比:支持 1:1、2:3、3:2

性能优化建议#

1.
Base64 编码:
2.
使用标准 Base64 编码格式
3.
包含正确的 MIME 类型前缀
4.
压缩图片以减少数据传输
5.
任务处理:
6.
使用 webhook 接收任务完成通知
7.
合理设置重试策略
8.
建议使用异步处理方式

错误处理#

实现请求重试机制
添加错误日志记录
设置合理的超时时间
修改于 2025-05-17 13:56:02
上一页
OpenAI 图像格式(Dall·E)
下一页
GPT-4o生图格式
Built with