# AI System Design — один экран

Говорить, не читать абзацами. 45 минут на доске.

## Первые 4 минуты

«Уточню: кто юзер, какие источники, можно ли vendor API, p95, что хуже — отказ или выдуманный лимит. Потом зафиксирую success: offline + online. Потом нарисую ingest и query.»

Не рисовать боксы до этого.

## Success, который я предлагаю (каре)

Offline: recall@k по chunk_id, faithfulness, «цифры только из tool» (код), handoff precision/recall.
Online: resolution без вранья, recontact 72ч, эскалация, $/диалог, p95, PII-leak=0.
Не CSAT первым. Не «средний quality 4.2».

## Как строю eval (инсайд раунда)

1. 50–100 трейсов, первый важный фейл, посчитать частоты.
2. На топ-фейл — бинарный тест, не helpfulness.
3. Code-check если можно; судья — один вопрос, pass/fail.
4. Судью меряю TPR/TNR против человека на holdout. Accuracy не использую.
5. A/B только когда офлайн не различает. 5–10% трафика, kill switch.

«В Magnit умею тяжёлый A/B — поэтому не буду гонять каждый промпт в онлайн.»

## Квадрант дыры

| | recall низкий | recall высокий |
|---|---|---|
| faith низкий | мусор + додумывает | чанк был, модель врёт → промпт/отказ |
| faith высокий | честно пусто / мало знаний → retrieval | ок, смотри продукт/тон |

## Пайплайн одной фразой

Вход → PII/injection guard → router → hybrid retrieve + ACL → rerank → generate T=0 + cite → schema/«не знаю»/сверка цифр → лог (prompt ver, chunk_ids, $) → человек если надо.

v0: FAQ + статус. Не свободный ReAct на все API карты.

## RAG vs FT vs agent

Факты живые → RAG. Форма/тон стабильны → FT. Действие в системе → workflow, agent только если ветки нельзя нарисовать заранее.

## Три якоря с CV

Kontur: schema linking + few-shot retrieval + generate/fix + vote. Метрика — SQL exec / эталон, не «красивый SQL».
Карты: кластер → few-shot бриф → генерация. Это и есть prompt construction.
Magnit: одна жёсткая метрика, честный A/B. Поэтому офлайн-eval для промптов, онлайн — редко.

## Пробелы одной фразой

Ragas в проде не крутил — контуры свои. OCR/voice не деплоил — спроектирую + field F1 / WER на ваших данных. Go не основной.

## Если спросят «с чего начнёшь в понедельник»

«Сэмпл диалогов каре, 2 часа error analysis, три бинарных eval-а на топ-фейлы, golden set 100, прогон двух моделей. Дашборд RAGAS — после, не вместо.»
