【ChatGPT】chromadbのようなベクトルデータベースってRDBと何がどう違うの?
ChatGPTをのAPIを使って、何かサービスを企画しようとすると、ベクトルデータベースを触る機会も増えたのではないでしょうか。
Pineconeなど、様々な種類のサービスがある中で、オープンソースで無料ですぐに試せるベクトルデータベースとして、chromadbで試してみる方も多いと思います。
このベクトルデータベースって普通のRDBと何が違うのか、気になったので、ChatGPTに聞いてみました。
ベクトルデータベースには下記のような様々な種類のものがあります。
-
Faiss:高次元ベクトルの効率的な類似性検索とクラスタリングのためのライブラリで、任意のサイズのベクトル集合内で検索するアルゴリズムを含んでいます。これはMetaのFundamental AI Researchグループによって主に開発されています。
-
Milvus:数兆のベクトルデータセットを管理し、複数のベクトル検索インデックスと組み込みフィルタリングをサポートするオープンソースのベクトルデータベースです。
-
Qdrant:ベクトル類似性検索エンジンおよびベクトルデータベースで、ストア、検索、管理ポイント(追加ペイロード付きのベクトル)を提供するAPIを持っています。これはニューラルネットワークや意味ベースのマッチング、ファセット検索などのアプリケーションに役立つように設計されています。
-
Elasticsearch:分散検索および分析エンジンで、さまざまなタイプのデータをサポートしています。Elasticsearchがサポートするデータタイプの一つがベクトルフィールドで、これは数値の密ベクトルを保存します。
-
Weaviate:お気に入りのMLモデルからのデータオブジェクトとベクトル埋め込みを保存することを可能にするオープンソースのベクトルデータベースです。
-
Vespa:フル機能の検索エンジンおよびベクトルデータベースで、ベクトル検索(ANN)、語彙検索、および構造化データ内での検索を同時にサポートしています。
-
Vald:高度にスケーラブルな分散型の高速近似最近傍密ベクトル検索エンジンで、Cloud-Nativeアーキテクチャに基づいて設計および実装されています。
-
pgvector:PostgreSQLのオープンソース拡張で、データベース内でベクトルの埋め込みを保存しクエリを行うことができます。
これらのデータベースとchromadbのメリットがどこにあるのかというと、
やはり、Pythonで使えること、LangChainから簡単に使えることが挙げられます。
最後にベクトルデータベースがどのような機能を元に、簡単に意味検索・類似検索が実現できているのかを尋ねると以下の回答が返ってきました。
-
組み込みのドキュメントとクエリの埋め込み機能: ベクトルデータベースは、一般的に、ある種の埋め込みアルゴリズム(例えば、Word2Vec、GloVe、BERTなどの機械学習モデル)を使用して、テキスト、画像、オーディオなどのデータをベクトル形式に変換します。これらのベクトルは、元のデータのセマンティック(意味)情報を保持します。つまり、この変換プロセスは、元のデータが機械学習モデルにとって「理解可能」になるように、それを数値のリストに変換します。
-
埋め込みとそのメタデータの保存: データベースは一般的に、各ベクトル(または「埋め込み」)とそれに関連付けられたメタデータを保存します。メタデータは通常、オリジナルのデータ(例えば、テキスト文書の内容や作成日など)や、そのデータの特性(例えば、画像の色や形状など)に関する情報を含みます。これらの情報は、検索クエリの結果をフィルタリングまたはソートするために使用できます。
-
埋め込みの検索: ベクトルデータベースは、通常、近似最近傍(Approximate Nearest Neighbor、ANN)検索アルゴリズムを使用して、クエリベクトルと最も類似するベクトルを高速に検索します。ANNアルゴリズムは、完全な最近傍検索よりも高速であり、大規模なデータセットに対して効果的です。
-
分析のための検索上位: ベクトルデータベースは、類似度の高いベクトルのリストを提供することで、データの分析に役立ちます。たとえば、ユーザーが特定の文書に関連する他の文書を見つけることができます。
あまり馴染みのなかったベクトルデータベースについて少し理解が深まりました。
技術でお困りのことがある方はオンライン相談が可能です。
こちらから会社概要資料をDLできます!
お問い合わせ内容に「オンライン相談希望」とご記載ください。
株式会社piponでは定期的に技術勉強会を開催しています。
ChatGPT・AI・データサイエンスについてご興味がある方は是非、ご参加ください。
株式会社piponではChatGPT・AI・データサイエンスについて業界ごとの事例を紹介しています。ご興味ある方はこちらのオウンドメディアをご覧ください。
Discussion