Skip to content

ベクターデータベースのデータソース

DataRobotの生成モデリングでは、3つのタイプのベクターデータベースがサポートされています。

  • 常駐。「内部」で構築されたベクターデータベース。アプリケーションにリストされるソースにはDataRobotと示されます。 最大10GBまでサポートし、DataRobotに保存され、ユースケースのベクターデータベースタイルに表示されます。
  • 接続。最大100GBのベクターデータベースで、外部プロバイダーにリンクしています。 アプリケーションにリストされているソースはプロバイダー名であり、プロバイダーインスタンスに格納されます。
  • 外部。検証と登録のためにレジストリワークショップでホストされ、ユースケースのディレクトリリストでは読み取り専用で接続として識別されます。 They have no size constraints, since they are hosted outside DataRobot, but must fit within the resource bundle memory of the vector database deployment.

データセットの要件

ベクターデータベースの作成に使用するデータセットをアップロードする場合、サポートされている形式は.zipまたは.csvです。 ファイルにはdocumentdocument_file_pathの2つの列が必須です。 最大50のメタデータ列を追加して、プロンプトクエリーの際にフィルターに使用することができます。 メタデータのフィルターでは、document_file_pathsourceとして表示されます。

.zipファイルの場合、DataRobotはファイルを処理して、関連するリファレンスID(document_file_path)列を持つテキスト列(document)を含む.csvバージョンを作成します。 テキスト列の内容はすべて、文字列として扱われます。 リファレンスID列は、.zipがアップロードされると自動的に作成されます。 すべてのファイルは、アーカイブのルート(root)、またはアーカイブ内の単一のフォルダーに配置する必要があります。 フォルダーツリー階層の使用はサポートされていません。

Data connector limitation for vector databases

Data ingested via data connectors (such as Google Drive or SharePoint) is stored in the File Registry and cannot be used as VDB metadata. All metadata files must be uploaded to Datasets storage in the Data Registry, as assets contained in Files storage are not validated by the EDA process. If a vector database requires metadata for filtering, access control, or downstream retrieval logic, ensure that the metadata is provided as a Dataset in the Data Registry rather than sourced from a data connector.

サポートされているファイルコンテンツの詳細については、 注意事項を参照してください。

内部ベクターデータベース

DataRobotの内部ベクターデータベースは、取得速度を維持しながら、許容可能な取得精度を確保するために最適化されています。 以下の手順に従って、データの準備とアップロードを行います。

  1. 以下のようにデータを準備します。 CSVに関する要件の詳細を参照して、データが正しい形式であることを確認してください。

    • 以前に エクスポートされたベクターデータベースを使用します

    • ナレッジソースを構成するファイルを単一の.zipファイルに圧縮します。 ファイルを選択して、すべてのファイルを保持するフォルダーをzipまたは圧縮できます。

    • 必須のdocument列とdocument_file_path列、および最大50の追加メタデータ列を持つCSVを準備します。 document_file_path列には、解凍された.zipファイルの個々の項目がリストされます。document列には、各ファイルの内容がリストされます。 メタデータのフィルター(RAGワークフロー)の目的では、document_file_pathsourceとして表示されます。

  2. ファイルをアップロードします。 アップロードは、次のいずれかの方法で行うことができます。

    • ユースケースから、ローカルファイルまたはデータ接続として。

    • レジストリデータタイルから、ローカルファイル、HDFS、URL、またはJDBCデータソースとして。 DataRobotは.zipファイルを.csv形式に変換します。 登録したら、プロフィールタブを使用してデータを確認できます。

DataRobotでデータが利用可能になったら、それをプレイグラウンドで使用する ベクターデータベースとして追加できます。

CSVに関する要件の詳細

CSVの必須列は、次のように定義されています。

  • documentには、任意の量(ファイルサイズの上限まで)のフリーテキストコンテンツを含めることができます。
  • document_file_pathも必須で、ファイル形式のサフィックス(file.txtなど)が必要です。

.csvファイルを使用すると、ベクターデータベースの作成時にチャンキングなしオプションを利用できます。 DataRobotは各行をチャンキングとして扱い、各行に埋め込みを直接生成します。

DataRobotのベクターデータベースでは、CSVの1つのテキスト列のみをプライマリーテキストコンテンツとして使用できます。 CSVに複数のテキスト列がある場合は、1つのdocument列に連結する必要があります。 CSVには、メタデータ列として最大50個の列を追加できます。 これらの列はメタデータのフィルターに使用できます。これにより、プロンプトクエリーによって返される引用数が制限されます。

