Agentic RAG 高级 Data 360 设置实战 — 十步构建 RAG 驱动的代理

本文以烤面包机产品问题为例,完整演示用高级方式构建 RAG 驱动代理的十步流程:设置 Developer org、添加案例数据、摄取到 Data Cloud、检查 DLO、映射 DMO、构建混合搜索索引、创建检索器、创建 Flex 提示模板,最后创建 Agentforce 代理,实现扎根的客户问题回答。...

📅 2026/3/4 ✍️ ponybai 🏷️ headless-360, salesforce, data-360

一、Agentic RAG 与高级 Data 360 设置示例

构建 RAG 代理的两种方法

设置 RAG 驱动的代理主要有两种方法:

  • 快速启动(Quick Start):好处是无需配置底层所有组件,就能快速得到一个可运行的解决方案。快速启动方法是使用 Agentforce 数据库(Data Library)创建数据库——选择数据源(HTML、PDF、Knowledge 对象、上传文件、Web 搜索或自定义检索器)并分配给代理,Agentforce 数据库会自动生成所有底层 RAG 组件。
  • 高级(Advanced):好处是直接使用构建器工具,掌握可用于针对特定用例定制 RAG 方案的全套设置和选项

本示例走的是高级方法。通过逐个设置每个组件,你能端到端、直观地理解其配置选项以及它在 RAG 方案栈中的位置。你可以在 Salesforce Developer org 中跟随操作(结果可能因环境而异)。

本示例的场景

RAG 擅长从非结构化数据中提取相关信息,包括文档、网站和结构化数据中的自由格式文本字段。本场景使用你添加到 Salesforce Case(案例)对象的自由格式文本(主题 subject 和描述 description)。代理可以用这些信息来回答关于产品问题的用户提问。

步骤 1:设置 Salesforce Developer Edition Org

这一步引导你获取并准备一个 Salesforce Developer Edition org,这是完成本示例其余步骤的前提。

  1. 登录 Salesforce Developer Edition org。
  2. 检查 Data Cloud 设置:在 Setup 的 Quick Find 框输入 Data Cloud Setup,如果在 Your Home Org Details 下看到 Your Data Cloud instance is live,说明 Data Cloud 已启用。
  3. 如果未启用,按应用内指引或 Data Cloud Help 中的 Turn On Data Cloud 启用,点击 Get Started 启动设置(首次设置约需 30 分钟或更久)。
  4. 完成后确认 Data Cloud 已启用。
  5. 检查 Einstein 生成式 AI 设置:在 Setup 的 Quick Find 框输入 Einstein Setup,确保 Einstein、Global Language Support for Prompt Builder、Deploy Prompt Templates 都已开启(生效可能需要几分钟)。
  6. 在 Setup 的 Quick Find 框输入 Agent 并选择 Agentforce Agents,开启 Agentforce

步骤 2:添加案例数据

创建至少五个 Case 记录,每条记录命名一个产品并描述客户遇到的问题。

  1. 在 App Launcher 中输入 Service 并打开 Service Cloud。
  2. 选择 Cases → New 添加案例。为每个案例指定 subject(主题)、description(详细描述客户问题),并选择案例 origin。其余字段保持默认。

示例数据包括:"电源线起火——烤面包机首次用来烤披萨时电源线起火"、"烤面包机无法启动——插电后按电源键无反应"、"温度不够——调到炙烤档 10 分钟后温度仍只是温的"、"最低档仍烤焦面包"、"面包屑起火"、"烤面包机无故自动关机"、"到货即坏——开箱时玻璃窗已碎"、"包裹被压坏"等。

步骤 3:将案例数据摄取到 Data Cloud

RAG 方案使用 Data Cloud 中创建的搜索索引。要把自由格式案例数据摄取到 Data Cloud,需要创建数据流。

  1. 在 App Launcher 中输入并选择 Data Cloud
  2. 选择 Data Streams 标签页,点击 New,选择 Salesforce CRM,点击 Next
  3. 点击 View Objects,搜索并选择 Case,点击 Next
  4. Object Category 选择 Profile
  5. 在 Standard Fields 标签页只保留这些字段(其余取消):System Modstamp(必填)、Subject(客户问题摘要)、Description(可用于回答客户问题的补充细节)、Case ID(必填但本简单用例不需要)。
  6. 接受 Custom Fields 标签页的选择,点击 Next
  7. 点击 Deploy(摄取数据需要时间)。
  8. 在 Data Streams 菜单点击新数据流旁的下拉箭头,选择 Update Status 检查状态。

Last Run Status 为 Success 且 Total Records 有数值时,数据已进入 Data Cloud。

步骤 4:检查数据湖对象(DLO)

