Skip to main content
Register now for TDX! Join the must-attend event to experience what’s next and learn how to build it.

创建适合智能体使用的流

学习目标

完成本单元后,您将能够:

  • 为适合智能体使用的流选择正确的流类型。
  • 创建适合智能体使用的流所需的变量。
  • 配置“获取记录”元素,以便将正确的数据发送给智能体。
  • 配置流,使其仅在必要时向智能体发送错误提示。
备注

备注

用中文(简体)学习?在中文(简体)Trailhead Playground 中开始挑战,用括号中提供的译文完成挑战。仅复制并粘贴英文值,因为挑战验证基于英文数据。如果在中文(简体)组织中没有成功通过挑战,我们建议您 (1) 将区域设置切换为美国,(2) 按此处说明将语言切换为英文,(3) 再次单击“检查挑战”按钮。

查看 Trailhead 本地化语言徽章详细了解如何利用 Trailhead 译文。

Note

此徽章要求您熟悉流并有使用 Flow Builder 的经验。请按照使用 Flow Builder 构建流学习路径,培养强大的流自动化技能,成为 Flow Builder 专家。

Trailcast

如果您想收听本模块的录音,请使用以下播放器。听完这段录音后,记得返回每个单元,查看资源,然后完成相关评估。

注册 Agentforce 的自定义 Developer Edition 组织

要完成此模块,您需要一个启用了 Agentforce 的专用 Developer Edition 组织。立即获取免费的 Developer Edition 组织并将其连接到 Trailhead,完成本徽章中的挑战。请注意,此 Developer Edition 是为配合此徽章中的挑战而设计的,可能不适用于其他徽章。请务必检查确认您使用的是我们推荐的 Trailhead Playground 或专用的 Developer Edition 组织。

  1. 单击链接,即可免费注册此自定义的包含 Agentforce 的 Developer Edition 组织
  2. 填写表格。
    • 在 Email(电子邮件)处输入有效的电子邮件地址。
    • 在 Username(用户名)处输入一个看起来像电子邮件地址且唯一的用户名,但不必是一个有效的电子邮件帐户。
  3. 表格填好以后,单击 Sign me up(我要注册)。出现一条确认消息。
  4. 收到激活电子邮件后(这可能需要几分钟),打开它并点击 Verify Account(验证帐户)。
  5. 设置密码和挑战问题,完成注册。
  6. 您已登录 Developer Edition。

现在将新的 Developer Edition 组织连接到 Trailhead。

  1. 确保您已登录 Trailhead 帐户。
  2. 在页面底部的 Challenge(挑战)部分,单击 Playground 名称,然后单击 Connect Org(连接组织)
  3. 在登录屏幕上,输入刚刚设置的 Developer Edition 的用户名(用户名在您刚刚收到的电子邮件中列出)和密码。
  4. 在 Allow Access?(是否允许访问?)屏幕上,单击 Allow(允许)

在 Want to connect this org for hands-on challenges?(想要连接此组织进行实践挑战?)屏幕上,单击 Yes!(是!) Save it(保存)。您将被重定向到挑战页面,并准备使用新的 Developer Edition 来获得此徽章。

计划您的智能体需求

和以往一样,在开始创建自动化之前,您需要制定计划。这一点在创建智能体时尤为重要!以下是基本流程:

  1. 明确希望智能体做什么。
  2. 创建智能体将要运行的自动化(在本例中为流)。
  3. 在智能体中,创建一个主题来处理一组相关任务。
  4. 关于这个主题,您可以创建一个引用该流的智能体操作。

我们来看一个场景,您会在其中构建一个流添加到现有智能体中。在这个示例中,您要为 Coral Cloud 度假村构建一个智能体,帮助客户管理他们的已预订活动。这些已预订活动存储在 Coral Cloud 的 Salesforce 组织的“预订”对象中。

智能体需要执行的任务之一是检索客户即将进行的已预订活动,并将其列出供客户查看。为了确保智能体获取的信息准确无误,创建流来检索客户的所有“预订”记录。仅检索尚未取消且尚未发生的已预订活动。然后,将检索到的已预订活动通过输出变量发送回智能体。

流准备就绪后,将其分配给智能体。但您不能直接将流分配给智能体。而是先在智能体中创建主题,用于处理相关任务。然后,在该主题下创建引用该流的智能体操作。

含两个主题的智能体示意图。每个主题都有两项操作,而每项操作都与一个流相关联。

在开始任何动作之前,请先仔细考虑智能体需要哪些数据以及如何获取这些数据。智能体不应将客户信息泄露给任何索要者,因此需要验证索要者的身份。要检索客户的已预订活动,流需要该客户“联系人”记录的 ID。然后,流可以从“预订”对象中检索已预订活动并将其传递给智能体。

幸运的是,Coral Cloud 的组织中已经存在 Get Customer Details(获取客户详细信息)流,该流接收客户的电子邮件地址和会员编号作为输入,并返回其联系人 ID。让我们使用 Get Customer Details(获取客户详细信息)流和用于检索这些“预订”记录的新流来绘制此交互图。

