Menu

Prompt Şablonları: Örnekler ve Şablon Hazırlama

Prompt şablonu, daha önce test ettiğin ve her seferinde değişen kısımları boşluk olarak bırakılmış bir prompttur. Doldurulacak alanları olan hazır şablonları kopyala, sonra en iyi promptunu beş adımda şablona çevir.

Bu sayfadaki her istemi düzenleyebilir, sonra ChatGPT, Claude ya da başka bir yapay zekâ uygulamasında açabilirsin.

Prompt şablonu boşlukları olan bir prompttur. Sabit metin, bir tür görev için iyi cevap almak hakkında öğrendiğin her şeyi taşır: rol, biçim, sınırlar. Boşluklar her seferinde değişeni taşır: konu, dil, üzerinde çalışılacak metin. Üç boşluğu doldurmak bir prompt yazmaktan daha hızlıdır ve sana tutarlı kalitede ve şekilde cevaplar verir.

Aşağıdaki şablon herhangi bir programlama kavramını senin seviyende açıklıyor. Alanlara kendi değerlerini yaz, bir parçanın neye katkı yaptığını görmek için onu kapat, sonra kopyala ya da bir sohbet uygulamasında aç.

Bir kavramı benim seviyemde açıkla
Fill in
Parts
Kendi kendine öğrenen programcılara sabırla öğreten bir öğretmensin.
JavaScript dilinde closure kavramını açıkla.
Değişkenleri, fonksiyonları ve dizileri zaten biliyorum. En iyi kendim çalıştırabileceğim küçük bir örnekten öğreniyorum.
Kalın başlıklı üç bölümde cevap ver: tek cümlede fikir, kilit satırda yorum olan kısa bir kod örneği ve yaygın bir hata.
150 kelimeyi geçmesin. Bildiklerim arasında saymadığım bir terime ihtiyacın olursa onu birkaç kelimeyle açıkla.
Try it
Example replyReplies vary between models and runs.

Fikir: Closure, dış fonksiyonun çalışması bittikten sonra bile oluşturulduğu yerdeki değişkenleri hatırlayan bir fonksiyondur.

Örnek:

function makeCounter() {
  let count = 0;
  return function () {
    count += 1; // still sees count from makeCounter
    return count;
  };
}

const next = makeCounter();
console.log(next()); // 1
console.log(next()); // 2

Yaygın hata: iki sayacın tek bir toplamı paylaşmasını beklemek. makeCounter() her çağrıldığında yeni bir count oluşturur, bu yüzden her sayaç kendi sayısını tutar.

İyi bir şablonu ne iyi yapar

Bir şablon ancak geldiği prompt kadar iyidir, bu yüzden sabit metin daha önce çalıştırdığın ve beğendiğin bir prompt olmalı. İşe yarar bir şablonu vasat cevapları daha hızlı üreten bir formdan üç seçim ayırır.

Sadece değişeni boşluk yap. Cevabın her zaman 150 kelimenin altında olmasını istiyorsan 150'yi sabit metne yaz. Her boşluk her kullanımda yeniden vermen gereken bir karardır ve on boşluklu bir şablonu doldurmak promptu yeniden yazmaktan daha yavaştır.

Her boşluğa net bir ad ve makul bir varsayılan ver. {{bildiklerim}} sana ne yazacağını söyler; {{x}} söylemez. Varsayılan değer beklenen değerin türünü gösterir ve şablonu hiçbir şey yazmadan bir kez çalıştırmanı sağlar.

Her iş için bir şablon tut. Bir boşluğa bağlı olarak kavram açıklayan, kod inceleyen ve quiz sorusu yazan bir şablon, üçünü de üç ayrı şablondan daha kötü yapar. Sabit metin ne kadar belirginse biçim ve standart hakkında o kadar çok şey söyleyebilir.

