LLM·3 dk okuma·

Litelm: Şişkinlikten Arındırılmış Minimalist LiteLLM Kütüphanesi

Paylaş
LLMEdumints Blog

1. Neden Litelm? Minimalist LLM Yönlendirmesi

LiteLLM, farklı LLM sağlayıcıları arasında çağrı yönlendirmesi ve mesaj formatı çevirisi yapan popüler bir araçtır. Ancak bu temel çekirdek işlev; proxy sunucuları, önbellekleme (caching) katmanları ve maliyet takibi gibi çoğu geliştiricinin nadiren ihtiyaç duyduğu 100.000 satırı aşkın (LOC) devasa bir kod yığınının altına gömülmüştür.

Litelm, bu karmaşayı ortadan kaldırarak yalnızca ana çağrı akışını çekip çıkarır: model yönlendirme, mesaj formatı dönüştürme, streaming, araç kullanımı (tool use) ve embedding desteği. Proxy sunucusu, Router sınıfı veya önbellekleme katmanı barındırmayan kütüphane; yalnızca ~2.900 satır kod ve sadece iki temel bağımlılık (openai, httpx) ile çalışır.

2. Kurulum Seçenekleri

Projenizin ihtiyaç duyduğu sağlayıcı ekosistemine göre modüler ve hafif bağımlılıklarla kurulabilir:

  • pip install litelm: Temel sürüm (openai + httpx)
  • pip install litelm[anthropic]: Anthropic SDK desteği
  • pip install litelm[bedrock]: AWS boto3 desteği
  • pip install litelm[all]: Tüm ek bileşenler

3. Kullanım ve API Uyumluluğu

LiteLLM kullanan projeler için geçiş, import ifadesinde yalnızca s/litellm/litelm/ değişikliği yapmaktan ibarettir; fonksiyon isimleri, argümanlar ve yanıt tipleri birebir aynıdır:

  • Temel Çağrı: litelm.completion("openai/gpt-4o", messages=[{"role": "user", "content": "Hello!"}])
  • Streaming: litelm.completion("groq/llama-3.1-70b-versatile", messages=[...], stream=True)
  • Embedding: litelm.embedding("openai/text-embedding-3-small", input=["hello world"])
  • Asenkron Desteği: Her fonksiyonun acompletion, aembedding, aresponses ve atext_completion gibi asenkron türevleri mevcuttur.

4. Kapsam: Neler Dahil, Neler Hariç?

LiteLLM ile karşılaştırıldığında kütüphanenin sınırları net bir şekilde çizilmiştir:

Dahil Edilenler (What's in):

  • Model yönlendirme (provider/model sözdizimi)
  • Mesaj formatı çevirisi (Anthropic, Bedrock, Cloudflare, Mistral)
  • Streaming ve stream_chunk_builder
  • Tool use (fonksiyon çağırma / function calling)
  • Embeddings (vektör gömmeleri)
  • Metin tamamlama (text completions)
  • OpenAI Responses API desteği
  • Sahte (mock) yanıt üretimi

Hariç Tutulanlar (What's out):

  • Router sınıfı (yük dengeleme ve fallback mekanizmaları)
  • Proxy sunucusu
  • Önbellekleme, bütçeleme ve maliyet takibi
  • Token sayımı
  • Görsel üretim, ses, OCR ve fine-tuning
  • Ajanlar (agents), guardrail ve zamanlayıcılar (scheduler)

5. Desteklenen Sağlayıcılar

Litelm, "provider/model-name" sözdizimi ile 19 farklı sağlayıcıya yönlendirme yapar; OpenAI uyumlu tüm uç noktalar api_base üzerinden doğrudan çalışır:

  • Doğrulanmış (Verified): OpenAI, Anthropic, Groq, Mistral, xAI, OpenRouter ve Azure.
  • Diğer Sağlayıcılar: Bedrock, Cloudflare, Together, Fireworks, DeepSeek, Perplexity ve DeepInfra.

Yazılım Geliştirme Açısından Pratik Çıkarım

Modern yazılım mimarisinde gereksiz bağımlılıklar mikroservislerin imaj boyutunu şişirir, güvenlik açığı yüzeyini genişletir ve soğuk başlatma (cold start) sürelerini uzatır. Litelm, tek sorumluluk prensibini benimseyerek sadece model soyutlamasına odaklanır. Böylece production ortamlarında yüksek verimli, yalın ve hafif bir LLM entegrasyonu sağlar.

Orijinal kaynağa buradan ulaşabilirsiniz.


Bu konuyu derinlemesine öğrenmek isterseniz: Modeller: Hangisi, Ne Zaman? modülüne göz atın.

Paylaş

Bu konuyu daha derinlemesine öğrenmek ister misin?

Edumints'teki ücretsiz kursları incele ve bugün başla.

Kurslara Göz At →