RAG-ассистент для каталога
MVP чат-поиск с автоматизацией деплоев, экспериментов и мониторинга качества

One-liner: За шесть недель выкатили RAG MVP для ритейл-клиента, сократили пустые поиски в три раза и уложились в бюджет одной GPU.
TL;DR
До | После | Что сделали |
---|---|---|
Zero-result 30% | 9 % | Weaviate HNSW + fallback |
p90 latency 1.6 с | 0.8 с | int8 Mistral-7B, Ray Serve |
CTR 12.4% | 14 % | Rerank cross-encoder |
Cost 2.2 $ / 1000 req | 1.2 $ | self-host + spot GPU |
GMV (10 % трафика A/B) — | +6.3 % | search uplift |
1. Зачем клиенту был нужен MVP
- E-commerce, США, 9 млн товаров в каталоге.
- 30% запросов отдавали пустую выдачу, пользователи уходили за 1.5 с.
- Лицензия облачного GPT-4 стоила $ 45k/месяц, CFO ввел жесткий потолок на операционные расходы.
- Цель контракта - рабочий прототип, который покажет экономию и рост CTR за один квартал.
2. Целевые метрики
Метрика | Цель | Статус |
---|---|---|
Zero-result < 10 % | 9 % | ✅ |
p90 < 1 с | 0.8 с | ✅ |
Cost −30 % | −45 % | ✅ |
CTR +10 % | +1.6 pp | ✅ |
SLA 99.5 % | 99.6 % | ✅ |
3. Архитектура MVP
3.1 Ingestion
Airflow DAG дробит карточки на абзацы, считает эмбеддинги E5-small, пишет их в кластер Weaviate (HNSW, три шарда). Переиндексирование 10 M позиций за 45 мин без даунтайма.
3.2 Retrieval pipeline
query → E5 embed → HNSW top50
↑ ↓
BM25 filter ← price / brand
→ cross-encoder rerank 10
3.3 LLM serving
Ray Serve держит Mistral-7B int8 (gguf). Первые токены стримятся за 0.25 с. Модель дообучена на 50 k диалогов e-commerce.
3.4 Serving слой
FastAPI BFF, gRPC к Ray, KServe autoscaling. Canary 50 / 50 через Argo Rollouts, rollback < 1 мин.
3.5 Observability
Prometheus + Grafana (latency, токены), Loki для логов, Evidently drift на базе запросов.
4. Решенные проблемы
Боль | Решение | Выигрыш |
---|---|---|
Долгая выдача | int8 Mistral + batching | −0.6 с latency |
Пустые ответы | Fallback BM25 | 30 % → 9 % |
Дорогие токены | Own GPU (spot A10G) | −45 % cost |
Галлюцинации | RAG-guard threshold 0.4 | < 1 % жалоб |
Холодные старты | Ray Serve autoscaler с прогревом | p99 стабильный |
В первую неделю после релиза начали сыпаться latency-алерты. Ray перегревал карту при высоком батчинге. Проблему решили через throttling и фиктивные прогревочные запросы.
5. Экономика для клиента
Сниженная доля zero-result принесла +240 k сессий в месяц. CTR вырос на 1.6 pp, что дало +6.3 % GMV в тестовом сегменте. Полная окупаемость CAPEX на GPU достигнута за 70 дней.
6. Моя роль — ML engineer
- Настроил Weaviate индекс и HNSW параметры.
- Подготовил датасет, fine-tune Mistral-7B LoRA int8.
- Реализовал cross-encoder rerank (MiniLM) и промпт шаблоны.
- Собрал метрики в Prometheus, настроил Evidently drift тревоги.
- Анализировал A/B, оформил отчет для клиента.
7. Что дальше
Клиент планирует расширить MVP до полной персонизации: история покупок во фичах, upsell-рекомендации и мобильный SDK. Helm-chart, подготовленный в проекте, уже развернут на пилотной площадке второго заказчика.
Bottom line
MVP показал, что аккуратно собранный RAG снижает расходы, ускоряет поиск и прямо влияет на продажи. Команда доказала метриками, что решение масштабируемо и готово к продуктовой фазе.