基于 Discord 的 Midjourney API。
使用教程参考:Midjourney|如何集成到自己的平台
sequenceDiagram
participant ThirdServer
participant APIServer
participant DiscordAPI
ThirdServer->>APIServer: 请求接口传入提示词
APIServer->>DiscordAPI: 调接口触发绘画任务
APIServer-->>ThirdServer: 返回是否触发成功
DiscordAPI->>DiscordAPI: 触发Midjourney bot绘画任务
DiscordAPI->>DiscordAPI: 监听MidJourney bot消息
DiscordAPI-->>APIServer: 返回监听实时消息
APIServer-->>ThirdServer: 回调,传输结果
git clone
poetry install
将文件.env.template
重命名为.env
,并填入参数值:
USER_TOKEN=用户token
BOT_TOKEN=机器人token
GUILD_ID=服务器ID
CHANNEL_ID=频道ID
CALLBACK_URL=回调地址,默认http post请求
# discord会嵌入在fastapi内运行
python main.py
- 更改
settings.py
内DISCORD_EMBED_IN_FASTAPI_ENABLED = False
- 启动discord机器人:
python main_discord.py
- 启动fastapi:
python main.py
填写 start.sh 中 -e
后的环境变量,直接启动:
sh start.sh
或者本地构建镜像:
# 构建镜像
sh build.sh
# 启动容器
sh start.sh
接口swagger
文档:http://127.0.0.1:8062/docs
-
/v1/midjounery/imagine
:触发绘画任务 -
/v1/midjounery/upscale
:U -
/v1/midjounery/variation
:V -
/v1/midjounery/reset
:重绘 -
/v1/midjounery/upload
:上传图片,触发任务,待开发
:warn: 需要在 .env 中配置
CALLBACK_URL=http://localhost:8062/v1/trigger
(默认地址,部署时需要调整域名)
-
/v1/trigger
:查看触发的任务
- 文生图
- upscale
- variation
- reset
- 图生图
- integrate fastapi with websocket listening discord message.