一个永不泄露的私有 AI 助手:设计出站边界
2026年7月15日
"你的数据永远不出你的机器"是每一个怕隐私泄露的买家都想听的承诺——而它毫无意义,除非你能指出数据确实离开的那唯一一个地方,并证明别的地方都出不去。信任不在那句安慰里。信任在于把出站边界明明白白画出来,并把系统设计成:只有一扇门。
"承诺"和"证明"是两回事
谁都会说"自托管、很私密"。夸海口很容易,而且这正是一个紧张的买家以前听过的——通常听完没多久就还是泄露了。真正赢得信任的是相反的动作:不是承诺它永不发生,而是精确说出数据从哪里出去、为什么必须出去、以及什么拦住了它从别处出去。一个主动交代那唯一出口的供应商,才是真正想过边界的供应商——这比任何"100% 私密"的横幅都更有说服力。
五条控制,每条都是架构决策——不是承诺
拿一个买家给私有助手列的"不可谈判项",把每一条从"功能"变成"被强制的机制":
- 只跑在你的硬件上,别无他处。自托管在你的机器上——助手在任何人的云里都没有家,于是别处没有一个能被攻破或被传唤的账户。
- 永不暴露在公网。一张私有网格(Tailscale),没有任何入站公网端口——这台机器只有你够得着,对开放互联网不可寻址。根本没有东西可供端口扫描。
- 你的模型密钥,你的推理。每一次推理调用都用你自己的 API key——智能是以你的账户按次租用的,不经过一个能看见你数据的中间商。
- 静态加密,且可完整导出。一个本地加密存储,随时能导出成通用格式加原始源文件。拥有你的数据,意味着能带着它全部离开——锁定本身就是另一种泄露。
- 没有无声故障。每个工作流都有心跳;一次无声的失败会主动提醒你,而不是安静地烂掉。一个死了却不告诉你的隐私系统,是一个你已经不能再信任、却浑然不知的隐私系统。
那唯一一扇门:只有推理调用出去
把它画成数据流,整个系统只有一个箭头指向外面:发给模型提供方的那次推理调用,用的是你的 key。捕获、转写、记忆、知识图谱、每一个业务连接器——全都在本地读写。提供方调用是唯一的出站口,而正因为它是唯一的,它才是你唯一需要去推敲、限流、记录的东西。其余一切都由构造本身兜住,而非靠策略。当只有一扇门时,你才真的看得住它。
这也是那条诚实的但书,直说:模型调用确实会离开这台机器。所以边界不是"什么都不出去"——而是"只有你选定的模型 API 会看到一个请求,用你的账户,而且它每次这么做你都看得见"。这种精确,才是真正的隐私设计的样子;而把它大声说出来,正是它区别于营销话术的地方。
贯穿其中的那条线
这和我在别处构建时用的是同一种直觉——最小权限:不要授予一个你无法交代的能力,并把敏感路径做成系统里最窄、最可见的部分,而不是最含糊的部分。面对怕隐私泄露的买家,信任不是靠承诺更多赢来的——是靠把边界画得足够精确、精确到他们能自己核验。我愿意交付的那种系统,是客户能确切看到他们数据去了哪的那种——因为它只去一个地方。
这就是我设计这类系统的方式——这套模式来自多年后端工作,在那里,一个系统"内"与"外"之间的边界,是你首先要守住的东西。
这套边界设计有一个公开的实例:Intranet-Chat-Stream——自托管、无数据库的通道,在你的电脑、手机与 AI agent 之间搬运文字和文件。单个 Go 二进制、token 鉴权、不向公网暴露任何东西。
如果你造的机器需要一套界面、一个设备连接,或者数据必须落到别处去——告诉我它现在正让你付出什么代价。你会得到一个诚实的判断:能不能解;通常还会收到一个能跑的东西。从这里开始 →