# TD-052 · Davranışın kimin kuralından geldiğini göster

Yönetici politikası, güvenlik kuralı ve reklam kullanıcıya aynı “yapamam” ya da aynı öneri olarak ulaşıyor. Her ret ve önerinin yanında kuralı kimin koyduğunu ve kullanıcının ne yapabileceğini söyleyen arayüz bu katmanları ayırır.

- Adres: https://tandem.komunite.com.tr/desen/davranisin-kimin-kuralindan-geldigini-goster
- Yer: Çalışırken > Kontrol
- Seviye: Temel. Her AI özelliğinde olmalı.
- Son inceleme: 27 Ekim 2026, Komünite editörlüğü

## 30 saniyede dene

1. Ürününde kurum yöneticisinin kapattığı bir özelliği iste, dışarıya dosya göndermek gibi. Asistanın cevabını oku.
2. Aynı oturumda güvenlik kuralına takılacak bir istek gönder. İki ret birbirinden ayırt ediliyor mu, hangisinde kime başvuracağın yazıyor mu?
3. Bir ürün önerisi iste. Önerilerden biri ücretli bir yerleşimse onu cevabın içinde mi, ayrı ve etiketli bir alanda mı görüyorsun?
4. Her ret ve öneri için kendine sor, bu kuralı kim koydu ve değiştirmek için kime gitmeliyim? Ekran söylemiyorsa bu desen ürününde eksik.

## Sorun

Bir çalışan şirketin asistanından bir sözleşmeyi dışarıdaki avukata göndermesini istiyor. Asistan “Üzgünüm, bunu yapamam” diyor. Çalışan isteği başka sözlerle yeniden yazıyor, dosyayı yeniden ekliyor ve sonunda asistanın bozuk olduğuna karar veriyor. Oysa ret bir kuralı uyguluyordu. Şirketin BT yöneticisi dış adreslere dosya göndermeyi kapatmıştı. Çalışanın derdini anlatması gereken kişi yöneticiydi.

Aynı asistan birkaç dakika sonra bir kulaklık öneriyor. İlk sıradaki model ücretli bir yerleşim, ama cevabın içinde, öteki önerilerle aynı sesle geliyor. Çalışan onu asistanın kendi yargısı sanıyor.

Bir AI cevabının arkasında birden çok kural sahibi var. Model sağlayıcısının güvenlik kuralları, ürünü kuran şirketin talimatları, kurum yöneticisinin politikası, yasal zorunluluklar, reklam verenin satın aldığı alan ve kullanıcının kendi ayarları. Kullanıcı bunların çoğunu görmüyor. OpenAI'ın model belgesi de kullanıcıların genellikle yalnız kendilerine gösterilen mesajları gördüğünü ve [geliştirici ya da sistem mesajlarından haberdar olmayabileceğini](https://model-spec.openai.com/2026-08-18.html#definitions) yazıyor.

Hepsi aynı sesle konuştuğunda kullanıcı itirazını yanlış yere götürür. Kural sahibini göstermeyen asistan her reddi kendi üstüne alır ve her reklamı kendi önerisi gibi sunar.

## Neden atlanıyor

Ret metni çoğu zaman tek bir şablondan çıkar. Ürün ekibi “bunu yapamam” cümlesini bir kez yazar ve bütün engeller aynı kapıdan geçer. Kurum yöneticisinin kapattığı bir özellik, platformun güvenlik kuralı ve modelin kendi sınırı kullanıcıya aynı satır olarak ulaşır. Reklamda baskı tersine işler. Etiket ne kadar az göze batarsa ücretli öneri asistanın sözüne o kadar karışır.

Model de kaynağı kendiliğinden saklamaya eğilimli. Sistem promptundaki kuralları kendi sesiyle uygular, çünkü kurallar ona öyle verilir. Talimatları gizli tutma kuralı da onu kaynağı söylemekten alıkoyar. OpenAI'ın model belgesi bu gerilimi açıkça ele alıyor. Model gizli talimatın metnini açmamalı, ama üst düzey talimatlar cevabı belirgin biçimde değiştiriyorsa onları [kullanıcıyı yanıltacak biçimde sessizce uygulamamalı](https://model-spec.openai.com/2026-08-18.html#protect_privileged_information), gerekirse çatışmayı genel hatlarıyla kabul etmeli. Bu dengeyi her seferinde modelin tutturmasını bekleme. Kaynağı arayüz söylesin.

Üçüncü neden ölçümde. Ret oranı panoda tek bir sayıdır ve kaynağına göre ayrılmaz. Kurum kuralına takılan kullanıcı destek ekibine “AI çalışmıyor” diye yazar. Talep ürün hatası olarak kapanır ve kuralın sahibine hiç ulaşmaz.

