Ana içeriğe atla

Genel Bakış

LemonData API, tüm ana yapay zeka geliştirme araçlarıyla doğrudan uyumluluk (drop-in compatibility) için tasarlanmıştır. Bu kılavuz, desteklenen parametreleri ve doğrulanmış entegrasyonları belgelemektedir.
Tüm parametreler doğrulanır ancak üst sağlayıcılara iletilir. Belirli modeller için desteklenmeyen parametreler, maksimum uyumluluk sağlamak amacıyla sessizce yoksayılır.

Desteklenen API Formatları

Uç NoktaFormatKullanı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 ve CLI Uyumluluğu

Doğrulanmış Araçlar

AraçDurumFormatNotlar
Cursor✅ TamOpenAIAnthropic araç formatı destekleniyor
Claude Code CLI✅ TamAnthropicGenişletilmiş düşünme (extended thinking), tool_choice
Windsurf✅ TamOpenAIStandart OpenAI formatı
Aider✅ TamOpenAITüm modeller destekleniyor
Continue.dev✅ TamOpenAI/AnthropicÇift format desteği
OpenCode✅ TamOpenAIÇoklu sağlayıcı desteği
Cline/Roo Code✅ TamOpenAIOpenRouter formatı üzerinden
GitHub Copilot✅ TamOpenAIStandart format
Codex CLI✅ TamOpenAIOpenAI Responses API
Gemini CLI✅ TamGeminiYerel Gemini formatı

Yapılandırma Örnekleri

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

SDK Uyumluluğu

Doğrulanmış SDK’lar

SDKDilDurumNotlar
OpenAI SDKPython/JS/Go✅ TamTüm parametreler destekleniyor
Anthropic SDKPython/JS✅ TamGenişletilmiş düşünme, araçlar
Vercel AI SDKTypeScript✅ TamstreamText, generateObject
LangChainPython/JS✅ TamChatOpenAI, bind_tools
LlamaIndexPython✅ TamOpenAI uyumlu
Dify-✅ TamOpenAI formatı

Chat Completions Parametreleri

Temel Parametreler

ParametreTürAçıklama
modelstringModel tanımlayıcı (gerekli)
messagesarrayKonuşma mesajları (gerekli)
max_tokensintegerMaksimum çıktı token’ları
temperaturenumberÖrnekleme sıcaklığı (0-2)
top_pnumberÇekirdek örnekleme (0-1)
streambooleanAkışı (streaming) 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
}

Tool Choice Seçenekleri

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

Gelişmiş Parametreler

ParametreTürAçıklama
stream_optionsobjectToken sayıları için { include_usage: true }
reasoning_effortstringo1/o3 modelleri için "low", "medium", "high"
service_tierstring"auto" veya "default"
seedintegerDeterministik çıktılar
logprobsbooleanLog olasılıklarını döndür
top_logprobsintegerEn yüksek logprob sayısı (0-20)
logit_biasobjectToken sapma haritası (-100 ile 100 arası)
frequency_penaltynumberTekrarlama cezası (-2 ile 2 arası)
presence_penaltynumberKonu cezası (-2 ile 2 arası)
stopstring/arrayDurdurma dizileri
nintegerTamamlama sayısı (1-128)
userstringTakip için kullanıcı tanımlayıcı

OpenAI Gelişmiş Özellikleri

ParametreTürAçıklama
modalitiesarrayÇok modlu (multimodal) için ["text", "audio"]
audioobjectSes çıktısı yapılandırması (ses, format)
predictionobjectDaha hızlı tamamlama için tahmin edilen çıktı
metadataobjectTakip için anahtar-değer çiftleri
storebooleanDaha sonra geri çağırmak için sakla

Sağlayıcıya Özel 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

ParametreTürAçıklama
modelstringModel tanımlayıcı
messagesarrayKonuşma mesajları
max_tokensintegerMaksimum çıktı (128000’e kadar)
systemstring/arraySistem istemi (system prompt)
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-5",
  "thinking": {
    "type": "enabled",
    "budget_tokens": 10000
  }
}

Responses API Parametreleri

Temel Parametreler

ParametreTürAçıklama
modelstringModel tanımlayıcı
inputstring/arrayGirdi içeriği
instructionsstringSistem talimatları
max_output_tokensintegerMaksimum çıktı token’ları
previous_response_idstringKonuşmaya devam et

Gelişmiş Parametreler

ParametreTürAçıklama
truncation_strategystring"auto" veya "disabled"
includearray["reasoning.encrypted_content"]
reasoning_effortstringAkıl yürütme (reasoning) 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

ParametreTürAçıklama
contentsarrayKonuşma içeriği
systemInstructionobjectSistem istemi
generationConfigobjectOluşturma ayarları

Araçlar (Tools)

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

Güvenlik Ayarları (Safety Settings)

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

Ek Parametreler

ParametreTürAçı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)

Tüm uç noktalar Server-Sent Events (SSE) akışını destekler:
# Chat Completions
curl https://api.lemondata.cc/v1/chat/completions \
  -H "Authorization: Bearer sk-xxx" \
  -d '{"model": "gpt-4o", "messages": [...], "stream": true}'

# Kullanım takibi ile
-d '{"...", "stream_options": {"include_usage": true}}'

Hata Yönetimi

LemonData, OpenAI uyumlu hata yanıtları döndürür:
{
  "error": {
    "message": "Invalid API key",
    "type": "invalid_api_key",
    "code": "invalid_api_key"
  }
}
Detaylar için Hata Yönetimi Kılavuzu sayfasına bakın.

En İyi Uygulamalar

Tüm şemalar .passthrough() kullanır - bilinmeyen parametreler üst sağlayıcılara iletilir.
Akış yanıtlarında doğru token sayıları için stream_options.include_usage özelliğini etkinleştirin.
SDK’nızın beklediği formatla eşleştirin. LemonData hem OpenAI hem de Anthropic formatlarını kabul eder.