分享Midjourney API 接口的正确使用姿势(mj api)

1,044 阅读3分钟

项目背景

Midjourney 这一产品,相信大多数人都不陌生了,但是Midjourney并没有提供任何的API服务,Midjourney继今年2月份升级v6版本之后,生成的图片质量可谓是大幅度提升,事实上从v5版本开始就已经有很多可以商业化使用的场景了。

很多企业以及个人会有API使用的需求,当然我们也是其中之一,在23年这个需求就一直是存在的,网络上到处铺天盖地的开源源码,但是实际感觉并不适用,而且开源源码搭建使用起来也存在一定风险。TTApi平台基于Midjourney现有功能整理出一套完整的可集成性高的API服务,如果你有类似的需求,那么恭喜你找到了正确的使用方式。

使用方式

  • 首先:注册TTApi平台, 注册地址,注册后跳转至激活页面 activation.png
  • 点击 Send Activate Email,发送激活邮件至您的邮箱 activation.png
  • 在您的邮箱中点击Verify Email(如果找不到激活邮件,有可能被邮件服务商勿拦,请翻阅垃圾邮件) home.png home.png
  • 点击后即激活成功,自动跳转至平台主页,同时您的邮件中将会收到成功邮件,首页点击转个人中心即可查看TT-API-KEY以及其他相关信息
  • 注册激活成功系统赠送100quota,可以免费请求33次imagine接口。具体相关支持请查看文档地址

功能特点

  • 包含Midjourney目前所有功能 imagine U V zoom pan vary blend describe seed 等等
  • 支持Midjourney所有命令 --v --cref --ar 等等
  • 支持webhook回调任务状态交互以及主动查询任务结果

Imagine接口示例

import requests

endpoint = "https://api.ttapi.io/midjourney/v1/imagine"

headers = {
    "TT-API-KEY": your_key
}

data = {
    "prompt": "a cute cat",
    "mode": "fast",
    "hookUrl": "",
    "timeout": 300
}

response = requests.post(endpoint, headers=headers, json=data)

print(response.status_code)
print(response.json())

参数详解

  • header中的TT-API-KEY为全局必传参数,所有请求都需要使用,个人中心中即可获得
  • mode是我们要使用的模式支持 fast,relax,turbo对应的也就是midjourney的模式,不设置默认为fast
  • timeout参数为超时时间设置,fast模式一般300秒以内即可,relax模式一般600秒以内即可,不设置默认为300
  • hookUrl为任务成功失败回调的地址,注意该地址请保证一定可以接收请求,任务状态数据会以json格式返回到该地址,以http状态码为准200即认为通知成功,http状态码非200最多会进行通知三遍

计费说明

Midjourney的不同操作以及在不同模式下消耗的账户订阅套餐的GPU时间是不相同的,TTApi的mj服务计费同理,详见费用说明文档

技术之外

如果对我的服务有任何想法以及建议欢迎各位指出,这个平台一开始的出发点也是因为自己的实际业务需要使用,后续发现越来越多的同行企业或是个人有同样的需求,但是疲于跟官方不停的“斗智斗勇”,所以干脆做了一个平台,能赚取一些零花钱的同时能给各位coder同行提供便利。