创建搜索索引配置
学习目标
完成本单元后,您将能够:
- 描述 Data 360 中的搜索索引配置与落地训练的工作原理。
- 创建向量搜索索引配置。
使用搜索索引配置对基于非结构化数据的搜索进行落地训练
通过对基于非结构化与结构化数据的搜索进行落地训练,可增强您在 Salesforce Platform 上对生成式 AI、分析与自动化工具的运用。经过落地训练的搜索能够将特定于客户的数据导入 Agentforce、Tableau 和 Flow Builder等应用程序,确保您能根据用户意图和上下文对输出进行微调。这些调整将为您的团队和客户提供更准确和更相关的 AI 生成的内容、更深入的分析见解以及更高效的自动化工作流程。
要进行搜索落地训练,您需要将非结构化数据拆分为语义恰当的区块,并基于这些区块创建向量嵌入,即分块数据的数字表示。分块内容存储在 Data 360 搜索索引中,可在 Einstein 生成式 AI 应用程序(提示生成器与 Agentforce)、自动化应用程序 (Flow Builder) 以及分析应用程序 (Tableau) 中进行搜索与使用。

区块非结构化数据
在上一单元中,我们介绍了 Data 360 如何通过非结构化数据模型对象 (UDMO) 引用非结构化数据。此外,您也可以对 UDMO 或任何包含文本字段的 DMO(例如 Salesforce Knowledge 文章)进行分块。这正是您将在本单元中执行的操作。
当您对 UDMO 或 DMO 进行分块时,会将其拆分为易于管理、语义上有意义的区块。这些文本单元以区块数据模型对象 (CDMO) 的形式存储在 Data 360 中,CDMO 是根据数据模型对象或非结构化数据模型对象创建的。
了解分块的工作方式
Data 360 支持多种分块策略。
基于语义的段落提取利用 HTML 标记中固有的语义含义,将文档分为段落。诸如标题 (<h1>, <h2>)、列表 (<ul>, <ol>) 或用作副标题的加粗文本 (<strong>) 等 HTML 元素,均被视为段落的逻辑边界。
基于窗口的段落提取策略则使用块级元素(如 <div> 和 <p> 标记)或由换行符分隔的原始文本,将文档分为段落。如果段落中不包含任何 HTML,则提取将在句子级别进行。
在 Salesforce 帮助中了解有关分块策略的更多信息。
现在,让我们来看看数据分块后会发生什么。
基于分块内容创建向量嵌入
在 Data 360 将内容分块后,会创建向量嵌入,即分块内容的数字表示,可在 Salesforce 生成式 AI、自动化或分析应用程序中检索或使用。
向量嵌入是文本的数字表示,用于存储单词或短语之间的关系。嵌入能够捕获内容的语义含义,因此语义相近的内容区块具有相似的向量嵌入。这种表示有助于机器有效地处理和理解语言。
在 Data 360 中,向量嵌入由索引数据模型对象 (IDMO) 引用,我们将在本单元后续部分进一步了解。
创建向量搜索索引配置
为使您的非结构化数据支持搜索,需要对其进行分块和向量化。为此,您可以创建搜索索引配置。搜索索引配置适用于任何带有包含信息性概念、叙述或详细描述的文本字段的数据对象,用户可搜索以查找相关结果。此类数据的示例包括 Salesforce Knowledge 文章或存储在 Amazon S3 等外部 blob 存储中的其他文本文档(例如聊天脚本)。
基于 Knowledge 文章创建向量搜索索引配置
在上一单元中,您已通过 Salesforce CRM 连接器中的 Knowledge 捆绑包创建了数据流和数据湖对象,其中提供了一些示例 Knowledge 文章。
Knowledge 文章版本对象对索引非常有用,因为您可以根据版本,使用此对象查询、检索或搜索各种类型的文章。Knowledge 文章版本对象包含以下应被索引以进行搜索的字段。
-
Name(名称):Knowledge 文章的名称或标题
-
Description(描述):从 Summary(摘要)映射的 Knowledge 文章的描述或摘要
-
Custom text fields(自定义文本字段):任何包含非结构化数据的富文本字段(131K 限制)
为 Knowledge 文章版本 DMO 创建向量搜索索引配置
请在您的 Data 360 组织中完成以下步骤,以通过本单元末尾的挑战。
- 如果还没有,请启动 Data Cloud Playground。
- 从 App Launcher(应用程序启动器)中,选择 Data Cloud。
- 单击 Search Index(搜索索引) | New(新建)。
如果在 Data Cloud 导航中未看到 Search Index(搜索索引),单击 More(更多)下拉菜单,然后选择 Search Index(搜索索引)。
- 单击 Advanced Setup(高级设置) | Next(下一步)。
- 在 Select Source Object(选择源对象)页面中,选择 Vector Search(向量搜索)、Knowledge Article Version(Knowledge 文章版本)DMO,然后单击 Next(下一步)。
- 在 Select Fields to Chunk(选择要分块的字段)页面中,单击 Manage Fields(管理字段)。
- 单击 Select All Fields(选择所有字段),然后单击 Save(保存)。
- 保持默认分块策略不变,然后单击 Next(下一步)。
- 在 Select a Vectorization Strategy(选择向量化策略)页面中,保持默认向量化策略不变,然后单击 Next(下一步)。
- 在 Select Related Fields for Search Filtering(选择相关字段进行搜索筛选)页面中,不要添加任何字段,然后单击 Next(下一步)。
- 在 Search Index Configuration Details(搜索索引配置详细信息)页面中,将自动生成的 Search Index Configuration Name(搜索索引配置名称)替换为
My_kav。(Search Index Configuration API Name(搜索索引配置 API 名称)将自动填充)。
- 单击 Save(保存)。
就是这样!您的新建搜索索引配置 My_kav已列在 Search Index(搜索索引)选项卡下。
查看 Knowledge 文章版本 CDMO 和 IDMO
创建搜索索引配置后,其状态会先变为 Submitted(已提交),随后会在处理来自源 DMO/UDMO 的数据时更改为 In-progress(进行中)。如果没有失败,状态将从 Submitted(已提交)变为 In-progress(进行中),最终更改为 Ready(就绪)。只有当搜索索引状态变为 Ready(就绪)后,您才能在 Data Explorer(数据资源管理器)中查看任何记录。
Knowledge 文章中最有用的内容位于 Description(描述)字段中。示例文章的篇幅通常较小,因此仅包含一个区块。这意味着,Knowledge 文章版本 CDMO 和 IDMO 中的每条记录,分别对应一个区块和一个向量;但若内容较长,则每个 DMO 中可能会包含多条记录。
让我们快速查看为 Knowledge 文章版本 DMO 创建的 CDMO 和 IDMO。
- 确认搜索索引状态为 Ready(就绪)。
- 在 Data Cloud 中,单击 Data Explorer(数据资源管理器)。
- 从对象下拉菜单中,选择 Data Model Object(数据模型对象)。
- 在 Select an Object(选择对象)字段中,选择 My_kav 分块。
现在,您会看到 Data 360 从示例 Knowledge 文章中创建的所有区块列表。
- 在 Select an Object(选择对象)字段中,选择 My_kav 索引。
现在,您会看到 Data 360 从示例 Knowledge 文章中创建的所有向量记录列表。
您可以在整个 Salesforce 的 Flow Builder、Agentforce、提示生成器甚至 Tableau 等应用程序中使用该搜索索引中包含的 CDMO 和 IDMO。或参阅向量搜索文档,了解更多关于运行向量搜索查询的信息。
将非结构化数据连接到 Data 360 使您能基于大量数据对搜索结果进行落地训练,满足各种以客户为中心的用例。通过对数据进行分块和向量化,您可以在 Einstein 生成式 AI 应用程序、Flow Builder,甚至 Tableau 中使用向量搜索,提升 AI、分析和自动化功能。
