AI Kodlama Maliyetini Düşürme: Token Kullanımını Optimize Etme Rehberi
Yazılımcılar olarak son bir yıldır yeni bir refleks edindik: Bir fonksiyon yazarken takıldığımızda ya da sıkıcı bir CRUD operasyonu kapıya dayandığında hemen kısayol tuşuna basıp yapay zekayı yardıma çağırıyoruz. Fakat ay sonu kredi kartı ekstresinde ya da ekip dashboard’unda beliren o sürpriz bulut maliyetleri, keyfimizi bir anda kaçırabiliyor. AI kodlama yaparken çoğumuz ne kadar devasa bir veri hacmini her seferinde modele yolladığımızı fark etmiyoruz. İşte bu yazıda, geliştirme hızımızı zerre düşürmeden token optimizasyonu yapmanın ve cüzdanı rahatlatmanın denenmiş yollarını masaya yatırıyoruz.
Token Mantığı: Bu Sayaç Neden Bu Kadar Hızlı Dönüyor?
Bilmeyenler veya “token tam olarak neydi ya?” diyenler için en basit tanımı yapalım: Büyük dil modelleri (LLM) kelimeleri bizim gibi harf harf değil, “token” adını verdikleri hece veya karakter öbekleri halinde okur. Ortalama olarak 1000 token, yaklaşık 750 İngilizce kelimeye (Türkçe’de ek yapısından ötürü biraz daha azına) denk gelir.
Asıl tuzak şu: Bir sohbet uzadıkça, Claude veya GPT her yeni cümlenizde geçmiş konuşmaların tamamını tekrar okur. Yani model hafızaya sahip değildir; hafıza yanılsaması, geçmişin her istekte (request) baştan sona yeniden gönderilmesiyle (Context Window) sağlanır. Projenin 500 satırlık bir dosyasını AI’a verip 10 soru sorduğunuzda, o 500 satırı modele 10 defa baştan okutmuş ve parasını 10 defa ödemiş olursunuz.
[Görsel: Cursor veya VS Code arayüzünde context token sayacının soru sordukça katlanarak arttığını gösteren panel ekranı]
Context Penceresi Tuzağı ve .cursorignore Kurtarıcısı
Cursor, Windsurf ya da Copilot Workspace gibi modern AI kodlama araçları projenizi “indeksler”. Siz bir soru sorduğunuzda arkada akıllı bir vektör araması yapar ve alakalı gördüğü dosyaları context’e (bağlama) ekler. Harika bir özellik, değil mi? Teoride evet, pratikte ise tam bir bütçe canavarı.
Çünkü araç çoğu zaman test log’larını, build çıktılarını, package-lock.json gibi binlerce satırlık dosyaları da bağlama dahil eder. Bunu engellemenin en temiz yolu, projenizin kök dizinine bir .cursorignore (veya kullandığınız araca özel yoksayma dosyası) eklemektir:
# Gereksiz dosyaları AI context'inden uzak tutun
dist/
build/
node_modules/
*.log
package-lock.json
pnpm-lock.yaml
coverage/
Sadece şu küçük dosya bile tek bir sorguda bağlama giden token sayısını %40 ila %60 oranında azaltabiliyor. Denediğimiz bir projede, sırf kilitli bağımlılık dosyalarının context dışı bırakılmasıyla 200k context limitine dayanan sorguların 30k seviyesine gerilediğini bizzat ölçtük.
Prompt Engineering ile Akıllı Token Diyeti
Yapay zekaya soru sorarken edebiyat yapmayı bırakmamız gerekiyor. Doğru prompt engineering teknikleri yalnızca daha iyi kod üretmekle kalmaz, gidiş-dönüş maliyetini de doğrudan kısar.
1. “Bütün Dosyayı Yeniden Yazma” Kuralı
LLM faturalarında en pahalı kısım girdi (input) değil, çıktı (output) token’larıdır. OpenAI ve Anthropic modellerinde çıktı token’ları genellikle girdiden 3 ila 5 kat daha pahalıdır. Bir fonksiyonda hata ayıklarken modele “Bunu düzelt” derseniz, size 400 satırlık dosyanın tamamını tekrar yazar. Bunun yerine şunu deneyin:
“Sadece değişen fonksiyonu ver, dosyanın tamamını yazdırma.” veya “Yalnızca Git diff formatında göster.”
Bu ufak dokunuş, tek bir yanıtta 2000 output token tasarrufu demektir.
2. Doğrudan Referans Verme (@ Dosya Adı)
Aracın tüm codebase üzerinde körlemesine arama yapmasına izin vermek yerine, ilgili dosyayı doğrudan işaret edin. Cursor veya modern eklentilerde @UserAuth.ts şeklinde hedef göstermek, arka plandaki arama token’larını sıfıra indirir.
[Görsel: İyi optimize edilmiş bir prompt ile savruk bir prompt’un harcadığı token miktarlarını yan yana gösteren karşılaştırma grafiği]
Fiyat Tablosu: Hangi Model Ne Kadar Yakıyor?
Piyasadaki popüler modellerin maliyet profilleri ciddi şekilde farklılaşıyor. 2025 başı itibarıyla kabaca tablo şu şekilde:
| Model | Girdi (1M Token) | Çıktı (1M Token) | Öne Çıkan Özellik |
|---|---|---|---|
| Claude 3.5 Sonnet | $3.00 | $15.00 | Kodlamada endüstri standardı, yüksek kavrayış |
| GPT-4o | $2.50 | $10.00 | Hızlı ve dengeli performans |
| DeepSeek V3 / R1 | ~$0.14 – $0.55 | ~$0.28 – $2.19 | Fiyat/performans canavarı, açık ağırlıklı |
| Yerel Model (Llama 3, Ollama) | $0.00 | $0.00 | Kendi donanımınız (Sıfır bulut maliyeti) |
Agresif Token Tasarrufunun Artıları ve Eksileri
Her şeyi aşırı kısmak da her zaman en iyi çözüm olmayabilir. Dengeyi iyi kurmak şart.
| Avantajlar (Artılar) | Dezavantajlar (Eksiler) |
|---|---|
| Aylık API faturalarında %50’ye varan düşüş | Model bazen eksik context nedeniyle “halüsinasyon” görebilir |
| Daha hızlı yanıt süreleri (Latency düşer) | Geliştiricinin prompt yazarken daha dikkatli düşünmesi gerekir |
| Gürültüden arınmış, net ve nokta atışı yanıtlar | Büyük çaplı mimari refactor işlerinde parça parça ilerlemek zorlaşabilir |
Cüzdan Dostu Alternatifler: Ne Yapmalı?
Eğer kurumsal bir bütçeniz yoksa ve kendi cebinizden ödüyorsanız izleyebileceğiniz üç somut yol var:
- Prompt Caching Kullanın: Anthropic ve OpenAI’ın sunduğu “Prompt Caching” özelliğini destekleyen eklentileri tercih edin. Proje bağlamı önbelleğe alındığında, tekrarlayan girdilerde %90’a varan indirim sağlanıyor.
- Continue.dev Eklentisine Geçin: VS Code için tamamen açık kaynaklı ve ücretsiz olan Continue.dev eklentisini kurup, arka plana DeepSeek API’sini bağlayabilirsiniz. Claude kalitesine çok yakın kodlamayı neredeyse onda biri fiyatına getirirsiniz.
- Lokal Modellere Şans Verin: Bilgisayarınızda güçlü bir Apple Silicon (M serisi) işlemci veya en az 16GB VRAM’li bir Nvidia kart varsa, Ollama üzerinden Qwen 2.5 Coder çalıştırın. Günlük ufak işler, test yazımları ve regex açıklamaları için buluta tek kuruş ödemenize gerek yok.
Sonuç: Kontrolü Modele Bırakmayın
Yapay zeka araçları inanılmaz bir kaldıraç gücü sunuyor, ancak onları “nasılsa otomatik hallediyor” diyerek tamamen serbest bırakmak ay sonunda tatsız sürprizler doğurabiliyor. Context dosyalarınızı temiz tutmak, gereksiz log ve kütüphaneleri dışlamak ve yanıtları diff formatında istemek gibi basit alışkanlıklar, geliştirme deneyiminizden ödün vermeden faturalarınızı kontrol altında tutmanızı sağlar.