100'den fazla büyük dil modelini (LLM) sanki hepsi OpenAI'ın API'siymiş gibi kullanmak ister misiniz? İster bir sohbet robotu oluşturuyor, ister görevleri otomatikleştiriyor, ister sadece meraklı davranıyor olun, LiteLLM, LLM'leri OpenAI, Anthropic, Ollama ve daha fazlasından, hepsi aynı OpenAI tarzı formatı kullanarak çağırmanız için biletinizdir. API çağrılarımı basitleştirmek için LiteLLM'ye daldım ve söyleyeyim ki, kodu temiz ve esnek tutmak için bir cankurtaran. Bu yeni başlayanlar rehberinde, LiteLLM'yi nasıl kuracağınızı, yerel bir Ollama modelini ve OpenAI'ın GPT-4o'sunu nasıl çağıracağınızı ve hatta yanıtları nasıl akışa alacağınızı, hepsi resmi belgelere dayanarak göstereceğim. Yapay zeka projelerinizi güneşli bir öğleden sonra kadar pürüzsüz hale getirmeye hazır mısınız? Hadi başlayalım!
LiteLLM Nedir? LLM API Süper Gücünüz
LiteLLM, OpenAI Chat Tamamlama formatını kullanarak OpenAI, Anthropic, Azure, Hugging Face ve Ollama aracılığıyla yerel modeller gibi 100'den fazla LLM API'sini çağırmanızı sağlayan açık kaynaklı bir Python kütüphanesi ve proxy sunucusudur. Giriş ve çıkışları standartlaştırır, API anahtarlarını yönetir ve akış, yedekler ve maliyet takibi gibi güzellikler ekler, böylece her sağlayıcı için kodu yeniden yazmanız gerekmez. 22.7K+ GitHub yıldızı ve Adobe ve Lemonade gibi şirketler tarafından benimsenmesiyle, LiteLLM geliştiricilerin favorisidir. İster API'leri (MkDocs ile olduğu gibi) belgeliyor, ister yapay zeka uygulamaları oluşturuyor olun, LiteLLM iş akışınızı basitleştirir. Hadi kuralım ve çalışırken görelim!
LiteLLM için Ortamınızı Kurma
LiteLLM ile LLM'leri çağırmadan önce, sisteminizi hazırlayalım. Bu, yeni başlayanlar için uygundur ve her adım, yolda kalmanızı sağlamak için açıklanmıştır.
1. Önkoşulları Kontrol Edin: Bu araçlara ihtiyacınız olacak:
- Python: Sürüm 3.8 veya üzeri. Terminalinizde
python --version
komutunu çalıştırın. Eksikse veya çok eskiyse, python.org'dan alın. Python, LiteLLM'nin komut dosyalarını çalıştırır. - pip: Python'un paket yöneticisi, Python 3.4+ ile birlikte gelir.
pip --version
ile doğrulayın. Yoksa,get-pip.py
dosyasını indirin vepython get-pip.py
komutunu çalıştırın. - Ollama: Yerel modeller için. ollama.com adresinden indirin ve
ollama --version
(örneğin, 0.1.44) ile doğrulayın. Yerel bir LLM testi için kullanacağız.
Bir şey eksik mi? İşleri sorunsuz tutmak için şimdi yükleyin.
2. Bir Proje Klasörü Oluşturun: Organize kalalım:
mkdir litellm-api-test
cd litellm-api-test
Bu klasör, LiteLLM projenizi barındıracak ve cd
sizi hazır hale getirecek.
3. Bir Sanal Ortam Kurun: Bir Python sanal ortamıyla paket çakışmalarından kaçının:
python -m venv venv
Etkinleştirin:
- Mac/Linux:
source venv/bin/activate
- Windows:
venv\Scripts\activate
Terminalinizde (venv)
görmek, LiteLLM'nin bağımlılıklarını izole ederek temiz bir ortamda olduğunuz anlamına gelir.
4. Bir OpenAI API Anahtarı Alın: GPT-4o testi için, openai.com adresinde kaydolun, API anahtarlarına gidin ve bir anahtar oluşturun. Güvenli bir şekilde kaydedin—daha sonra ihtiyacınız olacak.

LiteLLM ve Ollama'yı Yükleme
Şimdi, LiteLLM'yi yükleyelim ve yerel modeller için Ollama'yı kuralım. Bu hızlıdır ve API çağrılarımız için sahneyi hazırlar.
1. LiteLLM'yi Yükleyin: Etkinleştirilmiş sanal ortamınızda, şunu çalıştırın:
pip install litellm openai
Bu, LiteLLM'yi ve OpenAI SDK'sını (uyumluluk için gerekli) yükler. pydantic
ve httpx
gibi bağımlılıkları çeker.
2. LiteLLM'yi Doğrulayın: Yüklemeyi kontrol edin:
python -c "import litellm; print(litellm.__version__)"
1.40.14
veya daha yeni bir sürüm bekleyin. Başarısız olursa, pip
'i güncelleyin (pip install --upgrade pip
).
3. Ollama'yı Kurun: Ollama'nın çalıştığından emin olun ve Llama 3 (8B) gibi hafif bir model çekin:
ollama pull llama3
Bu, ~4.7GB indirir, bu yüzden bağlantınız yavaşsa bir atıştırmalık alın. llama3:latest
'i görmek için ollama list
ile doğrulayın. Ollama, LiteLLM'nin çağırması için yerel modelleri barındırır.

