Rol tabanlı prompting, prompt mühendisliğindeki en güçlü ve yaygın kullanılan tekniklerden biridir. Yapay zekaya belirli bir rol veya persona atayarak, yanıtların kalitesini, stilini ve ilgililiğini dramatik biçimde etkileyebilirsiniz.

<Callout type="tip" title="Personaların Gücü">
Rolleri, yapay zekanın geniş bilgisi için filtreler olarak düşünün. Doğru rol, yanıtları bir merceğin ışığı odaklaması gibi odaklar.
</Callout>

## Roller Neden İşe Yarar

Bir rol atadığınızda, esasen modele şunu söylüyorsunuz: "Geniş bilgini bu spesifik mercekten filtrele." Model şunları ayarlar:

- **Kelime dağarcığı**: Role uygun terminoloji kullanma
- **Perspektif**: Problemleri o bakış açısından değerlendirme
- **Uzmanlık derinliği**: Role uygun detay seviyeleri sağlama
- **İletişim stili**: O rolün nasıl iletişim kuracağıyla eşleşme

### Teknik Açıklama

LLM'ler, verilen bağlama göre en olası sonraki token'ı tahmin ederek çalışır. Bir rol belirttiğinizde, "olası"nın ne anlama geldiğini temelden değiştiriyorsunuz.

**İlgili Bilgiyi Aktifleştirme**: Rol, modelin öğrenilmiş çağrışımlarının belirli bölgelerini hazırlar. "Sen bir doktorsun" demek, eğitim verilerinden tıbbi terminolojiyi, tanısal muhakeme kalıplarını ve klinik iletişim stillerini aktifleştirir.

**İstatistiksel Koşullandırma**: LLM'ler gerçek uzmanlar tarafından yazılmış milyonlarca belgeden öğrendi. Bir rol atadığınızda, model olasılık dağılımlarını o tür yazardan gördüğü kalıplarla eşleşecek şekilde koşullandırır.

**Belirsizliği Azaltma**: Rol olmadan, model tüm olası yanıtlayanlar arasında ortalamasını alır. Rol ile belirli bir alt kümeye daralır, yanıtları daha odaklı ve tutarlı hale getirir.

**Bağlam Çapalama**: Rol, sohbet boyunca kalıcı bir bağlam çapası oluşturur. Her sonraki yanıt bu başlangıç çerçevesinden etkilenir.

Şöyle düşünün: "Bu öksürük için ne yapmalıyım?" diye sorarsanız, model bir doktor, bir arkadaş, bir eczacı veya endişeli bir ebeveyn olarak yanıt verebilir. Her biri farklı tavsiye verir. Rolü önceden belirterek, modele eğitim verilerinden hangi "sesi" kullanacağını söylüyorsunuz.

<Callout type="info" title="Bu Neden Önemli">
Model teatral anlamda rol yapmıyor veya taklit etmiyor. Eğitim sırasında gerçek uzmanlardan, profesyonellerden ve uzmanlardan öğrendiği kalıplara doğru çıktılarını istatistiksel olarak yönlendiriyor. "Doktor" rolü tıbbi bilgi yollarını aktifleştirir; "şair" rolü edebi kalıpları aktifleştirir.
</Callout>

## Temel Rol Kalıpları

Bu temel kalıplar çoğu kullanım durumunda işe yarar. Bu şablonlarla başlayın ve ihtiyaçlarınıza göre özelleştirin.

### Uzman Kalıbı

En çok yönlü kalıp. Yetkili, derinlemesine yanıtlar almak için uzmanlık alanını ve deneyim yıllarını belirtin. Teknik sorular, analiz ve profesyonel tavsiyeler için iyi çalışır.

<TryIt compact prompt={`Sen \${years:10} yıllık \${specialty} deneyimine sahip uzman bir \${field} profesyonelisin.

\${task}`} />

### Profesyonel Kalıbı

Bir iş unvanı ve organizasyon türü belirterek rolü gerçek dünya bağlamına oturtun. Bu, yanıta kurumsal bilgi ve profesyonel normlar ekler.

<TryIt compact prompt={`Sen \${organization}'da çalışan bir \${profession}sun.

\${task}`} />

### Öğretmen Kalıbı

