Ana içeriğe atla

Genel Bakış

TokenLab, yaygın kodlama araçlarının, SDK’ların ve framework’lerin minimum “glue code” (yapıştırıcı kod) ile entegre olabilmesi için birden fazla API formatı sunar. Bu sayfa, bir pazarlama matrisinden kasıtlı olarak daha dar kapsamlı tutulmuştur:
  • Desteklenen (Supported): Somut bir kurulum yolunu belgelediğimiz ve TokenLab’in bu yolun beklediği protokol yapısını sunduğu anlamına gelir.
  • Güçlü yerel yol (Strong native path): Deponun ayrıca o protokol ailesi için doğrudan adaptör veya istek formatı kanıtına sahip olduğu anlamına gelir.
  • En iyi çaba (Best-effort): Entegrasyonun çalışabileceği, ancak yukarı yönlü istemcinin bu özel ağ geçidi iş akışını kararlı bir sözleşme olarak görmediği anlamına gelir.
Desteklenmeyen alanlar tek tip bir şekilde ele alınmaz. Uyumluluk rotalarında bazı alanlar göz ardı edilir veya normalleştirilir. /v1/responses rotasında, desteklenmeyen alanlar, rotanın talep edilen davranışı garanti edemediği durumlarda açık 400 veya 503 hataları döndürebilir.

Desteklenen API Formatları

EndpointFormatKullanım Durumu
/v1/chat/completionsOpenAI ChatEvrensel uyumluluk
/v1/responsesOpenAI ResponsesDurumlu (stateful) konuşmalar
/v1/messagesAnthropic MessagesClaude yerel özellikleri
/v1beta/models/:model:generateContentGoogle GeminiGemini yerel özellikleri

IDE & CLI Uyumluluğu

Belgelenmiş Araç Yolları

AraçDestek SeviyesiFormatNotlar
CursorSınırlı destekOpenAI uyumluBYOK standart sohbet/editör akışları için çalışır, Tab Completion gibi Cursor tarafından yönetilen özelliklerin yerine geçmez
Claude Code CLIGüçlü yerel yolAnthropicDüşünme (thinking) ve tool_choice için adaptör kapsamına sahip yerel /v1/messages rotası
Codex CLIModel/yol sınırlamalarıyla desteklenirOpenAI Responses/v1/responses rotasını Codex’e özgü iş akışları için gelişmiş bir yol olarak değerlendirin; yalnızca Responses’a özgü bazı alanlar her modelde ve rotada garanti edilmez
Gemini CLIEn iyi çaba / deneyselGeminiÖzel TokenLab temel URL akışı, resmi bir Gemini CLI entegrasyonu değildir
OpenCodeDesteklenirOpenAI uyumluVarsayılan olarak OpenAI uyumlu bir sağlayıcı kullanın; yalnızca açıkça ihtiyaç duyduğunuzda Responses tabanlı bir sağlayıcıya geçin
OpenHandsDesteklenirOpenAI uyumluopenai/<model> ve TokenLab’in /v1 temel URL’si ile LiteLLM/OpenAI uyumlu yolunu kullanın
Diğer OpenAI uyumlu editörler ve ajan araçları genellikle aynı temel URL yapısıyla çalışır; üretim ortamında kullanmadan önce aracın kendi özel sağlayıcı desteğini kontrol edin.

Yapılandırma Örnekleri

Base URL: https://api.tokenlab.sh/v1
API Key: sk-your-tokenlab-key
Cursor dahili olarak Anthropic tarzı araç formatını kullanır. TokenLab her ikisini de destekler:
  • OpenAI formatı: { type: "function", function: { name, parameters } }
  • Anthropic formatı: { name, input_schema } (type alanı olmadan)

SDK Uyumluluğu

Belgelenmiş SDK & Framework Yolları

