ベクターとメタデータのモデリング
コレクション内にベクター埋め込みと関連メタデータを保存できます。ドキュメントによると、Milvus は数値型や文字型、ベクター型、配列、セット、JSON など、幅広いデータ型をサポートしています。
Milvusは、埋め込みの類似検索向けオープンソースベクターデータベース。ローカル、単一マシン、分散、クラウドで使え、セマンティック検索、RAG、画像検索、ハイブリッド検索の構築に役立ちます。
Milvus は、埋め込みと類似検索を中心としたアプリケーション構築のためのオープンソースベクターデータベースです。ノートパソコンから大規模な分散クラスタまで、幅広い環境で動作する高性能システムとして紹介されており、オープンソースソフトウェアとクラウドサービスの両方で利用できます。
この製品は、ベクターデータをメタデータとともに保存し、そのデータに対して高速な検索と取得を行えるよう設計されています。ドキュメントとクイックスタートでは、`pymilvus` を使った Python ベースのワークフローが示されており、ローカル開発向けの Milvus Lite と、本番デプロイ向けの Docker または Kubernetes の विकल्पがあります。
Milvus は、セマンティック検索、Retrieval Augmented Generation、画像検索、マルチモーダル検索、ハイブリッド検索、および関連する取得パイプラインなど、GenAI やその他の埋め込み駆動型ワークロード向けに位置付けられています。アーキテクチャは、単一の限定的なユースケースではなく、スケーラビリティ、ハードウェアを考慮した性能、複数の検索モードを重視しています。
コレクション内にベクター埋め込みと関連メタデータを保存できます。ドキュメントによると、Milvus は数値型や文字型、ベクター型、配列、セット、JSON など、幅広いデータ型をサポートしています。
環境に合ったデプロイモードを選べます。Milvus Lite はノートブックやラップトップ向け、Standalone は単一マシンの Docker デプロイ、Distributed は Kubernetes と 10 億規模のワークロード向けに構築されています。
ANN 検索、フィルタリング検索、範囲検索、ハイブリッド検索、全文検索、再ランキング、取得、クエリなど、幅広い検索操作を実行できます。
IVF、HNSW、DiskANN などのハードウェアを考慮した最適化と複数のインデックス/検索アルゴリズムを利用して、さまざまなプラットフォームで高速なベクター検索を支援します。
ステートレスで疎結合なアーキテクチャを分散システム全体にスケールできます。ドキュメントでは、大規模デプロイ向けに検索、データ、インデックスの各コンポーネントを個別にスケーリングできると説明されています。
`pymilvus` と `MilvusClient` でローカルに開始し、その後同じクライアント中心のワークフローを Docker や Kubernetes の本番デプロイへ移行できます。
ドキュメントやナレッジベースの埋め込みを保存し、ベクター検索を使って LLM に関連コンテキストを提示する Retrieval-Augmented Generation システムを構築します。
テキスト、画像、その他の非構造化データに対して、埋め込みの類似性が厳密なキーワード一致よりも有用な検索体験を作成します。
同じモデルとクライアントのアプローチを Docker や Kubernetes のデプロイへ移行する前に、Milvus Lite を使って Jupyter ノートブックやラップトップ上でローカル実験を行います。
ベクター類似性とメタデータ条件、または二次的なランキングロジックを組み合わせる必要がある場合に、ハイブリッド検索、フィルタリング、再ランキングを利用します。
非常に大規模なベクターコレクションに対して、分散インフラストラクチャと弾力的なスケーリングを必要とする大規模本番システムを支援します。
Milvus は Milvus Lite を通じてローカルでのプロトタイピングに対応しており、ノートブックやラップトップから実行できる Python ライブラリです。さらに、本番用途向けに Docker と Kubernetes もサポートしています。ドキュメントでは Milvus Lite、Standalone、Distributed の各デプロイモードが説明されています。
クイックスタートでは、`pip` で `pymilvus` をインストールし、`MilvusClient` でローカルデータベースファイルを作成し、コレクションを作成してベクターデータを挿入し、検索を実行する方法が示されています。例ではローカル設定に Milvus Lite を使用しています。
Milvus は高次元埋め込みに対するベクター類似検索向けに設計されており、セマンティック検索、Retrieval Augmented Generation(RAG)、画像検索、マルチモーダル検索、ハイブリッド検索、グラフ RAG などのワークフローをサポートします。
ソースでは、Milvus は Apache 2.0 ライセンスのオープンソースソフトウェアであり、クラウドサービスとしても提供されていると説明されています。ホームページでは、マネージド版の Milvus オプションとして Zilliz Cloud も案内されています。
ドキュメントによると、Milvus は ANN 検索、フィルタリング検索、範囲検索、ハイブリッド検索、全文検索、再ランキング、取得、クエリを含む複数の検索タイプをサポートしています。