数据流会创建一个名为 Case_Home__dll数据湖对象(DLO)。检查摄取的数据有助于调试和优化 RAG 方案。

  1. 进入 Data Cloud 的 Data Explorer 标签页,Object Type 选择 Data Lake Object,选择 Case_Home(不要更改 data space)。
  2. 点击 Edit Columns:把 Potential Liability 移到 Available Columns,把 Subject 移到 Selected Columns,其余保持,点击 Done
  3. 点击 Description 列两次排序,把案例数据显示在顶部。

步骤 5:将案例 DLO 映射到案例 DMO

把 DLO 映射到数据模型对象(DMO),为数据增加一层结构,使其更易于查询和交互。这里把 Case_Home DLO 映射到 Case DMO。

  1. Data Lake Objects 标签页打开 Case_Home
  2. 在 Data Mapping 面板点击 Start
  3. 在 Data Model Entities 下点击 Select Objects,在 All Objects 面板搜索 Case,点击旁边的 +,点击 Done(DLO 和 DMO 字段会自动映射)。
  4. 保存工作。

步骤 6:检查数据模型对象(DMO)

上一步的映射创建了一个名为 ssot__Case__dlm 的 DMO。

  1. 在 Data Explorer 中,Object 选择 Data Model Object,搜索并选择 Case
  2. 点击 Description 列两次排序,把案例数据显示在顶部。

步骤 7:构建搜索索引

搜索索引让你的文本可搜索,从而让 RAG 方案能查找并检索与用户输入相关的文本块。本示例创建一个混合搜索索引,同时基于语义相似性和关键字查找相关内容。

  1. 在 Data Cloud 选择 Search Index 标签页,点击 New
  2. 选择 Advanced Setup,点击 Next
  3. Search Type 选择 Hybrid Search,Source Object 选择 Case,点击 Next
  4. 点击 Manage Fields,选择 DescriptionSubject,点击 Save
  5. 连续点击 Next 接受其余默认值,最后点击 Save 创建索引。
  6. 点击 Search Index 标签页刷新,当 Search Index Last Run StatusReady(约 10 分钟)时即完成。
  7. 点击 Data Model 标签页查看创建的文件:文本块 Case_chunk_dlm 和混合索引 Case_index_dlm

了解如何检查文本块对调试和功能优化很有帮助——例如,块可能揭示 LLM 为何以意外方式响应。

步骤 8:构建检索器

检索器(retriever)是 Einstein 搜索操作的包装器。你在 AI Models 中创建自定义检索器,以细化搜索,让检索到的内容更贴合你的用例。

注意:单个检索器只能从一个搜索索引获取数据,而一个搜索索引只能索引一个 DMO。若需从多个数据源扎根,请使用集成检索器(ensemble retriever)

  1. 在 Data Cloud 选择 AI ModelsRetrievers,点击 New Retriever
  2. 选择 Individual Retriever,点击 Next
  3. 选择 Data Cloud,接受默认 data space。
  4. 选择 DMO(Case)和搜索索引配置(Case Hybrid Search),点击 Next
  5. 过滤器接受默认(All Documents),点击 Next
  6. 在 Fields to Return 添加三个字段:Case 对象的 Subject(DirectAttribute > Case > Subject)、Case 对象的 Description(DirectAttribute > Case > Description)、Chunk(RelatedAttributes > Case chunk > Chunk)。
  7. 点击 Save,当 Status 为 Ready 时检索器就绪。

步骤 9:创建提示模板

在 Prompt Builder 中创建一个 Flex 提示模板,包含你的检索器和给 LLM 的指令。

  1. 在 Setup 输入 Prompt Builder 并选择 Prompt Builder
  2. 点击 New Prompt Template,选择 Flex,点击 Next
  3. 命名为 Case RAG Example,点击 Create
  4. 在工作区点击 Resource 图标(书签形状),从列表选择你的检索器。
  5. 在模板正文编写提示指令,例如:"你是一位乐于助人的客服代理。使用以下案例数据帮助回答客户的问题。案例主题:{!$Case.Subject}。案例描述:{!$Case.Description}。检索到的上下文:{!$Retriever.chunks}。"
  6. 保存提示模板。
  7. 测试:输入客户问题如"What are common issues with toaster ovens?"并点击 Run,查看扎根后的响应。

步骤 10:创建代理

创建一个 Agentforce 代理,使用你的提示模板回答客户问题。

  1. 在 Setup 输入 Agentforce,选择 Agentforce Agents
  2. 点击 New Agent,选择 Custom Agent,点击 Next
  3. 命名为 Case RAG Agent,点击 Create
  4. 添加一个引用 Case RAG Example 提示模板的新子代理或动作。
  5. 配置代理的指令和行为。
  6. 保存并激活代理。
  7. 在 Agentforce Test 面板通过询问产品问题测试代理。

至此,你完成了一个高级 RAG 方案的完整搭建:从摄取案例数据、构建混合搜索索引、创建检索器,到用提示模板和 Agentforce 代理提供扎根的客户问题回答。


文章来源:Salesforce Help - Example: Agentic RAG with Advanced Data 360 Setup