Собрал в кучу инфу по теме AI-инженера. "Горячая" тема, судя по рилсам)
Типичная вакансия: Python, LLM, RAG, агенты, production. Но на собесе не проверяют знание этих слов. Проверяют три вещи:
1. Trade-off мышление - не "лучший подход", а "лучший для этой ситуации"
2. Production-фокус - как это будет жить, ломаться и стоить денег
3. Язык домена - говоришь ли ты на языке бизнеса, а не только на языке ML
___
1. Trade-off мышление
Нет "лучшего" решения. Есть решение, оптимальное для конкретных ограничений.
Chunking в RAG
| Стратегия | Плюс | Минус | Когда выбирать |
|----------------|--------------------|--------------------|--------------------------|
| Мелкие чанки | Точнее поиск | Теряем контекст | Фактовые вопросы |
| Крупные чанки | Больше контекста | Шум в retrieval | Аналитические вопросы |
| Parent-child | И точность, и контекст | Два индекса, сложнее | Когда критично качество |
Зрелый ответ: "Зависит от типа вопросов. Для фактовых - мельче, для аналитических - крупнее."
Retrieval
| Метод | Плюс | Минус |
|------------------|----------------------|------------------------------------------|
| Dense (векторный) | Понимает семантику | Может пропустить exact match |
| Sparse (BM25) | Точный match | "РКО" ≠ "расчётно-кассовое обслуживание" |
| Hybrid | Лучшее из двух | Сложнее настройка |
В проде почти всегда hybrid - потому что dense пропускает точные совпадения (аббревиатуры, коды), а sparse не понимает семантику.
Агент vs Граф
| Подход | Плюс | Минус |
|---------------------|-------------------------------|-------------------------------------------------|
| Свободный агент | Гибкость | Непредсказуемость, дорого, сложно тестировать |
| Граф (state machine) | Воспроизводимость, аудируемость | Нужно продумать все пути заранее |
Для банка граф почти всегда лучше - регулятор любит предсказуемость.
Зрелый ответ: "Сначала смотрю, можно ли графом. Агент - когда реально нужна гибкость, а не красивая архитектура."
Треугольник оптимизации
QUALITY
△
/|\
/ | \
▽──┴──▽
LATENCY COST
- Streaming - реальная latency та же, но UX кардинально лучше
- Кэширование мгновенные ответы, но риск устаревших данных
- Роутинг по сложности простые вопросы на дешёвую модель. 80% запросов обычно простые - экономия существенная
- Reranking - quality +, но latency -
___
2. Production-фокус
Сделать прототип — легко. Поддерживать систему, которая не деградирует - сложно.
Что может пойти не так
| Проблема | Что происходит | Как заметить |
|-------------------|------------------------------------------|--------------------------------------|
| Устаревший индекс | Регламенты обновились, база старая | Рост ответов "информации нет" |
| Изменение модели | Провайдер обновил модель | Скачок метрик после апдейта |
| Падение интеграций | CRM или бэкенд недоступен | Рост таймаутов |
| Смена паттернов | Пользователи спрашивают о новом | Незнакомые вопросы в логах |
Безопасность агентов
| Механизм | Зачем |
|-------------------|--------------------------------------------------|
| Allowlist tools | Только разрешённые инструменты |
| Loop guard | Лимит шагов, времени, стоимости |
| Human-in-the-loop | Подтверждение на чувствительных действиях |
Loop guard - мастхэв. Агент может решить, что ему нужно 50 вызовов API на простой вопрос.
Verifier - обязательный компонент
Generate → Verify → Respond