Öğrenme ve açıklamalar için mükemmel. Hedef kitle seviyesini belirtmek, yanıtın öğrenicinin geçmişiyle eşleşmesini sağlar, yeni başlayanlardan ileri düzey pratisyenlere kadar.

<TryIt compact prompt={`Sen karmaşık kavramları \${audience}'a açıklamada uzmanlaşmış bir \${subject} öğretmenisin.

\${task}`} />

## Gelişmiş Rol Yapıları

### Bileşik Roller

Farklı perspektifleri harmanlayan yanıtlar almak için birden fazla kimliği birleştirin. Bu çocuk doktoru-ebeveyn kombinasyonu hem tıbbi olarak sağlam hem de pratik olarak test edilmiş tavsiyeler üretir.

<TryIt compact prompt={`Sen aynı zamanda üç çocuk ebeveyni olan bir çocuk doktorusun. Çocukluk sağlık sorunlarının hem tıbbi hem de pratik yönlerini anlıyorsun. Empatiyle ve tıbbi jargon olmadan iletişim kuruyorsun.

\${question}`} />

### Durumsal Roller

Hem içeriği hem de tonu şekillendirmek için rolü belirli bir senaryoya yerleştirin. Burada, kod inceleme bağlamı yapay zekayı sadece eleştirel değil, yapıcı ve eğitici hale getirir.

<TryIt compact prompt={`Sen bir junior ekip üyesi için kod incelemesi yapan kıdemli bir geliştiricisin. Eleştirel değil, yardımcı ve eğitici olmak istiyorsun. Sadece neyin düzeltileceğini değil, nedenini de açıklıyorsun.

İncelenecek kod:
\${code}`} />

### Perspektif Rolleri

Belirli bir paydaşın bakış açısından geri bildirim alın. Bir yatırımcı perspektifi, uygulanabilirliği ve ölçeklenebilirliği bir müşteri veya mühendisten farklı değerlendirir.

<TryIt compact prompt={`Sen startup sunumlarını değerlendiren bir girişim sermayedarısın. Binlerce sunum gördün ve güçlü yönleri, zayıflıkları ve tehlike işaretlerini hızla belirleyebilirsin. Doğrudan ama yapıcı ol.

Sunum: \${pitch}`} />

## Rol Kategorileri ve Örnekler

Farklı alanlar farklı rol türlerinden faydalanır. İşte görevlerinize uyarlayabileceğiniz kategorilere göre düzenlenmiş kanıtlanmış örnekler.

### Teknik Roller

**Yazılım Mimarı**: Sistem tasarım kararları, teknoloji seçimleri ve mimari ödünleşimler için en iyi. Sürdürülebilirlik odağı yanıtları pratik, uzun vadeli çözümlere yönlendirir.

<TryIt compact prompt={`Sen ölçeklenebilir dağıtık sistemlerde uzmanlaşmış bir yazılım mimarısın. Önerilerinde sürdürülebilirlik, performans ve ekip üretkenliğini önceliklendiriyorsun.

\${question}`} />

**Güvenlik Uzmanı**: Saldırgan zihniyeti burada anahtar. Bu rol, yalnızca savunmacı bir perspektifin gözden kaçırabileceği güvenlik açıklarını tespit eden tehdit odaklı analiz üretir.

<TryIt compact prompt={`Sen penetrasyon testi yapan bir siber güvenlik uzmanısın. Güvenlik açıklarını belirlemek için bir saldırgan gibi düşünüyorsun.

Analiz et: \${target}`} />

**DevOps Mühendisi**: Dağıtım, otomasyon ve altyapı soruları için ideal. Güvenilirlik vurgusu üretim hazır öneriler sağlar.

<TryIt compact prompt={`Sen CI/CD pipeline'ları ve kod olarak altyapıya odaklanan bir DevOps mühendisisin. Otomasyon ve güvenilirliğe değer veriyorsun.

\${question}`} />

### Yaratıcı Roller

**Metin Yazarı**: "Ödüllü" niteleyicisi ve dönüşüm odağı, genel pazarlama metni yerine kısa ve ikna edici metin üretir.

<TryIt compact prompt={`Sen dönüşüm sağlayan çekici başlıklar ve ikna edici içerik oluşturmasıyla tanınan ödüllü bir metin yazarısın.

Şunun için metin yaz: \${product}`} />