Prompt nasıl yazılır sayfasındaki altı parça sabit metin için iyi bir kontrol listesidir: rol, görev, bağlam, girdi, biçim, kısıtlar. Boşluklar genellikle görev, bağlam ve girdide yer alır.

Prompt şablonu örnekleri

Bu üçü yaygın gündelik işleri kapsıyor. Her birinde doldurulacak adlandırılmış alanlar var. Daha büyük bir hazır prompt koleksiyonu için prompt örnekleri sayfasına bak.

Belirli bir okur için özetle
Fill in
<text> etiketlerinin içindeki metni iki dakikası olan bir yönetici için özetle. En fazla 3 madde kullan. Okurun alması gereken bir karar ya da yapması gereken bir iş varsa onunla başla ve ihtiyaç duymadığı arka planı dışarıda bırak. <text> Metni buraya yapıştır </text>
Try it
Küçük bir fonksiyon yaz
Fill in
bir sayı listesi alıp medyanını döndüren bir Python fonksiyonu yaz. Dilde varsa tip ipuçları kullan. Girdi boşsa bir ValueError fırlat. Fonksiyondan sonra beklenen sonuçlarıyla birlikte yorum olarak üç örnek çağrı ekle. Sadece kodu döndür.
Try it
Example replyReplies vary between models and runs.
def median(numbers: list[float]) -> float:
    if not numbers:
        raise ValueError("median() needs at least one number")
    ordered = sorted(numbers)
    middle = len(ordered) // 2
    if len(ordered) % 2 == 1:
        return ordered[middle]
    return (ordered[middle - 1] + ordered[middle]) / 2


# median([3, 1, 2])     returns 2
# median([4, 1, 3, 2])  returns 2.5
# median([])            raises ValueError
Bir mesaja cevap yaz
Fill in
<message> etiketlerinin içindeki mesaja bir cevap yaz. Amaç: kibarca reddet ve onun yerine gelecek aydan bir tarih öner. Ton: samimi ve kısa. 80 kelimeyi geçmesin ve mesajda ya da amaçta olmayan bilgiler ekleme. <message> Merhaba! Ayın 14'ündeki buluşmamızda projen hakkında kısa bir konuşma yapmaya müsait olur musun? </message>
Try it
Example replyReplies vary between models and runs.

Merhaba, davet için teşekkürler, beni düşünmene çok sevindim! Maalesef ayın 14'ünde katılamıyorum. Onun yerine gelecek aydan bir tarih uygun olur mu? O zaman proje hakkında konuşmaktan memnuniyet duyarım.

Sevgiler, [Adın]

Yapıştırılan metnin etrafındaki etiketlerin bir nedeni var. Doldurulan metin talimat gibi görünen cümleler içerebilir ve ayırıcılar modelin şablonunun talimatlarını üzerinde çalışması gereken malzemeyle karıştırmasını önler.

Kendi şablonunu nasıl yaparsın

  1. İşe yaramış bir promptla başla. Cevabın doğru çıktığı bir sohbeti al ve takip mesajlarında eklemek zorunda kaldığın düzeltmeler dahil promptun son hâlini topla. Bu düzeltmeler en değerli kısımdır, çünkü ilk sürümün yanlış yaptığını düzeltirler.
  2. Bir dahaki sefere neyin değişeceğini işaretle. Promptu oku ve bir sonraki kullanımda düzenleyeceğin her kelimenin altını çiz. Genellikle iki ile dört şeydir: bir konu, bir okur kitlesi, bir uzunluk, yapıştırılmış bir girdi.
  3. Her birini adlandırılmış bir boşlukla değiştir. Boşluğu aracının beklediği şekilde yaz; elle yapıştırdığın bir prompt için [okur], kod için {audience} gibi.
  4. Üç farklı doldurmayla test et. Tipik bir durum, çok kısa ya da çok uzun bir girdi ve alışılmadık bir durum kullan. Biri başarısız olursa sabit metin hâlâ ilk kullanım hakkında bir şey varsayıyordur. Promptları yinelemek sayfasında anlatıldığı gibi her seferinde tek bir cümleyi değiştir.
  5. Bulabileceğin bir yere kaydet. Bir not dosyası, bir metin genişletici ya da bir snippet yöneticisi işe yarar. Aramak zorunda kaldığın bir şablon, kullanmayı bırakacağın bir şablondur.

