一、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,这是完成本示例其余步骤的前提。
- 登录 Salesforce Developer Edition org。
- 检查 Data Cloud 设置:在 Setup 的 Quick Find 框输入
Data Cloud Setup,如果在 Your Home Org Details 下看到 Your Data Cloud instance is live,说明 Data Cloud 已启用。 - 如果未启用,按应用内指引或 Data Cloud Help 中的 Turn On Data Cloud 启用,点击 Get Started 启动设置(首次设置约需 30 分钟或更久)。
- 完成后确认 Data Cloud 已启用。
- 检查 Einstein 生成式 AI 设置:在 Setup 的 Quick Find 框输入
Einstein Setup,确保 Einstein、Global Language Support for Prompt Builder、Deploy Prompt Templates 都已开启(生效可能需要几分钟)。 - 在 Setup 的 Quick Find 框输入
Agent并选择 Agentforce Agents,开启 Agentforce。
步骤 2:添加案例数据
创建至少五个 Case 记录,每条记录命名一个产品并描述客户遇到的问题。
- 在 App Launcher 中输入
Service并打开 Service Cloud。 - 选择 Cases → New 添加案例。为每个案例指定 subject(主题)、description(详细描述客户问题),并选择案例 origin。其余字段保持默认。
示例数据包括:"电源线起火——烤面包机首次用来烤披萨时电源线起火"、"烤面包机无法启动——插电后按电源键无反应"、"温度不够——调到炙烤档 10 分钟后温度仍只是温的"、"最低档仍烤焦面包"、"面包屑起火"、"烤面包机无故自动关机"、"到货即坏——开箱时玻璃窗已碎"、"包裹被压坏"等。
步骤 3:将案例数据摄取到 Data Cloud
RAG 方案使用 Data Cloud 中创建的搜索索引。要把自由格式案例数据摄取到 Data Cloud,需要创建数据流。
- 在 App Launcher 中输入并选择 Data Cloud。
- 选择 Data Streams 标签页,点击 New,选择 Salesforce CRM,点击 Next。
- 点击 View Objects,搜索并选择 Case,点击 Next。
- Object Category 选择 Profile。
- 在 Standard Fields 标签页只保留这些字段(其余取消):System Modstamp(必填)、Subject(客户问题摘要)、Description(可用于回答客户问题的补充细节)、Case ID(必填但本简单用例不需要)。
- 接受 Custom Fields 标签页的选择,点击 Next。
- 点击 Deploy(摄取数据需要时间)。
- 在 Data Streams 菜单点击新数据流旁的下拉箭头,选择 Update Status 检查状态。
当 Last Run Status 为 Success 且 Total Records 有数值时,数据已进入 Data Cloud。
步骤 4:检查数据湖对象(DLO)
数据流会创建一个名为 Case_Home__dll 的数据湖对象(DLO)。检查摄取的数据有助于调试和优化 RAG 方案。
- 进入 Data Cloud 的 Data Explorer 标签页,Object Type 选择 Data Lake Object,选择 Case_Home(不要更改 data space)。
- 点击 Edit Columns:把 Potential Liability 移到 Available Columns,把 Subject 移到 Selected Columns,其余保持,点击 Done。
- 点击 Description 列两次排序,把案例数据显示在顶部。
步骤 5:将案例 DLO 映射到案例 DMO
把 DLO 映射到数据模型对象(DMO),为数据增加一层结构,使其更易于查询和交互。这里把 Case_Home DLO 映射到 Case DMO。
- 在 Data Lake Objects 标签页打开 Case_Home。
- 在 Data Mapping 面板点击 Start。
- 在 Data Model Entities 下点击 Select Objects,在 All Objects 面板搜索 Case,点击旁边的 +,点击 Done(DLO 和 DMO 字段会自动映射)。
- 保存工作。
步骤 6:检查数据模型对象(DMO)
上一步的映射创建了一个名为 ssot__Case__dlm 的 DMO。
- 在 Data Explorer 中,Object 选择 Data Model Object,搜索并选择 Case。
- 点击 Description 列两次排序,把案例数据显示在顶部。
步骤 7:构建搜索索引
搜索索引让你的文本可搜索,从而让 RAG 方案能查找并检索与用户输入相关的文本块。本示例创建一个混合搜索索引,同时基于语义相似性和关键字查找相关内容。
- 在 Data Cloud 选择 Search Index 标签页,点击 New。
- 选择 Advanced Setup,点击 Next。
- Search Type 选择 Hybrid Search,Source Object 选择 Case,点击 Next。
- 点击 Manage Fields,选择 Description 和 Subject,点击 Save。
- 连续点击 Next 接受其余默认值,最后点击 Save 创建索引。
- 点击 Search Index 标签页刷新,当 Search Index Last Run Status 为 Ready(约 10 分钟)时即完成。
- 点击 Data Model 标签页查看创建的文件:文本块
Case_chunk_dlm和混合索引Case_index_dlm。
了解如何检查文本块对调试和功能优化很有帮助——例如,块可能揭示 LLM 为何以意外方式响应。
步骤 8:构建检索器
检索器(retriever)是 Einstein 搜索操作的包装器。你在 AI Models 中创建自定义检索器,以细化搜索,让检索到的内容更贴合你的用例。
注意:单个检索器只能从一个搜索索引获取数据,而一个搜索索引只能索引一个 DMO。若需从多个数据源扎根,请使用集成检索器(ensemble retriever)。
- 在 Data Cloud 选择 AI Models → Retrievers,点击 New Retriever。
- 选择 Individual Retriever,点击 Next。
- 选择 Data Cloud,接受默认 data space。
- 选择 DMO(Case)和搜索索引配置(Case Hybrid Search),点击 Next。
- 过滤器接受默认(All Documents),点击 Next。
- 在 Fields to Return 添加三个字段:Case 对象的 Subject(DirectAttribute > Case > Subject)、Case 对象的 Description(DirectAttribute > Case > Description)、Chunk(RelatedAttributes > Case chunk > Chunk)。
- 点击 Save,当 Status 为 Ready 时检索器就绪。
步骤 9:创建提示模板
在 Prompt Builder 中创建一个 Flex 提示模板,包含你的检索器和给 LLM 的指令。
- 在 Setup 输入
Prompt Builder并选择 Prompt Builder。 - 点击 New Prompt Template,选择 Flex,点击 Next。
- 命名为
Case RAG Example,点击 Create。 - 在工作区点击 Resource 图标(书签形状),从列表选择你的检索器。
- 在模板正文编写提示指令,例如:"你是一位乐于助人的客服代理。使用以下案例数据帮助回答客户的问题。案例主题:{!$Case.Subject}。案例描述:{!$Case.Description}。检索到的上下文:{!$Retriever.chunks}。"
- 保存提示模板。
- 测试:输入客户问题如"What are common issues with toaster ovens?"并点击 Run,查看扎根后的响应。
步骤 10:创建代理
创建一个 Agentforce 代理,使用你的提示模板回答客户问题。
- 在 Setup 输入
Agentforce,选择 Agentforce Agents。 - 点击 New Agent,选择 Custom Agent,点击 Next。
- 命名为
Case RAG Agent,点击 Create。 - 添加一个引用 Case RAG Example 提示模板的新子代理或动作。
- 配置代理的指令和行为。
- 保存并激活代理。
- 在 Agentforce Test 面板通过询问产品问题测试代理。
至此,你完成了一个高级 RAG 方案的完整搭建:从摄取案例数据、构建混合搜索索引、创建检索器,到用提示模板和 Agentforce 代理提供扎根的客户问题回答。
文章来源:Salesforce Help - Example: Agentic RAG with Advanced Data 360 Setup












