# Project: Multilingual Customer Support Assistant

> Source: https://sukruyusufkaya.com/en/learn/claude-ustaligi/support-bot-projesi
> Updated: 2026-05-11T13:48:36.511Z
> Category: Claude Ustalığı
> Module: 11. Real-World Projects
**TLDR:** TR/EN support pipeline: intent, FAQ, escalation, CSAT feedback. Which step on which model, and how to design evals.

# Pipeline Tasarımı

```
Customer message
   ↓
[1] Language detect (Haiku)
   ↓
[2] Intent classify (Haiku)
   ↓
[3] FAQ retrieval (vector DB)  ←  yeterli mi?
   ↓                              ↑
   ├─ Evet → answer (Sonnet)
   └─ Hayır → escalate to human + draft a suggested reply (Sonnet)
   ↓
[4] CSAT feedback collect → eval set
```

Maliyet: ortalama mesaj başına ~$0.001 (Haiku) + ~$0.005 (Sonnet) = **~$0.006**.

### Intent setini önce belirle

5-15 intent sınıfı net ol. "Other" sınıfı eskalasyona gitsin. Yeni intent'ler önce 'other' altında biriksin, eşik aşılınca yeni sınıf doğurulsun.

### FAQ vektör DB

200-2000 SSS girişi pgvector / Qdrant ile. Embedding modeli (Anthropic dışı bir embedding sağlayıcısı tercih edilir; ya da open-source mE5).

### Eskalasyon koşulları

- Intent confidence < 0.6
- FAQ retrieval skor düşük
- Müşteri 'insanla konuşmak istiyorum' dediğinde
- Vurgu: kızgınlık / aciliyet sentiment'i

Otomatik insan ekibe atama + Claude'un önerdiği taslak ile.

### CSAT döngüsü

Cevap sonrası 👍/👎 + opsiyonel kısa metin. 👎 olanları haftalık eval setine ekle. Pipeline kalite skoru sürekli yükseltilir.

```python
# Üst düzey iskelet
def support_pipeline(msg, user):
    lang   = haiku("dili belirle: {msg}")
    intent = haiku(intent_prompt(msg, lang), schema=INTENT_SCHEMA)
    if intent["confidence"] < 0.6:
        return escalate(msg, user, reason="low_confidence_intent")

    chunks = vector_search(msg, k=5, lang=lang)
    if not chunks or top_score(chunks) < 0.7:
        return escalate(msg, user, reason="no_faq_match",
                        suggested=draft_reply(msg, intent))

    return sonnet(answer_prompt(msg, lang, chunks), citations=True)
```

**Boşluk doldurma egzersizi (text):**
```text
Support pipeline'ında intent confidence eşiği genelde _____'tir. FAQ retrieval skoru _____ altındaysa eskalasyon tetiklenir. Geri besleme döngüsünde _____ skoru kullanılır.
```

> ✋ Kontrol noktası: `q-1101-mc1`