对应于以下步骤的智能体与流的交互概念图。

  1. 当客户要求查看已预订活动时,智能体会要求客户提供姓名和会员编号以进行验证。
  2. 当客户提供这些详细信息后,智能体会运行 Get Customer Details(获取客户详细信息)流,并传入验证详细信息。
  3. Get Customer Details(获取客户详细信息)流会将客户的联系人 ID 返回给智能体。
  4. 然后,智能体运行新的 Get Contact’s Upcoming Bookings(获取联系人的近期预订)流,并传入刚刚收到的联系人 ID。
  5. Get Contact’s Upcoming Bookings(获取联系人的近期预订)流会将客户近期的、未取消的预订返回给智能体。
  6. 智能体将收到的预订信息提供给客户。

请注意,如果智能体运行 Get Customer Details(获取客户详细信息)来获取联系人 ID,则可以将该联系人 ID 作为输入提供给 Get Contact’s Upcoming Bookings(获取联系人的近期预订)流。通过按顺序执行这些小型、独立的任务,您的智能体可以获取所需的所有数据。

Note

为了简化此徽章,我们展示了一种非常基础的身份验证方法,但这种方法安全性并不高。如需了解更安全的身份验证方法,请查看 Trailhead 上的部署智能体身份验证徽章。

您应该始终创建在配置智能体之前您知道需要的流,因此我们现在创建 Get Contact’s Upcoming Bookings(获取联系人的近期预订)流。

创建流及其变量

Note

重要提示
您必须完成本单元的所有步骤才能完成此徽章。实践挑战需要您在此处创建的流,如果未创建流,则会报错。

首先,创建流及其输入输出变量。流需要输入变量来接收联系人 ID,以及输出变量来返回预订记录。此外,还需要创建输出变量来提供有用的错误提示。给出每个变量详细的使用方式。

  1. 创建自动启动流。确保选择 Autolaunched Flow (No Trigger)(自动启动流(无触发器))流类型。
  2. 创建输入变量,用于保存从智能体处收到的客户联系人 ID。(不用担心,Coral Cloud 已经提供了适合智能体使用的流来检索客户联系人 ID。我们稍后会用到这个流。)
    • 在工具箱 (切换工具箱) 中,单击 New Resource(新建资源)
    • 在“资源类型”处,选择变量
    • API Name(API 名称)输入 Contact_ID
    • Description(描述)输入 The Id of a Contact record that you would like to find related Booking records for.(您想要查找相关预订记录的联系人记录的 ID。)
    • 在 Data Type(数据类型)处选择 Text(文本)
    • Availability Outside the Flow(在流外部可用)选择 Available for input(可用于输入)
    • 单击完成
  3. 创建输出变量来保存检索到的预订记录。
    • 在工具箱 (切换工具箱) 中,单击 New Resource(新建资源)
    • 在“资源类型”处,选择变量
    • API Name(API 名称)输入 Contact_Bookings
    • Description(描述)输入 The upcoming not-canceled bookings assigned to the contact whose ID matches the Contact_ID.(即将到来的未取消预订将分配给其 ID 与 Contact_ID 相匹配的联系人。)
    • Data Type(数据类型)选择 Record(记录)
    • 选择 Allow multiple values (collection)(允许多个值(集合))
    • Object(对象)选择 Booking(预订)
    • Availability Outside the Flow(在流外部可用)选择 Available for output(可用于输出)
    • 单击完成
  4. 创建输出变量,用于保存智能体在流失败时应共享的错误提示。
    • 在工具箱 (切换工具箱) 中,单击 New Resource(新建资源)
    • 在“资源类型”处,选择变量
    • API Name(API 名称)输入 Error_Message_Output
    • Description(描述)输入 The error message to show to the customer when this flow doesn't finish successfully.(当此流未能成功完成时向客户显示的错误提示。)
    • 在 Data Type(数据类型)处选择 Text(文本)
    • Availability Outside the Flow(在流外部可用)选择 Available for output(可用于输出)
    • 单击完成

获取客户的预订信息

