部署拓扑
三种形态,在评估阶段确定。它们之间有一点比其他都重要:是否有任何连接跨越了你的网络边界。
数据流向何处
诚实的答案取决于你选择哪种配置,所以这里把全部情况都列出来。我们宁愿你看清其中的区别,也不愿让人误以为最强的那条结论总是成立。
| 配置 | 提示词与文档 | 路径中的第三方 |
|---|---|---|
| 在你的硬件上进行本地推理 | 始终不离开你的网络 | 无 |
| 在你的环境中使用托管推理——你已审批的模型 API | 提示词及随之发送的上下文会到达该服务商 | 仅该服务商,依据你与其签订的协议 |
| 由我们托管并读取你的系统——你授予受限的只读权限 | 按需读取,仅存在于内存与模型上下文中。我们这边不留静态副本 | 我们(仅传输过程中),以及模型服务商 |
| 由我们托管并保存副本——你把数据复制给我们 | 按约定的保留期限存储在我们的基础设施上 | 我们(作为你的数据处理方),以及模型服务商 |
在前两种配置中,完全没有回传到我们这边的遥测路径;当部署必须完全没有出站流量时,隧道组件运行在你自己的账号内,因此没有任何第三方——包括我们——处在流量路径上。第三种在设计上就不同:如果由我们托管,我们就在处理你的数据,因此它附带数据处理协议、明确的保留期限与泄露通知承诺,而不是一句口头保证。请选择与你的合规义务相符的那一行,而不是听起来最强的那一行。
访问内部系统
真正值得连接的系统,通常恰恰是不接受入站连接的那些。与其申请例外,智能体从内向外发起连接。
- 方向
- 客户端始终向外发起连接,使用你的网络已经允许的端口。你这边不需要监听任何入站连接。
- HTTP 隧道
- 基于 HTTP/2 与 TLS 的持久双向 gRPC 流,转发到本地服务。公网入口可以部署在你的账号内。
- 反向 SOCKS5
- 用于更广泛地访问内网:一端提供 SOCKS5 监听,另一端在内网中拨号目标。承载在 TLS + yamux 或 QUIC 之上,因此丢一个包只会阻塞它自己的流。
- 工具访问
- 内部能力以工具的形式开放给智能体,通过使用 stdio 或 streamable HTTP 的 Model Context Protocol 客户端。开放哪些由你决定;不会自动发现任何东西。
消息界面中的加密
当部署包含聊天界面时,负责路由消息的中枢在设计上使得「运维它」并不带来「读取消息」的能力。发给离线接收者的消息以密文排队存储,并在重新连接时按序下发。
- 密钥协商
- X3DH 与 PQXDH。
- 消息密钥
- 一对一会话使用 Double Ratchet。
- 群组
- sender key,在成员变动时重新协商,因此被移除的成员无法读取之后的内容。
- 元数据
- sealed sender。
- 校验
- 安全码,便于两人在带外确认没有发生密钥替换。
- 设备
- 每台已关联设备持有独立的签名与消息密钥,可单独吊销。
记录了什么
会话历史、智能体的判断与工具调用会写入运行该部署的主机磁盘。在由你运行的两种配置下——你的硬件或你的云账号——这台主机属于你,因此这些记录适用你自己的保留策略与访问控制,我们不保留任何副本。若由我们托管,它们则位于我们的基础设施上,并适用数据处理协议中约定的保留期限。
保留什么、保留多久、谁可以读取,都是我们在「部署」阶段与你共同确定的配置决策,而不是你被动继承的默认值。
如何核验这一切
以上全部都只是说法,而你没有理由接受一家尚未合作过的公司的说法。有三种核验方式。
- 自己动手测
- 已包含在服务内,也是三者中最有说服力的:在你控制的网络上运行该部署,观察有什么流出。我们会免费协助你完成这项观测,因为换位思考,这也是我们自己会想做的核验。
- 源代码审阅
- 可按需安排,在保密协议下进行,并作为计价选项报价——准备审阅环境需要工程时间,走完法务流程需要法务时间。如果你的评审流程要求阅读代码,请尽早提出,我们会报价。
- 源代码托管(escrow)
- 可按需安排,通过第三方托管机构办理。机构费用与我们的搭建时间会按实报价并转付,按每份协议计价,因此请尽早提出以便纳入预算。
出站验证实录
三分钟,记录第一种方式在我们自己的网络上实际执行的过程:智能体针对一个临床数据库提问,推理在本地运行;随后对该查询打开的每一个网络套接字取样,只要其中任何一个连到公网地址,检查即判定失败。它也说明了自身的局限——该脚本只监视这一台机器,因此评审方还应同时监视推理主机。
视频由本站自有域名提供,不是第三方嵌入——没有第三方播放器,也没有追踪。