Service Agent 定制 — 用 Prompt Builder + Agent Actions + Flow 构建智能客服

完整模块:从制作带四层补偿等级的 Flex Prompt Template 和 Merge Fields,到启用 Agentforce 创建 Guest Issue Recovery 自定义 Subagent 并通过两个 Actions(Flow 验证客户身份 + Prompt Template 生成补偿回复)构建自动化闭环,再到测试发现等级误判和过度补偿问题,最后用 Flow 过滤仅开放案例替代 Related List 优化提示模板——打磨出准确、共情、合规的智能客服 Agent。...

📅 2025/12/5 ✍️ ponybai 🏷️ agentforce, salesforce, prompt-builder

一、制作有效的 Prompt Template

欢迎来到 Service Agent Customization with Prompt Builder。本模块跟随 Coral Cloud Resorts 的管理员 Becca,学习用 Prompt Builder + Agent Actions + Flow 构建一个智能的客人投诉处理系统。旅程分三步:制作(Craft)有效的 Flex 提示模板、连接(Connect)提示模板与 Agent、优化(Refine)提示模板以获得准确回复。

提示词的力量与 Coral Cloud 场景

您可能没意识到,其实一生都在使用"提示词"——每次给出指令并期望特定回复,都是在做提示工程(Prompt Engineering):

  • 向客服聊天机器人输入一条消息
  • 让语音助手设置提醒
  • 请收银员换成零钱
  • 点咖啡时指定"大杯冰拿铁、燕麦奶、不加糖"

这些日常互动说明一个道理:结构化输入会产生清晰、预期的结果——这正是 AI 提示工程的底层原理。

Coral Cloud Resorts 场景:Sofia Rodriguez 一家预订的 White Water Rafting Rush Experience 意外取消,她联系客服投诉。随着度假村越来越受欢迎,这类投诉日益增多,压垮了客服团队,导致响应时间变长。管理员 Becca 被委派用 Agentforce 自动化投诉处理,提升客人满意度。

自动化投诉处理工作流:

  1. 客人提交投诉——客人通过聊天中的 Agent 表达不满
  2. Agent 验证身份——系统核对客人身份与开放案例
  3. 分类投诉等级——Tier 0(Minor Preference)、Tier 1(Minor Inconvenience)、Tier 2(Moderate Disruption)、Tier 3(Major Disruption)
  4. Agent 提供解决方案——基于案例详情与补偿等级
  5. 客人选择补偿
  6. 案例关闭

虽然 Agent 本身很强大,但它们依赖清晰、结构良好的提示模板来提供准确、一致、有用的回复。提示模板就像一份指南,确保 Agent 拥有正确的上下文、语气和数据。处理客人投诉这类敏感问题时尤其重要——个性化、精准的沟通至关重要。

创建带 Merge Fields 的 Flex Prompt Template

选择正确的提示模板类型。Prompt Builder 提供多种模板供选择:

  • Field Generation 模板——用单个对象把信息填充到 Lightning Experience 的记录字段
  • Flex 模板——最灵活,支持多对象、自由文本输入(非记录类型的纯文本输入)与数据模型,生成更丰富的回复
  • Standard 模板——针对特定用例(如工作总结、销售话术辅导、客服回复 grounding),但范围受限

为什么选 Flex 模板?客人投诉从简单不便到复杂问题不等,Becca 需要能灵活适配的方案。Flex 模板移除了狭义模板的诸多限制,支持多对象、自由文本输入、动态上下文感知的响应——非常适合交互式聊天体验、个性化推荐和上下文丰富的洞察。

创建模板:先注册免费的 Developer Edition org(含 Prompt Builder、Agentforce 与样例数据)并连接到 Trailhead。然后在 Setup 中操作:

  1. 搜索并选择 Einstein Setup,确保 Turn on Einstein 开关为 On,刷新浏览器以显示新的管理员设置
  2. 搜索并选择 Prompt Builder → 点击 New Prompt Template
  3. 配置:Prompt Template Type=Flex;Name=Guest Experience Compensation;API Name=Guest_Experience_Compensation
  4. 添加两个资源:Contact(Source Type=Object,Object=Contact)与 Complaint(Source Type=Free Text)
  5. 点击 Next 打开 Prompt Template Workspace

