モジュールから
- グラウンディング
グラウンディング とは、 ドメイン固有の知識や顧客情報をプロンプトに追加することで、LLMが質問やタスクに正確に応答するために必要なコンテキストを提供することです。前述のように、グラウンディングのソースには、ナレッジ記事、アップロードされたファイル、ウェブサイト、会話の記録などが含まれます。ただし、長くて複雑なドキュメントを検索するには時間とリソースを大量に消費する可能性があり、LLMには一度に処理できるテキストの量に上限(トークンまたは単語数)があります。
- チャンキング、インデックス作成、
これに対処するため、データソースはチャンクと呼ばれる小さな部分に分割されます。そして、チャンクを検索し、LLMが検討するのに最も関連性の高い情報のみを返します。
データがチャンク化されると、検索インデックスに整理・分類されます。整理された検索インデックスに情報を保存すると、必要なときに特定のデータを容易に、より迅速に取得できるようになります。このようにデータがチャンク化・整理されると、検索の効率が向上し、結果の関連性が向上し、非常に大規模なデータセットの処理が可能になります。
- リトリーバー
リトリーバーは、データと特徴量の間のポインタとして機能します。異なるデータベース、システム、プラットフォームから関連データを自動的に抽出し、提供するように設計されています。ユーザーが質問すると、各データライブラリに割り当てられたリトリーバーが、Salesforce AIツールがアクセスできるData Cloud内のデータセットを決定します。そのため、リトリーバーは検索エンジン、質問応答システム、レコメンデーションシステムなどのアプリケーションで特に重要になります。
ファイルの大きさの制限
ファイルのサイズ制限(テキスト/HTMLの場合は4MB、PDFの場合は100MB)内であることを確認してください。
外部 BLOB ストアと Data Cloud 間の接続を作成したら、非構造化データ レイク オブジェクト (UDLO) を作成し、それを非構造化データ モデル オブジェクト (UDMO) にマッピングすることで、Data Cloud 内の非構造化データを参照できます。
UDLOとUDMOの関係は1:1またはN:1です。つまり、各UDLOは最大1つのUDMOにマッピングできますが、複数のUDLOは1つのUDMOにマッピングできます。例を見てみましょう。
複数の外部BLOBストアから症例記録データを参照しているとします。3つの異なるUDLOが、CaseRecordingsFromAWSBucket1、CaseRecordingsFromAWSBucket2、CaseRecordingsfromGCSという3つのソースからデータを参照しています。これらのソースは論理的に同じオブジェクトであるため、個々のUDLOは1つのUDMO(CaseRecordings)にマッピングされます。
Data Cloud では、ベクトル埋め込みはインデックス データ モデル オブジェクト (IDMO) によって参照されます。
非構造化データを検索用に準備するには、チャンク化とベクトル化が必要です。そのためには、検索インデックス設定を作成します。ユーザーが関連する結果を見つけるために検索する、情報概念、ナラティブ、または詳細な説明を含むテキストフィールドを持つデータオブジェクトに対して、検索インデックス設定を作成します。このようなデータの例としては、Salesforce Knowledgeの記事や、Amazon S3などの外部BLOBストアに保存されているその他のテキストドキュメント(チャットの記録など)が挙げられます。
Data Cloud が検索インデックスのデータを処理するには数分かかる場合がありますが、処理時間は変動するため、飲み物を飲んだり、足を伸ばしたりしてお待ちください。戻ってきたときは、「更新」をクリックして、検索インデックスのステータスが「準備完了」になっていることを確認してください。
かなり時間がかかりました。
ヘルプから
Data Cloudで検索インデックスを構築するには、データをData Cloudに取り込みます。Data Cloudは非構造化データを取り込み、標準データモデルオブジェクト(DMO)または非構造化データモデルオブジェクト(UDMO)にマッピングし、データから意味のあるコンテンツチャンクを作成します。その後、Data Cloudはベクトル埋め込みを作成し、アプリケーションがデータの意味的および語彙的な類似性を理解するのに役立つ検索インデックスを構築します。
ベクトル検索
ベクトル検索(セマンティック検索とも呼ばれる)では、与えられた検索クエリに対して意味的に類似したデータ(またはデータチャンク)を取得します。このデータには、動画、音声、通話記録も含まれます。ベクトル検索による取得は、データをチャンク化し、ベクトル埋め込みを作成し、検索クエリと意味的に類似性の高いベクトル埋め込みを検索することで行われます。
例えば、Google Chromeブラウザの動作に関する情報を検索するクエリは次のようになります。この検索クエリは、検索クエリと最も意味的に一致する、最も高いベクトル検索スコアを持つチャンクを取得します。
select c.Chunk_c, v.score_c from vector_search(table(WikiArticle_c_vector_search_2_index__dlm),
'how does Google Chrome internet browser work', '', 100) as v join WikiArticle_c_vector_search_2_
chunk_dlm as c on v.SourceRecordId_c=c.RecordId_c ORDER by v.score_c desc limit 3;
チャンク化: 解析されたデータを、効率的に取得できるように、より小さく管理しやすいチャンクに分割します。
質問から
Problem is LLM is down. Now I can see those chunks. May be we have to wait for 7 to 8 hrs to create chunks, After uploading the files