代理 MidJourney 的discord频道,实现api形式调用AI绘图
- 支持 Imagine 指令和相关U、V操作
- Imagine 时支持添加图片base64,作为垫图
- 支持 Describe 指令,根据图片生成 prompt
- 支持 Blend 指令,多个图片混合
- 支持 Imagine、V、Blend 图片生成进度
- 支持中文 prompt 翻译,需配置百度翻译或 gpt
- prompt 敏感词判断,支持覆盖调整
- 任务队列,默认队列10,并发3。可参考 MidJourney订阅级别 调整mj.queue
- 可选 user-token 连接 wss,以获取错误信息和完整功能
- 支持 discord域名(server、cdn、wss)反代,配置 mj.ng-discord
- 支持 Blend 指令后续的U、V操作
- 支持 Reroll 操作
- 支持接口和页面启用鉴权
- 支持配置账号池,分发绘图任务
- 修复相关Bug,Wiki / 已知问题
- 科学上网
- docker环境
- 注册 MidJourney,创建自己的频道,参考 https://docs.midjourney.com/docs/quick-start
- 添加自己的机器人: 流程说明
- user-wss方式,可不添加自己的机器人,但仍需参考流程的第4、5步,获取用户Token、服务器ID、频道ID
- 作图频繁等行为,触发midjourney验证码后,需尽快人工验证
- user-wss方式可以获取midjourney的错误信息、支持图片变换进度,但可能会增加账号风险
- /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.1.6
- 访问
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 \
-e mj.discord.bot-token=xxx \
--restart=always \
novicezk/midjourney-proxy:2.1.6
- 常见问题及解决办法见 Wiki / FAQ
- 在 Issues 中提出其他问题或建议
- 感兴趣的朋友也欢迎加入交流群讨论一下,扫码进群名额已满,加管理员微信邀请进群
- mj.discord.guild-id:discord服务器ID
- mj.discord.channel-id:discord频道ID
- mj.discord.user-token:discord用户Token
- mj.discord.user-wss:是否使用user-token连接wss,默认false(使用bot-token)
- mj.discord.user-agent:调用discord接口、连接wss时的user-agent,默认使用作者的,建议从浏览器network复制替换掉
- mj.discord.bot-token:自定义机器人Token,user-wss=false时必填
- 更多配置查看 Wiki / 配置项
- 依赖java17和maven
- 更改配置项: 修改src/main/application.yml
- 项目运行: 启动ProxyApplication的main函数
- 更改代码后,构建镜像:
docker build . -t midjourney-proxy
- wechat-midjourney : 代理微信客户端,接入MidJourney,仅示例应用场景,不再更新
- stable-diffusion-mobileui : SDUI,基于本接口和SD,可一键打包生成H5和小程序
- 依赖此项目且开源的,欢迎联系作者,加到此处展示
如果觉得这个项目对你有所帮助,请帮忙点个star;也可以请作者喝杯茶~