Статьи ·

Qdrant: векторная база, которую не страшно хостить самому

Qdrant - векторная СУБД на Rust под Apache 2.0: HNSW-поиск, быстрая фильтрация по метаданным, квантование и честный self-host. Разбираем, чем она выигрывает у pgvector и Pinecone.

Типовой RAG-запрос звучит так: "похожие чанки, но только из документов этого клиента и не старше года". Векторный поиск плюс жёсткая фильтрация по метаданным - в одном запросе. Qdrant - open-source векторная СУБД на Rust (Apache 2.0) с HNSW-индексом, построенная именно вокруг этой связки.

Как это работает

Данные лежат в коллекциях: точки, у каждой - вектор и payload с произвольным JSON. Ключевой момент: фильтры применяются во время обхода ANN-индекса, а не после него. Запрос "похожее, но только от этого автора" возвращает ровно k результатов. У баз с пост-фильтрацией при жёстких условиях выдача часто пустеет - здесь этого нет. API два: REST для отладки, gRPC для продакшн-нагрузок. Поднимается одной командой docker, данные - в volume. Есть облако Qdrant Cloud с бесплатным тарифом на 1 ГБ.

Фильтры и квантование

Pre-filtering во время обхода индекса - то, ради чего Qdrant обычно и выбирают. Второй козырь - квантование: scalar, product и binary сжимают векторы в 4-32 раза с минимальной потерей recall. На миллионах векторов это разница между сервером за $20 и за $200 в месяц - проверено чужими счетами. Для роста есть шардирование и репликация.

Подводные камни

За консистентностью размерности векторов следите сами. В отличие от Pinecone, Qdrant ничего не нормализует и не проверяет: сменили эмбеддинг-модель без пересчёта коллекции - получили мусор в выдаче. Распределённый режим (шарды, реплики) требует операционной зрелости, это уже не "docker run и забыл". Бинарное квантование слегка роняет recall - меряйте на своих данных, дефолтам не верьте.

Кому подходит

RAG-пайплайнам со сложной фильтрацией по метаданным и всем, кто хочет self-host без сюрпризов в счёте. До миллиона векторов с простой фильтрацией хватит pgvector - вы и так на Postgres. Быстрому прототипу проще дастся Chroma. А когда фильтры и объёмы начнут давить - вот тогда и переезжайте на Qdrant.