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.

EVREN isteğinde oluşan hataları LLMTR anahtarı, EVREN anahtarı, EVREN hesabı ve istek içeriği olarak dört kutuya ayıran ve her kutunun çözüm yerini gösteren şema.

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.

EVREN satırlarında hata yanıtları (kontrol 25 Eylül 2026)
DurumHTTPerror.typeÇözümün yeri
LLMTR anahtarı geçersiz ya da iptal edilmiş401LLMTR'nin kendi hatasıLLMTR API anahtarları sayfası
Kayıtlı EVREN anahtarı yok403provider_credential_requiredLLMTR Ayarlar, kendi sağlayıcı anahtarlarınız
EVREN anahtarı reddetti403provider_credential_rejectedEVREN konsolu: anahtar ve şart kabulü
EVREN hesabı isteği karşılamadı403provider_account_limitedEVREN konsolu: hesap, kota ve kredi
EVREN hız sınırı uyguladı429provider_rate_limitedBekleyip yeniden deneme
EVREN isteği başka bir sebeple reddettiSağlayıcının 4xx koduprovider_upstream_errorİsteğin kendisi
EVREN tarafında arıza502provider_upstream_errorBekleyip 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.

İlgili yazılar