**Senarist**: Dramatik yapı, tempo ve diyalog konvansiyonları bilgisini aktifleştirir. Gerilim ve karakter sesi gerektiren herhangi bir anlatı yazımı için harika.

<TryIt compact prompt={`Sen popüler TV dramaları için senaryo yazmış bir senaristsin. Hikaye yapısını, diyaloğu ve karakter gelişimini anlıyorsun.

Yaz: \${scene}`} />

**UX Yazarı**: Arayüz metni için özelleşmiş bir rol. Kısalık ve kullanıcı rehberliği odağı öz, eylem odaklı metin üretir.

<TryIt compact prompt={`Sen mikro metinlerde uzmanlaşmış bir UX yazarısın. Arayüzleri insani hissettiriyorsun ve kullanıcıları minimal metinle yönlendiriyorsun.

Şunun için mikro metin yaz: \${element}`} />

### Analitik Roller

**İş Analisti**: Teknik ve teknik olmayan paydaşlar arasında köprü kurar. Gereksinim toplama, spec yazma ve proje planlarındaki boşlukları belirleme için yararlı.

<TryIt compact prompt={`Sen teknik ekipler ve paydaşlar arasında çeviri yapan bir iş analistsin. Gereksinimleri netleştiriyorsun ve uç durumları belirliyorsun.

Analiz et: \${requirement}`} />

**Araştırma Bilimcisi**: Kanıt ve belirsizlik kabulü vurgusu, gerçekleri spekülasyondan ayıran dengeli, iyi kaynaklı yanıtlar üretir.

<TryIt compact prompt={`Sen ampirik kanıtlara değer veren ve belirsizliği kabul eden bir araştırma bilimcisisin. Yerleşik gerçekler ile hipotezler arasında ayrım yapıyorsun.

Araştırma sorusu: \${question}`} />

**Finans Analisti**: Niceliksel analizi risk değerlendirmesiyle birleştirir. Getiri ve risk üzerindeki çift odak daha dengeli yatırım perspektifleri üretir.

<TryIt compact prompt={`Sen temel ve teknik analiz kullanarak yatırımları değerlendiren bir finans analistsin. Potansiyel getirilerle birlikte riski de değerlendiriyorsun.

Değerlendir: \${investment}`} />

### Eğitim Rolleri

**Sokratik Öğretmen**: Cevap vermek yerine, yönlendirici sorular sorar. Daha derin öğrenme ve öğrencilerin eleştirel düşünme becerilerini geliştirmesine yardımcı olmak için mükemmel.

<TryIt compact prompt={`Sen Sokratik yöntemi kullanan bir öğretmensin. Cevapları doğrudan vermek yerine, öğrencileri düşünceli sorularla cevapları keşfetmeye yönlendiriyorsun.

Konu: \${topic}`} />

**Öğretim Tasarımcısı**: Öğrenmeyi maksimum kalıcılık için yapılandırır. Karmaşık konuları net ilerlemeyle öğretilebilir parçalara bölmeniz gerektiğinde bu rolü kullanın.

<TryIt compact prompt={`Sen ilgi çekici öğrenme deneyimleri oluşturan bir öğretim tasarımcısısın. Karmaşık konuları net öğrenme hedefleriyle sindirilebilir modüllere bölüyorsun.

Şunun için müfredat oluştur: \${topic}`} />

## Rol Yığını Tekniği

Karmaşık görevler için birden fazla rol yönünü tek, katmanlı bir kimlikte birleştirin. Bu teknik, son derece uzmanlaşmış yanıtlar oluşturmak için uzmanlık, hedef kitle farkındalığı ve stil kılavuzlarını üst üste koyar.

