你将会学到 #
客户代理中的程序和工具之间的区别、何时使用它们以及它们如何协同工作。最后,您将知道当您希望客户代理执行新操作时应使用哪个原语。
简短版本 #
| *程序* | *工具* | |
| *这是什么* | 客户代理处理某种请求的方式 | 客户代理可以使用中间响应的特定功能 |
| *定义* | 什么 客户代理处理 | **客户代理如何运作 |
| *示例* | 订单跟踪、退货和换货、一般问答、自定义保修索赔程序 | 获取客户订单、搜索商店目录、搜索公司知识、自定义“检查库存”工具 |
| *独立运行?* | 是的——当匹配的请求到来时,路由器会选择一个过程 | 否 – 工具仅在过程使用它们时运行 |
| *可重复使用吗?* | 每个匹配请求使用一个过程 | 一个工具可以被多个程序使用 |
什么是程序 #
程序**是客户代理处理特定类型购物者请求的一种方式。当消息传入时,客户代理的路由器会根据每个过程的描述为请求选择最佳过程。
每个程序都有自己的行为——说什么、检查什么、何时升级。客户代理附带开箱即用的程序。从头开始创建完全自定义的程序目前处于封闭测试阶段。
什么是工具 #
工具** 是客户代理在对话期间可以使用的特定功能 – 获取数据或采取操作。工具仅在过程使用它们时运行。
例如,获取客户订单工具可在 Shopify 中查找购物者的订单。它由订单跟踪程序、订单编辑程序以及退货和换货程序使用。
他们如何协同工作 #
程序和工具相结合。大多数过程至少使用一个工具,并且一个工具可以由任意数量的过程使用。
一些常见的模式,并举例说明:
- *纯内容程序* — 从您的知识库中回答的程序。例如,一般问答过程使用搜索公司知识工具在索引网页、上传的文件和片段中查找答案。
- *使用专用工具的过程* — 围绕单个外部操作构建的过程。例如,自定义保修索赔程序与调用保修系统 API 的完全自定义工具配合使用。
- *多个程序使用的工具* — 一种工具可支持多个程序。例如,“获取客户订单”用于订单跟踪、订单编辑以及退货和换货。
如何决定 #
快速决策指南:
- *“我希望客户代理处理新类型的请求。”* → 构建一个过程。
- *“我希望客户代理在外部系统中获取数据或采取操作。”* → 构建一个工具。您将把它附加到一个过程中,以便它可以实际运行。
- *“我希望客户代理处理新类型的请求 和 调用我的 API。”* → 构建两者 — 过程范围确定要处理的内容,工具处理 API 调用。
- *“我想改变客户代理的写作方式或升级时间。”* → 您正在寻找指南,而不是程序或工具。前往客户代理指南调整语气、沟通风格规则或升级规则。
- *“我希望客户代理知道一个我可以写下来的事实。”* → 这就是内容。将其添加到您的内容库中,客户代理将在回答问题时使用它。
示例 #
*购物者询问退货事宜。* 退货和换货程序处理该请求。它使用多种工具:获取客户订单来查找订单,以及退货提供者工具(例如 Loop)来创建退货。
*购物者提出产品推荐问题。* 产品推荐程序负责处理它。它使用“获取产品推荐”工具来显示个性化选择,并使用“搜索商店目录”工具来查找特定产品。
*品牌希望客户代理进行餐厅预订。* 构建一个预订程序(完全自定义程序)以及一个调用预订系统 API 的完全自定义工具。该程序决定何时预订;该工具进行预订。
*品牌希望客户代理使用更随意的语气。* 无需任何程序或工具。这是指导设置 – 在客户代理指导中调整语气。