通过 Foundry API 使用聊天机器人
要在 Foundry 平台之上自建应用?这一篇讲用 Palantir API 调起会话、发消息、拿回复。
https://www.palantir.com/docs/foundry/chatbot-studio/foundry-apis/
原始标题:AIP Chatbot Studio • Use AIP Chatbots through Foundry APIs • Palantir · 所属:AIP Chatbot Studio(做对话机器人)
先记住这几条
写在前面
若要在 Foundry 平台之上构建应用程序,你可以使用 Palantir APIs 将聊天机器人嵌入到你的应用程序中。
这些 API 能做什么
通过 API 轻松与你的聊天机器人构建多轮交互,其选项可用于:
- 通过创建与聊天机器人的新会话来针对给定任务或上下文开始新的对话。
- 使用流式或阻塞式 API 编排复杂的往返任务提示词,其内置的状态管理会为你追踪会话的这些更新。
- 通过 API 中的 application state 选项向聊天机器人提供自定义应用输入。它们使用此前在 Chatbot Studio 中使用的
parameter,现在作为 Application state/variables 提供。在请求中使用parameterInputs字段来提供输入。使用parameterUpdates字段处理阻塞式响应(或者在流式传输后加载会话交换)以读取自定义输出。
对于不需要大量会话管理的简单、一次性任务,请考虑使用 chatbots as functions。你可以使用 Palantir OSDK 从第三方应用程序以函数的方式访问聊天机器人。
把聊天机器人部署到 Developer Console 应用
配置并发布 AIP Chatbot 后,你可以创建并配置一个 Developer Console 应用程序,以便在自定义应用程序中与该 AIP Chatbot 交互。
若要让你在 Developer Console 应用程序能够使用平台 API 与你的 AIP Chatbot 交互,请按照创建新的 Developer Console 应用程序中的步骤,创建一个可访问 Platform SDK 资源的新 SDK 应用程序:
若要从 Ontology SDK 应用程序中使用 AIP Chatbot,你必须将该 AIP Chatbot 配置为仅使用来自单个 Ontology 的对象类型、action 类型或 function 类型。
- 在 Resources 页面上,选择你的 AIP Chatbot 所使用的 Ontology,然后选择你的 AIP Chatbot 配置中所使用的所有对象类型、action 类型和 function 类型。请确保选择用于 application state 的类型,以及为你的 AIP Chatbot 配置的所有工具和 retrieval context 所使用的类型。
- 接下来,选择 Platform SDK 标签页。在 Projects access 下,添加包含你的 AIP Chatbot 的项目。若要查找 AIP Chatbot 所属的项目,请在 Chatbot Studio 中打开该 AIP Chatbot,并查看页眉中 AIP Chatbot 名称旁边的文件系统路径详情。
- 如果你的 AIP Chatbot 配置为使用任何其他文件系统资源,例如用于 document context 的媒体集,请确保这些资源与你的 AIP Chatbot 在同一个项目中,或者将这些资源所属的所有其他项目添加到 Projects access 部分。

- 最后,在 Client allowed operations 表格中为 AIP Chatbots API 启用相关操作。若要查看不同 AIP Chatbot 平台 API 所需的操作,请参阅平台 API 文档。
若要允许你的 Developer Console 应用程序在 AIP Chatbot 的对话会话中创建并发送消息,你必须启用 AIP Chatbots write permission。

- 请参阅 Developer Console 文档中的步骤,以审查并完成应用程序的创建。
Update an AIP Chatbot used in Developer Console applications
一旦你配置好了一个 Developer Console 应用程序,允许其通过 Platform SDK 资源与 AIP Chatbot 交互,那么当你的 AIP Chatbot 所使用的任何 Ontology 或平台资源被修改时,你都需要更新该应用程序。
例如,如果你向 AIP Chatbot 添加了任何新的对象类型、action 类型或 function 类型,你必须在 Developer Console 中将这些类型添加到你的应用程序的 Ontology SDK 资源中。同样地,如果你向 AIP Chatbot 添加了任何平台资源,例如用于 document context retrieval 的额外媒体集,你必须将这些资源添加到你的应用程序的 Platform SDK 资源中。当 AIP Chatbot 所使用的资源类型发生变化时,Developer Console 应用程序资源不会自动更新。
Create conversations with AIP Chatbots in custom applications
若要开始引导创建一个新应用程序,请参阅 TypeScript 或 Python 的文档示例,或将 SDK 添加到现有应用程序。
创建好应用程序后,使用 Create Session 平台 API 与你的 AIP Chatbot 创建一个新对话。
AIP Chatbots 的 Sessions API 要求你指定 AIP Chatbot 的 agentRid,以用于对话会话交互。 <br><br> 你可以通过打开你的 AIP Chatbot 所在的项目,选择该 AIP Chatbot,然后在文件概览中的 Metadata 下使用 RID 的 Copy to clipboard 选项来找到它。 <br><br>

创建新会话后,使用返回响应中的 sessionRid 值向 AIP Chatbot 发送新消息,并使用 Blocking continue session 或 Streaming continue session 平台 API 获取回复。使用阻塞式 API 等待在 AIP Chatbot 的回复完全生成后一次性收到完整回复,或使用流式 API 在 AIP Chatbot 的答案文本生成过程中接收其流。
你可以使用 Get Session API 加载某个会话的对话元数据,并使用 Get Content API 加载某个会话的交换历史(你的应用程序发送的消息和来自 AIP Chatbot 的回复)。
你可以使用 Get Session Trace API 检索 AIP Chatbot 所执行的步骤序列,这对于调试或理解该聊天机器人的推理过程很有用。该端点需要一个 sessionTraceId,你可以通过以下两种方式获得:
- 对于新的交换:
- 生成一个随机的 UUIDv4,作为 Blocking continue session 或 Streaming continue session API 请求中的
sessionTraceId。此选项允许你轮询 'Get Session Trace' API,以查看聊天机器人答案生成过程的实时 trace。 - 查看 Blocking continue session API 响应中的
sessionTraceId字段。 - 对于已有的交换:
- 查看 Get Content API 响应中交换结果上的
sessionTraceId字段。
请参阅平台 API 文档,了解如何在你目标应用程序语言中使用这些 API 的代码示例。
延伸阅读 · 相关页面
按主题横向跳转,不必顺着目录一篇篇读。
本组其他页面 · 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)可以直接挂成机器人的工具 —— 用户一句自然语言,就能触发应用里的具体操作。
- 把聊天机器人发布为函数发布为函数(Function)后,你的聊天机器人就能在平台里任何可执行函数的地方被调用 —— 复用性大幅提升。
- 会话日志每次聊天机器人的执行都会被结构化成事件记录下来,可导出到流式数据集,用于监控与分析。
- 用 Marketplace 分发聊天机器人把聊天机器人打包成产品,分发给别的团队/环境安装使用 —— 这是从"自己用"到"组织内复用"的一步。