Ideal House
Zum Hauptinhalt springen

API-Aufgabenlimit#

Generierungs-APIs verarbeiten Aufgaben asynchron. Bei erfolgreicher Aufgabenerstellung gibt die API eine taskId zurück. Verwenden Sie den Ergebnis-Endpunkt, um Aufgabenstatus, Fortschritt, Warteschlangenposition und endgültige Ausgabe zu prüfen.

Dieses Dokument erläutert die öffentlichen Aufgabenlimits für API-Integrationen, einschließlich Anfragen pro Minute, anstehender Jobs und der Abbuchung von Credits bei der Einreichung mehrerer Aufgaben.


Zusammenfassung der Rate-Limits#

Die Generierungs-APIs verwenden kein festes öffentliches Anfragen-pro-Minute-Limit für die Aufgabenerstellung. Das praktische Limit basiert darauf, wie viele offene Jobs ein Konto gleichzeitig hat.

WorkflowAnfragen pro MinuteGleichzeitige / unvollendete JobsKreditabrechnung
AI 3DKein festes öffentliches RPM-Limit1 laufender Auftrag gleichzeitig. Weitere eingereichte Aufträge warten in der Warteschlange.Abrechnung pro angenommener Aufgabe
Andere Generierungs-APIsKein festes öffentliches RPM-LimitBis zu 30 offene Jobs pro Konto und WorkflowAbgerechnet pro angenommene Aufgabe

Offene Jobs umfassen sowohl wartende als auch laufende Jobs.

Das 30-Job-Limit ist ein Aufgabenlimit, kein Credit-Paket oder kostenloses Kontingent. Jede angenommene Generierungsaufgabe wird gemäß den Credit-Regeln dieser API abgerechnet.


Aufgabenstatus#

StatusBedeutungZählt als offen
UnprocessedDie Aufgabe wurde akzeptiert und wartet auf AusführungJa
ProcessingDie Aufgabe läuft geradeJa
SuccessDie Aufgabe wurde erfolgreich abgeschlossenNein
FailedDie Aufgabe ist fehlgeschlagenNein

Der Ergebnis-Endpunkt kann auch waitNumber zurückgeben, was die Warteschlangenposition für eine wartende Aufgabe angibt. Wenn eine Aufgabe ausgeführt wird oder abgeschlossen ist, ist waitNumber in der Regel 0.


AI 3D-Aufgaben#

AI 3D-Aufgaben werden nacheinander verarbeitet.

Sie können mehrere AI 3D-Aufgaben einreichen, und jede erfolgreiche Einreichung gibt eine taskId zurück. Allerdings läuft nur eine AI 3D-Aufgabe gleichzeitig. Zusätzliche AI 3D-Aufgaben warten, bis die aktuelle Aufgabe abgeschlossen ist.

Empfohlenes Integrationsverhalten:

  1. Speichern Sie die zurückgegebene taskId.
  2. Fragen Sie den Ergebnis-Endpunkt alle 3-5 Sekunden ab.
  3. Betrachten Sie Unprocessed als wartend.
  4. Betrachten Sie Processing als aktiv laufend.
  5. Verwenden Sie waitNumber und percentage, um den Nutzern den Fortschritt anzuzeigen.

Andere Generierungsaufgaben#

Für andere Generierungsworkflows als AI 3D kann jedes Konto bis zu 30 offene Aufträge für denselben Workflow haben.

Dies ist ein Kontolimit. Wenn mehrere API-Schlüssel unter demselben Konto erstellt werden, teilen sie dasselbe Limit.

Dies bedeutet nicht immer, dass alle 30-Jobs genau im selben Moment laufen. Einige Jobs können warten, andere laufen. Das Limit zählt beide.

Wenn das Konto bereits 30 offene Jobs für einen Workflow hat, können neue Aufgabeinreichungen für diesen Workflow vorübergehend abgelehnt werden, bis die bestehenden Jobs abgeschlossen sind.

CodeNameBedeutung
9015TASK_NOT_COMPLETEDDas Konto hat das Limit für offene Jobs für diesen Workflow erreicht. Wiederholen Sie den Versuch, nachdem bestehende Jobs abgeschlossen sind.

Credits und offene Jobs#

Credits werden abgezogen, wenn eine Generierungsaufgabe erfolgreich erstellt wird. Wenn die Aufgabe letztendlich fehlschlägt, werden die abgezogenen Credits automatisch erstattet.

Das Limit für offene Jobs ändert nicht die Credit-Kosten jeder Aufgabe. Wenn Sie mehrere Aufgaben einreichen, wird jede angenommene Aufgabe separat abgerechnet.

Beispiele:

BeispielAktive offene JobsBei Aufgabenerstellung abgezogene Credits
30 Aufgaben zum Ändern von Möbeln einreichen3030 × 1 Guthabeneinheit = 30 Guthabeneinheiten
30 Aufgaben zur Raumdekoration mit modelType: "Base" einreichen3030 × 3 Guthabeneinheiten = 90 Guthabeneinheiten
30 Aufgaben zur Raumdekoration mit modelType: "Pro" einreichen3030 × 10 Guthabeneinheiten = 300 Guthabeneinheiten
10 Aufgaben zur Gartengestaltung mit Flash, 10 mit Base und 10 mit Pro einreichen3010 × 1 + 10 × 3 + 10 × 10 = 140 Guthabeneinheiten

Die vollständige Tabelle finden Sie in der Referenz zum Guthabenverbrauch.

Das Abfragen des Ergebnis-Endpunkts erstellt keine neue Generierungsaufgabe und zählt nicht als offener Auftrag.


Vorübergehende "Service besetzt"-Antworten#

In einigen Fällen können neue Aufgabeinreichungen vorübergehend abgelehnt werden, weil der Service beschäftigt ist. Dies kann auch passieren, wenn Ihr Konto weniger als 30 offene Jobs hat.

CodeNameBedeutung
5020QUEUE_TASK_OVERFLOWDer Service ist derzeit beschäftigt. Versuchen Sie es später erneut.

Dies ist vorübergehend. Behandeln Sie dies nicht als dauerhaften Fehler.


Empfohlenes Client-Verhalten#

  1. Speichern Sie jede zurückgegebene taskId.
  2. Prüfen Sie den Aufgabenstatus regelmäßig.
  3. Führen Sie eine lokale Liste offener Jobs pro Konto und Workflow.
  4. Entfernen Sie Jobs aus der offenen Liste, wenn der Status Success oder Failed wird.
  5. Für Nicht-AI-3D-Workflows halten Sie offene Jobs bei oder unter 30, bevor Sie weitere einreichen.
  6. Wenn Sie 9015 oder 5020 erhalten, wiederholen Sie den Versuch nach einer Verzögerung.

Vorgeschlagenes Wiederholungsverhalten:

SituationEmpfohlene Aktion
9015 TASK_NOT_COMPLETEDWarten Sie, bis bestehende Jobs desselben Kontos und Workflows abgeschlossen sind, und wiederholen Sie dann.
5020 QUEUE_TASK_OVERFLOWWarten und mit Backoff wiederholen.
Aufgabe ist UnprocessedWeiterhin abfragen; die Aufgabe wartet.
Aufgabe ist ProcessingWeiterhin abfragen; die Aufgabe läuft.

Benötigen Sie höhere Durchsatzkapazität?#

Falls das Standardlimit von 30 offenen Aufträgen pro Konto und Workflow Ihre Integrationsanforderungen nicht erfüllt, kontaktieren Sie uns unter [email protected]. Wir können Ihren Anwendungsfall prüfen und Optionen für höheren Durchsatz oder eine individuelle Vereinbarung besprechen.