项目简介#
实现代理 MidJourney 的 discord 频道,以 API 形式调用 AI 绘图,更便捷、更灵活!
现有功能#
支持 Imagine 指令和相关 U、V 操作
Imagine 时支持添加图片 base64,作为垫图
支持 Blend (图片混合) 指令和相关 U、V 操作
支持 Describe 指令,根据图片生成 prompt
支持 Imagine、V、Blend 图片生成进度
支持中文 prompt 翻译,需配置百度翻译或 gpt
prompt 敏感词判断,支持覆盖调整
任务队列,默认队列 10,并发 3。可参考 MidJourney 订阅级别 调整 mj.queue
user-token 连接 wss,可以获取错误信息和完整功能
支持 discord 域名 (server、cdn、wss) 反代,配置 mj.ng-discord
使用前提#
注册 MidJourney,创建自己的频道,参考
https://docs.midjourney.com/docs/quick-start
获取用户 Token、服务器 ID、频道 ID
风险须知#
作图频繁等行为,可能会触发 midjourney 账号警告,请谨慎使用
为减少风险,请设置 mj.discord.user-agent 和 mj.discord.session-id
默认使用 user-wss 方式,可以获取 midjourney 的错误信息、图片变换进度等,但可能会增加账号风险
支持设置 mj.discord.user-wss 为 false,使用 bot-token 连接 wss,需添加自定义机器人:流程说明
Railway 部署#
基于 Railway 平台部署,不需要自己的服务器:部署方式;若 Railway 不能使用,可用下方的 Zeabur 部署
Zeabur 部署#
基于 Zeabur 平台部署,不需要自己的服务器:部署方式
Docker 部署#
-
/xxx/xxx/config 目录下创建 application.yml (mj 配置项)、banned-words.txt (可选,覆盖默认的敏感词文件);参考 src/main/resources 下的文件
-
启动容器,映射 config 目录
docker run -d --name midjourney-proxy \
-p 8080:8080 \
-v /xxx/xxx/config:/home/spring/config \
--restart=always \
novicezk/midjourney-proxy:2.3.5
3. 访问 http://ip:port/mj 查看 API 文档
附:不映射 config 目录方式,直接在启动命令中设置参数
docker run -d --name midjourney-proxy \
-p 8080:8080 \
-e mj.discord.guild-id=xxx \
-e mj.discord.channel-id=xxx \
-e mj.discord.user-token=xxx \
--restart=always \
novicezk/midjourney-proxy:2.3.5
配置项#
mj.discord.guild-id:discord 服务器 ID
mj.discord.channel-id:discord 频道 ID
mj.discord.user-token:discord 用户 Token
mj.discord.session-id:discord 用户的 sessionId,不设置时使用默认的,建议从 interactions 请求中复制替换掉
mj.discord.user-agent:调用 discord 接口、连接 wss 时的 user-agent,默认使用作者的,建议从浏览器 network 复制替换掉
mj.discord.user-wss:是否使用 user-token 连接 wss,默认 true
mj.discord.bot-token:自定义机器人 Token,user-wss=false 时必填
更多配置查看