LiteLLM ile LLM'leri Çağırma: OpenAI ve Ollama Örnekleri
Hadi eğlenceli kısma geçelim—LLM'leri çağırma! OpenAI'ın GPT-4o'sunu ve yerel bir Llama 3 modelini Ollama aracılığıyla, her ikisi de LiteLLM'nin OpenAI uyumlu formatını kullanarak çağırmak için bir Python komut dosyası oluşturacağız. Ayrıca gerçek zamanlı yanıtlar için akış deneyeceğiz.
1. Bir Test Komut Dosyası Oluşturun: litellm-api-test
klasörünüzde, bu kodla test_llm.py
dosyasını oluşturun:
from litellm import completion
import os
# Ortam değişkenlerini ayarla
os.environ["OPENAI_API_KEY"] = "your-openai-api-key" # Anahtarınızla değiştirin
os.environ["OLLAMA_API_BASE"] = "http://localhost:11434" # Varsayılan Ollama uç noktası
# LLM için mesajlar
messages = [{"content": "Write a short poem about the moon", "role": "user"}]
# OpenAI GPT-4o'yu çağır
print("GPT-4o çağrılıyor...")
gpt_response = completion(
model="openai/gpt-4o",
messages=messages,
max_tokens=50
)
print("GPT-4o Yanıtı:", gpt_response.choices[0].message.content)
# Ollama Llama 3'ü çağır
print("\nOllama Llama 3 çağrılıyor...")
ollama_response = completion(
model="ollama/llama3",
messages=messages,
max_tokens=50,
api_base="http://localhost:11434"
)
print("Llama 3 Yanıtı:", ollama_response.choices[0].message.content)
# Ollama Llama 3 yanıtını akışa al
print("\nOllama Llama 3 akışa alınıyor...")
stream_response = completion(
model="ollama/llama3",
messages=messages,
stream=True,
api_base="http://localhost:11434"
)
print("Akışa Alınan Llama 3 Yanıtı:")
for chunk in stream_response:
if chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="", flush=True)
print() # Akıştan sonra yeni satır
Bu komut dosyası:
- API anahtarlarını ve Ollama'nın uç noktasını ayarlar.
- Bir istem tanımlar ("Ay hakkında kısa bir şiir yaz").
- LiteLLM'nin
completion
işleviyle GPT-4o ve Llama 3'ü çağırır. - Gerçek zamanlı çıktı için Llama 3'ün yanıtını akışa alır.
2. API Anahtarını Değiştirin: os.environ["OPENAI_API_KEY"]
'i gerçek OpenAI anahtarınızla güncelleyin. Bir tane yoksa, GPT-4o çağrısını atlayın ve Ollama'ya odaklanın.
3. Ollama'nın Çalıştığından Emin Olun: Ollama'yı ayrı bir terminalde başlatın:
ollama serve
Bu, Ollama'yı http://localhost:11434
adresinde çalıştırır. Llama 3 çağrıları için açık tutun.
4. Komut Dosyasını Çalıştırın: Sanal ortamınızda, şunu çalıştırın:
python test_llm.py
- Bunu çalıştırdığımda, GPT-4o şu şekilde cilalı bir şiir döndürdü:
>> The moon’s soft glow, a silver dream, lights paths where quiet shadows gleam.
- Llama 3, şu şekilde daha basit ama çekici bir versiyon verdi:
>> Moon so bright in the night sky, glowing soft as clouds float by.
Akışa alınan yanıt, kelime kelime yazdırıldı, sanki LLM canlı yazıyormuş gibi hissettirdi. Başarısız olursa, Ollama'nın çalıştığını, OpenAI anahtarınızın geçerli olduğunu veya 11434 numaralı portun açık olduğunu kontrol edin. Hata ayıklama günlükleri ~/.litellm/logs
içindedir.
LiteLLM Geri Çağırmaları ile Gözlemlenebilirlik Ekleme
LLM çağrılarınızı bir profesyonel gibi takip etmek ister misiniz? LiteLLM, girişleri, çıkışları ve maliyetleri Langfuse veya MLflow gibi araçlara kaydetmek için geri çağırmaları destekler. Maliyetleri kaydetmek için basit bir geri çağırma ekleyelim.
Komut Dosyasını Güncelleyin: test_llm.py
dosyasını bir maliyet takibi geri çağırması içerecek şekilde değiştirin:
from litellm import completion
import os
# Maliyeti takip etmek için geri çağırma işlevi
def track_cost_callback(kwargs, completion_response, start_time, end_time):
cost = kwargs.get("response_cost", 0)
print(f"Yanıt maliyeti: ${cost:.4f}")
# Geri çağırmayı ayarla
import litellm
litellm.success_callback = [track_cost_callback]
# Komut dosyasının geri kalanı (yukarıdakiyle aynı)
os.environ["OPENAI_API_KEY"] = "your-openai-api-key"
os.environ["OLLAMA_API_BASE"] = "http://localhost:11434"
messages = [{"role": "user", "content": "Write a short poem about the moon"}]
print("GPT-4o çağrılıyor...")
gpt_response = completion(model="openai/gpt-4o", messages=messages, max_tokens=50)
print("GPT-4o Yanıtı:", gpt_response.choices[0].message.content)
# ... (Ollama ve akış çağrıları değişmedi)
Bu, her çağrının maliyetini kaydeder (örneğin, GPT-4o için "Yanıt maliyeti: $0.0025"). Ollama çağrıları ücretsizdir, bu nedenle maliyetleri $0'dır.
Tekrar Çalıştırın: python test_llm.py
komutunu çalıştırın. Yanıtların yanında maliyet günlüklerini göreceksiniz, bu da bulut tabanlı LLM'ler için giderleri izlemenize yardımcı olacaktır.
APIdog ile API'lerinizi Belgeleme
LLM API'leriyle çalıştığınız için, bunları ekibiniz veya kullanıcılarınız için net bir şekilde belgelemek isteyeceksiniz. APIdog'u kontrol etmenizi şiddetle tavsiye ederim. APIdog'un Dokümantasyonu bunun için harika bir araçtır! API oyun alanları ve kendi kendine barındırma seçenekleri gibi özelliklerle, API'leri tasarlamak, test etmek ve belgelemek için şık, etkileşimli bir platform sunar. LiteLLM'nin API çağrılarını APIdog'un cilalı belgeleriyle eşleştirmek, projenizi bir sonraki seviyeye taşıyabilir—bir deneyin!

