ナレッジ マートの作成
ナレッジ マートを作成すると、構造化データと非構造化データをベクター データベースに埋め込んで保存できます。この操作により、拡張コンテキストをセマンティック検索機能で取得し、検索拡張生成 (RAG) アプリケーションのコンテキストとして使用できるようになります。
RAG は、クエリを使用して LLM に追加のコンテキストを提供することで、LLM 出力を最適化します。
要件
-
Qlik Talend Cloud Enterprise サブスクリプションが必要です。
-
Snowflake および Databricks プラットフォームでサポートされています。Snowflake Iceberg には対応していません。
-
顧客が管理するデータ ゲートウェイが必要です。
Databricks には、Qlik データ ゲートウェイ - データ移動 バージョン 2024.11.95 以降が必要です。
Qlik データ ゲートウェイ - データ移動 のインストール
ナレッジ マートを使用するには、ベクター データベースと LLM 接続に接続する必要があり、接続には特定の Qlik データ ゲートウェイ - データ移動 をインストールする必要があります。詳細については、「ナレッジマート用の Qlik データ ゲートウェイ - データ移動 の設定」を参照してください。
ログの表示とダウンロード
ナレッジ マートのログを表示およびダウンロードできます。詳細については、「トラブルシューティング Data Movement gateway」を参照してください。
前提条件
次のタイプのデータ タスクをナレッジ マートのソースとして使用できます。
-
ストレージ
-
変換
ナレッジ マートを作成する前に、ソース データ タスクで次の操作を実行する必要があります。
- ナレッジ マートで使用するデータをデータセットに入力します。詳細については、「データ ウェアハウスへのデータのオンボーディング」を参照してください。
-
データセット リレーショナル モデルを作成して、ソース データセット間の関係を定義します。詳細については、「 データ モデルの作成」を参照してください。
警告メモすべてのデータセットにはキーが必要です。
ナレッジ マートの Databricks を構成する
Databricks をデータ プラットフォームとして使用する場合、ナレッジ マートを作成できるように Databricks でいくつかの構成を実行する必要があります。
-
Databricks で SQL ウェアハウスを作成します。サーバーレス コンピュートの使用をお勧めします。
ストレージ統合を有効にするには、SQL ウェアハウスとサーバーレス コンピュートのデータ セキュリティも構成する必要があります。
-
[ベクター検索] でエンドポイントを作成します。ナレッジ マート タスクの [ベクター データベース設定] で、このエンドポイントの名前を参照します。
パフォーマンス要件に基づいて [タイプ] を選択します。ほとんどのユース ケースでは [標準] が適しています。
必要に応じて、コスト配分のためのタグを関連付けるために [Serverless Usage Policy] (サーバーレス使用ポリシー) を定義します。
-
[Serving] (サービング) で Databricks モデルを構成します。
[Serving Endpoints] (サービング エンドポイント) で、Databricks で利用可能な [LLM Embeddings] (LLM 埋め込み) と [Chat Models] (チャット モデル) を使用できます。データ パイプラインで使用する予定のモデルを必ず確認してください。
カスタムモデル用の [Serving Endpoint] (サービング エンドポイント) を作成することも、OpenAI や Azure OpenAI などの [Foundation Model] (基盤モデル) を使用することもできます。
埋め込みモデル: databricks-gte-large-en
チャット/補完モデル: databricks-meta-llama-3-1-405b-instruct
制限事項
次のすべての条件に一致するソース データセットを使用する場合、制限事項があります。
-
SQL 変換または変換フローによって作成されたもの
-
非マテリアライズド
-
履歴データ ストア (タイプ 2) がオフになっている
これらのデータセットは実行ごとに更新されたとみなされるため、効率とコストに影響する可能性があります。これを軽減するには、次の操作を実行します。
-
マテリアライズするソース データセットを変更します。
-
明示的なデータセット変換を使用します。
-
複数のデータセットを変換するグローバル ルールを作成します。
サポートされているエンコード形式
ファイルは UTF-8 で適切にエンコードされている必要があります。他の形式は誤って解釈される可能性があります。
サポートされている文字
ファイル名およびフォルダー名には次の文字を使用できます。
- [0-9]、 [a-Z]、 [A-Z]
- ! - _ . * ' ()
その他の特殊文字もサポートされている可能性がありますが、特殊文字の扱いは複雑であるため、上記のリストにある文字のみを使用することをお勧めします。
リレーションシップ
-
2 つのデータセットのデータを関連付けることはできません。データ モデル内のリレーションシップを定義する変換タスクを作成し、その変換タスクをタスクのソースとして使用します。
-
データ モデル内で 2 つのデータセットが関連している場合、データセットの 1 つだけを選択した場合でも、タスクでは両方のデータセットが使用可能になります。
接続またはデータ ゲートウェイの変更
ベクトル接続、またはベクトル データ ゲートウェイを変更した場合は、タスクを再度準備する必要があります。
トラブルシューティング
OneDrive に移動されたファイルがファイル ナレッジ マートで認識されない
考えられる原因
古いファイルの作成日や更新日を保持するオプションを使用してファイルを OneDrive に移動または同期した場合、そのファイルは新しいファイルとして認識されません。
提案されたアクション
ファイルの更新日を現在の日付に変更する。
Pinecone 使用時のランタイム エラー
考えられる原因
メタデータ列内の NULL 値は、Pinecone ではサポートされていません。結果として、実行時エラーが発生します。
提案されたアクション
-
ナレッジ マートの前の変換処理で、NULL 値を空文字列や「NULL」などの別の値に変換する。
-
別のベクトル データ ベースを使用する。
-
列をメタデータとして使用しない。