
# Hibrit Retrieval‑Augmented Generation ile Güvenli, Denetlenebilir Anket Otomasyonu

## Giriş

Güvenlik anketleri, satıcı risk değerlendirmeleri ve uyumluluk denetimleri, hızlı büyüyen SaaS şirketleri için bir darboğazdır. Ekipler politika maddelerini bulmak, versiyonlu kanıtları çekmek ve anlatı yanıtlar oluşturmak için sayısız saat harcar. Yaratıcı AI tek başına yanıt taslakları oluşturabilse de saf LLM çıktısı genellikle **izlenebilirlik**, **veri ikametgâhlığı** ve **denetlenebilirlik** gibi düzenleyici ortamlar için vazgeçilemez üç temel eksikliği barındırır.

İşte **Hibrit Retrieval‑Augmented Generation (RAG)**: büyük dil modellerinin (LLM) yaratıcılığını kurumsal bir belge kasasının güvenilirliğiyle birleştiren bir tasarım deseni. Bu makalede, Procur2ze'nin hibrit RAG boru hattını nasıl bütünleştirebileceğimizi inceleyeceğiz:

* **Üretilen her cümle için kaynak menşeini garanti etmek**.
* **Runtime’da policy‑as‑code kısıtlamalarını uygulamak**.
* **Harici denetçileri tatmin edecek değişmez denetim günlüklerini sürdürmek**.
* **Bölgesel veri‑depolama zorunluluklarına saygı gösterirken çok‑kiracılı ortamlarda ölçeklenmek**.

“AI Powered Retrieval Augmented Generation” veya “Generative AI Destekli Kendini İyileştiren Uyumluluk Bilgi Tabanı” üzerine önceki gönderilerimizi okuyorsanız, aynı yapı taşlarını tanıyacaksınız—ancak bu sefer odak **güvenli bağlama** ve **uyumluluk‑öncelikli orkestrasyon** üzerindedir.

---

## Neden Saf LLM Yanıtları Yetersiz Kalır?

