OpenRouter:通过API路由实现AI数据驻留合规
How to Enforce AI Data Residency Without Building Local Infrastructure
Deloitte 报告显示 77% 的公司将供应商国籍纳入 AI 选型考量。OpenRouter 将数据驻留视为路由决策:通过 API 请求中的 `provider` 对象设置 `order` 或 `only` 限定服务商、`allow_fallbacks` 为 `false` 禁止回退、`data_collection` 为 `deny` 禁止数据存储或训练、`zdr` 为 `true` 要求零数据保留。示例以 `anthropic/claude-sonnet-4.6` 调用,首选 Anthropic 直连和 Amazon Bedrock。针对欧盟需求,可限制仅 Mistral 等欧盟总部供应商。若无可合规供应商,API 返回错误而非路由至不合规服务商。
OpenRouter 这篇指南把数据驻留从一个基建难题退化成一次 API 请求里的路由配置,对需要合规的团队是直接可抄的实操手册。

德勤的《AI 现状报告》调查了 24 个国家的 3,235 位领导者,发现 77% 的企业如今在选择 AI 供应商时会把原产国纳入考量。近五分之三的企业表示,他们构建 AI 技术栈时主要采用本地供应商。
如果你的采购团队已经对此提出警示,常见的假设是:合规就意味着自建或租用本地基础设施。但对于通过 API 调用模型的团队来说,并非如此。你的需求是地理推理路由,而这是你可以在单次请求中设定的约束。
基础设施这一思路适用于政府、国防承包商以及需要自有技术栈的气隙隔离环境。而对于调用第三方 API 的应用团队来说,真正的问题要窄得多:证明受监管数据的推理发生在特定地理区域内,并且没有任何供应商留存或利用这些数据进行训练。
将数据驻留视为一项路由决策
路由层位于你的应用与模型供应商之间。你无需针对每家供应商分别配置数据驻留——况且每家供应商的定义方式还各不相同——只需一次性设定地理区域和数据策略,让这一层只挑选符合条件的供应商。
OpenRouter 的 provider 对象暴露了这些控制项。order和 only决定哪些 provider 可以服务某个请求,data_collection决定某个 provider 是否可以存储你的数据或基于你的数据训练,而 zdr则要求零数据保留。这些设置按请求生效,你也可以在 隐私设置中将其设为账户级默认值。
这会将你的信任从众多单独的 provider 转移到路由层。在以这种方式路由受监管的工作负载之前,请审计 OpenRouter 自身的 数据处理政策,并确认其路由行为符合你的要求。
在单个请求中强制实施地理限制
下面是在单次调用中实现地理区域强制约束的方式。它会先尝试 Anthropic 的直接 API,然后尝试 Amazon Bedrock,并拒绝其他任何方式:
curl https://openrouter.ai/api/v1/chat/completions \
-H "Authorization: Bearer $OPENROUTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "anthropic/claude-sonnet-4.6",
"messages": [
{"role": "user", "content": "Summarize this compliance report."}
],
"provider": {
"order": ["anthropic", "amazon-bedrock"],
"allow_fallbacks": false,
"data_collection": "deny",
"zdr": true
}
}'order 设置提供商优先级。allow_fallbacks 在 false 处会阻止路由到列表之外的任何提供商。data_collection 在 "deny" 处会排除那些存储或使用输入进行训练的提供商,而 zdr 在 true 处会防止提示词和补全结果在请求后被保留。对于受监管的工作负载,请显式设置这些选项,而不要依赖默认值。
每个字段对应不同的合规层级。order 和 only 控制推理在哪里运行;data_collection 和 zdr 控制数据之后如何处理。它们不可互换,因此请设置你的策略实际要求的那些字段。
需要时锁定欧盟司法管辖区
针对欧盟的合规要求,你可以将路由限制在总部位于欧盟的提供商,并拒绝数据收集。总部位于法国的 Mistral 是一个有用的欧盟司法管辖区锚点,其余部分你可以通过 only 和数据策略过滤器来表达。提供商数据中心位置的独立确认仍应直接来自该提供商本身。
当请求绝不能离开欧盟时,企业账户可以使用 欧盟区域内路由。请求通过 eu.openrouter.ai 完全在欧盟境内解密和处理,且只有符合欧盟资格的提供商为其提供服务。
处理无合规提供商的情况
如果你列表中没有可用的提供商,且 allow_fallbacks 为 false,API 会返回错误,而不是路由到不合规的提供商,这正是受监管数据所需要的行为。
你的应用程序决定接下来发生什么。排队并重试,对不敏感的内容回退到非受监管路径,或将失败暴露给调用方。失败模式由你决定,而不是由路由器决定。
常见问题
我是否需要为 AI 数据驻留构建本地基础设施?
如果你是通过 API 调用模型,那就不需要。自持整套技术栈对政府和气隙隔离环境来说是正确答案,但对应用团队而言,需求是地理推理路由:证明对受监管数据的推理在特定地理区域内运行,且没有任何提供商保留或将其用于训练。这是你按请求设置的路由约束。
如何将 OpenRouter 限制到特定提供商或区域?
在请求中使用 provider 对象。order 或 only 控制哪些提供商可以处理该请求,将 data_collection 设为 deny 可屏蔽会存储或将你的数据用于训练的提供商,将 zdr 设为 true 则要求使用零数据保留端点。你也可以在隐私设置中将这些设为账户级默认值。
如果没有合规的提供商可用会怎样?
当 allow_fallbacks 设为 false 时,OpenRouter 会返回错误,而不是路由到你列表之外的提供商。由你的应用决定失败模式:排队重试、对非敏感内容回退到非受监管路径,或者直接暴露该错误。
OpenRouter 能保证请求留在欧盟境内吗?
对于企业账户,欧盟区域内路由会通过 eu.openrouter.ai 完全在欧盟境内解密并处理请求。对于其他账户,你仍然可以将路由限制到总部位于欧盟的提供商并禁止数据收集,不过对提供商数据中心位置的独立验证应来自该提供商本身。
OpenRouter 会存储我的提示词吗?
由你掌控。将 zdr 设置为 true 可将路由限制为“零数据保留”端点,而将 data_collection 设置为 deny 则会屏蔽那些存储输入或利用输入进行训练的提供商。在运行受监管的工作负载之前,请查阅提供商日志记录文档以及你的隐私设置。
来源:OpenRouter:Announcements(RSS) · openrouter.ai