AI・機械学習
中級

Qdrant(クドラント)

Rustで実装された高性能なオープンソースベクトルデータベース。ニューラル埋め込みの保存・検索に特化し、フィルタリング付きの近似最近傍探索(ANN)を高速に実行する。

0 回閲覧
0 いいね
2026/6/4 更新
関連タグ
ベクトルDB
RAG
ANN
Rust
セマンティック検索

Qdrant とは

Qdrantは、2021年にドイツで設立されたQdrant Solutions GmbHが開発するオープンソースのベクトルデータベース/検索エンジン。Rustで実装されており、高いメモリ効率と低レイテンシが特徴。LLMアプリケーションのRAGシステム・セマンティック検索・推薦システムのバックエンドとして急速に普及している。

主要アーキテクチャ

Collections

Qdrantのデータ単位は「Collection(コレクション)」。各コレクションにベクトル次元数・距離関数(Cosine/Euclidean/Dot)を設定し、ベクトルと任意のJSON「Payload」を一緒に格納する。

HNSW インデックス

近似最近傍探索(ANN)にはHNSW(Hierarchical Navigable Small World)グラフを使用。m(接続数)とef_construct(構築時探索数)の2パラメータでスピード/精度のトレードオフを調整。数千万件規模でも100ms以下の応答を実現。

Scalar Quantization / Product Quantization

メモリ削減のため量子化をサポート。fp32ベクトルをint8にスカラー量子化すれば4倍のメモリ削減、積量子化(PQ)ではさらに圧縮可能。

フィルタリング機能

Qdrantの最大の特徴が「有条件ベクトル検索」。Payloadに保存したメタデータでフィルタした上でベクトル類似度でランク付けする:

{
  "query": [0.1, 0.2, "..."],
  "filter": {
    "must": [
      {"key": "category", "match": {"value": "tech"}}
    ]
  },
  "limit": 10
}

PineconeやChromaと異なり、フィルタリングをベクトル探索前に適用するため精度が高い(post-filteringはrecall低下の原因になる)。

Sparse Vectors & Hybrid Search

v1.7以降、密ベクトル(Dense)と疎ベクトル(Sparse/BM25相当)の両方を格納し、Hybrid Searchが可能。BM25のキーワードマッチングと意味的類似度を組み合わせるReranking(RRF)により高精度な結果を返せる。

セットアップ

docker run -p 6333:6333 qdrant/qdrant
pip install qdrant-client

競合との比較

  • Qdrant vs Chroma: Qdrantはpre-filteringで精度高い、Chromaはプロトタイプ向けの手軽さ
  • Qdrant vs Pinecone: Qdrantはセルフホスト・コスト最適化、Pineconeはインフラ管理不要
  • Qdrant vs Milvus: Qdrantは中規模(〜数億件)まで、Milvusはエンタープライズ規模向け

Rust実装のメモリ安全性と低レイテンシ、pre-filteringの精度、Sparse Vectorsサポートが選択理由として挙がることが多い。

この記事について
カテゴリーAI・機械学習
難易度中級
作成日2026/6/4