<!-- https://avertgate.com/tr/docs/ai-guard · Dedektörler -->

# AI Guard

Regex'in göremediği anlamsal vakalar — niyet, dolaylı talimat, parçalı sızıntı — için isteğe bağlı bir model katmanı. Her zaman deterministik kontrollerden *sonra* çalışır.

## İki katman

| Katman | Aşama | Neyi inceler | Ayar |
| --- | --- | --- | --- |
| Katman 1 | İstek | Giden argümanlar ve eylem niyeti; anlamsal sızıntı | `inspect_request` |
| Katman 2 | Yanıt | Dönen sonuçta dolaylı prompt injection | `inspect_response` |

## Sağlayıcılar

| `provider` | Kullanım |
| --- | --- |
| `typesafe` | TypeSafe AI Jev. Varsayılan. Tipli JSON çıktı, ~50–100 ms. |
| `ollama` | Yerel / on-premise model. |
| `openai` | OpenAI uyumlu uçlar: vLLM, LM Studio, Azure, OpenAI. |
| `anthropic` | Anthropic API. |
| `custom` | Kendi HTTP uç noktanız. |

## Yapılandırma

<!-- policy.yaml -->
```yaml
guard_model:
  enabled: true
  provider: "typesafe"
  endpoint: "https://api.typesafe.ai/v1/classify"
  model: "jev-security-v1"
  timeout_ms: 1000          # aşımda fail-closed
  min_content_length: 10    # kısa içerikleri atla
  inspect_request: true
  inspect_response: true
  thresholds:
    confidence: 0.6
```

## Yapılandırılmış çıktı

TypeSafe AI Jev serbest metin yerine tipli bir karar döndürür; ayrıştırma hatası olmaz:

<!-- decision.json -->
```json
{
  "allow": false,
  "threatCategory": "data_leak",   // jailbreak | injection | data_leak | abuse | none
  "confidence": 0.93,
  "reason": "Outbound email body contains customer table export"
}
```

## Hata davranışı

Model hata verirse ya da `timeout_ms` aşılırsa çağrı **fail-closed** işlenir. Model devre dışıyken ya da yapılandırılmamışken AvertGate yalnızca Tier-1 deterministik kontrollerle çalışır; maliyet sıfırdır.

> **Veri**: Hangi alanların guard sağlayıcısına gittiği ve nerede çalıştığı yapılandırmaya bağlıdır. Verinin ağınızdan çıkmaması gerekiyorsa yerel Ollama/vLLM kullanın.