CSVに複数のテキスト列がある場合は、次のことができます。

  • テキスト列を1つのdocument列に結合(連結)する。
  • CSVの行を個別のPDFファイル(1行につき1つのPDF)に変換し、PDFをアップロードする。

例:

大量のフリーテキストを含む1つの列swagと、IDのみが含まれテキストはない2番目の列InventoryIDを持つCSVファイルについて考えてみます。 データからベクターデータベースを作成するには:

  1. swagからdocumentに名前を変更します。
  2. InventoryIDからdocument_file_pathに名前を変更します。
  3. document_file_path列に「偽の」パスを追加します。 たとえば、11223344を/inventory/11223344.txtに変更します。 このようにして、列はファイルパスを含むものとして認識されます。

ベクターデータベースのエクスポート

ベクターデータベースまたは特定バージョンのデータベースをデータレジストリにエクスポートして、別のユースケースで再利用できます。 エクスポートするには、ユースケースのベクターデータベースタイルを開きます。 アクションメニュー をクリックし、最新のベクターデータベースバージョンをデータレジストリにエクスポートを選択します。

エクスポートすると、ジョブが送信されたことが通知されます。 データアセットタイルを開き、データレジストリから使用するために登録されているデータセットを確認します。 また、AIカタログにも保存されます。

登録されると、データセットをプレビューしたり、このデータセットから新しいベクターデータベースを作成したりできます。

エクスポートから新しいベクターデータベースを作成する前にプレビューするには、データアセットタイルで、新しく追加したベクターデータベースのアクションメニュー からベクターデータベースを作成を選択します。 プロバイダーを選択し、データソースドロップダウンからデータを追加を選択します。

データレジストリが開きます。 DataRobotのアセットデータセットを選択し、新しくエクスポートされたベクターデータベースをクリックします。 データプレビューでは、ベクターデータベースの各チャンクがデータセットの行になっていることが示されます。

アクションメニュー から、ベクターデータベースを作成を選択します。 データベースを設定するためのモーダルが開きます。

データレジストリからデータセットをダウンロードし、チャンクレベルで変更してから、再度アップロードして、新しいバージョンまたは新しいベクターデータベースを作成できます。

外部(BYO)ベクターデータベース

外部"bring-your-own"(BYO)ベクターデータベースは、独自のモデルとデータソースを使用して、カスタムモデルデプロイをLLMブループリントのベクターデータベースとして活用する機能があります。 このベクターデータベースのタイプは、ユースケースのディレクトリリストでは読み取り専用で接続として識別されます。 外部ベクターデータベースをUIから使用することはできません。DataRobotのPythonクライアントを使用してChromaDBの外部ベクターデータベースを作成する方法について説明したノートブックを確認してください。

外部ベクターデータベースの主な機能:

  • カスタムモデルの統合:独自のモデルをベクターデータベースとして組み込むことで、柔軟性とカスタマイズ性をさらに高めることができます。

  • 入力および出力形式の互換性:外部BYO ベクターデータベースは、LLMブループリントとのシームレスな連携を確保するために、指定された入力および出力形式に準拠する必要があります。

  • 検定と登録:カスタムモデルデプロイは、外部ベクターデータベースとして登録する前に、必要な要件を満たすように検定する必要があります。

  • LLMブループリントとのシームレスな統合:登録されると、外部ベクターデータベースをローカルベクターデータベースと同様にLLMブループリントで使用できます。

  • エラー処理と更新: この機能には、エラー処理と更新の機能が含まれているため、LLMブループリントの再検証や複製作成によって、カスタムモデルのデプロイにおける問題や変更に対処できます。

基本的な外部ワークフロー

このノートブックで詳しく説明されている基本的なワークフローは次のとおりです。

  1. APIを介してベクターデータベースを作成します。
  2. カスタムモデルデプロイを作成して、ベクターデータベースをDataRobotに取り込みます。
  3. デプロイが登録されたら、ノートブックでのベクターデータベース作成の一部としてデプロイにリンクします。

ユースケース内のベクターデータベースタブから、ユースケースのすべてのベクターデータベース(および関連バージョン)を表示できます。 外部ベクターデータベースの場合、ソースタイプのみが表示されます。 これらのベクターデータベースはDataRobotによって管理されていないため、他のデータはレポートには利用できません。.