Ideal House
Aller au contenu principal

Limite de tâches de l'API#

Les API de génération utilisent un traitement asynchrone des tâches. Lorsqu'une tâche est créée avec succès, l'API renvoie un taskId. Utilisez le point de terminaison des résultats pour vérifier le statut de la tâche, sa progression, sa position dans la file d'attente et son résultat final.

Ce document explique les limites publiques de tâches pour les intégrations API, y compris les requêtes par minute, les tâches inachevés et la manière dont les crédits sont facturés lors de la soumission de plusieurs tâches.


Résumé des limites de débit#

Les API de génération n'utilisent pas de limite publique fixe en requêtes par minute pour la création de tâches. La limite pratique est basée sur le nombre de tâches inachevés qu'un compte possède simultanément.

Flux de travailRequêtes par minuteTâches simultanés / inachevésFacturation des crédits
3D IAPas de limite RPM publique fixe1 tâche en cours à la fois. Les tâches soumis supplémentaires attendent dans la file d'attente.Facturé par tâche acceptée
Autres API de générationPas de limite RPM publique fixeJusqu'à 30 tâches inachevés par compte et flux de travailFacturé par tâche acceptée

Les tâches inachevés comprennent à la fois les tâches en attente et les tâches en cours.

La limite de 30 tâches est une limite de nombre de tâches, pas un forfait de crédits ou un quota gratuit. Chaque tâche de génération acceptée est facturée selon les règles de crédits de cette API.


Statut de la tâche#

StatutSignificationCompté comme non terminé
UnprocessedLa tâche a été acceptée et attend d'être exécutéeOui
ProcessingLa tâche est actuellement en cours d'exécutionOui
SuccessLa tâche s'est terminée avec succèsNon
FailedLa tâche a échouéNon

Le point de terminaison de résultat peut également renvoyer waitNumber, qui indique la position dans la file d'attente pour une tâche en attente. Lorsqu'une tâche est en cours ou terminée, waitNumber est généralement 0.


Tâches 3D IA#

Les tâches 3D IA sont traitées une par une.

Vous pouvez soumettre plusieurs tâches 3D IA et chaque soumission réussie renvoie un taskId. Cependant, une seule tâche 3D IA s'exécute à la fois. Les tâches 3D IA supplémentaires attendent que la tâche en cours soit terminée.

Comportement d'intégration recommandé :

  1. Conservez le taskId retourné.
  2. Interrogez périodiquement le point de terminaison de résultat toutes les 3-5 secondes.
  3. Traitez Unprocessed comme en attente.
  4. Traitez Processing comme étant activement en cours.
  5. Utilisez waitNumber et percentage pour afficher la progression à vos utilisateurs.

Autres tâches de génération#

Pour les flux de travail de génération autres que 3D IA, chaque compte peut avoir jusqu'à 30 tâches inachevés pour le même flux de travail.

Ceci est une limite au niveau du compte. Si plusieurs clés API sont créées sous le même compte, elles partagent la même limite.

Cela ne signifie pas que les 30 tâches s'exécutent toutes exactement au même moment. Certaines peuvent être en attente et d'autres en cours. La limite compte les deux.

Lorsque le compte a déjà 30 tâches inachevés pour un flux de travail, les nouvelles soumissions de tâches pour ce flux de travail peuvent être temporairement rejetées jusqu'à ce que les tâches existants soient terminés.

CodeNomSignification
9015TASK_NOT_COMPLETEDLe compte a atteint la limite de tâches inachevés pour ce flux de travail. Réessayez après la fin des tâches existants.

Crédits et tâches inachevés#

Les crédits sont déduits lorsqu'une tâche de génération est créée avec succès. Si la tâche échoue finalement, les crédits déduits sont automatiquement remboursés.

La limite de tâches inachevés ne modifie pas le coût en crédits de chaque tâche. Si vous soumettez plusieurs tâches, chaque tâche acceptée est facturée séparément.

Exemples :

ExempleTâches inachevés actifsCrédits déduits à la création de la tâche
Soumettre 30 tâches de remplacement de mobilier3030 x 1 crédit = 30 crédits
Soumettre 30 tâches de décoration intérieure avec modelType: "Base"3030 x 3 crédits = 90 crédits
Soumettre 30 tâches de décoration intérieure avec modelType: "Pro"3030 x 10 crédits = 300 crédits
Soumettre 10 tâches d'aménagement paysager Flash, 10 Base et 10 Pro3010 x 1 + 10 x 3 + 10 x 10 = 140 crédits

Pour le tableau complet des crédits, consultez la Référence des déductions de crédits.

L'interrogation périodique de le point de terminaison de résultat ne crée pas une nouvelle tâche de génération et ne compte pas comme un tâche inachevé.


Réponses temporaires de service occupé#

Dans certains cas, les nouvelles soumissions de tâches peuvent être temporairement rejetées car le service est occupé. Cela peut se produire même si votre compte a moins de 30 tâches inachevés.

CodeNomSignification
5020QUEUE_TASK_OVERFLOWLe service est actuellement occupé. Réessayez plus tard.

Ceci est temporaire. Ne le traitez pas comme une erreur permanente.


Comportement client recommandé#

  1. Conservez chaque taskId retourné.
  2. Interrogez régulièrement le statut des tâches.
  3. Conservez une liste locale de tâches inachevés par compte et par flux de travail.
  4. Supprimez les tâches de la liste des inachevés lorsque le statut devient Success ou Failed.
  5. Pour les flux de travail non 3D-IA, maintenez les tâches inachevés à 30 ou moins avant de soumettre davantage.
  6. Si vous recevez 9015 ou 5020, réessayez après un délai.

Comportement recommandé pour les nouvelles tentatives :

SituationAction recommandée
9015 TASK_NOT_COMPLETEDAttendez que les tâches existants du même compte et flux de travail se terminent, puis réessayez.
5020 QUEUE_TASK_OVERFLOWAttendez, puis réessayez en augmentant progressivement le délai entre les tentatives.
La tâche est UnprocessedContinuez l'interrogation périodique ; la tâche est en attente.
La tâche est ProcessingContinuez l'interrogation périodique ; la tâche est en cours.

Besoin de plus de débit ?#

Si la limite standard de 30 tâches inachevés par compte et flux de travail ne répond pas à vos besoins d'intégration, veuillez nous contacter à [email protected]. Nous pourrons examiner votre cas d'utilisation et discuter des options pour un débit plus élevé ou un arrangement dédié.