Ana içeriğe geç

Giriş8 dk

Prompt anatomisi: görev, bağlam, kısıt, format

Önkoşul:Bağlam penceresi, token ve maliyet

Kanca

“Köpekler hakkında bir şeyler yaz” — bu prompt’a model NE cevap vermeli? Bir şiir mi, bilimsel bir makale mi, tek cümle mi, bir sayfa mı? 1. derste gördüğümüz gibi model bir OLASILIK DAĞILIMINDAN seçim yapıyor — ve BELİRSİZ bir prompt, o dağılımı GENİŞ ve ÖNGÖRÜLEMEZ bırakır.

Sezgi

İyi bir prompt DÖRT parçadan oluşur: GÖREV (ne istiyorsun), BAĞLAM (modelin bilmesi gereken arka plan), KISIT (sınırlar — ne YAPILMAMALI), FORMAT (çıktının şekli). Bu dört parça eksik olduğunda, model KENDİ varsayımlarıyla boşluğu doldurur — ve bu varsayım SENİN istediğinle NADİREN tam örtüşür.

Mekanizma

Aynı isteği, önce belirsiz, sonra dört parçayı da İÇEREN şekilde yazalım ve GERÇEK token maliyetini karşılaştıralım:

Belirsiz vs dört parçalı prompt

# Bir promptun DÖRT parçası vardır: GÖREV (ne istiyorsun), BAĞLAM (gerekli bilgi),
# KISIT (sınırlar), FORMAT (çıktı şekli). Belirsiz bir prompt bunların ÇOĞUNU eksik bırakır.
BELIRSIZ = "Write something about dogs."
YAPILI = (
    "Write a 3-sentence, cheerful paragraph about why dogs make good pets, "
    "for a childrens picture book. Do not mention cats."
)

t_belirsiz = mesaj_token_sayisi(BELIRSIZ)
t_yapili = mesaj_token_sayisi(YAPILI)

print(f"Belirsiz prompt ({t_belirsiz} token): \"{BELIRSIZ}\"")
print(f"Yapılı prompt   ({t_yapili} token): \"{YAPILI}\"")
print(f"\nYapılı prompt, belirsiz olandan {t_yapili/t_belirsiz:.1f}x daha fazla token -- ama")
print("GÖREV (yaz), BAĞLAM (neden köpekler iyi evcil hayvan), KISIT (kedi bahsetme, 3 cümle),")
print("FORMAT (neşeli, çocuk kitabı paragrafı) HEPSİ TEK seferde belirtildiği için, modelin")
print("YANLIŞ bir varsayımda bulunup TEKRAR düzeltme istemesi gerekmiyor.")
Belirsiz prompt (19 token): "Write something about dogs."
Yapılı prompt   (83 token): "Write a 3-sentence, cheerful paragraph about why dogs make good pets, for a childrens picture book. Do not mention cats."

Yapılı prompt, belirsiz olandan 4.4x daha fazla token -- ama
GÖREV (yaz), BAĞLAM (neden köpekler iyi evcil hayvan), KISIT (kedi bahsetme, 3 cümle),
FORMAT (neşeli, çocuk kitabı paragrafı) HEPSİ TEK seferde belirtildiği için, modelin
YANLIŞ bir varsayımda bulunup TEKRAR düzeltme istemesi gerekmiyor.

Yapılı prompt’u parçalarına ayıralım:

ParçaBu prompttaki karşılığı
GÖREV“Write a … paragraph about why dogs make good pets”
BAĞLAM“for a childrens picture book” (kimin için yazıldığı)
KISIT“Do not mention cats” (ne YAPILMAMALI)
FORMAT“3-sentence, cheerful paragraph” (uzunluk ve ton)

Matematik

Tek tur maliyeti vs netleştirme turu maliyeti

Belirsiz bir prompt, genelde bir NETLEŞTİRME turu (model soruyor, sen cevaplıyorsun) GEREKTİRİR. 2. dersteki karesel büyüme kuralını hatırla: bu ek tur, SADECE kendi token’larını değil, TÜM geçmişin TEKRAR gönderilmesini de gerektirir.

