prompt-eng
Sözlük ↗Prompt Şablonu
Prompt şablonu, sabit kodlanmış değerler yerine yer tutucu değişkenlerle (yaygın olarak {{değişken_adı}}, {değişken} veya $değişken gibi bir sözdizimi kullanılarak) yazılmış, aynı temel yapı ve talimatlara farklı veriler yerleştirilerek birçok istekte yeniden kullanılmak üzere tasarlanmış bir promputtur. Prompt şablonları, üretim düzeyindeki SaaS uygulamalarının LLM'leri entegre etmesinin standart yoludur, çünkü bir sohbet arayüzünde rastgele hazırlanan ham promptlar, farklı girdilere sahip binlerce kullanıcıya hizmet eden bir kod tabanına ölçeklenmez. Bunun yerine, geliştiriciler her yapay zeka özelliği için bir tane iyi test edilmiş şablon yazar ve bunu programatik olarak doldururlar — tıpkı bir SQL hazırlanmış ifadesi (prepared statement) veya bir e-posta şablonu gibi. Şablonlar tipik olarak, uygulama mantığından ayrı olarak sürüm kontrolünde (veya özel bir prompt yönetim aracında) yaşar, böylece tam bir kod dağıtımı olmadan düzenlenebilir, A/B testine tabi tutulabilir ve geri alınabilir — bu, şablon sürümlerini takip eden, her doldurulmuş promptu ve çıktısını günlüğe kaydeden ve prompt düzeyinde değerlendirme ve geri almayı destekleyen özel prompt yönetim platformları (ör. LangSmith, PromptLayer, Langfuse) tarafından giderek daha fazla desteklenen bir kalıptır. İyi şablon tasarımı, değişken yerine koymayı belirsizlikten arındırır (enjekte edilen verilerin talimatlarla karıştırılamaması için açık ayırıcılar kullanarak — prompt injection'ı önlemekle doğrudan ilgilidir), boş veya çok uzun değişken değerleri gibi uç durumları zarif bir şekilde ele alır ve sabit talimat kısmını değişken veri kısmından ayırır, böylece her çağrı noktasına dokunmadan talimat iyileştirilebilir. Somut bir örnek: bir müşteri geri bildirimi özetleme SaaS özelliği, kod tabanında saklanan şu şablonu kullanır: "Aşağıdaki {{num_reviews}} müşteri yorumunu \"{{product_name}}\" ürünü için 3 madde işaretine özetle: bir yaygın övgü, bir yaygın şikayet ve bir uygulanabilir öneri. Yorumlar:\n{{reviews_text}}\n\nJSON olarak yanıtla: {\"praise\": string, \"complaint\": string, \"suggestion\": string}." Çalışma zamanında uygulama, her ürün için veritabanından {{num_reviews}}, {{product_name}} ve {{reviews_text}}'i doldurur, doldurulmuş promptu modele gönderir ve JSON yanıtını arayüze ayrıştırır. Ekip daha sonra 4. bir alan ("sentiment_score") eklemek istediğinde, kod tabanı genelinde dağınık satır içi prompt dizelerini aramak yerine tek bir şablon dosyasını düzenler.
İlgili terimler