Yapay zeka çıktılarımın kalitesini adeta uçuran tek bir cümle buldum. Ne olduğunu söylemeden önce, neredeyse birebir aynı promptlarla oluşturulmuş şu iki web sitesine bir göz atın.


Tahminimce Marginalia'nın tasarımını Folio'dan daha çok beğendiniz. İşte her biri için kullandığım promptlar:
Responsive bir okuma listesi uygulaması oluştur. Kullanıcılar kitap ekleyebilmeli, onları okundu olarak işaretleyebilmeli ve okunan/okunmayanlar arasında filtreleme yapabilmeli. Sayfa yenilendiğinde liste kaybolmamalı. Hem masaüstünde hem de mobilde sorunsuz çalışsın.
Sen dünyanın en iyi UX/UI tasarımcısısın.
Responsive bir okuma listesi uygulaması oluştur. Kullanıcılar kitap ekleyebilmeli, onları okundu olarak işaretleyebilmeli ve okunan/okunmayanlar arasında filtreleme yapabilmeli. Sayfa yenilendiğinde liste kaybolmamalı. Hem masaüstünde hem de mobilde sorunsuz çalışsın.
Modele bir konuda dünyanın en iyisi olduğunu söyleyen o tek cümleyi eklemek bile devasa bir fark yarattı. Font seçiminde, sayfa düzeninde, renk kullanımında, bölümler arası boşluklarda ve UX'teki hiyerarşide bu farkı net bir şekilde görebilirsiniz.
Her ikisi de GPT-6 Astra Ultra kullanılarak, boş klasörlerde, birbirlerinden habersiz ve aynı anda oluşturuldu. Herhangi bir veri sızıntısı olmadığından emin olmak için izleri (trace) kontrol ettim. Tekrarlanan denemelerde küçük tasarım tercihleri değişse de, o ekstra cümle her seferinde ipi göğüsledi.
Bir süredir promptlarımın büyük çoğunluğunda bunu yapıyorum. Claude'a veya Chat'e dünyanın en iyi tasarımcısı, uzman bir yazılım mimarı, dünyanın en ünlü yazarı, en zeki yatırımcısı vb. olduğunu söylüyorum. Kod kalitesinde, yakalanan hata sayısında ve ortaya çıkan metinlerin netliğinde ciddi iyileşmeler elde ettim.
Ben de bunu otomatikleştirmeye karar verdim
Bunu her seferinde elle eklemek hep canımı sıkmıştı, bu yüzden birkaç tuş vuruşundan tasarruf etmek ve başlarında daha az bekçilik yapmak için bir "skill" (yetenek) geliştirmeye karar verdim. Skill, aslında ajanınızın tekrar tekrar kullanabileceği bir talimat setidir. Bunu GitHub üzerinde bulabilirsiniz; kurulum talimatlarını da yazının sonuna ekledim. Meğer bu skill'i oluşturmak, tahmin ettiğimden çok daha zahmetli bir işmiş.
İlk denememde Astra'dan, Folio ile Marginalia arasında gördüğüm farkı istikrarlı bir şekilde yaratabilecek bir skill üretmesini istedim. Modeli, eldeki görevin gerektirdiği uzmanlık neyse o alanda dünyanın en iyisi olarak konumlandırmasını söyledim. İki promptu da verip işine koyulmasını bekledim. Ve başarısız oldu.
Astra inanılmaz karmaşık bir talimat seti hazırlamaya kalktı ve benim asıl istediğim prompt tüm bu talimatların altında ezildi. Akıl yürütme izine baktığımda, bu aşırı karmaşıklık yüzünden talimatların tamamen görmezden gelindiğini fark ettim.
Ama skill'i kendim yazacak kadar da hevesli değildim. Bu yüzden Astra'ya bir şans daha verdim; ancak bu sefer, skill'i kullanarak somut bir iyileşme gösterene kadar iterasyon yapmayı bırakmamasını söyledim. Kurduğu döngü beni gerçekten etkiledi; skill'i düzenleyen, test eden ve her prompttan gelen çıktıları inceleyen birden fazla alt ajan vardı. Her testi çalıştırmak için ayrı konteynerler oluşturdu. Basit bir promptlama görevi için tepe tırmanma (hill climbing) algoritmasına şüpheyle yaklaşsam da akışına bıraktım. 20 dakika sonra zirveye ulaşıldığına dair bir bildirim aldım ve test sonucu kusursuzdu.
Ancak ortada tek bir sorun vardı: Skill'in derinliklerine, tam da bu spesifik örnek için tasarlanmış bir prompt gizlenmişti. Köşeye sıkıştırıldığında Chat'in cevabı şöyle oldu: "Haklısın—genel amaçlı bir skill'i UI test senaryomuza aşırı uyarladım." Böylece göreve özel ifadeleri temizledik ve skill yine işe yaramaz hale geldi.
Model aslında neye dikkat ediyordu?
"Dünyanın en iyisi" çerçevemin neden işe yaradığına dair iki tahminim vardı:
- Daha yüksek standart, modeli daha fazla iterasyon yapmaya itti
- UI/UX tasarımcısı rolü, tasarımı doğru yapmanın önemini vurguladı
Daha iyi sonuçlar veren denemelerimin akıl yürütme izlerine geri dönüp baktığımda, her iki tahminimi de destekleyen kanıtlar buldum. Ortaya hem ekstra bir tasarım aşaması çıkmış hem de genel olarak akıl yürütmeye daha fazla zaman ayrılmıştı. Oluşturduğum skill, rolü "front end mühendisi" olarak tanımlamayı seçmişti ve bu yüzden uygulamanın sağlamlığına ve hataya yol açabilecek uç senaryolara fazladan mesai harcanmıştı. Her iki rol de önemliydi ama yapay zeka teknik doğruluğa ve orijinal promptların tam gereksinimlerini karşılamaya odaklanmayı tercih ediyordu. Peki onu nasıl daha ileri taşıyabilirdim?
Bu yüzden kendime iki soru sormaya karar verdim:
Kelimesi kelimesine her gereksinim karşılanmış olsa bile, sonuç hedeflenen kullanım amacını nasıl ıskalayabilir?
Hedef kitlenin, eşit derecede doğru olan iki sonuçtan birini diğerine tercih etmesini ne sağlar?
İşe yaramasını sağlayan şey
Sonuç olarak, yapay zekanın üstleneceği belirli rolleri tanımlayan ve ardından onu daha yüksek bir çıktı standardına ulaşmaya zorlayan şu dört adımlık süreç ortaya çıktı:
- Üretime geçmeden önce ayırt edici güçlü yönleri belirleyin. Sonucun öne çıkmasını sağlayacak şey ne? LLM'lerin en iyi çıktıyı verebilmesi için belirli bir noktaya odaklanması gerekir. Sadece "en iyi web sitesini oluştur" demek; "bu web sitesi için en iyi UX'i tasarla, UI'daki boşluklara, fontlara ve renklere dikkat et ve mümkün olduğunca az sürtünme olmasını sağlamak için bir kullanıcı gibi test et" demek kadar iyi performans göstermez. Sonuncuyu manuel olarak yazmak zahmetlidir, ancak LLM'i devam etmeden önce gereken rollerin meta bir değerlendirmesini yapmaya zorlayan bir prompt da benzer sonuçlar üretiyor gibi görünüyor. İnsan bir çalışan da benzer şekilde hareket eder; neye bakması gerektiği ve düşüncelerini nasıl yapılandıracağı konusunda eğitim almak, birini çok daha üretken kılar. Yapay zekanın göreve hangi mercekle bakacağını tanımlamamız gerekir, ancak skill'i genellenebilir kılmak için bu merceğin ne olması gerektiğine yapay zekanın karar vermesi lazımdır. Bu sorumluluğu yapay zekaya devretmek (ki onun aklında kullanıcının tam niyeti olmayabilir) kaçınılmaz olarak performanstan biraz çalacaktır, ancak skill'i test ettiğim sonuçlar şimdiye kadar hedefe oldukça yaklaştığımızı gösteriyor.
- Standardı bir referansla kalibre edin. Güçlü ve ilgili bir referansı inceleyin ya da küçük, somut bir alternatif oluşturun. Bu, "mükemmel" kavramına karşılaştırma yapılacak somut bir zemin kazandırır. Kusursuz bir test sonucu elde ettikten sonra yapay zeka ilgili bir referans bulur veya bir alternatif yaratır. Bir web sitesi için bu, yeni bir düzen denemek olabilir. Karşılaştırılacak bir alternatif olduğunda, "onu mükemmelleştir" talimatı çok daha anlamlı hale gelir.
- Doğruluktan bağımsız olarak ustalığı değerlendirin. Şunu sorun: "Nerede sadece idare ediyor ve hangi spesifik iyileştirme hedef kitlenin deneyimini en çok artıracaktır?" Tüm kompozisyonu ve parçalarının birbiriyle nasıl uyum içinde çalıştığını değerlendirin. Bu ister bir makalenin yapısı ister bir web sitesinin genel teması olsun, çıktıları çok daha tutarlı kılar.
- Daha güçlü olan sonucu rafine edin ve koruyun. Daha fazla düzenleme otomatik olarak daha iyi iş anlamına gelmez. Skill, önceki sürümü muhafaza eder, esaslı değişiklikleri karşılaştırır ve daha güçlü olan sonucu saklar. Bir düzenleme işleri kötüleştirirse, eski haline geri dönülür. Aksi takdirde, harcanan tüm o ekstra efor geride bir enkaz bırakabilir.

