Büyük Dil Modelleri (LLM’ler) dünyasında, prompt’ları en iyi şekilde hazırlamak modelin performansı için çok önemli. Daha önce yapılan araştırmalar prompt içeriklerini farklı şekillerde yazmayı, çeşitli prompt tekniklerini (bağlam içi öğrenme ve düşünce zinciri gibi) ve örnek sıralamasını incelemiş olsa da, LLM’lerin prompt şablonlarına olan hassasiyeti hakkında hala çok az şey biliyoruz.
Bu yüzden bu makale, farklı prompt şablonlarının LLM performansına nasıl etki ettiğini inceliyor. Aynı içerikleri düz metin, Markdown, JSON ve YAML gibi insanların okuyabileceği farklı formatlarda hazırladık. Sonra bunların mantık yürütme, kod yazma ve çeviri gibi görevlerdeki etkisini OpenAI’ın GPT modelleri üzerinde test ettik.
Deneyler gösterdi ki, GPT-3.5-turbo’nun performansı, kullanılan prompt şablonuna bağlı olarak kod çevirisi görevinde %40’a kadar değişiklik gösterebiliyor. GPT-4 gibi daha büyük modeller ise bu değişimlerden daha az etkileniyor. Yaptığımız analiz, sabit prompt şablonları kullanma konusunu yeniden düşünmemiz gerektiğini gösteriyor çünkü farklı formatlar modelin performansını ciddi şekilde etkileyebiliyor.
1. BAŞLANGIÇ
Büyük Dil Modellerinin (LLM’lerin) ortaya çıkışı, yapay zeka alanında çok önemli bir ilerlemeyi işaret ediyor. Bu gelişme, doğal dil işleme, anlama ve üretme konularında adeta bir devrim yarattı.
Prompt mühendisliği artık çok kritik bir konu haline geldi. Bu alanda asıl odak noktası, LLM’lerin istediğimiz çıktıları üretmesini sağlayacak girdileri en iyi şekilde hazırlamak. Bunun için de bu modellerin prompt’ları nasıl yorumladığını ve yanıt verdiğini iyi anlamak gerekiyor.
Etkili bir prompt hazırlamanın genelde üç önemli noktası var:
- Net ve açık talimatlar vermek
- RAG (Bilgi Destekli Üretim) veya bağlam içi öğrenmeyi güçlendirecek başka prompt teknikleri kullanmak
- Uygun formatlama yapmak
Şekil 1: Prompt formatlamanın GPT-35-turbo-16k-0613 modelinin performansını nasıl etkilediğini gösteren bir örnek. Bu örnek, MMLU test setinden alınan uluslararası hukuk konulu çoktan seçmeli sorular üzerinde yaptığımız deneylere dayanıyor. “<>” işaretlerinin içindeki metinler gerçek içeriklerle değiştirildi. İlginç olan şu ki, JSON formatı kullanıldığında doğruluk oranı, Markdown formatına göre %42 daha yüksek çıktı.
Çoğu zaman gözden kaçırılan bir şey var: Prompt’un formatı, modelin performansını ciddi şekilde etkileyebiliyor. Oysa genelde farklı şablonlarda performansın aynı kalacağı düşünülüyor. Bu konuda çok az araştırma ve kanıt var, ama bunlar gösteriyor ki prompt formatını değiştirmek performansta büyük farklılıklara yol açabiliyor. Bu da şu anki değerlendirme standartlarının bu faktörü göz ardı etmesi konusunda endişe yaratıyor.
Mesela, bir araştırma gösterdi ki LLM’ler ayırıcı işaretler veya büyük-küçük harf değişiklikleri gibi küçük prompt değişikliklerine bile duyarlı. Ayrıca, mevcut değerlendirme yöntemleri genelde sabit şablonlar kullanıyor ve bu da yanıltıcı sonuçlara yol açabiliyor.
Bu bulgulardan yola çıkarak, bizim çalışmamız prompt formatındaki daha geniş değişikliklerin model performansını nasıl etkilediğini araştırıyor. OpenAI’ın dört GPT modelini, altı farklı test üzerinde değerlendirdik. Düz metin, Markdown, YAML ve JSON formatlarını kullandık (Şekil 1’de gösterildiği gibi). Bu kapsamlı yaklaşım, önceki araştırmalardan farklı çünkü onlar genelde küçük şablon değişikliklerine odaklanmıştı.
Araştırmamızı GPT model serisine odaklamımızın iki ana nedeni var:
- Farklı GPT model sürümleri arasındaki davranış kalıplarını karşılaştıran analizlerin (özellikle en yeni GPT-4-turbo için) eksik olması
- Bu modeller eğitim yöntemlerini veya verilerini açıklamadığı için, onlarla etkili etkileşim yöntemlerini ve en iyi girdi formatlarını belirleme ihtiyacı
Çalışmamız şu temel soruları araştırmak için tasarlandı: • Hassasiyet: GPT modellerinin performansı farklı prompt formatlarıyla ne kadar değişiyor? • Tutarlılık: GPT modelleri, farklı prompt yapılarıyla sunulduğunda aynı sorulara tutarlı yanıtlar verebiliyor mu? • Aktarılabilirlik: Tüm GPT modellerinde evrensel olarak etkili olan, en iyi performansı sağlayan bir prompt formatı var mı?
Ana sorularımızın yanında, prompt format etkinliğiyle göreve özel yetenekler arasındaki ilişkiyi ve model büyüklüğünün performansa etkisini de inceliyoruz. OpenAI’ın GPT-35-turbo ve GPT-4 gibi modelleri, prompt format değişikliklerine öngörülemeyen bir hassasiyet gösteriyor ve tüm modeller ve testlerde önemli performans farklılıkları ortaya çıkıyor. İlginç olan şu ki, aynı nesil içinde bile evrensel olarak en iyi format yok. Ancak GPT-4-turbo, önceki ve çağdaş modellerine göre prompt format değişikliklerine karşı daha dayanıklı.
Özetle, çalışmamızın ana katkıları şunlar:
• Farklı prompt formatlarının (düz metin, Markdown, YAML ve JSON) GPT modellerinin performansına etkisini çeşitli görevler üzerinde karşılaştıran ilk çalışma.
• Prompt formatlamanın GPT modelleri üzerindeki etkisini çoktan seçmeli sorular, kod üretme ve çeviri gibi geniş bir görev yelpazesinde kapsamlı bir şekilde analiz ediyoruz.
• Azure OpenAI üzerinden GPT model sürümlerini değerlendirerek, GPT-4-turbo’nun önceki modellere göre prompt yapısı değişikliklerine daha az duyarlı olduğunu ortaya koyuyoruz.
2. Deney Düzeni
2.1 Veri Setleri Deneylerimiz çeşitli görevleri ve veri setlerini kapsıyor ve üç ana gruba ayrılıyor:
• Doğal Dilden Doğal Dile (NL2NL): MMLU ve OpenAI Evals’dan NER Finance testlerini içeriyor. • Doğal Dilden Koda (NL2Code): HumanEval ve FIND testlerini içeriyor. • Koddan Koda (Code2Code): CODEXGLUE ve HumanEval-X testlerini içeriyor.
İlk olarak modelin performansını göreve özel puanlama fonksiyonlarıyla değerlendiriyoruz. Sonra araştırma sorularımızı yanıtlamak için 3. ve 5. bölümlerdeki metrikleri kullanıyoruz. Veri setlerinin detaylı açıklamaları ve metrikler Ek B’de bulunuyor.
2.2 Prompt Tasarımı Çeşitli girdi formatları kullanıyoruz: düz metin, markdown, YAML ve JSON. Prompt’lar beş bileşenden oluşuyor: kişilik, görev talimatları, örnekler, çıktı format talimatları ve kullanıcı isteği. Her bir bileşenin içeriğinin farklı prompt formatları arasında aynı kalmasını sağlıyoruz. Tek fark yapı ve sözdiziminde. Karıştırıcı değişkenlerden kaçınmak için, prompt’ları format ne olursa olsun bağlam ve anlamın tutarlı kalacağı şekilde tasarlıyoruz. Örnekler Ek C’de bulunuyor.
2.3 Modeller Deneyler Azure üzerinden OpenAI’ın GPT-3.5 ve GPT-4 modelleriyle yapıldı. GPT-3.5 için, bağlam penceresi boyutlarını (4k ve 16k) karşılaştırmak için “gpt-35-turbo-0613” ve “gpt-35-turbo-16k-0613″u kullandık. GPT-4 için, 128k bağlam penceresine sahip daha yeni ve hızlı versiyonu test etmek için “gpt-4-32k-0613” ve “gpt-4-1106-preview”ı kullandık.
3. Hassasiyet
3.1 Metrik Tanımları Hassasiyet: Prompt şablonu seçiminin bir modelin T görevindeki performansını ne kadar etkilediğini değerlendirmek için, çeşitli şablonları {p1, p2, …, pn} inceliyor ve performanslarını bir puanlama fonksiyonu s ile ölçüyoruz. T görevi için şablonların ulaştığı en yüksek puan Max(s(pi, T)) ve en düşük puan Min(s(pi, T))’yi belirliyoruz. Sonra, performans farkının istatistiksel olarak anlamlı olup olmadığını belirlemek için eşleştirilmiş t-testi kullanıyoruz. Test anlamlı çıkarsa, prompt formatı önemli; çıkmazsa, modelin performansı kullanılan prompt’a göre nispeten daha az hassas demektir.
Tablo 1: Modellerin prompt formatına olan hassasiyeti, tek yönlü eşleştirilmiş t-testleri kullanılarak değerlendirildi. Tablo, her veri seti ve model için en iyi ve en kötü formatların (Maksimum/Minimum) metriklerini ve p-değerlerini gösteriyor. HumanEval testinde GPT-4-1104-preview dışında tüm p-değerleri 0.05’in altında çıktı. Bu da modellerin genel olarak prompt formatına karşı hassas olduğunu doğruluyor.
3.2 Prompt formatı dil modellerinin performansını etkiliyor mu ve prompt formatlarını değiştirirken performans değişimi ne kadar önemli?
İlk olarak, model performansının prompt formatındaki herhangi bir değişikliğe hassas olup olmadığını analiz ediyoruz. Bunu değerlendirmek için, her model için en iyi ve en kötü performans gösteren formatları çeşitli testler üzerinde karşılaştıran tek yönlü eşleştirilmiş t-testi yaptık.
Tablo 1’de gösterilen p-değerlerinin çoğu 0.01’in altında. Bu da format değişikliklerinden kaynaklanan model performans farklarının istatistiksel olarak anlamlı olduğunu gösteriyor.
Şekil 4, modellerin tüm testlerdeki performansını görselleştiriyor ve performansta önemli bir aralık olduğunu gösteriyor. Örneğin, FIND veri setinde, GPT-35-turbo-0613 ve GPT-35-turbo-16k-0613’ün performansı, prompt’lar Markdown’dan düz metne geçirildiğinde %200’lük dramatik bir artış gösteriyor. Benzer şekilde, HumanEval testinde, 32k-0613 konfigürasyonlu GPT-4 modeli, prompt formatı JSON’dan düz metne değiştirildiğinde %300’ün üzerinde etkileyici bir performans artışı sergiliyor. Bu da LLM performansının prompt format seçimine karşı çok dayanıklı olmayabileceğini gösteriyor.
4. Tutarlılık
4.1 Metrik Tanımı Hassasiyet ölçümünden sonra, prompt değişikliklerinin yanıtları ne kadar değiştirdiğini Shu ve arkadaşlarının tutarlılık metriğini kullanarak ölçüyoruz. Bu metrik, iki farklı prompt şablonu için aynı yanıtları veren test örneklerinin oranını hesaplıyor. Pa ve Pb şablonları için tutarlılık C(Pa, Pb) şöyle hesaplanıyor:
C(Pa, Pb) = 1/N × (aynı yanıtı veren örnek sayısı)
Burada N test setinin büyüklüğü ve A modelin verdiği yanıt. Yüksek puan, prompt’lar arasında daha fazla tutarlılık olduğunu gösteriyor.
4.2 Büyük modeller farklı şablonlar arasında daha tutarlı çıktılar mı üretiyor?
Çalışmamızda model çıktılarının tutarlılığını MMLU ve FIND veri setlerini kullanarak değerlendirdik (Şekil 2 ve 8’de gösterildiği gibi). MMLU için, yanıt değişkenliğini ortadan kaldırmak amacıyla sıcaklığı sıfıra ayarladık.
GPT-3.5-turbo serisi düşük tutarlılık gösterdi:
- Tutarlılık puanları 0.5’in altındaydı
- Markdown ve JSON formatları arasında sadece %16 aynı yanıt verdi
Buna karşılık GPT-4:
- Tutarlılık puanları 0.5’in üzerindeydi
- Farklı prompt’lar arasında daha güvenilir sonuçlar verdi
FIND veri seti için de GPT-4, tutarlılık konusunda GPT-3.5-turbo serisinden daha iyi performans gösterdi.
Bu bulgular gösteriyor ki GPT-4 gibi büyük modeller daha tutarlı, ama yine de farklı formatlarda güvenilir performans için modellerin daha da geliştirilmesi gerekiyor.
Şekil 2: MMLU veri seti için tutarlılık karşılaştırması: GPT-3.5 modelleri format çiftleri arasında 0.5’in altında tutarlılık puanları gösterirken, GPT-4 sürekli olarak 0.5’in üzerinde puan alıyor, bu da daha yüksek güvenilirliğe işaret ediyor.
Özetle, model yanıtlarının tutarlılığı modelin büyüklüğüne göre değişiyor ve GPT-4 gibi büyük modeller farklı prompt’lar arasında daha tutarlı çıktılar sağlıyor.
5. Aktarılabilirlik
5.1 Metrik Tanımı Kesişim-Birleşim Oranı: Prompt şablonlarının modeller arasında ne kadar aktarılabilir olduğunu değerlendirmek için, model çiftleri arasındaki en iyi performans gösteren şablonların Kesişim-Birleşim Oranını (IoU) hesaplıyoruz. En iyi performans gösteren şablonlar, eşleştirilmiş t-testi ile belirlenen, istatistiksel olarak birbirinden ayırt edilemeyen performansa sahip olanlardır. IoU şöyle hesaplanıyor:
IoU = (İki modelin ortak en iyi şablonlarının sayısı) / (İki modelin toplam en iyi şablon sayısı)
Burada Pm1 ve Pm2, sırasıyla m1 ve m2 modellerinin en iyi şablon setlerini temsil ediyor. Genelde 0.5’lik bir IoU eşiği kullanılıyor, ama 0.7 gibi daha yüksek bir eşik daha fazla örtüşme olduğunu gösteriyor.
5.2 Aynı aileden gelen modeller prompt formatları arasında benzer eğilimler gösteriyor mu?
Büyük Dil Modelleri, özellikle GPT tabanlı modeller üzerindeki araştırmamız gösteriyor ki, prompt formatı tercihleri modelden modele değişiyor. Şekil 5’te görüldüğü gibi:
- GPT-3.5-turbo JSON formatını tercih ederken
- GPT-4 Markdown formatında daha iyi çalışıyor
Kesişim-Birleşim Oranı (IoU) metriklerini kullanarak prompt aktarılabilirliğini incelediğimizde (Şekil 3 ve Ek B):
- Farklı model serileri arasında düşük uyumluluk bulduk (IoU genelde 0.2’nin altında)
- Ancak GPT-35-turbo-16k-0613 ve GPT-35-turbo-0613 gibi aynı alt seriden gelen modeller yüksek uyumluluk gösteriyor (IoU 0.7’nin üzerinde)
Bu bulgular gösteriyor ki, ortak mimariler ve eğitim hedeflerine sahip olsalar bile, GPT modelleri aynı prompt’lara farklı tepkiler veriyor. En iyi performans için modele özel prompt mühendisliği gerekiyor, çünkü aynı aile içinde bile olsa tüm GPT modelleri için evrensel olarak çalışan tek bir format yok.
Bu da bize şunu gösteriyor: Prompt formatları farklı GPT modelleri arasında aktarılamadığı için, her model için özel prompt mühendisliği yapmak şart.
Şekil 3: NER Finance testi üzerinde modeller arası en iyi şablonlar için Kesişim-Birleşim Oranı (IoU) puanları. Aynı sürüm model çiftleri arasında daha yüksek IoU görülürken, farklı sürümler arasında daha düşük IoU gözleniyor.
6. Sonuç
Çalışmamız çok önemli bir şey ortaya koydu: Prompt’ların nasıl formatlandığı, GPT tabanlı modellerin performansını ciddi şekilde etkiliyor ve her durumda mükemmel çalışan tek bir format yok. Bu bulgu, şu anki değerlendirme yöntemlerini sorgulatıyor çünkü bu yöntemler genelde prompt yapısını göz ardı ediyor ve bu da bir modelin gerçek yeteneklerini yanlış değerlendirmemize yol açabiliyor. Bu yüzden gelecekteki LLM testlerinde çeşitli prompt formatları kullanılmasını öneriyoruz ki modellerin performansını daha doğru ölçüp geliştirebilelim.
Açıklanabilirlik konusunda ilginç bir şey fark ettik: Modelin büyüklüğü, prompt değişikliklerine verdiği tepkileri etkiliyor. Mesela GPT-4’ün performansı, prompt değişikliklerinden GPT-3.5’e göre daha az etkileniyor. Bu da bize büyük modellerin prompt’ları daha tutarlı bir şekilde işleyebileceğini gösteriyor. Bu keşif, LLM’lerin nasıl çalıştığını daha iyi anlamak ve yapay zekanın uyarlanabilirliğini ve insan-yapay zeka etkileşimini geliştirmek için daha fazla araştırma yapmamız gerektiğini gösteriyor.
7. Kısıtlamalar
Bu çalışmada sadece GPT tabanlı modellere odaklandık. Ama ileride prompt formatlarının diğer modeller üzerindeki etkisini de incelemeyi planlıyoruz. Mesela:
- LLaMA
- Gemini
- PaLM
- Phi gibi daha küçük modeller
Bu sayede prompt formatlamanın farklı LLM aileleri üzerindeki etkisini daha kapsamlı anlayabileceğiz.
Ayrıca, sonraki çalışmalarda şablon çeşitliliğini artırma fırsatı var. Bizim araştırmamız HTML veya XML gibi formatları içermedi. Oysa bu formatlar birçok modelin eğitim verilerinde yaygın olarak bulunuyor. Bu formatları da dahil etmek, prompt format etkilerini daha detaylı incelememizi sağlayabilir.
Son olarak, deney tasarımımızda prompt’un diğer tüm öğelerini sabit tutup sadece formatı değiştirdik. İlerideki çalışmalarda şu konuları araştırmak ilginç olabilir:
- Modellerin prompt formatına olan hassasiyeti, başka prompt mühendisliği teknikleri değiştirildiğinde nasıl değişiyor?
- Örneğin:
- Verilen örnek sayısını değiştirmek
- Prompt talimatlarının netliğini iyileştirmek
Bu tür araştırmalar, prompt yapısı ile modelin tepkisi arasındaki ilişkiyi anlamamıza yardımcı olabilir ve daha etkili prompt mühendisliği uygulamaları geliştirmemize katkı sağlayabilir.