Genel Bakış
TokenLab’nın Agent-First API’si, hata yanıtlarını AI ajanlarının hemen ayrıştırıp harekete geçebileceği yapılandırılmış ipuçlarıyla zenginleştirir — web aramaları yok, doküman bakışları yok, tahmin yürütme yok. OpenAI uyumlu Chat Completions ve Responses gateway hataları,error nesnesinde did_you_mean, suggestions, hint, retryable ve retry_after gibi isteğe bağlı alanlar içerebilir. Anthropic Messages ve Gemini yerel hata şekillerini korur ve bu uzantıları vaat etmez.
Hata İpucu Alanları
OpenAI uyumlu gateway hatalarında tüm ipucu alanlarıerror nesnesi içinde isteğe bağlı uzantılardır:
Hata Kodu Örnekleri
model_not_found (400)
Bir model adı aktif hiçbir modelle eşleşmediğinde:did_you_mean çözümlemesi şu yöntemleri kullanır:
- Statik takma ad eşlemesi (prodüksiyon hata verilerinden)
- Normalleştirilmiş string eşlemesi (tireleri kaldırır, büyük/küçük harf duyarsız)
- Düzenleme uzaklığı eşlemesi (eşik ≤ 3)
did_you_mean, suggestions ve hint alanlarını inceleyin ve sonra desteklenen bir genel model ile yeniden deneyin.
insufficient_balance (402)
Hesap bakiyesi tahmini maliyet için yetersiz olduğunda:suggestions, ajanların geçiş yapabileceği tahmini maliyetten daha ucuz modelleri içerir.
all_channels_failed (503)
Bir model için tüm üst akış kanalları kullanılamaz olduğunda:retryable, neden no_channels ise false olur (bu model için yapılandırılmış kanal yok). Yalnızca devre kesici atlamaları veya kota tükenmesi gibi geçici hatalar için true olur.rate_limit_exceeded (429)
retry_after değeri, gerçek hız limiti pencere sıfırlama zamanından hesaplanır.
OpenAI-uyumlu uç noktalar,
rate_limit_exceeded, upstream_error ve all_channels_failed gibi TokenLab’nın kararlı genel hata türlerini kullanır. Anthropic-uyumlu ve Gemini-uyumlu uç noktalar kendi yerel yanıt biçimlerini kullanır.context_length_exceeded (400)
Girdi modelin bağlam penceresini aştığında (üst akış hatası, ipuçları ile zenginleştirilmiş):Yerel Uç Nokta Keşfi
Yerel protokol kullanılabilirliğini model ya da sağlayıcı adından veya Chat yanıt başlıklarından çıkarmayın. Yerel uç nokta seçmeden önceGET /v1/models/{model} isteğini okuyun ve yalnızca model ayrıntılarında ilan edilen ve aynı protokole sahip bir route tarafından desteklenen istek biçimini kullanın.
Okunacak alan tokenlab.accepted_request_formats değeridir.
İlan edilen istek biçimi uç noktanın kullanılabilirliğini belirler; tek tek alan ve araç desteği upstream’e bağlıdır.
/v1/models İyileştirmeleri
/v1/models artık ajanların görüntü, video, müzik, 3B, TTS, STT, embedding, rerank veya çeviri uç noktalarını çağırmadan önce kullanabileceği sohbet dışı öneri meta verilerini taşır.
recommended_for mevcutsa agent_preferences, önbelleğe alınmış 24 saatlik başarı oranı anlık görüntüsünden türetilir:
- Pencere: 24 saat
- Anlık görüntü önbelleği: stale-while-revalidate
status = "ready"modelin sıralamaya katılmak için yeterli güncel örneğe sahip olduğunu gösterirstatus = "insufficient_samples"model görünür kalır ancak puanlanmış modellerin önüne alınmaz
Kategori Filtreleme
Öneri Keşfi
Sohbet dışı iş akışları için ajanlar önce geçerli önerilen kısa listeyi almalıdır:recommended_for değerleri şunlardır:
imagevideomusic3dttssttembeddingreranktranslation
category hem de recommended_for mevcutsa, bunların tam olarak eşleşmesi gerekir.
Önerilen ajan akışı:
GET /v1/models?recommended_for=<scene>- İlk
agent_preferences.<scene>.status == "ready"olan modeli seçin - Uç noktayı açıkça
model=<selected>ile çağırın - Yalnızca geçici hatalarda, bir sonraki
readymodel ile yeniden deneyin
llms.txt
Makine tarafından okunabilir bir API genel bakışı şu adreste mevcuttur:- Çalışan bir örnekle ilk çağrı şablonu
- Yaygın model adları (kullanım verilerinden dinamik olarak oluşturulur)
- Tüm 12 API uç noktası
- Model keşfi için filtre parametreleri
- Hata işleme rehberi
llms.txt dosyasını ilk API çağrılarından önce okuyan AI ajanları tipik olarak ilk denemede başarılı olabilir.
Ajan Kodunda Kullanım
Python (OpenAI SDK)
JavaScript (OpenAI SDK)
Tasarım İlkeleri
Hızlı başarısızlık, bilgilendirici hata
Hatalar, bir ajanın kendi kendini düzeltmesi için ihtiyaç duyduğu tüm verilerle hemen döner.
Otomatik yönlendirme yok
API asla sessizce farklı bir model ikamesi yapmaz. Kararı ajan verir.
Veri odaklı öneriler
Tüm öneriler sert kodlanmış listelerden değil, prodüksiyon verilerinden gelir.
Geriye uyumlu
Tüm ipucu alanları isteğe bağlıdır. Mevcut istemciler hiçbir fark görmez.