Sistem Komutları Yerine Beceriler: Bir Anki Eğitmeni Oluşturmak

Yapay zeka beni tembelleştiriyor.

Her şeyi robotların yapmasını istediğimi kastetmiyorum. Kastettiğim şu; bir kez sıkıcı işler için bir ajan kullanmaya başladığınızda, manuel iş akışları yanlış gelmeye başlıyor.

Anki, aralıklı tekrar (spaced repetition) için kullandığım aracım. İyi çalışıyor. Ancak bir sorunum var. Kendimi hile yaparken buluyorum. Zor bir kart gördüğümde, sadece geçip gitmek için kendime "Bunu zaten biliyordum" diyorum. Bu ders çalışmak değil. Bu sadece tahmin yürütmek.

Bir çalışma arkadaşı istiyordum. Beni test edecek, cevabımı doğru olanla karşılaştıracak ve doğru puanlamayı yapmama yardımcı olacak birini istiyordum.

Bunu devasa bir sistem komutuyla (system prompt) yapmaya çalıştım. Ajana nasıl eğitmenlik yapacağını, nasıl kart yazacağını ve Telegram'da nasıl davranacağını söyledim.

Başarısız oldu. Büyük komutlar birer çöp çekmecesine dönüşüyor. Çürüyorlar. Karışıyorlar.

Yaklaşımımı değiştirdim. Google Antigravity SDK'yı kullandım.

Tek bir büyük komut yerine, katmanlı bir ajan sistemi kurdum.

  • Araçlar (Tools) ajana ellerini verir.
  • Beceriler (Skills) ajana alışkanlıklar kazandırır.
  • Politikalar (Policies) sınırları belirler.
  • Kancalar (Hooks) garantiler sağlar.
  • Tetikleyiciler (Triggers) olaylara tepki verir.

Anki'ye bağlanmak için Python araçlarını kullandım. Ajan artık desteleri listeleyebiliyor, vakti gelmiş kartları alabiliyor ve onları puanlayabiliyor.

Ancak araçlar davranış değildir. Davranış için becerileri (skills) kullandım.

Beceri, belirli talimatlar içeren küçük bir dosyadır. Üç tane oluşturdum:

  • review-buddy: Bir çalışma oturumunun nasıl yürütüleceği.
  • plain-cards: Nasıl yüksek kaliteli bilgi kartları yazılacağı.
  • codebase-cards: Kodun nasıl çalışma materyaline dönüştürüleceği.

Bu, ana sistem komutunu küçük tutuyor. Kimlik komutta kalıyor. İşin detayları ise becerilerde yaşıyor.

Ayrıca güvenlik de ekledim. Bir komut hata yapabilir. Bir politika yapamaz. Pratik modu sırasında belirli eylemleri engellemek için bir politika kullandım. Eğer ajan, yoğun çalışma (cram session) sırasında programımı değiştirmeye çalışırsa, SDK bunu çalışma zamanı (runtime) seviyesinde durduruyor.

Sonuç, çok yüzeyli bir ajan oldu. Aynı mantığı terminalimde, Telegram üzerinden sesli notlarla ve kod değişikliklerimi izleyen bir deste oluşturucuda kullanıyorum.

Daha iyi komutlar yapmaya çalışmayı bırakın. Daha küçük komutlar ve daha keskin beceriler yapmaya başlayın.

Kaynak: https://dev.to/gde/skills-over-system-prompts-building-an-anki-tutor-with-the-antigravity-sdk-2o8f

İsteğe bağlı öğrenme topluluğu: https://t.me/GyaanSetuAi