## Desen

Asistanın her reddi ve her önerisi kaynağını taşır. Kullanıcı kuralı kimin koyduğunu ve kendisinin ne yapabileceğini cevabın yanında görür.

1. **Kaynağı adlandır.** Ret ve kısıt kaynağıyla gelir: kurum yöneticisi, platformun güvenlik kuralı, yasa, ürünün kendi sınırı ya da kullanıcının kendi ayarı. Her kaynağın ayrı bir etiketi ve tutarlı bir görünüşü olur.
2. **Yolu göster.** Kaynak kullanıcının ne yapabileceğini de söyler. Kurum kuralında izin iste ya da yöneticiye git, kullanıcı ayarında ayarı aç, güvenlik kuralında başka bir yardım öner. Kullanıcı aynı isteği farklı sözlerle denemek zorunda kalmaz.
3. **Reklamı cevaptan ayır.** Ücretli yerleşim cevabın dışında, kendi etiketiyle durur. Etiket “Sponsorlu” ya da “Reklam” der ve neden gösterildiğini açan bir bağlantı taşır. Asistan reklam verenin ürününü kendisi önerecekse bunu kendi gerekçesiyle yapar.
4. **Metni saklayabilirsin, sahibini söyle.** Kurumun ya da geliştiricinin talimatı gizli kalabilir. Kuralın var olduğunu ve kimden geldiğini söylemek metnini açmayı gerektirmez.
5. **Kaynakları karıştırma.** Kurum kuralını güvenlik politikası gibi, ürün sınırını ahlaki bir itiraz gibi sunma. Model bir isteği kendi yargısıyla reddediyorsa bunu da kendi adına söyler.

Kullanıcı kuralın sahibini bildiğinde itirazını doğru kişiye götürür. Bilmediğinde aynı isteği yeniden dener ya da asistana olan güvenini kaybeder.

## Önce ve sonra

Aynı iki istek, iki ayrı asistanla. Soldaki sözleşme isteğini nedensiz reddediyor ve ücretli öneriyi kendi önerilerinin arasına koyuyor. Sağdaki reddin kurum politikasından geldiğini ve kullanıcının ne yapabileceğini söylüyor, reklamı cevabın dışında etiketiyle ve gösterilme nedeniyle veriyor.

Örnek ekran (kurgusal): Bir çalışan şirketinin asistanından iki şey istiyor. Bir sözleşmeyi dışarıdaki avukata göndermek ve toplantılar için bir kulaklık önerisi.

### Önce: Asistan · iş hesabı

- Kullanıcı: Bu sözleşmeyi dış avukatımız Elif Hanım'a e-postayla gönder.
- AI: Üzgünüm, bunu yapamam.
- Kullanıcı: Toplantılar için iyi bir kulaklık önerir misin?
- AI: En iyi seçenek Kulakçı Pro 3, gürültüyü iyi engelliyor ve pili uzun gidiyor. Sessiz X2 ve Odak 5 de iyi seçenekler.

1. Ret bir kuralı uyguluyor ama kimin kuralı olduğunu söylemiyor. Kullanıcı modelin hatası mı, şirket politikası mı, güvenlik engeli mi bilmiyor ve isteği başka sözlerle yeniden deniyor.
2. İlk sıradaki ürün ücretli bir yerleşim ama cevabın içinde, öteki önerilerle aynı sesle geliyor. Kullanıcı onu asistanın kendi yargısı sanıyor.

### Sonra: Asistan · iş hesabı

- Kullanıcı: Bu sözleşmeyi dış avukatımız Elif Hanım'a e-postayla gönder.
- AI: Bunu gönderemiyorum. Şirketinin BT yöneticisi dış adreslere dosya göndermeyi kapattı. İzin isteyebilir ya da dosyayı şirket içindeki hukuk ekibine iletebilirim.
- Bilgi: Kural: kurum politikası · BT yöneticisi · 3 Eylül'den beri
- Düğmeler: İzin iste · Hukuk ekibine ilet
- Kullanıcı: Toplantılar için iyi bir kulaklık önerir misin?
- AI: Senin kullanımına Sessiz X2 ve Odak 5 uyuyor. İkisi de gürültüyü engelliyor, Odak 5 daha hafif.
- İçerik (Sponsorlu): Kulakçı Pro 3 · Bu alanı reklam veren satın aldı. Asistanın önerileri bu alandan ayrı.
- Bilgi: Neden bu reklam: sohbetin konusu · Reklamı gizle

