生成AIナレッジベースの作成
AI インフラストラクチャをデプロイし、FSx for ONTAPデータストアからナレッジ ベースに統合するデータ ソースを特定したら、Workload Factory を使用してナレッジ ベースを構築する準備が整います。このステップでは、AI の特性を定義し、会話のきっかけも作成します。
作業を進める前に、環境がナレッジベースのを満たしていることを確認し"要件"てください。
ナレッジベースには、_パブリックモード_と_エンタープライズモード_という2つのデータ統合モダリティがあります。
- パブリックモード
-
ナレッジベースは、組織のデータソースを統合しなくても使用できます。この場合、ナレッジベースに統合されたアプリケーションは、インターネット上で公開されている情報からのみ結果を提供します。これは_public mode_integrationと呼ばれます。
- Enterpriseモード
-
ほとんどの場合、組織のデータソースをナレッジベースに統合する必要があります。これは、エンタープライズからの知識を提供するため、_Enterprise mode_integrationと呼ばれます。
組織のデータ ソースには、個人を特定できる情報 (PII) が含まれている場合があります。この機密情報を保護するために、ナレッジ ベースを作成および構成するときに、データ ガードレール を有効にすることができます。 NetApp Data Classification を活用したデータ ガードレールは、PII を識別してマスクし、アクセス不能かつ回復不可能な状態にします。
NetApp Workload Factory for GenAI は、機密個人情報 (SPii) をマスクしません。参照"機密性の高い個人データのタイプ"このタイプのデータの詳細については、こちらをご覧ください。 データ ガードレールはいつでも有効化または無効化できます。データ ガードレールの有効化を切り替えると、Workload Factory はナレッジ ベース全体を最初からスキャンするため、コストが発生します。
ナレッジベースの作成と設定
ナレッジベースは、ナレッジベースの作成に使用するBedrock AIモデルや埋め込み形式などの特性を定義します。
-
次のいずれかを使用してWorkload Factoryにログインします。"コンソールエクスペリエンス" 。
-
[AI Workloads]タイルで、*[Deploy & manage]*を選択します。
-
[ナレッジ ベースとコネクタ] メニューから、[新規作成] ドロップダウンを選択し、[Bedrock 用のNetApp GenAI ナレッジ ベース] を選択します。
-
NetApp GenAI ナレッジ ベースの作成ページで、ナレッジ ベースの設定を構成します。
ナレッジベースの詳細
-
名前:ナレッジベースに使用する名前を入力します。
-
説明:ナレッジベースの詳細な説明を入力します。
-
Bedrock: AWS アカウントで Amazon Bedrock が利用できるリージョンを選択します。
摂取
-
埋め込みモデル:
-
ナレッジベースに使用する埋め込みモデルを選択します。埋め込みモデルは、データが知識ベースのベクトル埋め込みに変換される方法を定義します。 Workload Factory は次のモデルをサポートしています。
-
Titan埋め込みG1 -テキスト
-
Titan埋め込みテキストv2
-
Titan Multimodal Embedding G1
-
英語を埋め込む
-
多言語を埋め込む
Amazon Bedrockから埋め込みモデルを有効にしておく必要があります。
-
該当する場合は、選択した埋め込みモデルの構成に一致する推論タイプを選択します。
-
-
データ ガードレール: データ ガードレールを有効にするか無効にするかを選択します。"NetApp Data Classification を活用したデータ ガードレールについて学ぶ" 。
データガードレールを有効にするには、次の前提条件を満たす必要があります。
-
NetApp Data Classification と通信するには、サービス アカウントが必要です。サービス アカウントを作成するには、 NetAppコンソール テナンシー アカウントで 組織管理者 ロールを持っている必要があります。組織管理者の役割を持つメンバーは、 内のすべてのアクションを完了できます。"NetAppコンソールでメンバーにロールを追加する方法を学びます"
-
AIエンジンは、"NetAppコンソールAPIエンドポイント" 。
-
以下の手順に従ってください。"NetAppデータ分類ドキュメント" :
-
コンソールエージェントを作成する
-
環境が前提条件を満たしていることを確認する
-
NetAppデータ分類を導入
-
CSV、JSON、JSONP、Parquetなどの構造化データファイルを取り込む場合、データガードレール機能はサポートされません。 -
チャットと検索の設定
-
チャットモデル:
-
Amazon Bedrock に統合されているさまざまなチャットモデルから選択します。 Amazon Bedrock からチャット モデルをすでに有効にしておく必要があることに注意してください。
-
該当する場合は、選択したモデルの構成に一致する推論タイプを選択します。
-
-
チャット設定:
-
チャットボットの温度を選択して、応答のランダム性と創造性を設定します。温度が低いと、より予測可能な応答が得られ、温度が高いと、より多様な応答が得られます。
-
応答の最大長を選択して、応答の詳細度を設定します。応答の長さが長くなると、より多くの応答トークンが使用され、コストが高くなる可能性があります。
-
-
思考モード: 思考モードを有効にすると、チャットボットはクエリの処理に時間がかかり、結果は通常より正確になります。思考モードを有効にすると、結果を生成するときに使用する推論トークンの数を制御できます。推論トークンを多く使用すると、応答の精度は上がりますが、コストが高くなる可能性があります。
-
再ランキング: 再ランキングを有効または無効にします。これにより、クエリ結果の関連性と品質が向上します。再ランク付けに使用する標準チャット モデルまたは特殊な再ランク付けモデルを選択します。 Reranker モデル オプションは、お住まいの地域で利用可能な場合にのみ表示されます。選択したモデルの構成に一致する推論タイプを選択します。
-
会話の開始:このナレッジベースを使用するチャットボットと対話するユーザーに表示される会話の開始プロンプトを最大4つ指定するかどうかを選択します。この設定を有効にすることをお勧めします。
会話開始機能を有効にすると、デフォルトで「自動モード」が選択されます。「手動モード」は、ナレッジベースにデータソースを追加した後にのみ有効にできます。"ナレッジベースの設定を変更する方法について説明します。"です。
ストレージ定義
-
FSx for ONTAPファイルシステム: 新しいナレッジベースを定義すると、Workload Factory によって、それを保存するための新しいAmazon FSx for NetApp ONTAPボリュームが作成されます。新しいボリュームを作成する既存のファイル システム名と SVM (ストレージ VM とも呼ばれます) を選択します。
-
スナップショット ポリシー: Workload Factory ストレージ インベントリで定義されている既存のポリシーのリストからスナップショット ポリシーを選択します。ナレッジ ベースの定期的なスナップショットは、選択したスナップショット ポリシーに基づいた頻度で自動的に作成されます。
-
S3 バケット: チャットボットのクエリ結果に構造化データが含まれている場合、GenAI はその結果を S3 バケットに保存できます。この機能を使用するには、*S3 バケットのアクティブ化*設定を有効にし、リストからアカウントに関連付けられている S3 バケットを選択します。これらの結果が S3 バケットに保存されると、チャット セッション内のダウンロード リンクを使用してダウンロードできます。
必要なSnapshotポリシーが存在しない場合は "Snapshot ポリシーを作成します"、ボリュームを含むStorage VM上で実行できます。
-
[ナレッジベースの作成]*を選択して、ナレッジベースをGenAIに追加します。
ナレッジベースの作成中は、進行状況インジケータが表示されます。
ナレッジベースを作成したら、新しいナレッジベースにデータソースを追加するか、データソースを追加せずにプロセスを終了するかを選択できます。[データソースの追加]*を選択し、ここで1つ以上のデータソースを追加することをお勧めします。
ナレッジベースへのデータソースの追加
1つまたは複数のデータソースを追加して、組織のデータをナレッジベースに入力できます。
サポートされるデータソースの最大数は10です。
-
データ ソースの追加 を選択した後、追加するデータ ソースの種類を選択します。
-
FSx for ONTAP ファイルシステムを追加する (既存の FSx for ONTAP ボリュームのファイルを使用)
-
ファイルシステムを追加する(一般的な SMB または NFS 共有のファイルを使用)
-
-
ファイルシステムを選択:データソースファイルが存在するFSx for ONTAPファイルシステムを選択し、* Next *を選択します。
-
ボリュームを選択:データソースファイルが格納されているボリュームを選択し、*[次へ]*を選択します。
SMBプロトコルを使用して保存されているファイルを選択する場合は、ドメイン、IPアドレス、ユーザ名、パスワードなどのActive Directory情報を入力する必要があります。
-
データソースを選択:ファイルを保存した場所に基づいてデータソースの場所を選択します。これは、ボリューム全体、またはボリューム内の特定のフォルダまたはサブフォルダにすることができ、* Next *を選択します。
-
設定:データソースがファイルから情報を取り込む方法と、スキャンに含めるファイルを設定します。
-
データソースの定義:*チャンク戦略*セクションで、データソースがナレッジベースと統合されている場合に、生成AIエンジンがデータソースのコンテンツをチャンクに分割する方法を定義します。次のいずれかの方法を選択できます。
-
Multi-sentence chunking:データソースの情報をセンテンス定義のチャンクに編成します。各チャンクを構成する文の数を選択できます(最大100 )。
-
オーバーラップベースのチャンク:データソースからの情報を文字定義のチャンクに編成し、隣接するチャンクとオーバーラップすることができます。各チャンクのサイズを文字単位で選択し、各チャンクが隣接するチャンクとどの程度重なるかを選択できます。チャンクサイズは50~3000文字、オーバーラップパーセンテージは1~99%の範囲で設定できます。
オーバーラップ率を高く設定すると、取得精度がわずかに向上するだけで、ストレージ要件が大幅に増加します。
-
-
ファイルフィルタリング:スキャンに含めるファイルを設定します。
-
[ファイルタイプのサポート]セクションで、すべてのタイプのファイルを含めるか、データソーススキャンに含めるファイルタイプを個別に選択します。
画像または PDF ファイルを含めると、 NetApp Workload Factory for GenAI は画像内のテキスト (PDF ドキュメント内の画像を含む) を解析するため、コストが高くなります。
画像のテキストデータを含めると、スキャンされたテキストデータが環境からAWSに送信されるため、生成AIは画像の個人識別情報(PII)をマスクできません。ただし、データが保存されると、すべてのPIIは 生成AIデータベースでマスクされます。
-
画像ファイルをスキャンに含めるかどうかは、ナレッジベースチャットモデルに関連しています。画像ファイルをスキャンに含める場合は、チャットモデルで画像がサポートされている必要があります。ここで画像ファイルタイプが選択されている場合、画像ファイルをサポートしていないチャットモデルにナレッジベースを切り替えることはできません。 -
[ファイル変更時刻フィルタ]*セクションで、ファイルの変更時刻に基づいてファイルを含めるかどうかを選択します。変更時刻のフィルタリングを有効にする場合は、リストから日付範囲を選択します。
変更日の範囲に基づいてファイルをインクルードした場合、日付範囲が満たされない(指定した日付範囲内でファイルが変更されていない)とすぐに、ファイルは定期スキャンから除外され、データソースにはこれらのファイルは含まれません。
-
-
権限対応*セクション(選択したデータソースがSMBプロトコルを使用するボリューム上にある場合にのみ表示)で、権限対応の応答を有効または無効にできます。
-
有効:このナレッジベースにアクセスするチャットボットのユーザーは、アクセス権を持つデータソースからのクエリに対する応答のみを取得します。
-
無効:チャットボットのユーザーは、統合されたすべてのデータソースからコンテンツを使用して応答を受信します。
-
-
[追加]*を選択して、このデータソースをナレッジベースに追加します。
-
ファイル システムを選択: データ ソース ファイルが存在するファイル システム ホストの IP アドレスまたは FQDN を入力し、ネットワーク共有の NFS プロトコルを選択して、次へ を選択します。
-
データソースを選択:ファイルを保存した場所に基づいてデータソースの場所を選択します。これは、ボリューム全体、またはボリューム内の特定のフォルダまたはサブフォルダにすることができ、* Next *を選択します。
場合によっては、NFSエクスポート名を手動で入力し、「ディレクトリを取得」を選択して利用可能なディレクトリを表示する必要があります。エクスポート全体を選択するか、エクスポートから特定のフォルダのみを選択するかを選択できます。 -
設定:データソースがファイルから情報を取り込む方法と、スキャンに含めるファイルを設定します。
-
データソースの定義:*チャンク戦略*セクションで、データソースがナレッジベースと統合されている場合に、生成AIエンジンがデータソースのコンテンツをチャンクに分割する方法を定義します。次のいずれかの方法を選択できます。
-
Multi-sentence chunking:データソースの情報をセンテンス定義のチャンクに編成します。各チャンクを構成する文の数を選択できます(最大100 )。
-
オーバーラップベースのチャンク:データソースからの情報を文字定義のチャンクに編成し、隣接するチャンクとオーバーラップすることができます。各チャンクのサイズを文字単位で選択し、各チャンクが隣接するチャンクとどの程度重なるかを選択できます。チャンクサイズは50~3000文字、オーバーラップパーセンテージは1~99%の範囲で設定できます。
オーバーラップ率を高く設定すると、取得精度がわずかに向上するだけで、ストレージ要件が大幅に増加します。
-
-
ファイルフィルタリング:スキャンに含めるファイルを設定します。
-
[ファイルタイプのサポート]セクションで、すべてのタイプのファイルを含めるか、データソーススキャンに含めるファイルタイプを個別に選択します。
画像または PDF ファイルを含めると、 NetApp Workload Factory for GenAI は画像内のテキスト (PDF ドキュメント内の画像を含む) を解析するため、コストが高くなります。
画像のテキストデータを含めると、スキャンされたテキストデータが環境からAWSに送信されるため、生成AIは画像の個人識別情報(PII)をマスクできません。ただし、データが保存されると、すべてのPIIは 生成AIデータベースでマスクされます。
-
画像ファイルをスキャンに含めるかどうかは、ナレッジベースチャットモデルに関連しています。画像ファイルをスキャンに含める場合は、チャットモデルで画像がサポートされている必要があります。ここで画像ファイルタイプが選択されている場合、画像ファイルをサポートしていないチャットモデルにナレッジベースを切り替えることはできません。 -
[ファイル変更時刻フィルタ]*セクションで、ファイルの変更時刻に基づいてファイルを含めるかどうかを選択します。変更時刻のフィルタリングを有効にする場合は、リストから日付範囲を選択します。
変更日の範囲に基づいてファイルをインクルードした場合、日付範囲が満たされない(指定した日付範囲内でファイルが変更されていない)とすぐに、ファイルは定期スキャンから除外され、データソースにはこれらのファイルは含まれません。
-
-
このデータ ソースをナレッジ ベースに追加するには、[データ ソースの追加] を選択します。
-
ファイルシステムを選択:
-
データ ソース ファイルが存在するファイル システム ホストの IP アドレスまたは FQDN を入力します。
-
ネットワーク共有の SMB プロトコルを選択します。
-
ドメイン、IP アドレス、ユーザー名、パスワードを含む Active Directory 情報を入力します。
-
「 * 次へ * 」を選択します。
-
-
データソースを選択:ファイルを保存した場所に基づいてデータソースの場所を選択します。これは、ボリューム全体、またはボリューム内の特定のフォルダまたはサブフォルダにすることができ、* Next *を選択します。
場合によっては、SMB共有名を手動で入力し、「ディレクトリの取得」を選択して利用可能なディレクトリを表示する必要があります。共有全体を選択するか、共有内の特定のフォルダのみを選択するかを選択できます。 -
設定:データソースがファイルから情報を取り込む方法と、スキャンに含めるファイルを設定します。
-
データソースの定義:*チャンク戦略*セクションで、データソースがナレッジベースと統合されている場合に、生成AIエンジンがデータソースのコンテンツをチャンクに分割する方法を定義します。次のいずれかの方法を選択できます。
-
Multi-sentence chunking:データソースの情報をセンテンス定義のチャンクに編成します。各チャンクを構成する文の数を選択できます(最大100 )。
-
オーバーラップベースのチャンク:データソースからの情報を文字定義のチャンクに編成し、隣接するチャンクとオーバーラップすることができます。各チャンクのサイズを文字単位で選択し、各チャンクが隣接するチャンクとどの程度重なるかを選択できます。チャンクサイズは50~3000文字、オーバーラップパーセンテージは1~99%の範囲で設定できます。
オーバーラップ率を高く設定すると、取得精度がわずかに向上するだけで、ストレージ要件が大幅に増加します。
-
-
権限認識: 権限認識応答を有効または無効にします。
-
有効:このナレッジベースにアクセスするチャットボットのユーザーは、アクセス権を持つデータソースからのクエリに対する応答のみを取得します。
-
無効:チャットボットのユーザーは、統合されたすべてのデータソースからコンテンツを使用して応答を受信します。
-
-
ファイルフィルタリング:スキャンに含めるファイルを設定します。
-
[ファイルタイプのサポート]セクションで、すべてのタイプのファイルを含めるか、データソーススキャンに含めるファイルタイプを個別に選択します。
画像または PDF ファイルを含めると、 NetApp Workload Factory for GenAI は画像内のテキスト (PDF ドキュメント内の画像を含む) を解析するため、コストが高くなります。
画像のテキストデータを含めると、スキャンされたテキストデータが環境からAWSに送信されるため、生成AIは画像の個人識別情報(PII)をマスクできません。ただし、データが保存されると、すべてのPIIは 生成AIデータベースでマスクされます。
-
画像ファイルをスキャンに含めるかどうかは、ナレッジベースチャットモデルに関連しています。画像ファイルをスキャンに含める場合は、チャットモデルで画像がサポートされている必要があります。ここで画像ファイルタイプが選択されている場合、画像ファイルをサポートしていないチャットモデルにナレッジベースを切り替えることはできません。 -
[ファイル変更時刻フィルタ]*セクションで、ファイルの変更時刻に基づいてファイルを含めるかどうかを選択します。変更時刻のフィルタリングを有効にする場合は、リストから日付範囲を選択します。
変更日の範囲に基づいてファイルをインクルードした場合、日付範囲が満たされない(指定した日付範囲内でファイルが変更されていない)とすぐに、ファイルは定期スキャンから除外され、データソースにはこれらのファイルは含まれません。
-
-
このデータ ソースをナレッジ ベースに追加するには、[データ ソースの追加] を選択します。
データソースがナレッジベースに埋め込まれ始めます。データソースが完全に埋め込まれると、ステータスが「埋め込み」から「埋め込み」に変わります。
単一のデータソースをナレッジベースに追加したら、チャットボットシミュレータウィンドウでローカルにテストし、必要な変更を加えてから、ユーザーがチャットボットを使用できるようにします。同じ手順に従って、ナレッジベースにデータソースを追加することもできます。