零数据留存 ZDR 详解:让 AI 供应商处理完你的提示词但不存储

山止川行AI 前沿2026-09-171089 阅读💛 264 收藏

一句话结论

零数据留存(ZDR)是一项数据处理政策:符合条件的大模型 API 供应商处理你的请求后,不把提示词和响应持久化存储。它只覆盖供应商侧留存这一个环节——你的请求依然要发到供应商并被模型处理,你自己的日志、启用的插件、缓存配置都需要单独管控。在 OpenRouter 上可以通过账户设置、护栏或请求级 provider.zdr 字段强制执行。

ZDR 到底覆盖什么

ZDR 的边界很具体:符合条件的推理端点,供应商侧不留存。它不是你请求链路上所有系统的一揽子隐私政策。

三个容易混淆的问题,ZDR 只回答第一个:

  • 静态留存:供应商是否在响应返回后存储提示词和响应。ZDR 管这个。

  • 传输中的数据:请求依然要发往供应商并被模型处理。ZDR 不改变这一点。

  • 用数据训练:供应商是否用你的输入改进模型。这是独立控制,供应商经常与 ZDR 搭配提供。

“不用你的数据训练”不一定等于 ZDR:供应商可能拒绝训练但为了滥用检测或法律义务临时留存。反向关系更强——不留存数据的端点,后续也没法拿这些数据训练。

OpenRouter 按端点级评估数据政策,因为供应商的总政策可能与某个模型端点的政策不同;无法确认端点政策时,按保守立场归类为”留存并训练”。

ZDR 路由与 OpenRouter 自身的日志政策也是分开的:不开启输入输出日志就不存储提示词和响应内容,但请求元数据(token 数、延迟、模型、成本)仍会保留供查看用量。

覆盖边界速查表

数据处理问题ZDR 是否覆盖含义
供应商推理后存储你的提示词ZDR 端点不持久化提示词
供应商存储模型响应ZDR 端点不持久化补全内容
供应商用留存的提示词训练间接阻止没有留存的提示词可用于训练
数据到达模型供应商必须处理输入才能生成响应
处理留在特定国家或地区用数据驻留或区域内路由解决
OpenRouter 存储请求元数据元数据不含提示词内容即可保留
你的应用记录提示词你自己的日志和存储政策照常适用
插件或工具留存数据工具有各自的运营方和数据政策
端点为滥用或法律审查留存数据有留存行为的端点不算 ZDR

注意”我们不训练你的数据”可能仍允许为滥用检测或法律义务临时留存——这种端点不满足 ZDR 定义。可以照”不训练”政策使用它,但不能把请求描述成零留存。

ZDR 覆盖边界图:请求经应用到达 OpenRouter 再到 ZDR 供应商端点,提示词与响应不被持久化;应用日志、请求元数据、插件工具与处理区域都在边界之外,需要各自的控制

缓存要单独检查

供应商侧的内存提示词缓存与 ZDR 兼容——提示词不写持久存储,只在内存里保留到足以复用以提升性能。

响应缓存不同:它会临时存储生成的响应。账户级 ZDR 会禁用响应缓存,但请求级 provider.zdr 字段不影响响应缓存资格。要求每一层都零存储的系统,需要单独审查响应缓存配置。

三组容易混淆的概念

ZDR 对比”不训练你的数据”:两者经常一起提供但回答不同问题。“不训练”管输入是否改进模型,ZDR 管供应商是否在响应返回后存储输入。需要两者就都强制执行。OpenRouter 的 data_collection 参数可按”是否非临时存储用户数据并可能训练”过滤供应商,设为 deny 即排除这类端点,可与 zdr: true 组合。

ZDR 对比数据驻留与区域固定:区域固定管请求在哪里被处理(比如 GDPR 要求的特定区域),ZDR 管数据事后是否被保留。供应商可能在 EU 处理并留存请求,也可能在别处处理 ZDR 请求。政策同时规定处理位置和留存要求时,两个控制一起用。Business 和 Enterprise 计划通过 us.openrouter.ai 和 eu.openrouter.ai API 域名提供美国和欧洲的区域处理,与 ZDR 相互独立。