现在创建元素来检索客户的已预订活动,并将它们发送到输出变量。

  1. 在流画布上,创建一个 Get Records(获取记录)元素。
    • Label(标签)输入 Get Contact's Upcoming Bookings(获取联系人的近期预订)。
    • 确保 API Name(API 名称)自动填充为 Get_Contact_s_Upcoming_Bookings
    • Description(描述)输入Retrieves all upcoming bookings assigned to the found contact that have not been canceled. The bookings are stored in the Contact_Bookings variable.(检索出分配给找到的联系人的所有尚未取消的近期预订信息。这些预订信息存储在 Contact_Bookings 变量中。)
    • Object(对象)选择 Booking(预订)
  2. 设置 Get Records(获取记录)元素的条件要求,筛选要检索的预订记录。
    • 为 Condition Requirement(条件要求)选择 All Conditions Are Met (AND)(满足所有条件 (AND))
    • Field(字段)选择 Contact(联系人)
    • 在 Operator(运算符)处,选择 Equals(等于)
    • Value(值)选择 Contact_ID
    • 单击 Add Condition(添加条件)
    • 第二个 Field(字段)选择 Date(日期)
    • 第二个 Operator(运算符)选择 Greater Than(大于)
    • 第二个 Value(值)选择 Running Flow Interview > CurrentDate(正在运行的流采访和当前日期)
    • 再次单击 Add Condition(添加条件)
    • 第三个 Field(字段)选择 Is Canceled(已取消)
    • 第三个 Operator(运算符)选择 Equals(等于)
    • 第三个 Value(值)选择 False
  3. 设置 Get Records(获取记录)元素的排序选项。
    这些设置控制记录向客户的显示方式:在此个案中,即活动发生的顺序。
    • Sort Order(排列顺序)选择 Ascending(升序)
    • Sort By(排列方式)选择 Date__c
  4. 设置 Get Records(获取记录)元素存储记录数据的方式。
    Get Records(获取记录)元素自动创建的变量不能用作输出变量。如果需要 Get Records(获取记录)元素将数据存储在输出变量中,请先手动创建该输出变量。然后,在 Get Records(获取记录)元素中,确保选中该选项,以便选择字段并分配变量。
    此外,请记住,您应该只包含希望向智能体和客户提供的字段。
    • 为 How Many Records to Store(存储的记录数量)选择 All records(所有记录)
    • How to Store Record Data(如何存储记录数据)选择 Choose fields and assign variables (advanced)(选择字段并分配变量(高级))
    • Record Collection(记录集合)选择 Contact_Bookings
    • 单击 Add Field(添加字段)两次。
    • 将第一个可选 Field(字段)从 ID 更改为 Experience_Name__c
    • 第二个可选 Field(字段)选择 Date__c
    • 第三个可选 Field(字段)选择 Start_Time__c
    • 第四个可选 Field(字段)选择 End_Time__c

为流添加错误处理

最后,让此流具备在 Get Records(获取记录)元素失败时发送错误提示的功能。

故障路径是仅在其关联的元素发生故障时才会运行的特殊路径。您可以为任何数据元素创建故障路径,例如:Get Records(获取记录)、Create Records(创建记录)、Update Records(更新记录)和 Delete Records(删除记录)。由于故障路径仅在元素发生故障时运行,因此您可以在故障路径上放置一个 Assignment(分配)元素。使用 Assignment(分配)元素可以在发生故障时设置错误提示,从而避免智能体接收和显示不恰当的错误提示。

  1. 将鼠标悬停在 Get Contact’s Upcoming Bookings(获取联系人的近期预订)元素上,然后单击 操作,然后选择 Add Fault Path(添加故障路径)
  2. 在故障路径中,单击 添加元素
  3. 选择 Assignment(分配)
    • Label(标签)输入 Set the Error Message Output(设置错误提示输出)。
    • 确保 API Name(API 名称)自动填充为 Set_the_Error_Message_Output
    • Description(描述)输入 Gives error message text to the Error_Message_Output variable, to present to the customer if this flow fails.(将错误提示文本分配给 Error_Message_Output 变量,以便在该流失败时向客户显示。)
    • Variable(变量)选择 Error_Message_Output
    • 在 Operator(运算符)处,选择 Equals(等于)
    • Value(值)输入 I'm sorry, I'm having a problem finding your booked activities. Would you like to speak to our support team?(很抱歉,我无法找到您的已预订活动信息。您是否愿意与我们的客服联系?)
Note

文本“Would you like to speak to our support team?(您是否愿意与我们的客服联系?)”不会执行任何操作。您还必须创建智能体操作来执行扩展。我们这里就不赘述了,因为这超出了本徽章的范围,需要额外花费很多精力,但您可以自行创建扩展自动化解决方案。

与上述指令对应的最终流。

  1. 保存流。
    当该流在智能体操作中使用时,流的描述会自动设置为智能体操作的指令。因此,请按照编写智能体指令的方式编写描述。
    • Flow Label(流标签)输入 Get Contact's Upcoming Bookings(获取联系人的近期预订)。
    • 确保 Flow API Name(流 API 名称)自动填充为 Get_Contact_s_Upcoming_Bookings
    • Description(描述)输入 Find all the Booking records related to the guest's contact record. Only retrieve Bookings whose date hasn't occurred yet.(找出与该客人的联系人记录相关的所有预订记录。仅检索日期尚未到来的预订。)
  2. 激活流。
    要将流分配为智能体操作,该流必须激活。

您的流现在适合智能体使用!在下一单元中,将流以及相应的指令添加到智能体中。

资源

在 Salesforce 帮助中分享 Trailhead 反馈

我们很想听听您使用 Trailhead 的经验——您现在可以随时从 Salesforce 帮助网站访问新的反馈表单。

了解更多 继续分享反馈