常见问题解答

TTAPI 的Midjourney API 常见问题解答汇总

Midjourney 账户最大队列数是什么?为什么限制账户队列数量?

首先我们需要理解Midjourney账户最大队列数:指的单账户的 支持同时进程中的生成任务数量 并不是指传统的QPS ,其中生成任务包含所有指令操作以及按钮操作 imagine,blend,describe,U,V 等等。

下图为Midjourney官方的对于不同订阅账户的任务数详解。

TTAPI的最大队列数的概念与Midjourney同理。

TTAPI 默认注册账户最大队列数为10。如需调整,请联系我们

Midjourney 非法prompt 惩罚机制

平台自创立初期至今,在不断地于Midjourney官方封禁机制“缠斗”的过程中总结了的大量的账户使用经验,其中较为关键的一条就是重复提交非法的prompt上。

官方衡量非法的prompt主要基于两个标准,

  • Midjourney不支持的,不合法的命令格式。例如:“...--ar16:9”,ar命令后缺少空格;“...--niji”,niji后缺少版本号等等诸如此类的问题

  • Prompt中的文字或者图片包含NSFW或不符合PG-13标准的内容。

鉴于以上两点会对平台的公共账号池造成一定程度的封禁影响,TTAPI整体优化了 Prompt Checker 模块,并通过多种能力对文本以及图片进行前置安全效验,虽然这样大幅度避免了非法prompt对平台账户池的影响,但是这些东西无疑加大API的资金与人力投入成本,特此推出了 非法prompt的惩罚机制。具体规则如下:

  • 每个用户每天违规提交prompt上限暂定为30次,超过30次之后冻结额度将不再退还。

  • 违规prompt范围 包括通过了TTAPI的 Keywords FilterCommand Check ,在后续环节出现非法prompt的请求。计数的prompt的message信息均包含为以下开头的:[Invalid parameter], [Banned prompt detected], [Image denied], [Invalid link], [Invalid prompt], [TTAPI prompt filter], [TTAPI image filter]

一次imagine的请求过程中,会有如下所示环节出现非法prompt,其中只有最后两个环节紫色标记的环节会记为 “违规pormpt”。同时这两个环节的任务数据已存入TTAPI中,所以结果通常是异步的。

API交互说明,什么是异步回调?

Midjourney API 除去fetch接口之外的所有接口,同步返回状态并不是终态

获取任务最终结果

方式一:通过异步回调,其中jobId最为任务唯一标识,可以使用 https://webhook-test.com/ 进行测试接口回调数据。

方式二:通过返回的jobId使用fetch接口查询

常见失败任务以及原因

该栏目只介绍同步任务提交成功, 异步hook 或者 fetch 返回任务失败的相关情况,结构体如下:

{
    "status": "FAILED",
    "message": "[Bad response] Internal Error.",
    "jobId": "f6a5a78d-35d0-b976-1624-3049aa8c8868",
    "data": {
        "action": "imagine",
        "jobId": "f6a5a78d-35d0-b976-1624-3049aa8c8868",
        "progress": null,
        "prompt": "Mermaid-tailed baby vampire emerging from an egg --ar 1:1",
        "discordImage": null,
        "cdnImage": null,
        "hookUrl": "http://apis.mjapiapp.com/mj/notify/tt-api",
        "components": null,
        "seed": null,
        "images": null
    }
}

其中message代表任务失败的原因,枚举以及解答如下:

message详解

Job Timeout

ttapi 任务超时。

情况1:接口请求时未设置timeout字段或者设置的timeout字段太小。

情况2:midjourney官方宕机,midjourney处理高频流量从v5至今几乎每隔一段时间就会各种宕机,挂起等等问题,可以查看官方的状态页面实时查看。 情况3:discord/midjourney接口临时更新,ttapi在指定时间内未同步到任务的状态,导致超时(此种情况概率很小,但存在)。

[Banned prompt detected] Sorry! Our AI moderator thinks this...

提交的prompt中文字内容违反了midjourney管方的 NSFW (Not Safe For Work)规定。

[Image denied] Request cancelled due to image filters...

提交的prompt中图片链接违反了midjourney管方的 NSFW (Not Safe For Work)规定。

Failed to process your command...

Midjourney Bot: Failed to process your command :c

[Internal error] Something went wrong...

[Internal server error] Apologies, something went wrong...

Execution error, system exception... [Error!] Invalid template: Empty list [Describe error] Unknown error

midjourney官方错误,官方未作出解释的奇奇怪怪错误。

[Invalid link!]...

midjourney获取你prompt中的图片链接失败

Unknown Integration Unknown Message 未知消息 未知集成

ttapi平台midjourney账户池中某个账户异常未捕获,频繁出现此问题请联系我们,我们将在第一时间处理

[Invalid parameter] Invalid value ...

prompt中的命令错误。例如想使用v6模式,v6的前边未加 -- 指令符、--cref未配合 -- v 6.0使用等等

其他异常

如有疑问请联系我们

TTAPI存储持久化问题

图片存储时效:生成的图片每张的空间实是很大的,随着平台的运营,所占用的空间会越来越大。ttapi经营良好的情况下,我们会不断采购服务器,原则上来说图片地址会永久保存。如果后续成本增高或者其他情况需要节约成本,我们会最少保留近一个月的图片,从后往前清理空间,清理前会有通告通知所有用户。

PPU生成记录存储:PPU模式下Midjourney的使用记录平台最多存储近一个月的数据

PPU模式 & Hold Account(账户托管模式)

  • PPU 模式: Pay for Per Use, 按量付费,host使用https://api.ttapi.io

  • Hold Account 模式: 托管你的账户在TTAPI平台使用 Midjourney API, host使用https://hold.ttapi.io

  • 两种模式除去接口使用的域名不一样,其他方式均为一致,托管模式仅需支付按月支付托管账户的订阅费用,其他任用任意Midjourney相关接口不再消耗TTAPI平台的quota

  • 托管模式暂不支持 getUImagesTTAPI持久化存储字段。

为什么V6模式相对于V5模式更为昂贵

TTAPI的整体接口定价都是依据Midjourney账户的GPU消耗情况进行定价的,是相对于市场上的其他平台的乱定价以及一刀切更为合理,更为符合实际成本的正确定价

经过观察v6模式下的操作消耗GUP时间至少是其他模式的1.5倍,并且imagine接口是实际使用中最为频繁的接口,因此fast模式下平台的imagine接口的v6版本更为昂贵

Last updated