API'nin hataları nasıl raporladığını anlamak, hızlı yanıt vermenize ve entegrasyonunuzu dayanıklı tutmanıza yardımcı olur. Fit It On API, hataları iki farklı aşamada kategorize eder:
- API düzeyinde hatalar: İstek, bir tahmin kimliği verilmeden hemen önce reddedildi.
- Çalışma zamanı hataları: İstek kabul edildi ve bir tahmin kimliği döndürüldü, ancak oluşturma eşzamansız işleme sırasında başarısız oldu.
API Düzeyinde Hatalar
API düzeyindeki hatalar eşzamanlı olarak meydana gelir. /v1/run adresine bir POST isteği veya /v1/status/{id} adresine bir GET isteği yaptığınızda, sunucu yoğun arka plan çalışmasına başlamadan önce isteği doğrular.
Doğrulama başarısız olursa, API bir HTTP hata durumu (örn. 400, 401) döndürür ve JSON yanıtı bir error mesajı ve belirli bir dize code içerir.
{
"error": "Invalid request payload. Expected { model_name, inputs }",
"code": "BadRequest"
}Standart Hata Kodları
| Code | Hata | Neden | Nasıl düzeltilir |
|---|---|---|---|
| 400 | BadRequest | Geçersiz istek formatı veya desteklenmeyen model adı | JSON yapısını kontrol edin, model_name'in doğru olduğundan emin olun ve gerekli tüm inputs'un sağlandığını doğrulayın. |
| 401 | UnauthorizedAccess | Geçersiz veya eksik API anahtarı | Authorization: Bearer YOUR_API_KEY başlığının doğru olduğundan ve anahtarın etkin olduğundan emin olun. |
| 402 | OutOfCredits | Kalan geliştirici API kredisi yok | Tekrar denemeden önce Fit It On kontrol panelinizdeki kredilerinizi doldurun. |
| 403 | Forbidden | Tahmine yetkisiz erişim | Farklı bir geliştirici anahtarı tarafından oluşturulan bir tahminin durumunu kontrol etmeye çalışıyorsunuz. |
| 404 | NotFound | Tahmin bulunamadı | Durum uç noktasını sorgularken tahmin kimliğinin doğru olduğunu onaylayın. |
| 413 | PayloadTooLarge | Yük sınırı aşıldı | Giriş görüntülerinin 25MB'ın altında olduğundan ve makul çözünürlükler kullandığından emin olun. |
| 500 | InternalServerError | Sunucu tarafı hatası | Gecikmeli olarak tekrar deneyin. Sorun devam ederse destek ile iletişime geçin. |
[!TIP] Tekrar denemeler ve değişmezlik Bir API düzeyinde hatayla karşılaşırsanız, sorun çözüldüğünde aynı yükü güvenle tekrar deneyebilirsiniz. İstek hemen reddedildiği için kredi düşülmedi ve yinelenen işlem riski yoktur.
Çalışma Zamanı Hataları
Çalışma zamanı hataları, API isteğinizi başarıyla kabul edip bir tahmin kimliği döndürdükten sonra meydana gelir.
Üretim modelleri yoğun bir şekilde eşzamansız olduğundan, bu hataları /v1/status/{id} uç noktasını sorgularken keşfedeceksiniz. Bir arka plan işi başarısız olursa, uç nokta bir HTTP 200 OK döndürür (çünkü sorgulama isteği başarılı olmuştur), ancak yük içindeki status alanı "failed" olacaktır.
Yanıt, tahmin kimliğini ve neyin yanlış gittiğini detaylandıran bir error nesnesini içerecektir; buna kategorize edilmiş bir name ve açıklayıcı bir message dahildir.
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"status": "failed",
"output": null,
"error": {
"name": "ImageLoadError",
"message": "Failed to load input image: URL returned 404"
},
"created_at": "2024-05-15T12:00:00Z",
"updated_at": "2024-05-15T12:00:10Z"
}Yaygın Çalışma Zamanı Hataları
Çoğu çalışma zamanı sorunu, modellerimiz arasında birkaç ortak kategoriye ayrılır:
| Kategori | Tipik Hata Mesajları | Nasıl düzeltilir |
|---|---|---|
| Görüntü Yükleme Hatası | Failed to fetch image, Invalid image URL | Sağlanan URL'lerin kimlik doğrulaması olmadan herkese açık olduğundan emin olun. Base64 için, doğru MIME türü önekini içerdiğinden emin olun. |
| Giriş Doğrulama | Image resolution too small, Missing required parameter | Giriş varlıklarınızın belirli model için minimum boyutları ve gereksinimleri karşıladığından emin olun. |
| İçerik Denetimi | NSFW content detected, Safety block triggered | Güvenlik filtrelerine uymak için giriş görüntüsünü veya metin istemini değiştirin veya ayarlayın. |
| İşlem Hattı Hatası | Generation failed, Server error | GPU kümesinde beklenmedik bir hata oluştu. İsteği gecikmeli olarak tekrar deneyin. |
[!NOT] Başarısızlık Durumunda Kredi İadeleri Başarısız tahminler kredi tüketmez. Bir üretim çalışma zamanında başarısız olursa (örn. bir
Image Load ErrorveyaPipeline Errornedeniyle), isteğin başlangıcında düşülen krediler otomatik olarak geliştirici bakiyenize iade edilir.
Uç Noktaya Özgü Hatalar
Bazı modellerin, üretim sırasında çalışan katı, iş akışına özgü doğrulama kuralları vardır:
- Poz Kontrolü: Hedef görüntüde insan vücudu algılanmazsa başarısız olur.
- Sanal Deneme: Giysi görüntüsünde geçerli bir giysi algılayamazsa başarısız olur.
- Model Üretimi: Sağlanan yüz referans görüntüsü net, engelsiz bir yüz içermiyorsa başarısız olur.
Girişleri belgelerle uyumlu hale getirdikten sonra çalışma zamanı hataları görmeye devam ederseniz, lütfen tahmin kimliğinizle birlikte destek ekibiyle iletişime geçin, böylece araştırabiliriz.