1. Ret kuralın sahibini, ne zamandan beri geçerli olduğunu ve kullanıcının yapabileceği iki şeyi söylüyor. Kullanıcı isteği yeniden yazmak yerine doğru kişiye gidiyor.
2. Reklam cevabın dışında, kendi etiketiyle ve gösterilme nedeniyle duruyor. Asistanın kendi önerisi reklamdan ayrı okunuyor.

## Piyasada

OpenAI, modellerinin davranışını tarif eden belgede talimatları bir yetki sırasına diziyor: kök kurallar, sistem, geliştirici, kullanıcı ve yönerge. Üst düzeydeki talimat alttakini geçiyor. Aynı belge, bir talimat yerine getirilemediğinde modelin [bunu açıkça söylemesini](https://model-spec.openai.com/2026-08-18.html#chain_of_command) istiyor. Yasal bir zorunluluk yüzünden bir içerik çıkarıldığında daha da ileri gidiyor. Model her cevapta [çıkarılan bilginin türünü ve çıkarılma gerekçesini](https://model-spec.openai.com/2026-08-18.html#comply_with_laws) kullanıcıya göstermeli, içeriğin kendisini açmadan. Bu desen de aynı şeyi istiyor. Kaynağı ve nedeni söyle, ayrıntıyı saklayabilirsin.

GitHub Copilot'ta bir depo yöneticisi ya da kurum sahibi bazı dosyaları Copilot'un dışında bırakabiliyor. Böyle bir dosyada editörün durum çubuğundaki Copilot simgesinin üstünden çapraz bir çizgi geçiyor. Kullanıcı simgenin üstüne gelince [kısıtlamayı hangi ayarın koyduğunu](https://docs.github.com/en/copilot/how-tos/troubleshoot-copilot/troubleshoot-common-issues) söyleyen bir ipucu çıkıyor. Kullanıcı Copilot'un o dosyada neden öneri vermediğini tahmin etmek zorunda kalmıyor.

Perplexity Kasım 2024'te reklam denemesine başlarken biçimini de açıkladı. Reklamlar sponsorlu takip soruları ve cevabın yanındaki ücretli alanlar olarak gelecek, reklam malzemesi [“sponsored” diye işaretlenecekti](https://www.perplexity.ai/hub/blog/why-we-re-experimenting-with-advertising). Sponsorlu soruların cevaplarını yine Perplexity'nin kendi sistemi üretecek, sponsor marka bu cevapları yazmayacak ve düzenlemeyecekti.

Google'ın reklam verenlere yönelik belgesine göre arama reklamları AI Overviews'un [üstünde, altında ya da içinde](https://support.google.com/google-ads/answer/16297775?hl=en) gösterilebiliyor. Reklam AI cevabının içine girdiğinde kullanıcı onu cevaptan yalnız etiketiyle ve konumuyla ayırabilir. Etiketin işi bu yüzden cevabın içinde daha da ağırlaşıyor.

## Kanıt

Bu desenin dayanağı satıcıların ve model sağlayıcılarının kendi belgeleri. Kamuya mal olmuş bir olay ya da yayımlanmış bir ölçüm yok. Belgeler yine de sorunun kendisini tarif ediyor.

OpenAI'ın model belgesi kullanıcının konumunu açıkça yazıyor. Kullanıcı geliştirici ve sistem mesajlarını çoğu zaman görmez ve hedefleri geliştiricininkiyle örtüşmeyebilir. Aynı belge modelden talimatın metnini gizli tutmasını, ama talimatın etkisini saklamamasını istiyor. Bu iki kural birlikte bir tasarım sorusu doğuruyor. Model metni saklarken etkiyi nasıl gösterecek? Model bunu bir cümleyle yapabilir. Ürün aynı işi etiketle, renkle ve bir “neden” bağlantısıyla her seferinde aynı biçimde yapar.

GitHub'ın ipucu ve Perplexity'nin etiketi bu sorunun arayüzdeki iki cevabı. Biri kısıtın sahibini gösteriyor, öteki ücretli içeriği cevaptan ayırıyor. İkisi de neyin kimden geldiğini kullanıcının tahminine bırakmıyor.

Bu belgeler satıcıların niyetini ve tasarım kararlarını söyler. Kaynağı gösterilmeyen retlerin kullanıcıyı ne sıklıkla yanlış yere yönlendirdiğini ya da etiketsiz reklamın güveni ne kadar düşürdüğünü ölçen bir sayı bu kaynaklarda yok.

## Ölçüm

- **Retten sonra yeniden deneme.** Bir retten sonra aynı isteği farklı sözlerle tekrar gönderen kullanıcıların payı. Kaynak görünürse düşer, çünkü kullanıcı engelin sözlerinden kaynaklanmadığını bilir.
- **Etiketsiz ret.** Günlükte kaynağı işaretlenmemiş retlerin sayısı. Her ret kurum, güvenlik, yasa, ürün ya da kullanıcı ayarı olarak kaydedilmeli. Hedef sıfır.
- **Yanlış adrese giden şikâyet.** Destek taleplerinde “AI çalışmıyor” diye açılıp kurum kuralına çıkan kayıtlar. Desen yerindeyse bu kayıtlar azalır, izin istekleri artar.
- **İzin isteği.** Kurum kuralı retlerinden sonra “İzin iste” düğmesine basılma sayısı ve yöneticinin karar süresi. Kural sahibine ulaşan istek kuralın kendisini de sınar.
- **Reklamı ayırt etme.** Kullanıcı görüşmelerinde sponsorlu öneriyi asistanın kendi önerisinden ayırabilen kullanıcıların payı.

## Ajanına ver

Üç metin var. Denetim promptu ürünündeki ret, kısıt ve ücretli içerik yollarını tarar, kullanıcıya giden her reddin ve önerinin kaynağını taşıyıp taşımadığını raporlar, hiçbir dosyayı değiştirmez. Uygulama promptu her ret ve öneriye bir kaynak alanı ekler, arayüzde etiketini ve kullanıcının atabileceği adımı gösterir. Önce planı gösterir, onayınla uygular ve kurum kuralına takılan bir isteğin doğru etiketle döndüğünü sınayan bir test yazar. Kural kodlama ajanının kendi çalışması için. Bir işi yapmadığında bunun kimin kuralından geldiğini söylesin.

## Sınır

Kural sahibi tek olan ürün bu desenin hepsini gerektirmez. Kurum yöneticisi, reklam ve ayrı bir geliştirici katmanı yoksa sade bir ret metni yeter. Yine de modelin kendi güvenlik reddini nedeniyle söylemesi işe yarar.

Kaynağı söylemek kuralı aşmanın yolunu öğretmemeli. Güvenlik kuralında yalnız kaynağı söyle, hangi kelimenin kuralı tetiklediğini söyleme. OpenAI'ın belgesi de çatışmanın gereksiz ayrıntı vermeden kabul edilmesini istiyor.

Her cevaba etiket koymak gürültü. Etiket yalnız bir kural ya da reklam cevabı değiştirdiğinde görünür.

Bu desen kuralın doğru olup olmadığını çözmez. Yöneticinin koyduğu kural yanlış olabilir. Desen itirazın doğru kişiye gitmesini sağlar, kararı o kişi verir.

## Promptlar

### Denetim promptu

```
Bu depoda kullanıcıya cevap veren bir AI asistanı ya da ajanı var. Görevin, asistanın retlerinin, kısıtlarının ve önerilerinin kullanıcıya kaynaklarıyla birlikte ulaşıp ulaşmadığını denetlemek. Hiçbir dosyayı değiştirme, yalnız rapor yaz.

1. Davranışı değiştiren bütün kural kaynaklarını bul: sistem promptu, geliştirici talimatları, kurum ya da yönetici ayarları (özellik bayrakları, politika tabloları, rol izinleri), güvenlik filtreleri ve moderasyon çağrıları, yasal ya da bölgesel kısıtlar, kullanıcı ayarları, reklam ve sponsorlu içerik ekleyen kod.
2. Her kaynak için bak: bir isteği engellediğinde kullanıcıya ne dönüyor? Kaynağa özgü bir mesaj mı, yoksa her engel için aynı genel "yapamam" metni mi?
3. Ret yanıtlarının veri yapısında kaynak bilgisi var mı (örnek: reason, source, policyId)? Varsa arayüze kadar taşınıyor mu, yoksa yolda kayboluyor mu?
4. Kurum yöneticisinin kapattığı özelliklerde kullanıcıya kimin kapattığı ve izin isteme yolu gösteriliyor mu?
5. Reklam, sponsorlu ya da ücretli yerleşim varsa: modelin cevap metnine mi karışıyor, ayrı bir alanda mı duruyor? Etiket, "neden bu reklam" bağlantısı ve gizleme seçeneği var mı? Reklam verenin içeriği modelin promptuna giriyor mu?
6. Sistem promptunda modelin retlerini nasıl açıklayacağına dair bir kural var mı? Model kurum kuralını kendi yargısı gibi ya da güvenlik kuralını kurum kararı gibi sunuyor mu?
7. Retler günlüğe kaynağına göre ayrı kaydediliyor mu?

Rapor biçimi: her bulgu için dosya ve satır, hangi kural kaynağının kullanıcıya görünmeden uygulandığı, olası sonuç (örnek: yöneticinin kapattığı dosya paylaşımı kullanıcıya model hatası gibi görünür ve kullanıcı aynı isteği tekrar dener) ve önerdiğin düzeltme. Reklam ve ücretli içerik bulgularını ayrı başlıkta topla.

```

### Uygulama promptu

```
Bu depodaki AI asistanına "davranışın kimin kuralından geldiğini göster" desenini uygula. Önce planı göster, onayımı aldıktan sonra kodu değiştir.

Hedef davranış:
1. Her ret ve kısıt yanıtı bir kaynak alanı taşısın: kurum, güvenlik, yasa, ürün ya da kullanıcı ayarı. Kaynaksız ret üretilemesin.
2. Arayüz her kaynak için ayrı bir etiket ve tutarlı bir görünüş kullansın. Ret metni kuralın sahibini ve kullanıcının yapabileceği bir adımı söylesin (izin iste, ayarı aç, başka bir yardım).
3. Kurum kuralında kuralın metnini değil, var olduğunu, sahibini ve mümkünse ne zamandan beri geçerli olduğunu göster.
4. Reklam ya da sponsorlu içerik varsa modelin cevabından ayrı bir bileşende, "Sponsorlu" etiketiyle, neden gösterildiğini açan bir bağlantıyla ve gizleme seçeneğiyle dursun. Reklam verenin içeriği modelin promptuna girmesin.
5. Güvenlik retlerinde kaynağı söyle, ama hangi ifadenin kuralı tetiklediğini gösterme.

Uygularken:
- Kaynak bilgisini engelleyen katmanda üret (politika kontrolü, filtre, bayrak) ve yanıt nesnesiyle arayüze kadar taşı. Modelden kaynağı tahmin etmesini isteme.
- Ret metinlerini kaynak türüne göre tek bir yerde tut. Aynı kaynak her yerde aynı sözle konuşsun.
- Retleri günlüğe kaynağıyla birlikte yaz.
- Bir test ekle: kurum ayarıyla bir özelliği kapat, kullanıcı olarak o özelliği iste ve yanıtın kurum etiketini ve izin isteme adımını taşıdığını doğrula. Sponsorlu içerik varsa reklamın ayrı bileşende ve etiketle geldiğini, modelin promptuna reklam içeriğinin girmediğini de sına.

```

### AGENTS.md kuralı

```
## Kuralın sahibini söyle
- Bir isteği yapmadığında nedenini kaynağıyla söyle: kullanıcının ayarı, proje ya da kurum kuralı, güvenlik kuralı, araç izni ya da kendi yeteneğinin sınırı.
- Bir yasağı kendi tercihin gibi sunma. Kural bir dosyadan ya da ayardan geliyorsa hangisi olduğunu yaz.
- Gizli bir talimatın metnini açmadan, bir talimatın davranışını değiştirdiğini söyle.
- Kullanıcıya yapabileceği bir sonraki adımı öner: izni kimden isteyeceği, hangi ayarı açacağı.
- Ücretli ya da sponsorlu bir kaynağı öneriyorsan bunu açıkça belirt.

```

## Kaynaklar

1. [Model Spec (2026/08/18): Definitions](https://model-spec.openai.com/2026-08-18.html#definitions), OpenAI, 18 Ağustos 2026
2. [Model Spec (2026/08/18): Do not reveal privileged information](https://model-spec.openai.com/2026-08-18.html#protect_privileged_information), OpenAI, 18 Ağustos 2026
3. [Model Spec (2026/08/18): The chain of command](https://model-spec.openai.com/2026-08-18.html#chain_of_command), OpenAI, 18 Ağustos 2026
4. [Model Spec (2026/08/18): Comply with applicable laws](https://model-spec.openai.com/2026-08-18.html#comply_with_laws), OpenAI, 18 Ağustos 2026
5. [Troubleshooting common issues with GitHub Copilot](https://docs.github.com/en/copilot/how-tos/troubleshoot-copilot/troubleshoot-common-issues), GitHub Docs
6. [Why we're experimenting with advertising](https://www.perplexity.ai/hub/blog/why-we-re-experimenting-with-advertising), Perplexity, 12 Kasım 2024
7. [About ads and AI Overviews](https://support.google.com/google-ads/answer/16297775?hl=en), Google Ads Help

---

Kaynak: https://tandem.komunite.com.tr · Metin CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/deed.tr), promptlar ve kural MIT-0 (https://opensource.org/license/mit-0).