SDK / FrameworkDilDestek SeviyesiNotlar
OpenAI SDKPython/JS/GoDesteklenen temel yol/v1 Chat Completions ve Embeddings için uyumluluk yolu; sağlayıcıya özgü davranışlar için yerel sağlayıcı rotalarını kullanın ve Responses’a özgü alanların her modelde çalıştığını varsaymayın
Anthropic SDKPython/JSGüçlü yerel yolAraçlar, düşünme ve istem önbelleğe alma (prompt caching) için doğrudan kanıta sahip yerel Messages rotası
Vercel AI SDKTypeScriptÖnerilen entegrasyon modeli@ai-sdk/openai-compatible tercih edin; yalnızca açıkça Responses-native davranış istediğinizde @ai-sdk/openai kullanın
LangChainPython/JSDesteklenen standart yüzeylerChatOpenAI ve OpenAIEmbeddings hedeflenen kapsamdır; satıcıya özgü ekstralar kapsam dışıdır
LlamaIndexPythonOpenAILike ile desteklenirTokenLab gibi üçüncü taraf ağ geçitleri için yerleşik OpenAI sınıflarını değil, OpenAILike kullanın
OpenAI Agents SDKPythonDesteklenen chat-completions yoluOpenAIChatCompletionsModel ile AsyncOpenAI(base_url="https://api.tokenlab.sh/v1") kullanın; yerel Responses davranışı seçilen modele ve rotaya bağlıdır
AutoGenPythonDesteklenen özel endpoint yolubase_url: https://api.tokenlab.sh/v1 ile OpenAIChatCompletionClient kullanın
Semantic Kernel.NETDesteklenen özel endpoint yoluOpenAI chat completion bağlayıcısı özel endpoint’ini kullanın ve https://api.tokenlab.sh/v1 adresine yönlendirin
CrewAIPythonDesteklenen özel endpoint yoluOPENAI_API_BASE veya LLM(base_url=...) değerini TokenLab’in /v1 endpoint’ine ayarlayın
Pydantic AIPythonDesteklenen OpenAI uyumlu sağlayıcı yoluOpenAIProvider(base_url="https://api.tokenlab.sh/v1") ile OpenAIChatModel kullanın
DSPyPythonDesteklenen özel endpoint yoludspy.LM("openai/<model>", api_base="https://api.tokenlab.sh/v1") kullanın
LangflowPython / WebKapsam sınırlamalarıyla desteklenirOpenAI bileşeninin OpenAI API Base alanını TokenLab’in /v1 endpoint’i ile kullanın
HaystackPythonDesteklenen özel endpoint yoluOpenAIChatGenerator(api_base_url="https://api.tokenlab.sh/v1") kullanın
GraphitiPythonDesteklenen özel endpoint yoluTokenLab’in /v1 endpoint’i ile OpenAIGenericClient kullanın
Dify-Kapsam sınırlamalarıyla desteklenirOpenAI sağlayıcısı ve chat-completions odaklı akışlar hedeflenen yoldur; Codex’e özgü Responses veya WebSocket davranışı için uygun değildir
FlowiseWeb / NodeKapsam sınırlamalarıyla desteklenirMümkünse TokenLab sohbet düğümünü veya https://api.tokenlab.sh/v1 adresine yönlendirilmiş ChatOpenAI uyumlu bir düğüm kullanın
Mem0PythonDesteklenen özel endpoint yoluOpenAI sağlayıcısını koruyun ve openai_base_url değerini TokenLab’in /v1 endpoint’ine ayarlayın
AgnoPythonDesteklenen yolMümkünse TokenLab model sarmalayıcısını veya OpenAI uyumlu temel URL yolunu kullanın
Browser UsePythonDesteklenen özel endpoint yoluTokenLab’in /v1 endpoint’i ile ChatOpenAILike kullanın
VoltAgentTypeScriptDesteklenen özel endpoint yolubaseURL: "https://api.tokenlab.sh/v1" ile yapılandırılmış bir AI SDK OpenAI sağlayıcısı geçirin
RagasPythonDesteklenen özel endpoint yolullm_factory içine AsyncOpenAI(base_url="https://api.tokenlab.sh/v1") geçirin
GuardrailsPythonDesteklenen doğrulama yoluTokenLab’in /v1 endpoint’i ile yapılandırılmış bir OpenAI SDK chat completions çağrılabilir nesnesi geçirin
Prompt flowPython / CLIDesteklenen özel endpoint yolubase_url=https://api.tokenlab.sh/v1 ile bir OpenAI bağlantısı oluşturun
PromptfooCLI / NodeDesteklenen yolapiBaseUrl: https://api.tokenlab.sh/v1 ile OpenAI chat veya Responses sağlayıcılarını kullanın
Portkey GatewayGatewayDesteklenen yolOpenAI uyumlu sohbet ve Responses trafiği için TokenLab’i yukarı yönlü bir sağlayıcı olarak kullanın
HeliconeGateway / ObservabilityDesteklenen gözlemlenebilirlik yoluHelicone-Target-Url: https://api.tokenlab.sh ile OpenAI uyumlu istekleri Helicone Gateway üzerinden yönlendirin
LangfuseObservabilityDesteklenen izleme yoluLangfuse OpenAI entegrasyonunu TokenLab’in /v1 temel URL’si ile yapılandırın
OpenLITObservabilityDesteklenen izleme yoluTokenLab’in /v1 temel URL’si ile yapılandırılmış bir OpenAI SDK istemcisini izleyin
OpenLLMetryObservabilityDesteklenen izleme yoluTokenLab’in /v1 temel URL’si ile OpenAI SDK izlemesini kullanın
PhoenixObservabilityDesteklenen izleme yoluTokenLab’in /v1 temel URL’si ile yapılandırılmış OpenAI SDK istemcisini otomatik izleyin
OpikObservabilityDesteklenen izleme yoluTokenLab’in /v1 temel URL’si ile yapılandırılmış bir OpenAI SDK istemcisini sarmalayın
LangBotBot PlatformDesteklenen sohbet yoluMümkünse TokenLab isteyicisini kullanın veya TokenLab’in /v1 endpoint’i ile OpenAI uyumlu bir isteyici yapılandırın
Open WebUIWeb ChatDesteklenen sohbet uygulaması yoluTokenLab’i OpenAI uyumlu bir API bağlantısı olarak ekleyin ve model listesini yenileyin
Chatbox / DeepChat / Jan / LibreChat / Cherry StudioDesktop / WebDesteklenen sohbet uygulaması yoluHer uygulamanın OpenAI uyumlu özel sağlayıcı akışını kullanın; bu uygulamalar genellikle chat-completions odaklıdır

