01Prompt, modelin gördüğü her şeydir#
Prompt (istem), modele bir yanıt üretmeden önce verilen metindir: sorunun, talimatların, örnekler, yapıştırdığın belgeler ve önceki konuşma. Model bunların hepsini tek bir token dizisi olarak okur ve sonraki tokenı bu dizinin devamı olarak tahmin eder. Çoğu sohbet sisteminde sistem talimatı, kullanıcı mesajı ve önceki yanıtlar rol etiketleriyle işaretlenip bu diziye eklenir; yani “konuşma”, modelin gözünde uzun bir metindir.
İki sonuç buradan çıkar. Birincisi, prompt yazmak modelin ağırlıklarını değiştirmez: eğitim ile çıkarım farklıdır. Konuşma bittiğinde ağırlıklarda bir iz kalmaz. İkincisi, modelin “hafızası” o anki bağlam penceresiyle sınırlıdır. Pencereye girmeyen, modelin orada göremeyeceği bir bilgidir.
02Örnek göster, ağırlık değişmeden öğrensin#
GPT-3 makalesinin dikkat çeken bulgularından biri şuydu: görevleri ve örnekleri yalnızca metin olarak vermek, hiçbir ağırlık güncellemesi olmadan modelin yeni bir göreve uyum sağlamasına yetebiliyor. Hiç örnek vermemek zero-shot, bir örnek one-shot, birkaç örnek few-shot olarak anılır. Bu davranışa bağlam içi öğrenme (in-context learning) denir. Brown ve diğerleri ↗
Bu, “modeli eğitmek” ile aynı şey değildir. Örnekler yalnızca o istek için bağlamda durur ve bir sonraki istekte yoktur. İnce ayar ise ağırlıkları kalıcı olarak değiştirir (bkz. asistan yazısı).
03Adım adım yazdır, bazen daha iyi hesaplar#
2022’de Wei ve arkadaşları, modele yalnızca cevabı değil ara akıl yürütme adımlarını da gösteren birkaç örnek vermenin, aritmetik, sağduyu ve sembolik akıl yürütme görevlerinde başarıyı artırabildiğini gösterdi. Yöntemin adı düşünce zinciri (chain-of-thought) istemidir. Makalede, sekiz örnekle yönlendirilen 540 milyar parametreli PaLM, GSM8K matematik sözlü problemlerinde o dönemin en iyi sonucuna ulaştı. Aynı makale bir sınır da bildirir: küçük modeller akıcı ama mantıksız zincirler üretebiliyor ve bu durumda standart istemden daha kötü sonuç alınabiliyor. Wei ve diğerleri ↗
Burada ince bir ayrım vardır. Modelin yazdığı adımlar, işe yarayan bir hesaplama ortamı olabilir; ama bunlar modelin içinde gerçekten olup bitenin sadık bir açıklaması olmak zorunda değildir. Turpin ve diğerleri, girdideki gizli bir ipucunun (örneğin doğru cevabın hep “A” olması) cevabı yönlendirdiğini, ancak modelin yazdığı gerekçede bunun hiç geçmediğini gösterdi. Turpin ve diğerleri ↗
04Pratikte ne işe yarar?#
| Teknik | Neden işe yarar | Sınırı |
|---|---|---|
| Görevi ve çıktı biçimini açık yaz | Belirsizliği azaltır; model daha az tahmin yürütür | Modelin bilmediği bilgiyi vermez |
| Birkaç örnek göster | Biçimi ve ölçütü örnekle anlatır | Örnekler yanlı olabilir; bağlamda yer kaplar |
| Adım adım düşündür | Çok adımlı akıl yürütmede yardımcı olabilir | Büyük modellerde belirgin; gerekçe sadık olmayabilir |
| Kaynak metni bağlama ekle | Ağırlıklarda olmayan bilgiyi sağlar (RAG mantığı) | Model kaynağa sadık kalmayabilir |
| Sıcaklığı düşür | Çıktıyı daha kararlı yapar | Doğruluğu garanti etmez (bkz.) |
05Uzun bağlam, her şeyi eşit okumaz#
Bağlam penceresi büyüdükçe daha fazla belge sığar. Ama sığmak, eşit iyilikte kullanılmak demek değildir. Liu ve diğerleri, çok belgeli soru yanıtlama ve anahtar–değer getirme görevlerinde, ilgili bilgi girdinin başında veya sonunda olduğunda performansın genellikle en yüksek olduğunu, bilgi uzun bir bağlamın ortasında kaldığında ise belirgin biçimde düştüğünü buldu. Girdi uzadıkça performans genel olarak azaldı; uzun bağlam için tasarlanmış modellerde bile. Lost in the Middle ↗
Pratik kural: en önemli talimatı ve kritik bilgiyi bağlamın uçlarına yaklaştır, gereksiz metni at ve bir belgeye dayanan cevapta kaynağın hangi bölümünü kullandığını sor. Büyük bir pencere, “her şeyi yapıştır” demek değildir.
Bağlamın nerede durduğunu ve bir asistanın konuşmalar arasında nasıl “hatırladığını” Modelin hafızası nerede? yazısında ayırıyoruz.
Bu yazıyı bitirdiğinde:
- Prompt’un modelin gördüğü her şey olduğunu açıklayabilirsin.
- Örnek göstermenin ağırlıkları değiştirmeden nasıl çalıştığını anlatabilirsin.
- Uzun bağlamın her şeyi eşit okumadığını söyleyebilirsin.
Cümlelerden birini kendi sözlerinle anlatamıyorsan, ilgili bölüme dön ve demoyu yeniden dene.
Daha çok hesap, daha iyi cevap mı? Oylama ve test anı hesabı
Orta · 11 dk okuma