OpenRouter 零数据留存(ZDR)实践:97 款新模型,流量占比近半
When Zero Means Zero
OpenRouter 的零数据留存(ZDR)保证用户提示词和模型响应不被存储,元数据一般安全。自 1 月以来新增 97 款支持 ZDR 的模型,月度 token 量增长 4.3 倍,约占全部路由流量一半。ZDR 在三个层面执行:账户级(整个供应商开启)、护栏级(按 API Key 或组织成员限定)、单次请求级(传参数仅路由至 ZDR 端点)。企业用户可灵活选择控制粒度,避免锁定单一供应商。
ZDR 远不止“不存数据”这么简单,提示、响应、缓存的区分很多人没搞清楚。OpenRouter 的三层执行算是把自由度给足了,做合规服务的人可以仔细看看。

过去这一周里,零数据保留(ZDR)这个话题大约出现了 15 次。第一次是我和妻子在找电视上要看什么的时候。她建议我们看那部新剧《Rooster》。可我们已经看完前三集了!这才叫零数据保留。
接下来的 14 次同样精彩,因为我意识到每个人对零数据保留以及它实际意味着什么,看法都各不相同。这让我回想起当年人们要求“实时”数据的时候,我问他们实时是什么意思,他们会回答:“哦,每 15 分钟一次就很好了。”是啊,这可算不上实时。
ZDR 通常意味着保证你的数据在处理后不会被存储。而微妙之处在于“数据”究竟包含哪些内容。正是这种对“数据”含义的混淆,制造了隐私和安全风险。
例如,你有提示词和响应。提示词是你发送给大语言模型的内容。取决于提供商和套餐,你发送的内容可能会被存储、访问,或用于训练未来的模型。所以企业担心自己的实际提示词是合情合理的,因为这些提示词里可能包含专有信息。
例如,假设工程团队中有人向 LLM 输入了这样一条提示词:“调试我们产品中的这个身份验证问题”。如果没有 ZDR,这条提示词可能会被存储,在某些情况下还会被用作训练数据,从而在你无法控制的情况下泄露有关你内部系统的细节。虽然你的身份验证问题可能会得到解决,但这实在不值得冒这个风险。当你身处医疗健康和金融服务等高度监管的行业时,这种风险会进一步放大。
在响应侧,模型的输出同样可能十分敏感。接着上一个例子,LLM 可能会这样回应:“除了你的身份验证问题之外,我还发现了这些其他漏洞。”如果这条响应被保留下来,那么你未修补的弱点记录就留在了第三方的日志中,一旦发生数据泄露或配置错误,就可能将其暴露出去。
然后还要叠加缓存这一层,随着大家都在朝着 token 优化迈进,这一点备受关注。一些提供商会自动处理提示词的隐式缓存。其做法是将提示词中重复的部分保存在内存缓存中,这样就不需要重新处理,从而带来显著的成本节省。不过,缓存不被视为数据保留,因为没有任何内容被存储在长期记忆中。你也可以设置显式缓存,但这需要你标记出要缓存哪些内容块。
所以“数据”实际上就是提示词和响应。有一个需要注意的例外是元数据(时间戳、模型版本、延迟、吞吐量、成本等),但它通常被认为可以安全存储,因为它不包含敏感内容。
在 OpenRouter,我们每天都在处理围绕 ZDR 的各种问题。事实上,自今年年初以来,我们提供的符合 ZDR 的模型已经变得更加丰富。在许多情况下,ZDR 正在从“锦上添花”变成“必不可少”。
自 1 月以来,我们新增了 97 个支持 ZDR 的模型。可用性固然重要,但我们也观察到 ZDR 模型的 token 用量在各处都保持稳定。
可用性表明我们有供给,而用量则证明我们的用户在以有意义的方式使用它。这往往对应着真实的生产工作流。我支持许多 AI 原生公司,它们能够将 ZDR 模型同时用于前沿模型和开放权重模型。这种灵活性如今已成为一项硬性要求。
自 1 月以来,我们支持 ZDR 的模型的月度 token 用量增长了 4.3 倍。ZDR 不应让你在模型选择上付出代价。其他提供商没有能力支持我们所支持的如此众多的模型,因此如果没有 OpenRouter,你可能最终会被锁定在单一供应商上,失去我们默认提供的可选性。
不过这一切都说得通。我上一篇帖子强调了模型可选性,以及为什么公司需要它。你无法从单一提供商那里获得你所需要的一切,而标准化到某一家可能等于判了死刑。
我们路由的所有内容中,大约有一半已经是 ZDR。在我们的企业客户群中,我们看到许多组织希望深入了解如何真正强制执行并启用这一点。
OpenRouter 如何处理 ZDR
那么 OpenRouter 是如何处理 ZDR 的?我们在三个层级上强制执行,由你选择想要多少控制权。
账户层级。为整个账户下的某个提供商(Anthropic、OpenAI、Google 或非前沿模型)开启 ZDR。设置一次,之后每个请求都会继承这一设置。
护栏层级。按 API key 或按组织成员限定强制执行范围,这样生产环境的 key 可以要求 ZDR,而沙盒 key 则不必。团队正是借此在不妨碍实验的前提下维持一套严格策略。
单请求层级。在单次调用中传入 "provider": {"zdr": true}。随后 OpenRouter 只会把该请求路由到符合 ZDR 资格的端点,跳过任何无法满足该策略的模型或提供商,并顺延到你列表中的下一个合格选项。
记住“数据”可能指的三样东西:提示词、响应,以及两者之间的元数据。无论你真正关心其中哪一样,都可以在契合团队工作方式的层级上强制执行。
这正是受监管团队不断向我们索要的灵活性。围绕 ZDR 的困惑是真实存在的,而大多数要求 ZDR 的人并不清楚自己指的是提示词、响应、缓存,还是这三者全部。而供应商们也并不急着澄清。下次再遇到这个话题,你就会确切知道该要求什么了。
你现在就可以在账户隐私设置中开启 ZDR,或者通过 "provider": {"zdr": true} 按请求强制执行。完整的设置方法请参阅 Zero Data Retention 文档。
来源:OpenRouter:Announcements(RSS) · openrouter.ai