| Zorluk | Saf LLM Yaklaşımı | Hibrit RAG Yaklaşımı |
|--------|-------------------|----------------------|
| Kanıt izlenebilirliği | Kaynak belgelere yerleşik bağlantı yok | Her üretilen iddia bir belge kimliği ve sürümüyle ilişkilendirilir |
| Veri ikametgâhlığı | Model verileri her yerden alabilir | Retrieve aşaması yalnızca kiracı‑kapsamlı kasalardan çeker |
| Denetlenebilir değişim geçmişi | Bir cümlenin neden üretildiği zor yeniden oluşturulur | Retrieve logları + üretim meta verileri tam bir yeniden oynanabilir iz oluşturur |
| Düzenleyici uyumluluk (ör. [GDPR](https://gdpr.eu/), [SOC 2](https://secureframe.com/hub/soc-2/what-is-soc-2)) | Kara kutu davranışı, “halüsinasyon” riski | Retrieve, gerçek temelli olmayı garantiler, uyumsuz içerik riskini azaltır |

Hibrit model LLM’i **yerine koymaz**; **yönlendirir**, böylece her yanıt bilinen bir artefakte bağlanır.

---

## Hibrit RAG Mimarisi’nin Temel Bileşenleri

```mermaid
graph LR
    A["Kullanıcı anketi gönderir"] --> B["Görev Zamanlayıcı"]
    B --> C["RAG Orkestratörü"]
    C --> D["Belge Kasası (Değişmez Depo)"]
    C --> E["Büyük Dil Modeli (LLM)"]
    D --> F["Retriever (BM25 / Vektör Arama)"]
    F --> G["Üst‑k İlgili Belgeler"]
    G --> E
    E --> H["Yanıt Sentezleyicisi"]
    H --> I["Yanıt Oluşturucu"]
    I --> J["Denetim Günlüğü Kaydedicisi"]
    J --> K["Güvenli Yanıt Panosu"]
```

*Mermaid diyagramındaki tüm düğüm etiketleri çift tırnak içinde tutulmuştur.*

### 1. Belge Kasası

**Yaz‑birkez, değişmez bir depolama** (örn. AWS S3 Object Lock, Azure Immutable Blob veya tahribat‑kanıtlı PostgreSQL ek‑sadece tablo). Her uyumluluk artefaktı—politika PDF’leri, SOC 2 onayları, iç kontrol dokümanları—şunları alır:

* Küresel benzersiz **Belge Kimliği**.
* **Girdi anında oluşturulan anlamsal vektör**.
* **Versiyon damgaları**; yayınlandıktan sonra asla değişmez.

### 2. Retriever

Getirme motoru **çift‑modlu arama** yapar:

1. **Seyrek BM25** kesin ifade eşleşmeleri için (regülasyon alıntıları için yararlı).
2. **Yoğun vektör benzerliği** bağlamsal ilgiliği için (kontrol hedeflerinin semantik eşleşmesi).

Her iki yöntem de **belge kimliklerinin sıralı listesini** döndürür; orkestratör bu listeleri LLM’e iletir.

### 3. LLM Retrieval Yönlendirmeli

LLM'e şunları içeren bir *sistem prompt* verilir:

* **Kaynak‑çapa yönergesi**: “Tüm ifadeler `[DOC-{id}@v{ver}]` biçiminde bir atıf etiketi ile sonlandırılmalıdır.”
* **Policy‑as‑code kuralları** (örn. “Yanıtlarda kişisel veri asla ortaya çıkarılamaz”).

Model, getirilen belgeleri açıkça referans alarak bir anlatı **sentezler**.

### 4. Yanıt Sentezleyicisi & Yanıt Oluşturucu

Sentezleyici, LLM çıktısını birleştirir, anket şemasına (JSON, PDF veya markdown) göre biçimler ve **makine‑okunabilir atıf meta verisi** ekler.

### 5. Denetim Günlüğü Kaydedicisi

Her adım kaydedilir:

| Alan | Açıklama |
|------|----------|
| `request_id` | Anket çalışması için benzersiz kimlik |
| `retrieved_docs` | Belge kimlikleri + sürümler listesi |
| `llm_prompt` | Modele gönderilen tam prompt (KİŞİSEL VERİ içeriyorsa kırpılmış) |
| `generated_answer` | Atıf etiketli metin |
| `timestamp` | ISO‑8601 UTC zaman damgası |
| `operator` | İşi yürüten hizmet hesabı |

Bu loglar **yaz‑birkez** ve kasanın yanına saklanarak tam, tahribat‑kanıtlı bir iz oluşturur.

---

## Uç‑Uca Yürütme Örneği

### Adım 1 – Politikaları Al ve İndeksle

1. **[ISO 27001](https://www.iso.org/standard/27001) Uygulama Beyanı**nın yeni bir sürümü kasaya yüklenir.  
2. **Alım Servisi** ham metni çıkarır, bir sentence‑transformer ile 768‑boyutlu bir vektör üretir ve bu vektörü belge meta verileriyle birlikte saklar.

### Adım 2 – Anket Gönderimi

Bir güvenlik analisti Procur2ze’de bir görev oluşturur: “Acme Corp için Satıcı SOC 2 Type II anketini tamamla.” Görev zamanlayıcı bir **request_id** (`REQ-2025-1019-001`) atar.

### Adım 3 – Retrieve

Orkestratör soruyu çözer: *“Müşteri verileri için at‑rest şifreleme nasıl uygulanıyor?”*  
Sorgu retriever’a gönderilir ve şu sonuçlar döner:

```
[
  { id: "DOC-ISO27001-001", version: "v3", score: 0.92 },
  { id: "DOC-Policy-Enc-002", version: "v5", score: 0.88 }
]
```

### Adım 4 – LLM Prompt

```
System: You are a compliance assistant. Cite each factual claim using the format [DOC-{id}@v{ver}].
User: Describe how encryption‑at‑rest is enforced for customer data.
Context: (Insert top‑k snippets from the two documents)
```

LLM şu yanıtı üretir:

> “Müşteri verileri, AWS S3 bucket’larımızda AES‑256 GCM ile at‑rest şifrelenir. Şifreleme anahtarları AWS KMS tarafından yönetilir ve her 90 günde bir döndürülür [DOC-Policy-Enc-002@v5]. Bu uygulama, ISO 27001 A.10.1 kontrolünü karşılar [DOC-ISO27001-001@v3].”

### Adım 5 – Yanıt Oluşturma

Yanıt oluşturucu, yanıtı anket JSON yapısına göre biçimler, alıntı etiketlerini korur ve denetim amaçlı kullanılabilir hâle getirir.

### Adım 6 – Denetlenebilir Saklama

Orijinal sorgu, alınan belge listesi, LLM prompt’u ve üretilen yanıt **değişmez bir denetim günlüğüne** yazılır. Denetçiler daha sonra bu logları sorgulayarak yanıtın tam izlenebilirliğini doğrular.

---

## Güvenlik ve Uyumluluk Avantajları

| Avantaj | Hibrit RAG Nasıl Sağlar |
|---------|--------------------------|
| **Regülasyon kanıtı** | Doğrudan sürümlü politika belgelerine atıf |
| **Veri ikametgâhlığı** | Retrieve sadece gerekli bölge‑kapsamlı kasalardan çalışır |
| **Azaltılmış halüsinasyon** | Gerçek artefaktlara bağlanma modeli sınırlı tutar |
| **Değişiklik‑etki analizi** | Bir politika belgesi güncellendiğinde, önceki sürüme referans veren tüm yanıtlar anında tespit edilir |
| **Sıfır‑bilgi kanıtı** | Sistem, belirli bir belgeden türetilen bir yanıtın kanıtını, belge içeriğini ifşa etmeden üretebilir (gelecek geliştirme) |

---

## Çok‑Kiracılı SaaS Ortamlarına Ölçeklenme

Bir SaaS sağlayıcısı genellikle birçok müşteriye hizmet verir; her müşterinin kendi uyumluluk deposu vardır. Hibrit RAG şu şekilde ölçeklenir:

1. **Kiracı‑izole kasalar**: Her kiracı için mantıksal bir bölüm, kendi şifreleme anahtarlarıyla korunur.
2. **Paylaşılan LLM havuzu**: LLM durum‑sız bir servistir; istekler kiracı kimliği içerir ve erişim kontrolleri bunu zorlar.
3. **Paralel retrieve**: Milvus, Vespa gibi vektör arama motorları yatay olarak ölçeklenebilir, kiracı başına milyonlarca vektörü yönetir.
4. **Denetim logu bölümlendirmesi**: Loglar kiracı başına bölünür, ancak aynı zamanda küresel bir değişmez defterde saklanarak çapraz‑kiracı uyumluluk raporlamasına imkan verir.

---

## Procur2ze Takımları İçin Uygulama Kontrol Listesi

- [ ] **Değişmez depolama** (S3 Object Lock, Azure Immutable Blob veya ek‑sadece DB) oluşturun ve tüm uyumluluk artefaktlarını buraya koyun.  
- [ ] **Semantik gömme** (embedding) oluşturup belge meta verileriyle birlikte saklayın.  
- [ ] **Çift‑modlu retriever** (BM25 + vektör) hızlı bir API geçidi arkasına dağıtın.  
- [ ] **LLM prompt’unu** atıf yönergesi ve policy‑as‑code kurallarıyla donatın.  
- [ ] **Her adımı** değişmez bir denetim günlüğü servisine (AWS QLDB, Azure Immutable Ledger vb.) kaydedin.  
- [ ] **Procur2ze gösterge panelinde** her yanıt için kaynakları görebileceğiniz bir UI ekleyin.  
- [ ] **Düzenli uyumluluk tatbikatları** yapın: politika değişikliklerini taklit edin ve etkilenen yanıtların otomatik olarak işaretlendiğini doğrulayın.  

---

## Gelecek Yönelimler

| Fikir | Potansiyel Etki |
|-------|-----------------|
| **Federated Retrieve** – Korumalı bölgelerde dağıtılmış kasalar, güvenli bir toplama protokolü ile ortak model bilgisinden faydalanır | Global kuruluşların verileri yerel tutarken ortak AI bilgisinden yararlanmasını sağlar |
| **Zero‑Knowledge Proof (ZKP) Entegrasyonu** – Belge içeriğini ifşa etmeden yanıt menşeini kanıtlar | GDPR’nın “unutulma hakkı” gibi ultra‑katı gizlilik düzenlemelerini karşılar |
| **Sürekli Öğrenme Döngüsü** – Düzeltmeler geri besleme yoluyla LLM ince ayarına gider | Denetimle doğrulanan yanıt kalitesini zaman içinde artırır, izlenebilirliği korur |
| **Policy‑as‑Code Zorlaması** – Politika kurallarını yürütülebilir sözleşmelere derleyerek LLM çıktısını denetler | İzin verilmeyen dil (pazarlama coşkusu vb.) yanıtlarda asla yer almaz |

---

## Sonuç

Hibrit Retrieval‑Augmented Generation, *yaratıcı AI* ile *regülasyon kesinliği* arasındaki boşluğu doldurur. Üretilen her cümleyi değişmez, versiyon‑kontrol edilen bir belge kasasına bağlayarak, Procur2ze **güvenli, denetlenebilir ve ultra‑hızlı** anket yanıtları sunabilir. Bu desen sadece yanıt sürelerini (günlerden dakikalara) azaltmakla kalmaz, aynı zamanda politikalarınızla evrimleşen **canlı bir uyumluluk bilgi tabanı** oluşturur—tüm bunlar en katı denetim gereksinimlerini karşılayarak.

Bu mimariyi pilot olarak denemeye hazır mısınız? Öncelikle kiracınızda belge kasası alımını etkinleştirin, ardından Retrieval servislerini ayağa kaldırın ve anket dönüş sürenizin nasıl çöküşe geçtiğini izleyin.

---

## İlgili Makaleler

- AWS QLDB ile Değişmez Denetim İzleri Oluşturma  
- CI/CD Boru Hatlarında Uyumluluğu Policy‑as‑Code ile Gömme  
- Kurumsal Veri Gizliliği için Zero‑Knowledge Proof’lar