AI Sözlüğü
Başlangıç· ~2 dk okuma#system-prompt#prompting#persona

System Prompt

Sistem Mesajı

Sohbetin başında modele verilen kalıcı talimat — modelin rolünü, üslubunu, kurallarını ve sınırlarını belirler.

MODEL ROLÜNÜ NASIL HATIRLARSİSTEM MESAJI"Türkçe yemek tarifi asistanısın.Hep Türkçe, max 5 satır cevapla."KULLANICI MESAJI"Muhammara nasıl yapılır?"MODEL → İKİSİNE DE UYAR"Muhammara için: ceviz, biber salçası…" (5 satır TR)sistem mesajı kalıcı kuralları, kullanıcı mesajları altına oturur
Tanım

Bir LLM ile konuşurken aslında iki tür mesaj vardır: system prompt (sistem mesajı) ve user message (kullanıcı mesajı). System prompt, her sohbetin en üstüne yerleştirilen kalıcı talimattır. Model her cevabı verirken onu görür ve dikkate alır.

İçinde şunlar olur: rol tanımı ("Sen bir Türkçe yemek tarifi asistanısın"), kurallar ("yanıtlar maksimum 5 satır"), format ("madde madde yaz"), kısıtlar ("politik konulara girme"), bilgi ("şirket adımız Avva, kuruluş 2018"). Kullanıcı bunu görmez — perde arkasında çalışır.

Modern modeller (Claude, GPT-4) sistem mesajına daha fazla "ağırlık" verir. Aynı talimatı kullanıcı mesajında yazsan model uymayabilir; sistem mesajında yazınca disipline olur.

Benzetme

Yeni bir restoranda işe başlayan garsona menüyü, kıyafet kuralını, "müşteriye 'sen' deme, 'siz' de" şeklindeki kuralları ilk gün anlatırsın. O notlar mesai boyunca aklında kalır. System prompt da öyle — sohbet ne kadar uzarsa uzasın, model "rolüm ne, kurallarım ne" diye sürekli ona bakar.

Gerçek dünyadan örnek

Bir e-ticaret destek botu kuruyorsun. System prompt: "Sen Avva müşteri destek asistanısın. Sadece Türkçe yanıt ver. Sipariş bilgilerini get_order(id) aracıyla al. Asla fiyat indirimi sözü verme — onun için insan operatöre yönlendir. Maksimum 4 cümleyle cevapla." Müşteri "merhaba kaç saatte gelir kargo?" derse model Türkçe, kısa, araç çağırarak yanıt verir. "%50 indirim ver" derse "sizi temsilcimize aktarıyorum" der. System prompt her turda hatırlatıyor.

Kod örnekleri
Anthropic SDK · system + user mesajıPython
from anthropic import Anthropic

client = Anthropic()

SYSTEM = """Sen Avva müşteri destek asistanısın.
Sadece Türkçe yanıt ver. Maksimum 4 cümle.
Asla indirim sözü verme — operatöre yönlendir."""

msg = client.messages.create(
    model="claude-sonnet-4-6",
    max_tokens=1024,
    system=SYSTEM,                # <-- kalıcı talimat
    messages=[
        {"role": "user", "content": "Kargom kaç saatte gelir?"}
    ],
)

print(msg.content[0].text)
# Model TR, kısa, kuralları takip eden bir yanıt üretir.
Ne zaman kullan
  • Modele rol/persona vermek istediğinde (asistan, hoca, doktor, vs.)
  • Çıktı formatını sabitlemek (JSON, markdown, belirli uzunluk)
  • Yapma/yapmama kuralları (politik konulara girme, sır verme)
  • Statik bağlam: şirket bilgisi, tarih formatı, dil tercihi
Ne zaman kullanma
  • Her istekte değişen bilgi için — onu user mesajında ya da context'te ver
  • Çok uzun döküman bağlamı için — system prompt'u dolduracağına RAG kullan
  • Tek seferlik prompt deneyleri için — basit user mesajı yeter
Sık yapılan hatalar

Aşırı uzun yazmak

5000 token system prompt = kullanıcı mesajına 5000 token daha az yer kalır. Önemli kuralları öne al, gereksizleri at.

Çelişkili kurallar koymak

'Asla matematik yapma' + 'tüm soruları cevapla' yazarsan model birini ihlal eder. Kuralların tutarlı olduğundan emin ol.

Hassas bilgi gizli sanmak

Bazı modeller system prompt'u 'hatırla' diye sorulduğunda sızdırır. API anahtarı, kullanıcı sırrı koyma.