埋め込みシステム向けベクトルデータベース

OpenAI API で学ぶ埋め込み入門

Emmanuel Pire

Senior Software Engineer, DataCamp

現在のアプローチの制約

  • すべての埋め込みをメモリに読み込む(1536浮動小数点数 ~ 13kB/埋め込み
  • 新しいクエリごとに埋め込みを再計算する
  • すべての埋め込みのコサイン距離計算と並べ替えの処理には時間がかかり、データ量に比例する

A diagram showing how the documents and query are embedded with every query with no storage solution.

OpenAI API で学ぶ埋め込み入門

ベクトルデータベース

  • 埋め込みドキュメントはベクトルデータベースに保存 、クエリされる

A diagram showing how a vector database is used to store document embeddings and returned results based on an embedded query back to the user.

OpenAI API で学ぶ埋め込み入門
NoSQLデータベース
  • より柔軟な構造で、より高速なクエリが可能になる

Examples of NoSQL database schemas, including key:value, document, and graph databases.

SQL/リレーショナルデータベース
  • データをテーブル、行、列に構造化

Tables with columns and rows in a SQL, or relational, database.

OpenAI API で学ぶ埋め込み入門

保存できるもの

  • 埋め込み
  • ソーステキスト
  • メタデータ
    • IDと外部参照
    • 結果の絞り込みに役立つ追加データ

Tips: ソーステキストをメタデータとして保存しない

A vector database icon.

OpenAI API で学ぶ埋め込み入門

ベクトルデータベースの種類

Many of the most popular vector database solutions, sorted by whether they are closed source or open source, and whether they are dedicated vectors databases or not.

1 画像提供: Yingjun Wu
OpenAI API で学ぶ埋め込み入門

最適なソリューションは?

  • データベース管理:
    • マネージド型: 高コストだが作業負荷軽減
    • セルフホスト型: 安価だが時間と専門知識が必要
  • オープンソースか商用か?
    • オープンソース: 柔軟、費用対効果が高い
    • 商用: 充実したサポート、高度な機能、コンプライアンス
  • データモデル: データ型がデータベースタイプに適しているか?
  • 特定の機能: マルチモーダルストレージのような特定の機能を必要としているか?

Chroma logo.

OpenAI API で学ぶ埋め込み入門

練習しましょう!

OpenAI API で学ぶ埋め込み入門

Preparing Video For Download...