编写提示词。Becca 在 Workspace 中输入如下结构:以"你是回复 [Guest Name] 投诉的客服代表"开头;说明"根据下方指南确定适当的补偿等级";用 [Tiered Guest Compensation] 占位符标记补偿政策;再定义响应格式,区分 [If Tier 0][If Tier 1-3] 两种措辞,最后以"Now create a message."结尾。

添加合并字段(Merge Fields)让提示动态化:在 Prompt 中找到 [Guest Name],删除占位符,点击 Insert Resource > Contact > FirstName,用合并字段替换。

定义四级补偿结构(替换 [Tiered Guest Compensation] 占位符):

  • Tier 0(Minor Preference Issue)— 无开放案例:致歉并确认反馈,告知客人偏好已为未来入住记录,邀请分享更多反馈,不提供补偿选项
  • Tier 1(Minor Inconvenience):活动延迟开始、轻微房务问题、餐厅服务慢等;补偿——$50 度假村积分、免费饮品/开胃菜/甜点、提前入住/延迟退房(如可用)
  • Tier 2(Moderate Disruption):影响预订的预订错误、房间/服务不满、长时间延误;补偿——重新预订相同或替代体验、度假村积分(最高 $350,用于餐饮/水疗/活动)、免费房型升级(如可用)
  • Tier 3(Major Disruption):活动取消、重大预订失败、严重服务问题、安全问题;补偿——度假村积分(最高 $1000)、免费高级体验(私人导览/精致餐饮/水疗)、免费延长一晚住宿

测试与激活:在 Template Settings 的 Model 选择 OpenAI GPT 4 Omni Mini;在 Preview Settings 的 Inputs 中,Contact 搜索并选择 Sofia Rodriguez,Complaint 输入 The music was too loud on the beach.;点击 Save & Preview 查看生成结果(可切换 Language 查看多语言),满意后点击 Activate

二、用 Agent Actions 赋予 Prompt 生命

提示模板制作完成后,下一步是让它"活"起来——把提示模板连接到 Agent,让自动化不仅智能、而且可执行。这正是"魔法发生的地方":提示词与 Agent 相遇,工作流真正运转起来。

创建带 Actions 的自定义 Subagent

启用 Agentforce:在 Setup Quick Find 搜索 Salesforce Go → 在 Search features 中输入并选择 Agentforce (Default)Get StartedTurn OnConfirm

创建自定义 Subagent:

  1. Setup 中搜索 Agentforce Agents → 选择 Coral Cloud Experience AgentOpen in Builder
  2. New > + New Subagent,在"What do you want this subagent to do"输入 Handles guest issues by providing personalized recovery options based on an open case.Next
  3. 配置:Name=Guest Issue Recovery;Classification Description=Handles guest issues by providing personalized recovery options based on an open case;Scope=Your job is only to assist in resolving guest issues by offering tailored recovery options based on the details of open cases.
  4. 底部只保留两个指令文本框,删除多余的文本框

两条关键指令(Instruction):

  • 第 1 条:如果客人对度假村体验或活动发送负面消息,运行 Guest Experience Compensation 动作;运行前务必确认客户身份;如果返回"案例不存在",告知用户并对客人关切给出共情回复。
  • 第 2 条:如果客户身份未知,必须先询问其邮箱和会员号,运行 Get Customer Details 动作获取 Contact 记录,再执行其他任何动作。

点击 NextFinish 完成 subagent。接下来为它创建两个自定义动作:

Action 1 — 验证客户详情(Validate Customer Details):Reference Action Type=Flow,Reference Action=Get Customer Details;取消勾选 Show loading text for this action;email 与 memberNumber 勾选 Require Input;contact 勾选 Show in conversation

Action 2 — 使用提示模板(Use the Prompt Template):Reference Action Type=Prompt Template,Reference Action=Guest Experience Compensation。配置各字段——Agent Action Instructions(提供客人在不满后的选项,不修改回复中的任何选项,不提及补偿有等级之分);Complaint Input Instruction(使用聊天中收到的客人投诉文本);Contact Input Instructions(输入为 contact 记录,将传给另一个 flow);Output Instructions in the Prompt Response(基于指定提示与输入生成的动作响应);取消 Show loading text,勾选 Show in conversation。