Chat Completions Parametreleri

Temel Parametreler

ParametreTipAçıklama
modelstringModel tanımlayıcısı (gerekli)
messagesarrayKonuşma mesajları (gerekli)
max_tokensintegerMaksimum çıktı token’ı
temperaturenumberÖrnekleme sıcaklığı (0-2)
top_pnumberNucleus örnekleme (0-1)
streambooleanAkışı etkinleştir

Araç Çağırma (Tool Calling)

{
  "tools": [
    {
      "type": "function",
      "function": {
        "name": "get_weather",
        "description": "Get weather for a location",
        "parameters": {
          "type": "object",
          "properties": {
            "location": { "type": "string" }
          }
        },
        "strict": true
      }
    }
  ],
  "tool_choice": "auto",
  "parallel_tool_calls": true
}

Araç Seçimi (Tool Choice) Seçenekleri

FormatÖrnekAçıklama
String"auto", "none", "required"Basit seçim
OpenAI Object{ "type": "function", "function": { "name": "fn" } }Belirli fonksiyonu zorla
Anthropic Object{ "type": "tool", "name": "fn", "disable_parallel_tool_use": true }Anthropic yerel formatı

Gelişmiş Parametreler

ParametreTipAçıklama
stream_optionsobjectYalnızca Chat Completions: Token sayıları için { include_usage: true }
reasoning_effortstringAkıl yürütme özellikli GPT-5 modelleri için "low", "medium", "high"
service_tierstring"auto" veya "default"
seedintegerDeterministik çıktılar
logprobsbooleanLog olasılıklarını döndür
top_logprobsintegerEn iyi log olasılıklarının sayısı (0-20)
logit_biasobjectToken yanlılık haritası (-100 ila 100)
frequency_penaltynumberTekrar cezası (-2 ila 2)
presence_penaltynumberKonu cezası (-2 ila 2)
stopstring/arrayDurdurma dizileri
nintegerTamamlama sayısı (1-128)
userstringİzleme için kullanıcı tanımlayıcısı

OpenAI Gelişmiş Özellikleri

ParametreTipAçıklama
modalitiesarrayÇok modlu (multimodal) için ["text", "audio"]
audioobjectSes çıkış yapılandırması (ses, format)
predictionobjectDaha hızlı tamamlama için tahmin edilen çıktı
metadataobjectİzleme için anahtar-değer çiftleri
storebooleanDaha sonra geri almak için sakla

Sağlayıcıya Özgü Seçenekler