LiteLLM Hakkındaki Düşüncelerim
LiteLLM ile oynadıktan sonra, işte sevdiğim şeyler:
- Birleşik Format: OpenAI, Ollama ve ötesi için tek bir kod yapısı—artık API'ye özgü baş ağrıları yok.
- Yerel Güç: Ollama entegrasyonu, modelleri çevrimdışı çalıştırmanıza olanak tanır, gizlilik veya düşük bütçeli projeler için mükemmeldir.
- Akış Eğlencesi: Gerçek zamanlı yanıtlar, uygulamaların bir arkadaşla sohbet etmek gibi canlı hissetmesini sağlar.
- Topluluk Coşkusu: 18K+ GitHub yıldızıyla, LiteLLM geliştiricilerin favorisidir.
Zorluklar? Ollama veya API anahtarları doğru yapılandırılmamışsa kurulum zor olabilir, ancak belgeler sağlamdır.
LiteLLM Başarısı İçin Profesyonel İpuçları
- Hata Ayıklama: Ham istekleri ve yanıtları görmek için
litellm.set_verbose = True
ile ayrıntılı günlüğe kaydı etkinleştirin. - Daha Fazla Model: API anahtarlarını ve modellerini (örneğin,
anthropic/claude-3-sonnet-20240229
) ekleyerek Anthropic'in Claude'unu veya Azure OpenAI'sini deneyin. - Eşzamansız Çağrılar: FastAPI uygulamalarında engellemeyen çağrılar için
litellm.acompletion
kullanın. - Proxy Sunucusu: Birden fazla uygulamanın tek bir uç noktayı paylaşması için LiteLLM'yi bir proxy olarak çalıştırın (
litellm --model gpt-3.5-turbo
). - Topluluk: İpuçları ve güncellemeler için LiteLLM Discord'una veya GitHub Tartışmalarına katılın.
Sonuç: LiteLLM Yolculuğunuz Burada Başlıyor
OpenAI'ın GPT-4o'sundan yerel Llama 3'e kadar, hepsi tek bir temiz formatta, LLM'leri bir profesyonel gibi çağırmak için LiteLLM'nin gücünü yeni açtınız! İster yapay zeka uygulamaları oluşturuyor, ister meraklı bir kodlayıcı gibi denemeler yapıyor olun, LiteLLM model değiştirmeyi, yanıtları akışa almayı ve maliyetleri takip etmeyi kolaylaştırır. Yeni istemler deneyin, daha fazla sağlayıcı ekleyin veya daha büyük projeler için bir proxy sunucusu kurun. LiteLLM kazançlarınızı LiteLLM GitHub'da paylaşın—oluşturduklarınızı görmek için heyecanlıyım! Ve API'lerinizi belgelemek için APIdog'u kontrol etmeyi unutmayın. İyi kodlamalar!