Kodda şablonlar

Bir programda şablon, adlandırılmış alanları olan bir stringdir. Python'un str.format() metodu onları doldurur:

SUMMARY_TEMPLATE = """Summarize the text inside the <text> tags for {audience}.
Use at most {bullets} bullet points and lead with any action the reader must take.

<text>
{text}
</text>"""

with open("notes.txt", encoding="utf-8") as f:
    meeting_notes = f.read()

prompt = SUMMARY_TEMPLATE.format(
    audience="a manager who has two minutes",
    bullets=3,
    text=meeting_notes,
)

str.format() kullanırken şablondaki her gerçek süslü parantezin iki kez yazılması gerekir ({{ ve }}), bu da şablon bir JSON örneği içerdiğinde önemlidir. meeting_notes içindeki kod gibi, ilettiğin değerlerin içindeki parantezlerin kaçırılmasına gerek yoktur. Yapay zekâ uygulaması geliştirmeye yönelik bazı kütüphanelerin kendi şablon sınıfları var, ama etrafında ek özelliklerle bir format stringiyle aynı işi yaparlar.

Değerler kullanıcılardan geldiğinde şablonun onların metnini modele gönderdiğini unutma. Onu ayırıcıların içinde tut ve modele kötü niyetli bir girdinin kötüye kullanabileceği araçlar ya da veriler verme.

Şablon mu, sistem promptu mu

Şablon ve sistem promptu farklı sorunları çözer. Sistem promptu bir sohbetteki ya da uygulamadaki her mesaja uygulanan kuralları tutar: persona, ton, asistanın asla yapmaması gerekenler. Şablon ise boşluklu tek bir görevi tutar. Bir uygulamada çoğu zaman ikisini birden kullanırsın: temel kuralları belirleyen sabit bir sistem promptu ve her kullanıcı mesajını oluşturan bir şablon.

Sıkça Sorulan Sorular

Prompt şablonu nedir?

Prompt şablonu, kullanımlar arasında değişen kısımlar için [konu] ya da {language} gibi yer tutucular içeren, tekrar kullanılabilir bir prompttur. Sabit metin daha önce test ettiğin talimatları tutar; promptu sıfırdan yazmak yerine her seferinde boşlukları doldurursun.

Kendi prompt şablonumu nasıl yaparım?

Sana zaten iyi bir cevap vermiş bir promptla başla. Bir sonraki kullanımda değiştireceğin kelimeleri işaretle, her birini adlandırılmış bir boşlukla değiştir ve şablonu biri alışılmadık bir durum olmak üzere üç farklı doldurmayla test et. İlk cevabı iyi yapan talimatları olduğu gibi bırak.

Prompt şablonlarını nereye kaydetmeliyim?

Hızlıca kopyalayabileceğin herhangi bir yere: bir not dosyası, bir metin genişletici ya da bir snippet yöneticisi. Sohbet uygulamalarında da tekrar kullandığın metinler için özel talimatlar ve proje talimatları gibi yerler var; bunlar boşluklu tek seferlik görevlerden çok her mesaja uygulanan kurallara uygundur.

Python'da prompt şablonu nasıl kullanılır?

Şablonu adlandırılmış alanları olan bir string olarak sakla ve str.format() ya da bir f-string ile doldur. str.format() kullanırken şablondaki her gerçek süslü parantezi iki kez yaz ({{ ve }}), örneğin şablon bir JSON örneği içerdiğinde. Kullanıcıdan gelen metni talimatlardan ayrı kalması için ayırıcıların içine koy.

Coddy programming languages illustration

Coddy ile kodlamayı öğren

BAŞLA