{
  "anthropic_options": {
    "thinking": {
      "type": "enabled",
      "budget_tokens": 10000
    },
    "prompt_caching": true
  },
  "google_options": {
    "safety_settings": [...],
    "google_search": true,
    "code_execution": true
  }
}

Anthropic Messages Parametreleri

Temel Parametreler

ParametreTipAçıklama
modelstringModel tanımlayıcısı
messagesarrayKonuşma mesajları
max_tokensintegerMaksimum çıktı (128000’e kadar)
systemstring/arraySistem istemi
streambooleanAkışı etkinleştir

Araç Çağırma (Tool Calling)

{
  "tools": [
    {
      "name": "get_weather",
      "description": "Get weather",
      "input_schema": {
        "type": "object",
        "properties": {
          "location": { "type": "string" }
        }
      }
    }
  ],
  "tool_choice": {
    "type": "auto",
    "disable_parallel_tool_use": false
  }
}

Genişletilmiş Düşünme (Extended Thinking)

{
  "model": "claude-opus-4-6",
  "thinking": {
    "type": "enabled",
    "budget_tokens": 10000
  }
}

Responses API Parametreleri

Temel Parametreler

ParametreTipAçıklama
modelstringModel tanımlayıcısı
inputstring/arrayGirdi içeriği
instructionsstringSistem talimatları
max_output_tokensintegerMaksimum çıktı token’ı
previous_response_idstringKonuşmayı devam ettir

Gelişmiş Parametreler

ParametreTipAçıklama
truncation_strategystring"auto" veya "disabled"
includearray["reasoning.encrypted_content"]
reasoning_effortstringAkıl yürütme modelleri için
service_tierstringÖncelik katmanı

Araç Formatı

Hem OpenAI hem de Anthropic araç formatlarını destekler:
// OpenAI formatı
{ "type": "function", "name": "fn", "parameters": {...} }

// Anthropic formatı (Cursor uyumluluğu)
{ "name": "fn", "input_schema": {...} }

Gemini API Parametreleri

Temel Parametreler

ParametreTipAçıklama
contentsarrayKonuşma içeriği
systemInstructionobjectSistem istemi
generationConfigobjectÜretim ayarları

Araçlar

{
  "tools": [{
    "functionDeclarations": [{
      "name": "search",
      "description": "Search the web",
      "parameters": {...}
    }],
    "codeExecution": {},
    "googleSearch": {}
  }],
  "toolConfig": {
    "functionCallingConfig": {
      "mode": "AUTO"
    }
  }
}

Güvenlik Ayarları

{
  "safetySettings": [
    {
      "category": "HARM_CATEGORY_HARASSMENT",
      "threshold": "BLOCK_MEDIUM_AND_ABOVE"
    }
  ]
}

Ek Parametreler

ParametreTipAçıklama
cachedContentstringÖnbelleğe alınmış içerik referansı
responseMimeTypestring"text/plain" veya "application/json"
responseSchemaobjectYapılandırılmış çıktı için JSON şeması

Akış (Streaming)

Chat Completions ve Responses dahil olmak üzere stream: true değerini sunan üretim endpoint’leri, Server-Sent Events (SSE) kullanır:
# Chat Completions
curl https://api.tokenlab.sh/v1/chat/completions \
  -H "Authorization: Bearer sk-xxx" \
  -d '{"model": "gpt-4o", "messages": [...], "stream": true}'

# Chat Completions kullanım takibi
-d '{"...", "stream_options": {"include_usage": true}}'

Hata Yönetimi

TokenLab, OpenAI uyumlu hata yanıtları döndürür:
{
  "error": {
    "message": "Invalid API key",
    "type": "invalid_api_key",
    "code": "invalid_api_key"
  }
}
Ayrıntılar için Hata Yönetimi Rehberi bölümüne bakın.

En İyi Uygulamalar

Bilinmeyen parametreler, yalnızca seçilen genel rota ve model bunları desteklediğinde iletilir.
Chat Completions akışı için doğru token sayıları adına stream_options.include_usage değerini etkinleştirin. Responses’ın kendi akış sözleşmesi vardır ve bu Chat’e özgü seçeneği sunmaz.
SDK’nızın beklediği formatla eşleştirin. TokenLab hem OpenAI hem de Anthropic formatlarını kabul eder.