Vector DB: хранилище эмбеддингов
Что делает слой
Заголовок раздела «Что делает слой»Векторная база хранит эмбеддинги — числовые представления фрагментов текста, картинок или кода — и умеет быстро находить ближайшие по смыслу. Это основа семантического поиска: запрос «как ограничить доступ к админке для роли» находит документ, где написано «права роли редактора», хотя общих слов в них нет.
Без этого слоя RAG превращается в поиск по ключевым словам, а модель — в генератор ответов по памяти.
Варианты и когда что брать
Заголовок раздела «Варианты и когда что брать»| Решение | Когда подходит |
|---|---|
| Pinecone | Нужен полностью управляемый сервис и быстрый запуск без эксплуатации |
| Qdrant, Weaviate | Нужен self-hosted контроль, гибкая фильтрация и hybrid search |
| Milvus / Zilliz | Масштаб до миллиардов векторов, отдельная инфраструктурная команда |
| pgvector | Уже есть PostgreSQL и не хочется второй базы |
| Chroma, LanceDB | Прототип, локальная разработка, встраивание в приложение |
Практическое правило: выбирайте не лучшую векторную базу, а ту, которую команда сможет эксплуатировать. Отдельный кластер ради 50 тысяч чанков документации — обычно лишняя инфраструктура; pgvector рядом с рабочей базой закрывает тот же сценарий и упрощает бэкапы.
Свойства, которые сложнее заменить потом
Заголовок раздела «Свойства, которые сложнее заменить потом»- Hybrid search. Векторы плюс ключевые слова. Чистый семантический поиск плохо находит точные идентификаторы:
wp_cache_get, артикулы, коды ошибок, имена функций. - Фильтрация по метаданным. Права, язык, версия документа, проект, дата. Фильтр после поиска по векторам деградирует: вы получаете «похожие, но недоступные» документы.
- Multi-tenancy. Изоляция данных между клиентами и проектами на уровне запроса, а не после выдачи.
- Обновление и удаление. Документы меняются; база должна уметь переиндексировать чанки, а не только добавлять.
Схема работы
Заголовок раздела «Схема работы»документы → чанки → эмбеддинг-модель → векторы + метаданные → Vector DB ↑запрос → эмбеддинг того же модели → поиск top-K → фильтр → контекст для моделиДва условия корректности: эмбеддинг-модель для запроса и для документов одна и та же, а метаданные заполняются при индексации, не при запросе.
Что проверить в проекте
Заголовок раздела «Что проверить в проекте»- Кто владеет индексом. Если чанки строятся вручную и разово, через месяц база отстанет от документации.
- Есть ли план переиндексации. Смена модели эмбеддингов требует полного пересчёта — это часы и деньги, их стоит планировать.
- Не хранится ли в векторах то, что нельзя. Персональные данные и секреты в эмбеддингах — та же утечка, что и в тексте.
- Хватает ли фильтрации. Разграничение доступа после поиска — источник утечек: недоступный документ уже попал в контекст модели.
Материалы и источники
Заголовок раздела «Материалы и источники»- Системное мышление для агентного ИИ — статья WPCraft, раздел «Vector DB»