В RAG векторная база данных хранит
embedding-модели и метаданные и по запросу находит ближайшие фрагменты документов. Поэтому при выборе движка важны не скорость поиска (recall у зрелых движков близок к единице), а объем памяти, поведение под фильтрами, мультитенантность и требования к инфраструктуре.
Сама смена движка редко означает прирост качества. Его дают гибридный поиск, reranking, фильтры, chunking и выбор embedding-модели.
До выбора посчитайте память. Для 1 млн векторов размерности 1536 нужно около 6,1 ГБ только под float32-векторы. Для 10 млн — уже около 63 ГБ вместе с HNSW, а с int8-квантованием около 17 ГБ.
☝️ Читайте в карточках, как развернуть Qdrant в VK Cloud, настроить ресурсы и загрузить первые данные.
embedding-модели и метаданные и по запросу находит ближайшие фрагменты документов. Поэтому при выборе движка важны не скорость поиска (recall у зрелых движков близок к единице), а объем памяти, поведение под фильтрами, мультитенантность и требования к инфраструктуре.
Основные варианты:
🔹 pgvector — если PostgreSQL уже в проде и корпус до ~10 млн векторов. Отдельный сервис не нужен. Оговорка: в Managed PostgreSQL VK Cloud расширения нет, только на своем PostgreSQL.
🔹 Qdrant — если фильтрация по ACL и тенантам составляет половину задачи. От миллионов до сотен миллионов векторов, один сервис в эксплуатации.
🔹 Milvus — от десятков миллионов до миллиардов векторов, если есть кому держать распределенную систему в Kubernetes.
🔹 Weaviate — если нужен гибридный поиск BM25 + вектор из коробки.
Сама смена движка редко означает прирост качества. Его дают гибридный поиск, reranking, фильтры, chunking и выбор embedding-модели.
До выбора посчитайте память. Для 1 млн векторов размерности 1536 нужно около 6,1 ГБ только под float32-векторы. Для 10 млн — уже около 63 ГБ вместе с HNSW, а с int8-квантованием около 17 ГБ.
☝️ Читайте в карточках, как развернуть Qdrant в VK Cloud, настроить ресурсы и загрузить первые данные.