このページでは、Vertex AI RAG Engine でサポートされているベクトル データベースについて説明します。また、ベクトル データベース(ベクトルストア)を RAG コーパスに接続する方法についても説明します。
ベクトル データベースは、RAG アプリケーションの検索を可能にするうえで重要な役割を果たします。ベクトル データベースは、ベクトル エンベディングを保存してクエリする専用の方法を提供します。ベクトル エンベディングは、語義上の意味と関係をキャプチャするテキストなどのデータの数学的表現です。ベクトル エンベディングにより、RAG システムは、複雑なクエリや微妙なニュアンスのクエリを処理する場合でも、広大なナレッジベース内で最も関連性の高い情報を迅速かつ正確に見つけることができます。ベクトル データベースをエンベディング モデルと組み合わせると、LLM の制限を克服し、より正確で関連性の高い包括的な回答を提供できます。
サポートされているベクトル データベース
RAG コーパスを作成するときに、Vertex AI RAG Engine はエンタープライズ対応の RagManagedDb をデフォルトのベクトル データベースとして提供します。追加のプロビジョニングや管理は必要ありません。RagManagedDb には KNN と ANN の両方の検索オプションが用意されており、迅速なプロトタイピングとテストのためにベーシック ティアに切り替えることができます。RagManagedDb での取得戦略の選択またはティアの更新について詳しくは、RAG で RagManagedDb を使用するをご覧ください。Vertex AI RAG Engine がベクトル データベースを自動的に作成して管理するには、RAG コーパスを作成するをご覧ください。
Vertex AI RAG Engine では、デフォルトの RagManagedDb に加えて、RAG コーパス内でベクトル データベースをプロビジョニングして使用できます。この場合、ベクトル データベースのライフサイクルとスケーラビリティはユーザーが責任を負います。
ベクトル データベース オプションを比較する
次の表に、Vertex AI RAG Engine でサポートされているベクトル データベースの選択肢を示します。また、RAG コーパス内でベクトル データベースを使用する方法を説明するページへのリンクも示します。
| ベクトル データベース | 利点 | 最適な用途 | 欠点 | サポートされている距離指標 | 検索のタイプ | リリース ステージ |
|---|---|---|---|---|---|---|
RagManagedDb(デフォルト)は、非常に高い整合性と高可用性を提供する、リージョン単位で分散されたスケーラブル データベース サービスです。ベクトル検索に使用できます。簡単、シンプル、高速、迅速 |
|
|
|
cosine |
KNN(デフォルト)と ANN | 一般提供 |
| ベクトル検索は、Vertex AI 内のベクトル データベース サービスで、ML タスク用に最適化されています。 |
|
|
|
cosinedot-product |
ANN | 一般提供 |
| Vertex AI Feature Store は、ML 機能を整理、保存、提供するためのマネージド サービスです。 |
|
|
|
cosinedot-productL2 squared |
ANN | プレビュー |
| Weaviate は、柔軟性とモジュール性を備えたオープンソースのベクトル データベースです。 |
|
|
|
cosinedot-productL2 squaredhammingmanhattan |
ANN + ハイブリッド検索のサポート | プレビュー |
| Pinecone は、高パフォーマンスの類似検索用に設計された、フルマネージドのクラウドネイティブ ベクトル データベースです。 |
|
|
|
cosineeuclideandot-product |
ANN | 一般提供 |
次のステップ
- RAG コーパスを作成するには、RAG コーパスの作成の例をご覧ください。
- すべての RAG コーパスを一覧表示するには、RAG コーパスのリストの例をご覧ください。