Ideal House
İçeriğe atla

API Görev Sınırı#

Üretim API'ları asenkron görev işleme kullanır. Bir görev başarıyla oluşturulduğunda, API bir taskId döndürür. Görev durumunu, ilerlemeyi, kuyruk konumunu ve nihai çıktıyı kontrol etmek için sonuç uç noktasını kullanın.

Bu belge, API entegrasyonları için kamuya açık görev sınırlarını, dakika başına istekleri, tamamlanmamış işleri ve birden fazla görev gönderildiğinde kredilerin nasıl tahsil edildiğini açıklar.


Hız Sınırı Özeti#

Üretim API'ları, görev oluşturma için sabit bir kamuya açık dakika başına istek sınırı kullanmaz. Pratik sınır, bir hesabın aynı anda kaç tamamlanmamış işe sahip olduğuna dayanır.

İş AkışıDakika başına istekEşzamanlı / tamamlanmamış işlerKredi tahsilatı
AI 3DSabit kamuya açık RPM sınırı yokaynı anda 1 çalışan iş. Ek gönderilen işler kuyrukta bekler.Kabul edilen görev başına tahsil edilir
Diğer üretim API'larıSabit kamuya açık RPM sınırı yokHesap ve iş akışı başına en fazla 30 tamamlanmamış işKabul edilen görev başına tahsil edilir

Tamamlanmamış işler hem kuyruktaki hem de çalışan işleri içerir.

30-iş sınırı, bir kredi paketi veya ücretsiz kota değil, bir görev sayısı sınırıdır. Her kabul edilen üretim görevi, o API'nin kredi kurallarına göre tahsil edilir.


Görev Durumu#

DurumAnlamTamamlanmamış olarak sayılır mı
UnprocessedGörev kabul edildi ve çalışmak için bekliyorEvet
ProcessingGörev şu anda çalışıyorEvet
SuccessGörev başarıyla tamamlandıHayır
FailedGörev başarısız olduHayır

Sonuç uç noktası, bekleyen bir görevin kuyruk konumunu gösteren waitNumber'ü de döndürebilir. Bir görev çalışırken veya bittiğinde, waitNumber genellikle 0'dır.


AI 3D Görevleri#

AI 3D görevleri seferinde birer işlenir.

Birden fazla AI 3D görevi gönderebilirsiniz ve her başarılı gönderim bir taskId döndürür. Ancak, aynı anda yalnızca bir AI 3D görevi çalışır. Ek AI 3D görevleri, mevcut görev bitene kadar bekler.

Önerilen entegrasyon davranışı:

  1. Döndürülen taskId'i kaydedin.
  2. Sonuç uç noktasını 3-5 saniye aralıklarla sorgulayın.
  3. Unprocessed'ü bekleyen olarak ele alın.
  4. Processing'ü aktif olarak çalışan olarak ele alın.
  5. Kullanıcılarınıza ilerlemeyi göstermek için waitNumber ve percentage'yi kullanın.

Diğer Üretim Görevleri#

AI 3D dışındaki üretim iş akışları için, her hesap aynı iş akışı için en fazla 30 tamamlanmamış iş'e sahip olabilir.

Bu, hesap düzeyinde bir sınırdır. Aynı hesap altında birden fazla API anahtarı oluşturulursa, bunlar aynı sınırı paylaşır.

Bu, her zaman 30 işin tam olarak aynı anda çalıştığı anlamına gelmez. Bazı işler bekliyor olabilir, bazıları çalışıyor olabilir. Sınır her ikisini de sayar.

Hesap zaten bir iş akışı için 30 tamamlanmamış işe sahipse, o iş akışı için yeni görev gönderimleri, mevcut işler bitene kadar geçici olarak reddedilebilir.

KodAdAnlam
9015TASK_NOT_COMPLETEDHesap, bu iş akışı için tamamlanmamış iş sınırına ulaştı. Mevcut işler tamamlandıktan sonra yeniden deneyin.

Krediler ve Tamamlanmamış İşler#

Krediler, bir üretim görevi başarıyla oluşturulduğunda düşülür. Görev nihayetinde başarısız olursa, düşülen krediler otomatik olarak iade edilir.

Tamamlanmamış iş sınırı, her görevin kredi maliyetini değiştirmez. Birden fazla görev gönderirseniz, her kabul edilen görev ayrı ayrı tahsil edilir.

Örnekler:

ÖrnekAktif tamamlanmamış işlerGörev oluşturulmasında düşülen krediler
30 Mobilya Değiştirme görevi gönder3030 x 1 kredi = 30 kredi
30 Ev Dekorasyonu görevi gönder, modelType: "Base" ile3030 x 3 kredi = 90 kredi
30 Ev Dekorasyonu görevi gönder, modelType: "Pro" ile3030 x 10 kredi = 300 kredi
10 Peyzaj Flash, 10 Base ve 10 Pro görevi gönder3010 x 1 + 10 x 3 + 10 x 10 = 140 kredi

Tam kredi tablosu için Kredi Düşülmesi Referansı'na bakın.

Sonuç uç noktasını sorgulamak yeni bir üretim görevi oluşturmaz ve tamamlanmamış iş olarak sayılmaz.


Geçici Hizmet Meşgul Yanıtları#

Bazı durumlarda, hizmet meşgul olduğu için yeni görev gönderimleri geçici olarak reddedilebilir. Hesabınızda 30'den az tamamlanmamış iş olsa bile bu olabilir.

KodAdAnlam
5020QUEUE_TASK_OVERFLOWHizmet şu anda meşgul. Daha sonra yeniden deneyin.

Bu geçicidir. Kalıcı bir başarısızlık olarak ele almayın.


Önerilen İstemci Davranışı#

  1. Döndürülen her taskId'yi kaydedin.
  2. Görev durumunu düzenli aralıklarla sorgulayın.
  3. Hesap ve iş akışı başına tamamlanmamış işlerin yerel bir listesini tutun.
  4. Durum Success veya Failed olduğunda işleri tamamlanmamış listesinden çıkarın.
  5. AI-3D olmayan iş akışları için, daha fazla göndermeden önce tamamlanmamış işleri 30'de veya altında tutun.
  6. 9015 veya 5020 alırsanız, bir gecikme sonrası yeniden deneyin.

Önerilen yeniden deneme davranışı:

DurumÖnerilen Eylem
9015 TASK_NOT_COMPLETEDAynı hesap ve iş akışından mevcut işlerin tamamlanmasını bekleyin, ardından yeniden deneyin.
5020 QUEUE_TASK_OVERFLOWBekleyin ve geri çekilme (backoff) ile yeniden deneyin.
Görev UnprocessedSorgulamaya devam edin; görev bekliyor.
Görev ProcessingSorgulamaya devam edin; görev çalışıyor.

Daha Yüksek Verimlilik Gerekli mi?#

Standart hesap ve iş akışı başına 30 tamamlanmamış iş sınırı entegrasyon ihtiyaçlarınızı karşılamıyorsa, [email protected] adresinden bizimle iletişime geçin. Kullanım durumunuzu inceleyebilir ve daha yüksek verimlilik veya özel bir düzenleme seçeneklerini tartışabiliriz.