Skip to main content

Data Cloud の 検索インデックス種別について知る

学習の目的

この単元を完了すると、次のことができるようになります。

  • Data Cloud でサポートされている検索インデックスについて説明する。
  • ユースケースに対してどの検索インデックスを作成するべきかを特定する。

Data Cloud の検索を使用して AI をグラウンディングする

顧客固有のデータで AI のグラウンディングを行うと、Salesforce プラットフォームのアプリケーション、分析、自動化ツールで生成 AI の価値が高まります。AI のグラウンディングは、非構造化データ、準構造化データ、構造化データで行えます。関連 CRM データを取得するユーザークエリを使用して AI モデルをグラウンディングすることにより、Agentforce、Tableau、Flow Builder などのアプリケーションの出力がユーザーインテントに合わせて細かく調整されるようになります。Data Cloud の検索を使用すれば、チームとお客様のために AI 生成コンテンツの精度と関連性を確保し、より詳細なインサイトを分析から取得し、自動化ワークフローを効率化することができます。

Data Cloud では、知識ベースのあらゆるデータ (非構造化データを含む) に検索インデックスを構築できます。次の検索インデックス種別が Data Cloud でサポートされています。

  • ベクトル検索
  • ハイブリッド検索

Data Cloud で検索インデックスを構築するには、データを Data Cloud に取り込みます。Data Cloud に非構造化データが取り込まれると、データは標準データモデルオブジェクト (DMO) または非構造化データモデルオブジェクト (UDMO) に対応付けられ、そのデータから有意義なコンテンツチャンクが作成されます。その後、ベクトル埋め込みが作成され、アプリケーションがデータとの意味的および語彙的な類似点を理解するのに役立つ検索インデックスが構築されます。

メモ

ベクトル埋め込みなどの Data Cloud 用語についての定義を確認するには、「Data Cloud 用語集」を参照してください。

検索種別を選択する

特定のユースケースとデータセットに最適な検索種別を決定する前に、それぞれの検索種別にどのような違いがあり、どのタイプの検索クエリを使用すれば最も関連性の高い応答を得られるかを詳しく見てみましょう。

ベクトル検索

ベクトル検索 (セマンティック検索) では、与えられた検索クエリに意味的に類似するデータ (またはデータチャンク) を取得します。このデータには、動画、音声、通話トランスクリプトが含まれる場合もあります。ベクトル検索による取得は、データのチャンク化、ベクトル埋め込みの作成、検索クエリとの意味的な類似性が高いベクトル埋め込みの検索によって行われます。

Data Cloud に取り込まれたさまざまなデータソースからのデータ。Data Cloud でデータのチャンク化とベクトル埋め込みの作成が行われ、ベクトルインデックスが構築される。その後、Tableau、Agentforce などの C360 アプリケーションでこのベクトルインデックスがクエリされ、関連する結果が取得される。

ベクトル検索は、ユーザーが長い形式の検索クエリで一般情報を探している場合に適しています。検索クエリによって、意味的に最も近い一致と関連付けられた高いベクトル検索スコアを持つデータが取得されます。

たとえば、以下は 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;

結果:

この画像に示されているベクトル検索のクエリ結果は、ベクトル検索スコアの高い順に並べられている。検索クエリと意味的に最も一致しているデータのかたまりが結果の上部に表示されている。

ハイブリッド検索

ハイブリッド検索は、意味を認識するベクトル検索の強みとドメインの用語を処理するキーワード検索の機能を組み合わせたものです。ハイブリッド検索では、両タイプの検索から取得した情報をマージした後に、融合ランカー機能を使用して結果をランク付けし、最も関連性の高い情報を表示します

ハイブリッド検索のデフォルトである融合ランカー機能は、検索ベースの多様なタスクに合わせて内部ベンチマークで最適化されます。トレーニングと評価のデータは、Einstein Search と生成 AI アプリケーション (Einstein Search Answer など) から取得した実際のクエリに基づいています。

Data Cloud に取り込まれたさまざまなソースからのデータ。Data Cloud でデータのチャンク化とベクトル埋め込みの作成が行われる。チャンク化およびベクトル化されたデータから、ベクトル検索インデックスとキーワード検索インデックスが構築される。そして、ハイブリッド検索の融合ランカー機能によって、取得された結果がランク付けされ、関連性の最も高い応答がデータをクエリしている C360 アプリケーションに返される。

ハイブリッド検索は、特定の検索用語も含まれている長い形式の検索クエリに最適な方法です。検索クエリによって、キーワードの完全一致と関連付けられた高いキーワード検索スコアを持つデータと、意味的に最も近い一致と関連付けられた高いベクトル検索スコアを持つデータが取得されます。これにより、最も関連性が高い検索結果と関連付けられた高いハイブリッド検索スコアを持つデータが取得されます。

ベクトル検索で使用した同じクエリ例の場合、キーワード検索によってより関連性の高いコンテンツのランキングが上位になるため、LLM のグラウンディングが向上します。

クエリ:

select c.Chunk__c, h.hybrid_score__c, h.keyword_score__c, h.vector_score__c from
hybrid_search(table(WikiArticle_c_hybrid_search_2_index__dlm), 'how does Google Chrome
internet browser work ?', '', 100) as h join WikiArticle_c_hybrid_search_2_chunk__dlm
as c on h.SourceRecordId__c=c.RecordId__c ORDER by h.hybrid_score__c desc limit 2;

結果:

この画像に示されたハイブリッド検索のクエリ結果は、ハイブリッド検索スコアの高い順に並べられている。検索クエリとの意味的一致度とキーワード一致度が高いデータのかたまりが結果の上部に表示されている。

メモ

同一クエリが使用された Google Chrome の例では、単なるベクトル検索よりハイブリッド検索の方がはるかに強力です。ブラウザーのしくみに関する情報に加え、Google Chrome ブラウザーに特化した詳細も含まれるデータのかたまりが返されます。

まとめ

Data Cloud で検索インデックスを構築して、組織の非構造化データ、準構造化データ、構造化データで AI のグラウンディングを行えます。

エンドユーザーとアプリケーションからの検索クエリに最適な検索種別を選択してください。ユーザーのクエリが主に一般情報に関するものである場合やクエリが長い場合 (5 単語以上) は、ベクトル検索で十分です。ベクトル検索では、ユーザークエリがコンテキストコンテンツ (通常、長めのクエリ) の場合に、関連性の高い結果が提示されます。

クエリに対してセマンティック検索の一致とキーワード検索の一致の両方が組み合わされた最も精度と関連性が高い結果を取得するには、ハイブリッド検索インデックスを作成します。

リソース

Salesforce ヘルプで Trailhead のフィードバックを共有してください。

Trailhead についての感想をお聞かせください。[Salesforce ヘルプ] サイトから新しいフィードバックフォームにいつでもアクセスできるようになりました。

詳細はこちら フィードバックの共有に進む