把聊天机器人发布为函数
发布为函数(Function)后,你的聊天机器人就能在平台里任何可执行函数的地方被调用 —— 复用性大幅提升。
https://www.palantir.com/docs/foundry/chatbot-studio/chatbots-as-functions/
原始标题:AIP Chatbot Studio • Chatbots as Functions • Palantir · 所属:AIP Chatbot Studio(做对话机器人)
先记住这几条
写在前面
AIP Chatbots 可以发布为 Functions,从而能够在平台中任何可执行 Functions 的地方使用。例如,构建者可以将 AIP Chatbots 发布为 Functions,以便在 AIP Evals 中对它们进行评估,使用 Automate 自动化聊天机器人工作流,或在 Code Repositories 中使用聊天机器人。你可以将函数版本配置为在每次发布聊天机器人时发布,或在每次保存聊天机器人时发布。
函数输入
以下是发布为 Functions 的聊天机器人所接受的输入:
userInput: 聊天机器人将要回应的用户输入字符串。sessionRid(可选): 当前会话的字符串标识符,格式如下:
`` ri.aip-agents..session.{uuid} ``
- 若要与此聊天机器人开始新会话,请将
sessionRid输入留空。不要提供空字符串;请完全省略此输入。 - 提供某个值即可使用该会话的 RID 继续一个已有会话。
- 此 RID 会在所有 Function 执行结果中返回。
- 用于 application state 的所有应用变量都会作为可选输入添加。这些变量可用于覆盖默认的 application state 值。
- 对于对象集变量,默认值是该对象类型的基础对象集,这意味着默认会包含该对象类型中的所有对象。
- 对于字符串变量,默认值在 Chatbot Studio 中显示并配置。
函数输出
以下是发布为 Functions 的聊天机器人的输出:
markdownResponse: 聊天机器人生成的最终文本回复,使用 markdown 格式化。sessionRid: 当前会话的字符串标识符,格式如下:
`` ri.aip-agents..session.{uuid} ``
- 此 RID 会在所有 Function 执行结果中返回。
- 将此值提供给下一次 Function 执行,以继续该会话。
- 用于 application state 的所有应用变量都会作为可选输出添加。
- 仅当这些变量的值被更新时,才会输出其值。未被更新的变量将为空。
把聊天机器人发布为函数
- 若要在 Chatbot Studio 中将聊天机器人发布为 Function,请选择右上角 Publish 按钮右侧的发布设置图标。这将打开 Publish settings 对话框。 <br><br>
<br><br> - 打开 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>
- 在展开后的 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>
- 选择对话框底部的 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,请发布该聊天机器人。
用 AIP Evals 评测聊天机器人
将聊天机器人发布为 Functions 后,它们就可以使用 AIP Evals 评估套件进行评估。若要从 Chatbot Studio 创建评估套件,请确保你的聊天机器人已发布为 Function,然后打开左侧工具栏上的 Evaluation 标签页。在这里,你可以选择 Create evaluation suite,它会提示你为套件命名,并选择与聊天机器人相同的 Project。

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

在 AIP Evals 中设置测试用例时,请记住以下几点:
- 若要与此聊天机器人开始新会话,请确保将
sessionRid设置为null。如果提供了会话 RID,聊天机器人将继续一个已有会话,这很可能不是测试时的本意。

- 对象集变量必须设置为
null或包含真实值。对象集变量不能为空。

有关评估套件的更多信息,请参阅 AIP Evals 文档。
延伸阅读 · 相关页面
按主题横向跳转,不必顺着目录一篇篇读。
本组其他页面 · AIP Chatbot Studio(做对话机器人)
同一主题下的相邻内容。
- AIP Chatbot Studio 总览想做一个懂你业务、能引用出处、能调工具的对话机器人?AIP Chatbot Studio(原名 AIP Agent St
- Chatbot Studio 核心概念这页把搭建聊天机器人要用到的关键概念一次讲全:应用状态、检索上下文、工具、引用等。
- Chatbot Studio 快速入门这一篇带你从零搭一个基础聊天机器人:认识界面、配置信息与工具,然后部署到生产并监控。
- 应用状态(Application state)聊天机器人要记住会话里的信息,才能做多轮推理。应用状态就是它的"工作记忆"。
- 检索上下文类型(Context types)机器人回答得好不好,八成取决于喂给它的上下文。检索上下文针对每一条新消息确定性地运行,把相关内容塞进模型。
- 引用(Citations)回答要可信,就得能指出来源。配置了文档或 Ontology 上下文的机器人会输出引用,点击可跳回原始材料。
- 工具(Tools)工具是外部功能或 API,让 LLM 能执行操作或获取自身不具备的信息。有了工具,机器人从"能说"变成"能做"。
- 把命令用作工具平台里的命令(command)可以直接挂成机器人的工具 —— 用户一句自然语言,就能触发应用里的具体操作。
- 会话日志每次聊天机器人的执行都会被结构化成事件记录下来,可导出到流式数据集,用于监控与分析。
- 用 Marketplace 分发聊天机器人把聊天机器人打包成产品,分发给别的团队/环境安装使用 —— 这是从"自己用"到"组织内复用"的一步。
- 通过 Foundry API 使用聊天机器人要在 Foundry 平台之上自建应用?这一篇讲用 Palantir API 调起会话、发消息、拿回复。
常见问题速答 · FAQ
关于「把聊天机器人发布为函数」,读者最常问的几个问题。