通过把提示模板与 Agent 连接,Becca 建立了一条自动化闭环:客人投诉 → Agent 验证身份 → 提示模板生成定制化的补偿回复。

三、优化 Prompt Template 以获得准确的 Agent 回复

提示模板和 Agent 都搭建好了,但如何确认它按预期工作?本单元 Becca 切换到质量保证模式:测试 Agent、识别意外行为、修订提示词,确保 Agent 每次都准确且共情地回复。

测试 Agent 并发现问题

测试 1 — Sofia 的取消事件(本应为 Tier 3):在 Agentforce Builder 的 Conversation Preview 窗口点击右上角刷新(圆形箭头)图标,输入 The White Water Rafting experience my family and I booked was unexpectedly cancelled. 并按 Enter;Agent 询问身份后,输入 I'm sofiarodriguez@example.com and my membership number is 10008155.。Agent 检索客户详情、分类投诉并提供补偿——但它给 Tier 3 的问题提供了 Tier 2 的补偿,因为缺少足够的上下文。

测试 2 — Tabatha 的大型旅行团投诉:刷新后输入 At the Ocean Kayak Expedition, I didn't like that the tour group was so large.,Agent 回复后输入 I'm tabathatobias@example.com and my membership number is 10009996.

发现两个严重问题:

  • 等级误判:Agent 无法准确判断补偿等级,需要更好的案例严重程度上下文
  • 过度补偿:即使没有正式记录的投诉或开放案例,Agent 仍提供补偿——任何人声称不满都能拿到免费住宿或积分,这对 Coral Cloud 而言不可持续

用 Flow 优化 Prompt — 过滤开放案例

修改提示模板:返回 Prompt Builder,打开 Guest Experience Compensation 模板,替换"Determine the appropriate tier of compensation based on the guidelines below."这一行,加入基于开放案例判断补偿等级的逻辑(若案例详情为"无开放案例"、空或 null,则分配 Tier 0),并指导当客人提出未记录问题时如何回复(共情、感谢反馈但不提供补偿)。点击 Save As > Save As New Version

激活 Flow:在 Setup 搜索 Flows,选择 Get Open Cases for Contact flow,点击 Activate。该 flow 检查链接到客人的开放案例,只返回相关详情。

为什么用 Flow 而非 Related List?Related List 不管状态直接返回前 5 个案例;而 Flow 提供精确控制——专门过滤仅开放案例,只返回提示模板需要的精确数据。

连接 Flow 到提示模板:在提示中的 Case Details: 之后点击 Insert Resource > Flows > Get Open Cases for Contact;在 Complaint: 之后点击 Insert Resource > Free Text > Complaint;点击 Save

预览验证:点击 Preview,Contact 选 Sofia Rodriguez,Complaint 输入 I didn't like that the tour group was so large,再点 Preview。现在结果展示了 Sofia 的开放案例详情、当前投诉、基于案例的补偿选项。点击 Activate 发布更新后的模板。

重新测试与总结

在 Agentforce Builder 复测:Setup 搜索 Agentforce Agents → 选择 Coral Cloud Experience AgentOpen in Builder。再次输入 The White Water Rafting experience my family and I booked was unexpectedly canceled. 与 Sofia 的凭证——现在 Agent 正确分类为 Tier 3 补偿,回复基于实际客人历史和开放案例数据。

核心经验总结:

  • 设计提示词,生成准确、符合品牌调性的回复(合并字段 + 结构化数据)
  • 通过智能动作(Flow + Prompt Template)把提示模板连接到 Agent
  • 用 Flow 为提示词注入实时上下文(过滤相关案例,而非返回所有记录)
  • 测试与排查,防止过度自动化或错误逻辑
  • 基于真实行为优化——而非假设

核心要义:优秀的 Agent 不是"配置出来的",而是打磨出来的。它们融合逻辑、语言和数据,提供既人性化又有帮助的体验。Prompt Builder 提供精准度,Agentforce 提供自动化,两者结合构建更智能、更安全、更可扩展的 AI 驱动工作流。


文章来源:Trailhead - Service Agent Customization with Prompt Builder