ZDR 对比自托管:自托管把推理留在自己的基础设施里。选择前核对四层控制:区域固定(处理位置)、ZDR 路由(防止供应商侧存储)、按 key 或工作区护栏(隔离不同客户流量与策略)、你自己的日志(记录发了什么去哪)。政策禁止一切第三方处理(含临时推理)时,自托管是唯一选项。

在 OpenRouter 上强制 ZDR 的三种方式

供应商提供 ZDR,不等于你的每个请求都自动合规。策略必须在账户、护栏或请求级强制执行。

账户级:在账户隐私设置里开启,无需改代码。可按模型组分别要求(Anthropic、OpenAI、Google、SpaceXAI 与非前沿端点),也可以通过护栏执行。

请求级:在 provider 块里设 zdr 字段。zdr 为 true 时,请求只路由到有零数据留存政策的端点;为 false 或省略时不影响路由:

{
  "model": "meta-llama/llama-3.3-70b-instruct",
  "messages": [{ "role": "user", "content": "Hello" }],
  "provider": {
    "zdr": true,
    "data_collection": "deny"
  }
}

data_collection 取 allow(默认)或 deny;deny 时路由排除”非临时存储用户数据且可能训练”的端点。

请求级 zdr 与账户级、护栏设置按”或”组合:任一层开启即强制执行。请求级开关只能确保 ZDR 开启,不能覆盖或放宽账户级或护栏规则。

普通对话补全请求与带 provider 块(zdr true 加 data_collection deny)请求的对比:后者只路由到零数据留存端点

核验供应商 ZDR 声明的五个要点

  1. ZDR 具体覆盖什么数据? 确认是否包含提示词、补全、上传文件、工具输入、缓存表示和标识符。

  2. 政策按供应商还是按端点? 模型功能和 API 端点可能有不同存储要求,供应商级声明可能藏排除项。

  3. 政策之外有什么? 问清元数据、插件、工具、提示词缓存、响应缓存、日志、批量 API 和有状态功能。

  4. ZDR 如何强制执行? 找账户策略、护栏或请求级路由控制,而不是手动挑选供应商。

  5. 如何验证持续资格? 数据政策会变。OpenRouter 维护端点级政策信息,当前 ZDR 端点清单发布在 https://openrouter.ai/api/v1/endpoints/zdr,路由决策跟随当前政策而非静态表格。

按官方 FAQ 的口径再确认一遍边界:ZDR 不阻止数据到达模型、不把请求留在你的网络内、也不管你自己系统创建的副本;一条零留存政策应当写清哪些端点和功能合格、如何强制执行、元数据/缓存/工具/日志怎么处理——仅”不训练”承诺不等于零留存。

想找当前合规端点时,直接请求 ZDR 端点清单接口比翻文档更快;评估新供应商时,把上面五个核验问题发给对方销售或支持,答案含糊的地方就是风险所在。

结论

ZDR 降低的是供应商侧存储风险,前提是你的请求真的到达了合格端点。把它当作可强制的路由要求来对待:敏感推理流量按实际政策组合控制——留存用 ZDR、存储与训练限制用 data_collection: deny、处理位置重要时用区域内路由;然后审查你自己的应用日志、启用的工具和缓存配置,别让另一层把供应商那边删掉的数据又复制了一份。

原文信息

  • 作者:OpenRouter 官方博客
  • 发布时间:2026-09-11 原文地址:

文章评论(10

风倚栏53 分钟前

讲解得很细致,新手也能看懂。

回复
墨沐雨59 分钟前

支持作者,持续关注中。

回复
云逐月25 分钟前

收藏了,以后慢慢研究。

回复
白向阳34 分钟前

支持作者,持续关注中。

回复
雪影45 分钟前

收藏了,以后慢慢研究。

回复
白向阳21 分钟前

楼主辛苦了,内容很有参考价值。

回复
青柠微凉56 分钟前

有没有更详细的教程,期待后续。

回复
一叶知秋57 分钟前

收藏了,以后慢慢研究。

回复
北岛渔夫14 分钟前

思路清晰,干货满满。

回复
白向阳31 分钟前

讲解得很细致,新手也能看懂。

回复