Bu örnek üç elemanı katmanlar: alan uzmanlığı (API dokümantasyonu), hedef kitle (junior geliştiriciler) ve stil kılavuzu (Google'ın konvansiyonları). Her katman çıktıyı daha da kısıtlar.

<TryIt compact prompt={`Sen API dokümantasyonunda uzmanlığa sahip bir teknik yazarsın. REST API'lerine yeni olan geliştiriciler için yazıyorsun. Google geliştirici dokümantasyonu stil kılavuzunu takip et: ikinci tekil şahıs ("sen") kullan, etken çatı, şimdiki zaman ve cümleleri 26 kelimenin altında tut.

Belgele: \${apiEndpoint}`} />

## Farklı Görevler için Roller

<div className="my-4 grid gap-2">
  <div className="flex gap-2 p-3 bg-muted/50 rounded-lg">
    <span className="font-semibold min-w-40">Kod inceleme</span>
    <span className="text-muted-foreground">Kıdemli geliştirici + mentor</span>
  </div>
  <div className="flex gap-2 p-3 bg-muted/50 rounded-lg">
    <span className="font-semibold min-w-40">Yazı geri bildirimi</span>
    <span className="text-muted-foreground">Editör + hedef kitle üyesi</span>
  </div>
  <div className="flex gap-2 p-3 bg-muted/50 rounded-lg">
    <span className="font-semibold min-w-40">İş stratejisi</span>
    <span className="text-muted-foreground">Danışman + sektör uzmanı</span>
  </div>
  <div className="flex gap-2 p-3 bg-muted/50 rounded-lg">
    <span className="font-semibold min-w-40">Yeni konu öğrenme</span>
    <span className="text-muted-foreground">Sabırlı öğretmen + pratisyen</span>
  </div>
  <div className="flex gap-2 p-3 bg-muted/50 rounded-lg">
    <span className="font-semibold min-w-40">Yaratıcı yazı</span>
    <span className="text-muted-foreground">Belirli tür yazarı</span>
  </div>
  <div className="flex gap-2 p-3 bg-muted/50 rounded-lg">
    <span className="font-semibold min-w-40">Teknik açıklama</span>
    <span className="text-muted-foreground">Uzman + iletişimci</span>
  </div>
  <div className="flex gap-2 p-3 bg-muted/50 rounded-lg">
    <span className="font-semibold min-w-40">Problem çözme</span>
    <span className="text-muted-foreground">Alan uzmanı + generalist</span>
  </div>
</div>

## Kaçınılması Gereken Anti-Kalıplar

### Aşırı Genel Roller

<Compare 
  before={{ label: "Zayıf", content: "Sen yardımcı bir asistansın." }}
  after={{ label: "Daha İyi", content: "Sen Python geliştirme, özellikle Flask ve Django ile web uygulamalarında uzmanlaşmış yardımcı bir asistansın." }}
/>

### Çelişen Roller

<Compare 
  before={{ label: "Sorunlu", content: "Sen her zaman katı şablonları takip eden yaratıcı bir yazarsın." }}
  after={{ label: "Daha İyi", content: "Sen orijinal öğeler eklerken yerleşik hikaye yapıları içinde çalışan yaratıcı bir yazarsın." }}
/>

### Gerçekçi Olmayan Uzmanlık

<Compare 
  before={{ label: "Sorunlu", content: "Sen her konuda uzmansın." }}
  after={{ label: "Daha İyi", content: "Sen T şeklinde bir profesyonelsin: makine öğreniminde derin uzmanlık ve yazılım mühendisliği uygulamalarında geniş bilgi." }}
/>

## Gerçek Dünya Prompt Örnekleri

### Teknik Dokümantasyon

<TryIt 
  title="Teknik Yazar Rolü"
  description="Bu teknik dokümantasyon promptunu kendi API endpoint'inizle deneyin."
  prompt={`Sen bir geliştirici araçları şirketinde kıdemli bir teknik yazarsın. API dokümantasyonu, SDK kılavuzları ve geliştirici eğitimleri yazma konusunda 10 yıllık deneyimin var.

Dokümantasyon stilin:
- Başlıklar ve kod örnekleriyle net, taranabilir yapı
- "Nasıl"ın yanında "neden"i de açıkla
- Yaygın soruları ve uç durumları önceden tahmin et
- Bir sözlükte tanımlanan tutarlı terminoloji kullan
- Kullanıcıların kopyala-yapıştır yapabileceği çalışan kod örnekleri ekle

Bu API endpoint'ini belgele: GET /api/users/:id - Kullanıcı profil verisini döndürür`}
/>

### Yaratıcı Yazı

<TryIt 
  title="Romancı Rolü"
  description="Bu rol, tür uzmanlığını belirli stilistik özelliklerle birleştirir."
  prompt={`Sen büyülü gerçekçilik öğeleriyle edebi kurgu tarzında yazan bir romancısın. Düzyazın şunlarla tanınır:
- Lirik ama erişilebilir dil
- Derin psikolojik karakter portreleri
- Günlük ortamlara örülmüş ince büyülü öğeler
- Bellek, kimlik ve dönüşüm temaları

Kütüphanesindeki kitapların sonlarının yavaş yavaş değiştiğini keşfeden bir kütüphaneci hakkında bir hikayenin açılış sahnesini yaz.`}
/>

### İş İletişimi

<TryIt 
  title="Yönetici Koçu Rolü"
  description="Bu rol hassas iş iletişimlerinde yardımcı olur."
  prompt={`Sen Fortune 500 CEO'larıyla çalışmış bir yönetici iletişim koçusun. Liderlerin karmaşık fikirleri basitçe iletmelerine ve ekipleriyle güven oluşturmalarına yardım ediyorsun.

Bütçe kesintileri hakkında bir ekip toplantısı için bu mesajı incele. Şu iyileştirmeleri öner:
- Zorluğu kabul ederken güveni koruma
- Panik yaratmadan şeffaf olma
- Profesyonel kalırken empati gösterme
- Net sonraki adımları dahil etme

Taslak mesaj: "Bütçe kısıtlamaları nedeniyle proje kapsamını azaltmamız gerekiyor. Bazı girişimler duraklatılacak."`}
/>

## Rolleri Diğer Tekniklerle Birleştirme

Roller diğer prompt teknikleriyle birleştirildiğinde daha da iyi çalışır:

### Rol + Birkaç Örnek

Rolün tam olarak nasıl yanıt vermesi gerektiğini göstermek için bir rolü bir örnekle birleştirin. Örnek ton ve formatı öğretirken rol bağlam ve uzmanlık sağlar.

<TryIt compact prompt={`Sen kızgın müşterileri sakinleştirmek için eğitilmiş bir müşteri destek uzmanısın.

Kızgın müşteriye örnek yanıt:
Müşteri: "Bu saçmalık! 2 haftadır bekliyorum!"
Sen: "Hayal kırıklığınızı tamamen anlıyorum ve gecikme için özür dilerim. Şu anda buna bakayım ve siparişinizin tam olarak nerede olduğunu bulayım. Sipariş numaranızı alabilir miyim?"

Şimdi yanıtla:
Müşteri: "\${customerMessage}"`} />

### Rol + Düşünce Zinciri

Dedektif rolü doğal olarak adım adım muhakemeyi teşvik eder. Rolleri düşünce zinciriyle birleştirmek daha şeffaf, doğrulanabilir problem çözümü üretir.

<TryIt compact prompt={`Sen bir mantık bulmacasını çözen bir dedektifsin. Her ipucunu metodik olarak düşün, her adımda muhakemeni belirt.

İpuçları:
\${clues}

Çıkarımlarını açıklayarak adım adım çöz.`} />

## Özet

<Callout type="info" title="Ana Çıkarımlar">
Rol tabanlı prompting güçlüdür çünkü modelin geniş bilgisini odaklar, ton ve stil için beklentiler belirler, örtük bağlam sağlar ve çıktıları daha tutarlı hale getirir.
</Callout>

<Quiz 
  question="Rol tabanlı bir promptu daha etkili yapan nedir?"
  options={[
    "'Uzman' gibi genel rol unvanları kullanmak",
    "Spesifik uzmanlık, deneyim ve perspektif detayları eklemek",
    "Rol açıklamasını mümkün olduğunca kısa tutmak",
    "Yapay zekadan sık sık rol değiştirmesini istemek"
  ]}
  correctIndex={1}
  explanation="Rol ne kadar detaylı ve gerçekçi olursa, sonuçlar o kadar iyi olur. Özgüllük, modelin tam olarak hangi bilgi, ton ve perspektifi uygulaması gerektiğini anlamasına yardımcı olur."
/>

Anahtar **özgüllüktür**: rol ne kadar detaylı ve gerçekçi olursa, sonuçlar o kadar iyi olur. Bir sonraki bölümde, promptlarınızdan tutarlı, yapılandırılmış çıktılar almayı keşfedeceğiz.
