CometAPI hata işleme, istek yapısı sorunlarını, kimlik doğrulama sorunlarını, path hatalarını ve yeniden denenebilir platform hatalarını birbirinden ayırdığınızda en kolay hale gelir. İsteği düzeltmeniz mi yoksa yeniden denemeniz mi gerektiğine karar vermek için HTTP durumunu,Documentation Index
Fetch the complete documentation index at: https://apidoc.cometapi.com/llms.txt
Use this file to discover all available pages before exploring further.
error.code ve error.message birleşimini kullanın.
Hızlı ön inceleme
| Status | Genellikle ne anlama gelir | Retry? | İlk işlem |
|---|---|---|---|
400 | İstek, normal şekilde işlenmeden önce doğrulamadan geçemedi. | Hayır | model, messages, JSON yapısı ve alan türlerini doğrulayın. |
401 | API anahtarı eksik, hatalı biçimlendirilmiş veya geçersiz. | Hayır | Authorization: Bearer <COMETAPI_KEY> değerini kontrol edin. |
403 | Erişim engellendi veya mevcut isteğe izin verilmedi. | Genellikle hayır | Bilinen şekilde çalışan bir istekle yeniden deneyin ve önce modele özgü alanları kaldırın. |
| Path hatası | Yanlış base URL veya yanlış endpoint path. Comet üzerinde bu, temiz bir JSON 404 yerine 301 yönlendirmesi veya HTML olarak görünebilir. | Hayır | Tam olarak https://api.cometapi.com/v1 kullanın ve hata ayıklama sırasında yönlendirmeleri otomatik takip etmeyi kapatın. |
429 | Hız sınırlaması veya geçici doygunluk. | Evet | Jitter ile exponential backoff kullanın. |
500 with error.code: invalid_request | Hatalı biçimlendirilmiş bir istek, sunucu durumu yanıtı üzerinden ortaya çıktı. | Hayır | Yeniden denemeden önce istek gövdesini düzeltin. |
500, 503, 504, 524 | Platform, sağlayıcı veya zaman aşımı sınıfı hata. | Evet | Backoff ile yeniden deneyin ve request id bilgisini saklayın. |
Hata zarfı
Birçok CometAPI hatası bunun gibi bir hata gövdesi kullanır:code alanını boş bırakır. Durum 500 olduğunda, belirleyici sinyal olarak error.code ve error.message değerlerini dikkate alın.
400 Bad Request
Bir 400 genellikle, istek normal şekilde işlenmeden önce istek gövdesinin doğrulamadan geçemediği anlamına gelir.
Yaygın nedenler:
modelgibi zorunlu alanların eksik olması- Geçersiz JSON yapısı
- Yanlış türde bir alan gönderilmesi
- Seçilen endpoint’in kabul etmediği sağlayıcıya özgü parametrelerin yeniden kullanılması
your-model-id değerini CometAPI Models page üzerindeki güncel model ID değerlerinden herhangi biriyle değiştirin.
Hatalı biçimlendirilmiş her chat isteğinin 400 döndüreceğini varsaymayın. messages gibi zorunlu chat alanlarının eksik olması, error.code: invalid_request ile birlikte 500 olarak da ortaya çıkabilir.
500 Internal Server Error
Çoğu 500 yanıtı bir platform veya sağlayıcı hatasına işaret eder. Chat Completions için bazı hatalı biçimlendirilmiş istekler de 500 olarak görünebilir ve yine de error.code: invalid_request taşıyabilir.
Buna bir örnek, messages alanını atlayan bir istektir:
500 yanıtında error.code: invalid_request varsa, bunu bir istek sorunu olarak değerlendirin:
- İstek gövdesini düzeltin.
- Yükü endpoint şemasıyla karşılaştırın.
- Yalnızca yükü düzelttikten sonra yeniden deneyin.
500 yanıtı geçersiz bir isteğe işaret etmiyorsa, request id bilgisini saklayın ve backoff kullanın.
401 Invalid Token
Bir token hatası genellikle şöyle görünür:
- Header tam olarak
Authorization: Bearer <COMETAPI_KEY>olmalıdır. - Uygulamanızın
.env, shell geçmişi veya dağıtılmış secret store içinden eski bir key yüklemediğinden emin olun. - Aynı istekte bir key başarısız olurken başka bir key çalışıyorsa, bunu endpoint sorunu değil, token sorunu olarak değerlendirin.
403 Forbidden
403 çoğu zaman şu durumlardan biridir:
- İstek, WAF filtreleme gibi platform taraflı bir kural tarafından engelleniyordur
- Token veya route, istenen model ya da istek biçimini kullanmaya yetkili değildir
- Seçilen model, gönderdiğiniz gelişmiş parametrelerden birini reddediyordur
- Bilinen şekilde çalışan bir model karşısında çok basit bir metin isteğiyle yeniden deneyin.
- Gelişmiş alanları ve provider’a özgü parametreleri kaldırın, ardından bunları kademeli olarak geri ekleyin.
- Yanıtta bir request id varsa, support ile iletişime geçmeden önce bunu saklayın.
Yanlış base URL veya yanlış path
Comet üzerinde bir path hatası şu şekillerde ortaya çıkabilir:- Bir yönlendirme
- İstemciniz yönlendirmeleri takip ediyorsa JSON olmayan bir HTML yanıtı
- SDK’nız içinde bir ayrıştırma hatası
- API katmanına temiz şekilde hiç ulaşmayan bir istek
- base URL’nin
/v1içerdiğini doğrulayın. - Endpoint path’in dokümantasyonla birebir eşleştiğini doğrulayın.
- Path sorunlarında hata ayıklarken otomatik yönlendirme takibini devre dışı bırakın.
413 Request Entity Too Large
413 görüyorsanız, önce bunu bir istek boyutu sorunu olarak ele alın. Yaygın şüpheliler şunlardır:
- Büyük base64 payload’ları
- Satır içinde gömülü aşırı büyük görseller veya sesler
- Çok büyük multipart veya JSON body’leri
- Eklenen içeriği küçültün veya sıkıştırın.
- Büyük işleri daha küçük isteklere bölün.
- Nedenin yalnızca düz metin uzunluğu olduğunu varsaymayın.
429 Too Many Requests
429 yeniden denenebilir olarak ele alınmalıdır:
- jitter ile exponential backoff kullanın.
- Anlık eşzamanlılık miktarını azaltın.
- Hangi route ve model’in önce doyuma ulaştığını görebilmek için istek loglamayı açık tutun.
503, 504, and 524
Bu durum kodları sunucu taraflı veya timeout sınıfı hatalardır.
Pratik açıklama:
503: route veya provider servisi geçici olarak kullanılamıyor504ve524: platform, edge veya provider servisi arasında timeout sınıfı hatalar
- backoff ile yeniden deneyin.
request id, endpoint, model ve timestamp bilgisini saklayın.- Aynı hata birden fazla yeniden denemede tekrarlanıyorsa, bu bağlamla birlikte support ile iletişime geçin.
Destekle iletişime geçmeden önce
Önce şu ayrıntıları toplayın:- HTTP yöntemi
- Endpoint yolu
- Model ID
- Temizlenmiş istek gövdesi JSON’ı (çoğu API çağrısı için en faydalı tek öğe budur)
- Hatalı istek bunları kullandıysa sorgu parametreleri
- İstemciniz yakaladıysa tam yanıt gövdesi
- Tam HTTP durum kodu
- Tam
error.message - Herhangi bir
request id - Yaklaşık zaman damgası
- Aynı isteğin başka bir model veya başka bir token ile çalışıp çalışmadığı
- Dosyayla birlikte gönderdiğiniz alan adları ve metin değerleri
- Dosya adı, dosya türü ve yaklaşık dosya boyutu
- Dosyanın doğrudan mı yüklendiği, URL ile mi referans verildiği yoksa base64 olarak mı gömüldüğü