AI Kodu Nasıl Yazıyor?

Şimdi AI'nın ne yapabildiğini ve yapamadığını biliyoruz. Ama gerçekten nasıl çalışıyor? Teknik detaylar değil — onları umursamıyorsunuz. Ama prensip anlayışı.

Token'lar AI İçin Harf Gibi

K01'i (Metin) hatırlıyor musunuz? Orada AI'nın "cümleleri anlayamadığını" öğrendik. AI sonra ne metin geldiğini tahmin ediyor. Bunu her metni küçük parçalara bölerek yapıyor — sözde "token'lar" denilen.

Token bir kelime değildir. Daha çok bir hece veya hattı bir harftir. "hello world" dediğinde AI'ya, onu yaklaşık 4 token'a böler: "hel", "lo", "_world." Kesin bölme teknik olarak karmaşık ama fikir şu: AI metninizi tam cümleler olarak görmüyor ama patern dizileri olarak.

Koddaki de aynı — bir istisna ile. Kod çok daha katı kurallara sahiptir. "hello world" 1000 şekilde yazılabilir. Ama x = x + 1 yalnızca birkaç şekilde yanlış olmadan yazılabilir.

Bu demek oluyor: AI koddaki metne göre çok daha hassastır. Yapı daha katıdır. Bu AI'nın koddaki büyük gücü, çünkü AI kuralları sever.

AI Neden GitHub'dan Kodu Biliyor

AI milyarlarca kod satırı ile eğitildi. GitHub, StackOverflow, açık kaynaklı projeler — hepsi eğitim materyalidir. AI fonksiyonları nasıl adlandıracağını, hataları nasıl yakalaracağını, veri yapılarını nasıl kuracağını görmüştür.

Bu yüzden AI gerçek, profesyonel kod gibi görünen doğru, yapılandırılmış kod yazabilir. AI "anladığı" için değil ama deseni çok sık gördüğü için en olası deseni yeniden oluşturur.

Milyonları senfoniyi duymuş ve sonra yeni bir besteci çıkaran besteci gibi. Besteci müziği anlıyor — ama AI kodu ANLAMAZ. AI sadece en yaygın yapıları yeniden oluşturur.

Bu ayrıca AI'nın neden sıkça aşırı tasarım yaptığını açıklar. GitHub aşırı tasarımlı kodla doludur çünkü profesyonel programcılar savunmacı olma eğilimi gösterir. AI bunu öğrendi.

Kod İçin Üç Görev Türü

K01'de (Metin) öğrendiğimiz üç görev türü: Çarpan, Etkinleştirici, Sınırlar. Kodla tam aynı.

1. Çarpan: Rutin Görevler İçin Kod

Bunlar AI'nın parlattığı tipik görevler:

  • "Bana Python'da HTTP sunucusu yaz"
  • "CSV dosyalarını işleyen betik oluştur"
  • "Resimleri incelemek için kod oluştur"

Bu neden işe yarar? Çünkü AI yapıyı bilir. Bu görevler bin kez yapılmış ve AI tüm desenleri görmüş. Kodun çalışma şansı yüksek.

Çarpan Kuralı: Görev ne kadar sık eğitim sırasında ortaya çıkarsa, kod o kadar iyi.

2. Etkinleştirici: Belirli Gereksinimleriniz İçin Kod

Bunlar fikrinizi somutlaştırmanız gereken görevlerdir:

  • "Benim özel dosya yapımı işleyen betik yaz"
  • "Bu belirli website için scraper oluştur"
  • "İş mantığımı uygulayan sistem kur"

Burada AI sadece gereksinimlerinizi anlaması değil, aynı zamanda ekstrapolasyon yapması gerekir. Bu işe yarar — ancak sınırlamalarla. AI varsayımlar yapacak ve genellikle yanılır.

Etkinleştirici Kuralı: Gereksinimini AI'nın bilgisine çevirmelisin. Ne kadar çok tanımlarsan, o kadar iyi.

3. Sınırlar: AI'nın (Henüz) Yapamadığı Şeyler

Bunlar AI'nın sınırlarına ulaştığı görevler:

  • "Kodum maksimum performans için optimize et"
  • "Sistem güvenliğindeki açığı bul"
  • "Bu kodun neden işlemediğini anla" (ince hatalar olduğunda)

Neden işe yaramıyor? Çünkü anlama gerektirir. Performans optimizasyonu bağlam gerektirir — darboğazlar neler? Güvenlik yaratıcılık gerektirir — beklenmedik saldırı vektörleri neler? Hata ayıklama metodoloji gerektirir — ilk olarak hangi hipotezi test edersin?

AI bunu yapabilir ama çok daha düşük başarı oranlarıyla. Ve ne zaman yanlış olduğunu her zaman fark etmezsin.

Her Kod Promptundan Önce İki Soru

AI'dan kod yazmasını istemeyin önce kendine iki soru sor:

1. Bu standart bir sorun mu? Milyonlar kez çözüldü mü? Evet ise → Çarpan, AI harika olacak. Hayırsa → daha zor, AI varsayımlar yapacak.

2. Sonucu test edebilir miyim? Kodun çalışıp çalışmadığını görebilir miyim? Evet ise → hataları bulup düzeltebilirim. Hayırsa → birine güvenmek zorundayım.

Bu iki soru AI'ya güvenip güvenmeyeceğine karar veriyor.

Kod Neden Metinden Daha Zor?

Metin: AI birbiriyle uyumlu kelimeler yazıyor. Yanlış işe yaramaz — sadece garip ses çıkarır.

Kod: AI birbiriyle uyan ve anlam taşıyan semboller yazıyor. Yanlış programın çalışmaması veya yanlış şey yapması anlamına gelir. Bu daha büyük bir hata.

Bu yüzden kod prompt'ları daha kesin olmalı. Metne sahip, AI daha çok "tahmin" yapabilir. Koddaki bağlam açık olmalı.

Gelecek: Daha İyi Kod-AI

AI gelecekte koddaki gelişimi görecek mi? Kesinlikle. Zaten sadece kod yazmakla kalmayıp, onu da anlayabilecek sistemler var — hataları tanır, çeşitleri test eder, hatta kendi hatalarını bulur.

Ama bunlar bile gerçek anlamda "anlamayacak". Basitçe daha iyi desenlere sahip olacaklar. Ve bu yüzden sistemi gözden geçirmek için yine bir insana ihtiyacın var.

Bu AI'nın kısıtlaması değildir. Bu herhangi bir yazılımın gerçeği: kod karmaşıktır ve ikinci bir göz seti her zaman faydalıdır.

AI kodu metin gibi yazar — token tahminlemesi aracılığıyla. Yapısal kurallar AI'ya yardımcı olur. Standart görevler iyi çalışır. Özel gereksinimler kesinlik gerektirir. Senin anlayışın hala gereklidir.

AI Aslında Ne Yazdı?
Amaçlı Kod