• 基于Python实现Midjourney集成到(个人/公司)平台中


    目前Midjourney没有对外开放Api,想体验他们的服务只能在discord中进入他们的频道进行体验或者把他们的机器人拉入自己创建的服务器中;而且现在免费的也用不了了,想使用就得订阅。本教程使用midjourney-api这个开源项目,搭建Midjourney相关接口服务,以集成到个人平台中~

    本文默认大家已有discord平台账号以及VPN~

    1.Discord创建个人服务器

    在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

    2. 添加Midjourney机器人到上述服务器中

    (1)点击“探索可发现的服务器”
    (2)点击“主页”
    (3)点击下面特色社区中的“Midjourney”
    (4)点击“Midjourney”后:
    在这里插入图片描述(5)点击页面顶部提示的“加入Midjourney”,关注Midjourney机器人
    (6)点击如下图中的“添加到服务器”,把Midjourney机器人添加到自己服务器中在这里插入图片描述(7)然后就能再自己的服务器中通过命令使用了:
    在这里插入图片描述如果没订阅,就会让你订阅了!
    一步步按照提示来就行~

    3. 创建自定义机器人

    (1)打开一个新标签访问:https://discord.com/developers/applications
    在这里插入图片描述在这里插入图片描述(2)机器就创建完毕,获取机器人的Token ,点击 Reset Token 重置令牌后Copy下来
    在这里插入图片描述
    (3)操作应用授权设置OAuth2
    在这里插入图片描述在这里插入图片描述(4)把复制的url在一个新标签打开并按提示操作,这就将创建的自定义机器人添加到自己服务器中了~

    (5)最后一步是允许外部监听获取消息内容,这一步很重要,如果不允许外部监听获取消息内容的话,到开发阶段,自己开发的程序中的WebScoket消息监听接收器只会接收到空白的消息里面不包含任何字符,只有允许外部监听获取消息内容才可以获取到消息内容,这个消息内容是我们处理自己的业务最重要的数据,所以必须开启。
    在这里插入图片描述到现在为止,所有准备工作就都做完了。下面就开始使用开源项目Midjourney-api来出md的接口了~

    4. 使用Midjourney-api集成到个人平台上

    midjourney-api的github中有文章讲解:
    在这里插入图片描述

    使用示例:

    Python添加文生图任务:

    import requests
    
    headers = {
        'accept': 'application/json',
        'Content-Type': 'application/json',
    }
    
    json_data = {
        'type': 'generate',
        'prompt': 'draw a dog',
        'msg_id': '',
        'msg_hash': '',
        'index': 0,
    }
    
    response = requests.post('http://127.0.0.1:8062/v1/api/trigger/imagine', headers=headers, json=json_data)
    print(response.text)
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18

    回调接口:

    from flask import Flask, request
    
    app = Flask(__name__)
    
    
    @app.route('/Upload', methods=['POST'])
    def handle_post_request():
        data = request.get_json()  
        print(data)
    
        return 'Success'  
    
    
    if __name__ == '__main__':
        app.run('0.0.0.0', 5005)
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    回调接口接收到的最终数据:
    在这里插入图片描述

  • 相关阅读:
    ARMv7系统寄存器
    ip 网段设置 --chatGPT
    软考 - 操作系统
    OpenCV:02基础知识和绘制图形
    *常用函数
    go语言与c语言调用的方法
    Audition RMS计算原理解析
    树结构及其算法-线索二叉树
    Java安全机制之一——SecurityManager和AccessController
    基于Springboot实现课程评分系统设计和实现
  • 原文地址:https://blog.csdn.net/qq_44907926/article/details/136128312