İçeriğe geç

Atölyemizin Aletleri: Kurs Boyunca Kullanacağımız 11 Aracın Hızlı Turu

Kursta kullanacağımız 11 anahtar aracın hızlı tanıtımı: tiktoken (token sayımı), anthropic-tokenizer, Langfuse (telemetry), Helicone (proxy), LiteLLM (provider abstraction), vLLM (self-hosting), RouteLLM (routing), LLMLingua (compression), GPTCache (semantic cache), tldraw (mimari diyagramları), Python uv. Her biri için: ne işe yarar, ne zaman devreye girer, ücretli mi.

Şükrü Yusuf KAYA
18 dakikalık okuma
Başlangıç
Atölyemizin Aletleri: Kurs Boyunca Kullanacağımız 11 Aracın Hızlı Turu
🧰 Bu ders bir kataloğ
Burada her aracın tamamını öğrenmiyoruz. Her aracın adını, ne işe yaradığını, ne zaman kursta devreye gireceğini ve ücretli olup olmadığını göreceğiz. İlerleyen modüllerde her birine ayrı bir bölüm ayrılacak. Bu ders, 'önümüzdeki yola hangi araçlarla çıkıyoruz' bilgisi.

Araçları 5 kategoriye ayırdım#

KategoriAraçlarNe yapar
Token Sayımıtiktoken, anthropic-tokenizer, sentencepieceBir metnin kaç token olduğunu, API çağırmadan önce öğrenmek için
GözlemlenebilirlikLangfuse, Helicone, LangSmith, PhoenixHer isteğin token + cost + latency verisini toplamak
Provider AbstractionLiteLLM, Portkey, OpenRouterTek API ile 200+ modeli aynı arayüzden çağırmak; routing + failover
Inference & HostingvLLM, TGI, SGLang, OllamaOpen-weight modelleri self-host etmek; throughput maksimize
OptimizasyonLLMLingua, RouteLLM, GPTCachePrompt sıkıştırma, model routing, semantic cache
Şimdi tek tek geçelim.

1️⃣ tiktoken — OpenAI Token Sayacı#

Ne yapar: Bir string'in OpenAI'ın hangi tokenizer'ında kaç token tutacağını API çağırmadan söyler.
Neden hayati: API'ye gönderdikten sonra öğrenmek pahalı. Önce sayman lazım. Lab 1'in çekirdeği bu kütüphane.
Kurulum:
pip install tiktoken
Ücret: Tamamen ücretsiz, açık kaynak (MIT).
Hangi modüllerde: Modül 1 (token anatomy), Modül 5 (prompt kısaltma).
python
import tiktoken
 
enc = tiktoken.encoding_for_model("gpt-4o")
tokens = enc.encode("Merhaba dünya, ben bir LLM mühendisiyim.")
print(f"Token sayısı: {len(tokens)}") # 14
print(f"Token ID'leri: {tokens}")
# decoded
print([enc.decode([t]) for t in tokens])
# ['Mer', 'haba', ' dünya', ',', ' ben', ' bir', ' L', 'LM', ...]
tiktoken ile aynı Türkçe cümlenin token'lara nasıl ayrıldığını gör — Türkçe penalty'sini gözle göreceğiz.

2️⃣ anthropic-tokenizer (count_tokens API)#

Ne yapar: Claude modellerinin tokenizer'ında sayım. (Anthropic kütüphanesinin içinde gelir.)
Neden ayrı: Claude tokenizer'ı OpenAI tokenizer'ından farklıdır. Aynı Türkçe metin için bazen %10-15 fark olur.
Kurulum:
pip install anthropic
Ücret: Ücretsiz (count_tokens endpoint'i hala rate-limit'siz).
python
from anthropic import Anthropic
client = Anthropic() # ANTHROPIC_API_KEY gerekli
 
response = client.messages.count_tokens(
model="claude-sonnet-4-6",
messages=[{"role": "user", "content": "Merhaba dünya, ben bir LLM mühendisiyim."}]
)
print(f"Claude'un saydığı token: {response.input_tokens}")
Aynı cümleyi Claude'un tokenizer'ında saymak — sonra OpenAI'la karşılaştıracağız.

3️⃣ Langfuse — Açık-Kaynak Telemetry#

Ne yapar: Her LLM çağrını otomatik olarak yakalayıp dashboard'a yazar: prompt, response, token sayısı, maliyet, latency, user ID, session ID, trace.
Neden seçtim: Açık kaynak, self-hostable, ücretsiz tier'ı çok cömert (50K observation/ay). Üretim için en uygun.
Kurulum: Docker Compose (self-host) veya cloud sign-up (langfuse.com)
Ücret:
  • Cloud free: 50K observation/ay
  • Cloud Pro: $59/ay, 250K observation
  • Self-host: ücretsiz, sınırsız
