循序渐进 · AIP 教学 · Chatbot Studio(九)

把聊天机器人发布为函数

发布为函数(Function)后,你的聊天机器人就能在平台里任何可执行函数的地方被调用 —— 复用性大幅提升。

全部目录 AIP 首页 ← 上一篇 把聊天机器人发布为函数 下一篇 →
本文来源 · Source 内容整理自 Palantir Foundry 官方文档:
https://www.palantir.com/docs/foundry/chatbot-studio/chatbots-as-functions/
原始标题:AIP Chatbot Studio • Chatbots as Functions • Palantir · 所属:AIP Chatbot Studio(做对话机器人)

先记住这几条

① 发布成函数即获得复用性
在平台各处被调用。
② 输入输出有契约
函数签名要设计好。
③ 可以嵌进更大流程
成为 Logic、动作的一环。
0

写在前面

AIP Chatbots 可以发布为 Functions,从而能够在平台中任何可执行 Functions 的地方使用。例如,构建者可以将 AIP Chatbots 发布为 Functions,以便在 AIP Evals 中对它们进行评估,使用 Automate 自动化聊天机器人工作流,或在 Code Repositories 中使用聊天机器人。你可以将函数版本配置为在每次发布聊天机器人时发布,或在每次保存聊天机器人时发布。

1

函数输入

要点:调用时能传什么。

以下是发布为 Functions 的聊天机器人所接受的输入:

  • userInput 聊天机器人将要回应的用户输入字符串。
  • sessionRid(可选): 当前会话的字符串标识符,格式如下:

`` ri.aip-agents..session.{uuid} ``

  • 若要与此聊天机器人开始新会话,请将 sessionRid 输入留空。不要提供空字符串;请完全省略此输入。
  • 提供某个值即可使用该会话的 RID 继续一个已有会话。
  • 此 RID 会在所有 Function 执行结果中返回。
  • 用于 application state 的所有应用变量都会作为可选输入添加。这些变量可用于覆盖默认的 application state 值。
  • 对于对象集变量,默认值是该对象类型的基础对象集,这意味着默认会包含该对象类型中的所有对象。
  • 对于字符串变量,默认值在 Chatbot Studio 中显示并配置。
2

函数输出

要点:返回什么结构。

以下是发布为 Functions 的聊天机器人的输出:

  • markdownResponse 聊天机器人生成的最终文本回复,使用 markdown 格式化。
  • sessionRid 当前会话的字符串标识符,格式如下:

`` ri.aip-agents..session.{uuid} ``

  • 此 RID 会在所有 Function 执行结果中返回。
  • 将此值提供给下一次 Function 执行,以继续该会话。
  • 用于 application state 的所有应用变量都会作为可选输出添加。
  • 仅当这些变量的值被更新时,才会输出其值。未被更新的变量将为空。
3

把聊天机器人发布为函数

要点:操作步骤。
  1. 若要在 Chatbot Studio 中将聊天机器人发布为 Function,请选择右上角 Publish 按钮右侧的发布设置图标。这将打开 Publish settings 对话框。 <br><br> 发布设置图标。 <br><br>
  2. 打开 Publish function from chatbot 选项,这会显示已发布 Function 的附加配置选项。 <br><br> <img src="./media/chatbot-studio-publish-function-toggle.png" alt="“Publish function from chatbot”开关。" width=500> <br><br>
  3. 在展开后的 Publish settings 对话框中,选择一个 Ontology,并填写 Function 详情,例如 Function 名称、API 名称和描述。你还可以选择在保存聊天机器人时发布次要 Function 版本,方法是勾选 Version configuration 下的复选框。 <br><br> <img src="./media/chatbot-studio-publish-settings-dialog.png" alt="展开后的发布设置对话框。" width=500> <br><br>
  4. 选择对话框底部的 Publish chatbot and function

发布后,会有一条 toast 通知告知你聊天机器人和 Function 已发布,并附有一个可在 Ontology Manager 中查看已发布 Function 的链接。你也可以通过打开 Publish settings 并在 Published function 下选择该 Function 来查看它。

Disable chatbot Function publishing

若要禁用 Function 发布,请打开 Publish settings,并将 Publish function from chatbot 选项关闭。如果你禁用此选项,在你重新启用之前,聊天机器人后续发布的版本将不会把你的聊天机器人注册为 Function。你可以随时重新启用此选项。若要在重新启用后发布 Function,请发布该聊天机器人。

4

用 AIP Evals 评测聊天机器人

要点:上线前的验证。

将聊天机器人发布为 Functions 后,它们就可以使用 AIP Evals 评估套件进行评估。若要从 Chatbot Studio 创建评估套件,请确保你的聊天机器人已发布为 Function,然后打开左侧工具栏上的 Evaluation 标签页。在这里,你可以选择 Create evaluation suite,它会提示你为套件命名,并选择与聊天机器人相同的 Project。

“Evaluation”标签页中创建评估套件的选项。
“Evaluation”标签页中创建评估套件的选项。

评估套件必须与聊天机器人在同一个 Project 中。创建后若要在 AIP Evals 中打开该评估套件,请选择已创建套件右侧的箭头图标。

已创建的套件,以及可用于在 AIP Evals 中打开该套件的箭头图标。
已创建的套件,以及可用于在 AIP Evals 中打开该套件的箭头图标。

在 AIP Evals 中设置测试用例时,请记住以下几点:

  • 若要与此聊天机器人开始新会话,请确保将 sessionRid 设置为 null。如果提供了会话 RID,聊天机器人将继续一个已有会话,这很可能不是测试时的本意。
在评估套件测试用例中将 sessionRid 设置为 null 的选项。
在评估套件测试用例中将 sessionRid 设置为 null 的选项。
  • 对象集变量必须设置为 null 或包含真实值。对象集变量不能为空。
在评估套件测试用例中选择对象集的选项。
在评估套件测试用例中选择对象集的选项。

有关评估套件的更多信息,请参阅 AIP Evals 文档

延伸阅读 · 相关页面

按主题横向跳转,不必顺着目录一篇篇读。

本组其他页面 · AIP Chatbot Studio(做对话机器人)

同一主题下的相邻内容。

常见问题速答 · FAQ

关于「把聊天机器人发布为函数」,读者最常问的几个问题。

函数输入是什么?
调用时能传什么。以下是发布为 Functions 的聊天机器人所接受的输入。
函数输出是什么?
返回什么结构。以下是发布为 Functions 的聊天机器人的输出。
把聊天机器人发布为函数是什么?
操作步骤。发布后,会有一条 toast 通知告知你聊天机器人和 Function 已发布,并附有一个可在 Ontology Manager 中查看已发布 Function 的链接。
用 AIP Evals 评测聊天机器人是什么?
上线前的验证。将聊天机器人发布为 Functions 后,它们就可以使用 AIP Evals 评估套件进行评估。若要从 Chatbot Studio 创建评估套件,请确保你的聊天机器人已发布为 Function,然后打开左侧工具栏上的 Evaluation 标…