EVREN rehberleri · 2026-09-25
EVREN API hataları: doğru çözümü göstermek
EVREN satırlarında karşılaşılan hataların hangisinin LLMTR'den, hangisinin EVREN'den geldiğini, her birinin nerede düzeltildiğini ve hangi durumlarda isteğin yeniden denenebileceğini tablo ve kod örneğiyle anlatır.
Kısa cevap
EVREN satırlarında bir hata iki yerden gelebilir. LLMTR'nin kendi hataları, örneğin geçersiz ya da iptal edilmiş bir LLMTR anahtarı, LLMTR tarafında düzeltilir. EVREN'den gelen hatalar ise provider_ önekli türlerle iletilir ve anahtar da hesap da sizin olduğu için çoğu EVREN hesabınızda düzeltilir. Hatanın türü, çözümün nerede olduğunu doğrudan gösterir.
EVREN'i LLMTR üzerinden kullanmanızı öneririz: kendi EVREN anahtarınızı Ayarlar'dan bir kez tanıtırsınız, sonra aynı kod hem EVREN modellerine hem katalogdaki diğer modellere ulaşır. Anahtar sizin kalır ve EVREN'in kendi kayıt ve saklama politikası da olduğu gibi geçerli olur.
Hata türleri ve çözümün yeri
Tablo, EVREN satırlarında dönebilecek hataları ve her birinin nerede ele alındığını gösteriyor. error.type alanı her durumda aynı kalır; HTTP durumu ise hatanın türüne göre değişir.
| Durum | HTTP | error.type | Çözümün yeri |
|---|---|---|---|
| LLMTR anahtarı geçersiz ya da iptal edilmiş | 401 | LLMTR'nin kendi hatası | LLMTR API anahtarları sayfası |
| Kayıtlı EVREN anahtarı yok | 403 | provider_credential_required | LLMTR Ayarlar, kendi sağlayıcı anahtarlarınız |
| EVREN anahtarı reddetti | 403 | provider_credential_rejected | EVREN konsolu: anahtar ve şart kabulü |
| EVREN hesabı isteği karşılamadı | 403 | provider_account_limited | EVREN konsolu: hesap, kota ve kredi |
| EVREN hız sınırı uyguladı | 429 | provider_rate_limited | Bekleyip yeniden deneme |
| EVREN isteği başka bir sebeple reddetti | Sağlayıcının 4xx kodu | provider_upstream_error | İsteğin kendisi |
| EVREN tarafında arıza | 502 | provider_upstream_error | Bekleyip yeniden deneme |
Üç ayrı 403
provider_credential_required, LLMTR'de kayıtlı bir EVREN anahtarı olmadığı anlamına gelir; istek EVREN'e hiç gitmemiştir. provider_credential_rejected, EVREN'in anahtarı kabul etmediğini gösterir: anahtar iptal edilmiş ya da yanlış kopyalanmış olabilir, EVREN'in kullanım şartları da kabul edilmemiş olabilir. Bu hata her iki durumu da kapsar, bu yüzden anahtarla birlikte şart kabulü de kontrol edilir.
provider_account_limited, EVREN'in isteği anahtara değil hesabınıza dayanarak reddettiğini gösterir. Kota ve kredi durumu EVREN'in /v1/quota ucundan okunur. Bu hata bilerek 402 değil 403'tür: LLMTR'de 402, LLMTR bakiyenizin bittiği anlamına gelir. EVREN satırları ücretsiz olduğu için bu hata bakiyenizle ilgili değildir ve kredi yüklemek sorunu çözmez.
upstreamStatus ve yeniden deneme
error.details.upstreamStatus alanı her durumda EVREN'in döndürdüğü özgün kodu taşır, HTTP durumu 502 olsa bile. 4xx kodları olduğu gibi korunur, EVREN tarafındaki 5xx arızalar 502'ye toplanır. Sağlayıcının hata metni iletilmez; bu yüzden karar, metne değil koda bakarak verilir.
429 ve 502, beklemeyle geçebilecek durumlardır ve artan aralıklarla yeniden denenebilir. 403'ler ve diğer 4xx yanıtlar tekrar denemeyle değişmez. Ekip ya da müşteri uygulamalarında anahtar ve hesap hataları son kullanıcının düzeltebileceği şeyler değildir; bu hatalarda kullanıcıya genel bir mesaj gösterip hesap sahibine haber vermek, sorunu çözebilecek kişiye ulaştırır. Aşağıdaki örnek bu ayrımı yapıyor.
Hata türüne göre yeniden deneme ve bildirim
import time
from openai import OpenAI, APIStatusError
RETRYABLE = {429, 502}
def call(client: OpenAI, **kwargs):
for attempt in range(3):
try:
return client.chat.completions.create(**kwargs)
except APIStatusError as e:
body = e.body if isinstance(e.body, dict) else {}
error = body.get("error", body)
kind = error.get("type")
upstream = (error.get("details") or {}).get("upstreamStatus")
if kind in ("provider_credential_required", "provider_credential_rejected",
"provider_account_limited"):
# Son kullanicinin duzeltebilecegi bir sey degil: hesap sahibine haber verilir.
notify_owner(kind, upstream)
raise
if e.status_code in RETRYABLE and attempt < 2:
time.sleep(5 * (attempt + 1))
continue
raise
Hata olarak dönmeyen sorunlar
Her sorun bir hata koduyla gelmez. Araç çağrısı MiMo V2.6 Pro ve DeepSeek V4.1 Flash TR dışındaki satırlarda sunulmadığı için, o satırlarda isteğe araç tanımı eklendiğinde model hata vermek yerine düz metinle yanıt verebilir; yanıt 200 döner ama beklenen araç çağrısı yoktur. JSON modu da o satırlarda sunulmadığı için istenen biçim talimatla tarif edilir ve yanıtın bu biçime uyup uymadığı kendi tarafınızda kontrol edilir.
Yanıtın max_tokens sınırında kesilmesi de bir hata değildir; finish_reason alanının length olmasıyla anlaşılır. EVREN'in kendi çıktı sınırı aşıldığında ise istek reddedilir ve bu, tablodaki provider_upstream_error satırlarından biri olarak döner.
Hata kaydında işe yarayan alanlar
Bir hatanın tek seferlik mi yoksa tekrarlayan bir sorun mu olduğunu görmek için kendi uygulama kaydınızda birkaç alan yeterlidir: zaman, model kimliği, HTTP durumu, error.type, upstreamStatus ve isteği gönderen LLMTR anahtarının etiketi. Aynı saatlerde yoğunlaşan 429'lar hız sınırını, her istekte tekrarlanan 403'ler anahtar ya da hesap sorununu gösterir.
İstek ve yanıt metninin bu kayda yazılması gerekmez. Metin olmadan da hata sınıflandırılabilir ve kayıt, serinin gizlilik yazılarında anlatılan içerik kaydına dönüşmemiş olur.
Sık sorulan sorular
EVREN'i doğrudan mı, LLMTR üzerinden mi kullanmalıyım?
EVREN'i LLMTR üzerinden kullanmanızı öneririz. İstekleriniz yine kendi EVREN anahtarınızla EVREN'e gider ve LLMTR bu istekler için ücret almaz; fark, aynı kodun katalogdaki diğer modellere de ulaşmasıdır. EVREN'in kayıt ve saklama politikası bu tercihten etkilenmez.
EVREN'in hata mesajını neden göremiyorum?
Sağlayıcının hata metni iletilmez. Yanıtta error.type ve error.details.upstreamStatus alanları bulunur; upstreamStatus EVREN'in döndürdüğü özgün koddur.
provider_account_limited neden 402 değil?
LLMTR'de 402, LLMTR bakiyenizin bittiğini gösterir. EVREN satırları ücretsiz olduğu için bu hata bakiyeyle ilgili değildir; 403 olarak dönmesi, çözümün EVREN hesabınızda olduğunu gösterir.
LLMTR desteği EVREN hesabımdaki bir sorunu çözebilir mi?
EVREN hesabı ve anahtarı sizindir; LLMTR hesabınızı göremez ve değiştiremez. provider_ önekli anahtar ve hesap hatalarının çözümü EVREN tarafındadır. LLMTR anahtarı ya da isteğin LLMTR'ye ulaşmasıyla ilgili sorunlarda ise LLMTR desteği yardımcı olur.
Hangi hatalarda yeniden denemek gerekir?
429 provider_rate_limited ve 502 provider_upstream_error, bekledikten sonra yeniden denenebilir. 403 hataları ve diğer 4xx yanıtlar tekrar denemeyle değişmez.