Hangi modüllerde: Modül 3 (telemetry kurulumu), Modül 4 (cost attribution), Modül 15 (production monitoring).
python
from langfuse.openai import openai # drop-in replacement
 
response = openai.chat.completions.create(
model="gpt-4o-mini",
messages=[{"role": "user", "content": "Merhaba"}],
metadata={"user_id": "user_42", "feature": "chat"}
)
# ✅ Otomatik Langfuse'a yazıldı: prompt, output, tokens, cost, latency
Langfuse openai SDK'sını monkey-patch'liyor — tek satır değişiklik, full telemetry.

4️⃣ Helicone — Proxy-Based Observability#

Ne yapar: Langfuse'a benzer ama proxy olarak çalışır.
api.openai.com
yerine
oai.helicone.ai
çağırırsın, headers'a key eklersin, her şey yakalanır.
Neden ayrı? Hiç kod değiştirmeden monitoring ekleyebilirsin. JavaScript/Python/Ruby/Go ne yazıyorsan çalışır.
Kurulum:
api.openai.com
oai.helicone.ai/v1
swap
Ücret:
  • Free: 100K request/ay
  • Pro: $20/ay sınırsız
Hangi modüllerde: Modül 3 (alternatif olarak), Modül 4 (LiteLLM'le birlikte cost routing).

5️⃣ LiteLLM — Tek API, 200+ Model#

Ne yapar: OpenAI SDK syntax'ıyla Claude, Gemini, Llama, Mistral, DeepSeek — her şeyi çağırabilirsin. Routing, fallback, cost capping, rate limiting içinde.
Bu kursun "kalbi" diyebileceğim araç:
  • Provider-switching: Sonnet 4.6 yavaşsa GPT-5'e fallback
  • Cost attribution: tagging ile per-customer faturalama
  • Virtual keys: tek API key'i 100 ekibe dağıtmak
Kurulum:
pip install litellm
veya self-hosted proxy
Ücret:
  • Library: ücretsiz, açık kaynak
  • Cloud (LiteLLM hosted): $99/ay base + usage
Hangi modüllerde: Modül 3, 4, 8, 9, 14, 15 — neredeyse her yerde.
python
from litellm import completion
 
# Aynı API ile 4 farklı sağlayıcı
for model in ["gpt-4o-mini", "claude-haiku-4-5", "gemini/gemini-2.5-flash", "deepseek/deepseek-chat"]:
response = completion(
model=model,
messages=[{"role": "user", "content": "Selam, kendini tanıt."}],
)
print(f"{model}: {response.usage.total_tokens} tokens, "
f"${response._hidden_params['response_cost']:.5f}")
LiteLLM 4 farklı sağlayıcıyı tek interface'le karşılaştırıyor — Lab 2'nin temeli.

6️⃣ vLLM — Self-Host Inference Engine#

Ne yapar: Open-weight modelleri (Llama, Mistral, DeepSeek, Qwen) maksimum throughput'la kendi GPU'nda çalıştırmak. Continuous batching + PagedAttention sayesinde aynı GPU'da 5-15× daha çok istek.
Neden hayati: Self-hosting break-even hesabının kalbinde vLLM throughput'u var. Modül 11'in ana konusu.
Kurulum:
pip install vllm
(CUDA gerekli)
Ücret: Library ücretsiz; GPU saat ücretini sen ödüyorsun (RunPod, Modal, Lambda Labs)
Hangi modüllerde: Modül 11 (self-host ekonomisi), Modül 13 (fine-tune sonrası).

7️⃣ RouteLLM — Akıllı Model Routing#

Ne yapar: Her isteği analiz eder, "bu basit, Haiku yapabilir" / "bu zor, Sonnet'e gönder" kararı verir. Otomatik cheap-first cascade.
Neden hayati: Modül 8'in ana konusu. Doğru ayarlandığında %50-70 maliyet tasarrufu, kalite kaybı <%2.
Kurulum:
pip install routellm
Ücret: Açık kaynak (Apache 2.0)
Hangi modüllerde: Modül 8 (model routing).

8️⃣ LLMLingua — Prompt Sıkıştırma#

Ne yapar: Microsoft Research'ün araştırması. Uzun prompt'ları (4K, 16K, 100K) bilgi kaybetmeden 1/4-1/10'una sıkıştırır. Önce ucuz bir model (Llama-2 7B) ile token önemini ölçer, önemsiz token'ları atar.
Neden hayati: Modül 6'nın ana aracı. Test ettiğim Türkçe RAG prompt'unda 5400 token → 1100 token (%80 sıkıştırma), %3 quality drop.
Kurulum:
pip install llmlingua
Ücret: Açık kaynak (MIT)
Hangi modüllerde: Modül 6 (compression), Modül 7 (caching ile birlikte).

9️⃣ GPTCache — Semantic Cache#

Ne yapar: Bir kullanıcının "nasıl iade yapabilirim?" sorusu ile "iade nasıl olur?" sorusunu aynı soru sayar, ikincide LLM'i çağırmaz, ilk cevabı geri verir. Embedding-based similarity kullanır.
Neden hayati: Yüksek-tekrarlı chatbot'larda %30-60 maliyet tasarrufu sağlar.
Kurulum:
pip install gptcache
Ücret: Açık kaynak
Hangi modüllerde: Modül 7 (caching), Modül 15 (production cache layer).

🔟 uv — 100× Hızlı Python Paket Yöneticisi#

Ne yapar:
pip
yerine kullandığımız Rust-yazılmış paket yöneticisi. pip'ten 10-100× hızlı, venv'i otomatik yönetir.
Neden seçtim: Kursta 11 araç + bağımlılıkları indireceğiz.
pip
ile bu 5-15 dakika,
uv
ile 20-60 saniye. Önemli ergonomi.
Kurulum:
curl -LsSf https://astral.sh/uv/install.sh | sh
(Linux/Mac) veya PowerShell tek satır (Windows)
Ücret: Açık kaynak (Apache 2.0)
Hangi modüllerde: Hepsi. Tüm Python kurulumları için.

1️⃣1️⃣ tldraw + Excalidraw — Mimari Diyagramlar#

Ne yapar: Sistem mimari çizimleri için. Kursta "şu RAG mimarisinin maliyet akışını çizelim" tarzı bolca çizim yapacağız. Browser-based, ücretsiz, paylaşılabilir.
Ücret: Tamamen ücretsiz
Hangi modüllerde: Genel — her capstone'da kullanacağız.
📦 Toplam Stack Maliyeti (ücretsiz tier sınırlarında)
tiktoken: 0anthropictokenizer:0 · anthropic-tokenizer: 0 · Langfuse cloud: 0(50Kobs/ay)LiteLLMlibrary:0 (50K obs/ay) · LiteLLM library: 0 · vLLM: 0+GPUsaatRouteLLM:0 + GPU saat · RouteLLM: 0 · LLMLingua: 0GPTCache:0 · GPTCache: 0 · uv: 0tldraw:0 · tldraw: 0. Toplam: $0 + sadece kullandığın LLM API ücreti.

"Aracı eklemiyorum çünkü..." — bir prensip#

Çok araç, çok karmaşa. Üretim sistemine her aracı atmak doğru değil. İşte kendime koyduğum kural:
"Bu aracı eklemenin getireceği faydayı ölçemiyorsam, eklemiyorum."
Örnek: GPTCache'i eklemeden önce kaç tekrarlı sorgu var bunu logla. %5'in altındaysa GPTCache değmez (overhead daha çok). %30'un üstündeyse GPTCache zorunlu (büyük tasarruf).
Bu prensibi her araç için kursta uygulayacağız. "X aracı havalı, onu da ekleyelim" demeyeceğim. Önce ölçü, sonra alet.
▶️ Sıradaki ders
0.4 — Atölye Kurulumu: Python, uv, API Keyleri, Ücretsiz Tier'lar. Şimdi yukarıdaki araçların hepsini yerel makineye 15 dakikada kuracağız. API key'leri açacağız (hepsi ücretsiz başlangıç kredisiyle), bir 'Hello World' LLM çağrısı atacağız, ilk Langfuse trace'imizi göreceğiz.

Sık Sorulan Sorular

Evet. Kursu özenli planladım: Langfuse cloud free (50K obs), Helicone free (100K req), Gemini ücretsiz tier (1.5M token/dk), OpenAI ilk-kayıt $5 kredi, Anthropic $5 kredi, DeepSeek $1 kredi, RunPod $5 kayıt bonusu — toplam ücretsiz kredi $20+. Kursun lab'larını bu kotalar içinde rahatça bitirirsin.

Yorumlar & Soru-Cevap

(0)
Yorum yazmak için giriş yap.
Yorumlar yükleniyor...

İlgili İçerikler

Bağlantılı Pillar Konular

Bu yazının bağlandığı pillar konular