Maliyetyapılı, tek tur=tyapılı\text{Maliyet}_{\text{yapılı, tek tur}} = t_{\text{yapılı}}Maliyetbelirsiz, +1 tur=2tbelirsiz+tnetles¸tirme\text{Maliyet}_{\text{belirsiz, +1 tur}} = 2 \cdot t_{\text{belirsiz}} + t_{\text{netleştirme}}

Kod

Bu iki senaryoyu GERÇEK bir fiyatla (2. dersteki Sonnet 5 fiyatı) karşılaştıralım:

Yapılı prompt, netleştirme turundan ucuz çıkabilir

# Belirsiz bir prompt genelde bir NETLEŞTİRME turu GEREKTİRİR -- bu turun kendi
# maliyeti var. Basit bir karşılaştırma (2. dersteki fiyatla, Sonnet 5, $2/1M girdi):
GIRDI_FIYATI_1M = 2.0
NETLESTIRME_TURU_TOKEN = 120  # öğretici amaçlı tahmini bir netleştirme diyaloğunun boyutu

maliyet_yapili_tek_tur = t_yapili / 1_000_000 * GIRDI_FIYATI_1M
maliyet_belirsiz_iki_tur = (t_belirsiz + t_belirsiz + NETLESTIRME_TURU_TOKEN) / 1_000_000 * GIRDI_FIYATI_1M

print(f"\nYapılı prompt (TEK tur) maliyeti: ${maliyet_yapili_tek_tur:.6f}")
print(f"Belirsiz prompt + 1 netleştirme turu (VARSAYIMSAL {NETLESTIRME_TURU_TOKEN} token'lık ek diyalog) maliyeti: ${maliyet_belirsiz_iki_tur:.6f}")
print("\nBu rakamlar KÜÇÜK ama örüntü ÖNEMLİ: 2. dersteki karesel büyüme nedeniyle, HER ek")
print("netleştirme turu, sadece kendi token'larını DEĞİL, TÜM geçmişin YENİDEN gönderilmesini")
print("de gerektirir -- iyi yapılandırılmış TEK bir prompt, genelde daha UCUZ ve daha HIZLIDIR.")