Nihai sonuç, renkleri ve fontları gayet güzel kullanıyor ve göze hoş gelen boşluklara sahip. Marginalia'da hoşuma gitmeyen o karmaşık havayı bir nebze azalttı (akıl yürütme izinde bunun bilinçli bir düzenleme olduğunu doğruladım) ama kenar çubuğunda ve seçicilerde renk ile öğe tasarımını kullanma konusunda Folio'dan çok daha başarılıydı.
Peki bu neden zaten araçların içine gömülü değil?
Codex ve Claude Code gibi her çalışma ortamı (harness); kalite, hız ve maliyet arasında bir denge kurmak zorundadır. Bir noktada ajanın, işin yeterince iyi olduğuna karar vermesi gerekir.
Ama "yeterince iyi" ifadesi hâlâ iyileştirme için geniş bir alan bırakır. Hangi ortamı kullanırsam kullanayım, hepsi benim istediğimden daha erken duruyor. Ben o ekstra tokenları daha iyi bir sonuç elde etmek için harcamayı tercih ederim. Ve daha da önemlisi, "daha iyi" kavramının arkasında somut bir şey olması gerekir. Güçlü bir sonuç neye benzer? Sonucun hangi kısmı hâlâ sadece "idare eder" seviyesinde? Ve yapılan son değişiklik gerçekten bir şeyleri iyileştirdi mi?
Kendiniz deneyin
Bu sürecin tamamını Prompt Lab içinde paketledim.
Prompt Lab'ı GitHub'dan İndirin
Kurmak için bunu Codex'e yapıştırın:
1$skill-installer https://github.com/coltonconley/prompt-lab/tree/main/skills/prompt-lab adresindeki skill'i yükle
Skill kurulumdan sonra görünmezse Codex'i yeniden başlatın. Ardından normal görevinizin önüne ekleyin:
1$prompt-lab2[Göreviniz, kısıtlamalarınız, hedef kitleniz ve istenen sonuç]
Uzman rollerini seçmenize veya inceleme sürecini uzun uzun yazmanıza gerek yok. Normalde ekleyeceğiniz bağlamı ve kısıtlamaları, özellikle sonucun kimin için olduğuyla ilgili önemli detayları dahil edin. Sonra bırakın işini yapsın.
Benim önerim: Yapay zekadan daha önce isteyip de sonuçtan memnun kalmadığınız bir işte deneyin. Aynı görevi yeni sohbet pencerelerinde, skill ile ve skillsiz olarak, aynı model ve ayarlarla çalıştırın. Gerçek çıktıları karşılaştırın ve elde edilen iyileştirmenin harcanan ekstra zamana değip değmediğine bakın.
Özellikle web sitesi tasarımı dışındaki örnekleri merak ediyorum. Yazı yazma, kodlama, analiz... Yapay zekayı gerçekte ne için kullanıyorsanız o. İşinize yararsa (veya yaramazsa), promptunuzla birlikte öncesi ve sonrası sonuçları paylaşarak cevap verin. Ne kadar çok örneğim olursa, skill o kadar gelişebilir.





