Skip to main content

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

学習の目的

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

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

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

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

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

  • ベクトル検索インデックス
  • ハイブリッド検索インデックス
  • 強化検索インデックス

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

Note

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

検索インデックス種別を選択する

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

ベクトル検索インデックス

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

Data 360 に取り込まれたさまざまなデータソースからのデータ。Data 360 でデータのチャンク化とベクトル埋め込みの作成が行われ、ベクトルインデックスが構築される。その後、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 360 にはさまざまなソースからのデータが取り込まれる。Data 360 でデータのチャンク化とベクトル埋め込みの作成が行われる。チャンク化およびベクトル化されたデータから、ベクトル検索インデックスとキーワード検索インデックスが構築される。そして、ハイブリッド検索の融合ランカー機能によって、取得された結果がランク付けされ、関連性の最も高い応答がデータを照会している 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;

結果:

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

Note

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

強化検索インデックス

標準コンテンツチャンクを追加のメタデータと質問チャンクで強化し、検索拡張生成 (RAG) のベクター検索インデックスまたはハイブリッド検索インデックスを強化します。

キーワード、エンティティ、トピックの概要、コンテンツで回答される質問、コンテンツの要約などのメタデータをコンテンツチャンクから自動的に抽出することで、検索精度が大幅に向上します。この LLM が生成する強化は、手動選定の代替手段として機能し、AI エージェントが質問に回答するときに最も関連性の高い情報を特定しやすくします。

使用するには、ベクター検索インデックスまたはハイブリッド検索インデックスの作成時に強化チャンクを有効にします。検索インデックスの構築時に、Data 360 は 3 つの新しいチャンクを生成します。元のチャンクテキストを含むプレーンチャンク、メタデータテキストを含むチャンク、そのチャンクが回答できる質問を含むチャンクです。AI モデルで強化検索インデックス用のレトリーバーを作成します。RAG およびエージェントワークフローのプロンプトテンプレートとエージェントでレトリーバーを使用します。

次に、強化チャンクを結果に含む強化ハイブリッド検索インデックスのサンプルクエリを見てみましょう。

クエリ:

SELECT
      "RagFileUDMO_Enriched_chunk"."Chunk__c" AS "Chunk",
	  "searchFunc"."hybrid_score__c" AS "hybrid_score__c",
      "searchFunc"."SourceChunks__c" AS "SourceChunks__c",
      "searchFunc"."ChunkProcessingType__c" AS "ChunkProcessingType__c",
      "RagFileUDMO_Enriched_chunk"."ChunkType__c" AS "ChunkType__c"
  FROM (
      SELECT * FROM hybrid_search(TABLE("RagFileUDMO_Enriched_index__dlm"),
  'What is the purpose of Multi-Terrain Select system?', 'ChunkProcessingType__c
   = ''PLAIN''', 10)
      UNION
      SELECT * FROM hybrid_search(TABLE("RagFileUDMO_Enriched_index__dlm"),
  'What is the purpose of Multi-Terrain Select system?', 'ChunkProcessingType__c
   = ''QUESTION''', 10)
      UNION
      SELECT * FROM hybrid_search(TABLE("RagFileUDMO_Enriched_index__dlm"),
  'What is the purpose of Multi-Terrain Select system?', 'ChunkProcessingType__c
   = ''METADATA''', 10)
  ) AS "searchFunc"
  INNER JOIN "RagFileUDMO_Enriched_chunk__dlm" AS "RagFileUDMO_Enriched_chunk"
      ON "RagFileUDMO_Enriched_chunk"."RecordId__c" = "searchFunc"."RecordId__c"
  INNER JOIN "RagFileUDMO__dlm" AS "RagFileUDMO"
      ON "RagFileUDMO"."FilePath__c" =
  "RagFileUDMO_Enriched_chunk"."SourceRecordId__c"
      AND "RagFileUDMO"."KQ_FilePath__c" IS NOT DISTINCT FROM
  "RagFileUDMO_Enriched_chunk"."KQ_SourceRecordId__c"
  ORDER BY "searchFunc"."hybrid_score__c" DESC

結果:

この画像は、元のソースチャンクがプレーンチャンク、質問チャンク、メタデータチャンクとして表示された、強化ハイブリッド検索インデックスのクエリ結果を示しています。3 つのチャンクはすべて、検索クエリに対してハイブリッド検索とメタデータの一致度が最も高い取得結果の一部です。

この機能を Data Cloud で使用すると、Flex Credits を消費します。詳細は、「Billing Considerations for Enriched Index (強化インデックスの請求に関する考慮事項)」を参照してください。詳細は、アカウントエグゼクティブにお問い合わせください。

まとめ

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

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

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

追加のメタデータと質問チャンクによる検索インデックスの強化は、検索精度向上の効果が、大規模言語モデル (LLM) での追加チャンク生成コストを上回る場合に行います。

リソース

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

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

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