Yapılı prompt (TEK tur) maliyeti: $0.000166
Belirsiz prompt + 1 netleştirme turu (VARSAYIMSAL 120 token'lık ek diyalog) maliyeti: $0.000316

Bu rakamlar KÜÇÜK ama örüntü ÖNEMLİ: 2. dersteki karesel büyüme nedeniyle, HER ek
netleştirme turu, sadece kendi token'larını DEĞİL, TÜM geçmişin YENİDEN gönderilmesini
de gerektirir -- iyi yapılandırılmış TEK bir prompt, genelde daha UCUZ ve daha HIZLIDIR.
Belirsiz prompt, yapılı prompt ve netleştirme turu eklenmiş belirsiz promptun token sayılarını karşılaştıran çubuk grafik.
Yapılı prompt (yeşil) tek başına belirsiz olandan (mavi) daha fazla token kullanıyor -- ama netleştirme turu eklenince (turuncu), belirsiz yaklaşım daha PAHALIYA mal oluyor.

Nerede işe yarar

Bu dört parçalı çerçeve, sonraki derslerin (4-8) HEPSİNİN üzerine inşa edileceği TEMELDİR:

  • GÖREV her zaman en BAŞTA ve en NET olmalı — model, cümlenin SONUNA kadar “ne isteniyor” belirsizse, ilk kısmı YANLIŞ yorumlayabilir.
  • BAĞLAM, modelin BİLMEDİĞİ (ve TAHMİN ETMEMESİ gereken) bilgiyi taşır — kimin için, hangi amaçla, hangi ön bilgiyle.
  • KISIT, “ne YAPILMASIN” listesidir — modeller, açıkça YASAKLANMAMIŞ her şeyi MEŞRU sayabilir.
  • FORMAT, çıktının NASIL göründüğünü belirler — uzunluk, ton, yapı (liste mi, paragraf mı, JSON mu — 7. ders).

Bu 2 hatayı yaparsın:

  1. Her promptun HER ZAMAN dört parçayı da İÇERMESİ gerektiğini sanmak — basit, tek satırlık bir soru için AŞIRI yapılandırma GEREKSİZ zaman kaybıdır; KARMAŞIKLIK arttıkça yapı ÖNEM kazanır.
  2. Daha UZUN bir promptun her zaman daha İYİ olduğunu düşünmek — amaç UZUNLUK değil, EKSİK BIRAKMAMAKTIR; gereksiz detay da modeli YANLIŞ yöne çekebilir.

Kendini test et

1. Notebook'ta yapılı prompt, belirsiz olandan 4.4 kat daha fazla token kullanıyor. Bu neden HER ZAMAN bir 'israf' değildir?
  1. Her zaman israftır, mümkün olduğunca kısa prompt yazılmalı
  2. Belirsiz bir prompt genelde bir NETLEŞTİRME turu gerektirir; 2. dersteki karesel büyüme nedeniyle bu ek tur, TÜM geçmişi yeniden göndermeyi gerektirdiği için, yapılı promptun tek seferlik maliyetinden daha PAHALIYA mal olabilir (doğru cevap)
  3. Token sayısının maliyetle hiçbir ilgisi yoktur
  4. Yapılı promptlar her zaman daha az token kullanır

Neden: tek-tur-vs-cok-tur-maliyeti bloğunda yapılı prompt (tek tur) $0.000166 iken, belirsiz prompt + 1 netleştirme turu $0.000316 -- neredeyse İKİ katı.

2. Bir promptta KISIT (constraint) parçasının eksik olması NASIL bir soruna yol açar?
  1. Hiçbir soruna yol açmaz
  2. Model, açıkça YASAKLANMAMIŞ her şeyi MEŞRU sayabilir -- örn. 'kedilerden bahsetme' kısıtı olmadan, model konuyla İLGİLİ gördüğü için kedileri de karşılaştırma amacıyla ANABİLİR (doğru cevap)
  3. Kısıt sadece format ile ilgilidir, göreve etkisi yoktur
  4. Kısıt eksikliği sadece uzunluğu etkiler

Neden: Sezgi ve kullanım bölümlerinde açıklandığı gibi, KISIT 'ne YAPILMASIN' listesidir -- notebook'taki 'Do not mention cats' örneği tam olarak bunu gösteriyor; bu kısıt olmadan model kedileri konuya dahil edebilirdi.

3. Prompt anatomisinin dört parçası (görev, bağlam, kısıt, format) HER prompt için ZORUNLU MUDUR?
  1. Evet, her prompt mutlaka dört parçayı da içermelidir
  2. Hayır -- basit, tek satırlık isteklerde aşırı yapılandırma gereksizdir; KARMAŞIKLIK ve BELİRSİZLİK RİSKİ arttıkça bu dört parçayı açıkça belirtmenin FAYDASI artar (doğru cevap)
  3. Hayır, sadece format kısmı önemlidir
  4. Sadece İngilizce promptlarda gereklidir

Neden: Kullanım bölümündeki 'Bu 2 hatayı yaparsın' kısmında AÇIKÇA belirtildiği gibi, her promptun dört parçayı da içermesi gerektiğini sanmak bir HATADIR -- basit sorular için aşırı yapılandırma zaman kaybıdır.

Özet

Özet

  • İyi bir prompt dört parçadan oluşur: GÖREV, BAĞLAM, KISIT, FORMAT.
  • Bu parçalardan biri eksikse, model KENDİ varsayımıyla boşluğu doldurur -- bu varsayım seninkiyle ÖRTÜŞMEYEBİLİR.
  • Yapılı bir prompt DAHA FAZLA token kullanır (bu dersteki örnekte 4.4 kat) -- ama bir netleştirme turundan genelde daha UCUZDUR.
  • 2. dersteki karesel maliyet büyümesi nedeniyle, HER ek netleştirme turu orantısız derecede PAHALIDIR.
  • Yapı, HER promptta değil, karmaşıklık ve belirsizlik riski arttıkça ÖNEM kazanır.
Sonraki adım: Rol ve persona verme →