跳到正文
北京时间
原文
OpenRouter:Announcements(RSS)· OpenRouter·· 2026-08-07精选AI 评分70

在 OpenRouter 上设置团队 AI 支出控制

Set Up Team AI Spend Controls on OpenRouter

AI 导读

OpenRouter 推出五项团队 AI 支出控制功能:组织共享信用池、预设模型范围、每密钥限额、护栏(成员预算和模型白名单)及活动仪表盘。本指南按顺序介绍设置流程,包括创建组织、配置预设、通过 Management API 密钥设置每日/每周/每月限额。组织默认支持最多 10 名成员,标准按需付费账户购买信用时收取 5.5% 平台费。

推荐理由

这份教程把团队支出控制拆解为可操作的五个步骤,并对限额、护栏的叠加逻辑给出了清晰定义,可缓解团队协作中支出归属与模型权限的常见混乱。

正文 · AI 翻译

Set Up Team AI Spend Controls on OpenRouter

随着你的团队在 OpenRouter 上不断壮大,更多的 API key 和更广泛的模型访问权限会让你越来越难以看清谁在花什么钱。五项控制措施可以解决这个问题。组织为所有人提供一个共享的额度池。预设按工作负载限定模型范围。按 key 限额限制每个 key 的支出。Guardrails 强制执行每个成员的预算和模型允许列表。而 Activity 仪表盘则展示资金的去向。

本指南按顺序逐一设置它们:组织、预设、key 限额、guardrails,然后在 Activity 中检查。如果你还在决定需要哪些控制措施,请先阅读 管理团队 AI 支出指南。本页介绍的是设置本身。

Diagram of OpenRouter spend controls in setup order: governance (organization with shared credit pool and admin and member roles, then presets), usage controls (per-key limits with daily, weekly, or monthly resets, then guardrails with member budgets and model allowlists), and visibility (the Activity dashboard with spend by creator, API key, or model, and CSV and PDF exports)

开始之前

在开始之前,请确保以下事项已就绪:

  • 使用一个已验证邮箱的账户(创建组织需要邮箱验证)。
  • 以组织管理员身份完成设置,这样你就能管理账单、API key、成员访问权限和 guardrails。
  • 提前规划好你的成员名单。组织默认最多支持 10 名成员,可通过支持渠道获得更高上限。
  • 与你的团队一起查看定价。按量付费没有最低消费,标准按量付费账户的 5.5% 平台费在你购买额度时收取,而不是按请求收取。参见 定价。

第 1 步:创建你的组织并充值额度池

前往 Settings > Preferences,打开 Organization 部分,然后点击 Create Organization。输入组织详细信息后,邀请团队成员,并使用应用顶部的组织切换器切换到组织上下文。

在继续操作之前,确认切换器显示的是你的组织名称。在个人账户中,用量、API keys 和额度归属于你的个人账户。在组织上下文中,它们归属于共享的组织账户。组织切换器是用量归属错误的常见来源。

计费权限取决于邀请时为用户分配的角色:

  • Admins 可以购买额度并查看计费信息。
  • Members 可以使用组织资源并创建 API keys,但无法购买额度或访问计费详情。

为共享额度池充值

在组织上下文中,从 billing page 购买额度。额度会进入一个共享池,组织内的每个 API key 都从中扣费,因此你只需在中心为团队充值一次,而不必为每位工程师单独充值。

如果你需要将现有的个人额度转入组织,请使用 额度页面上的转移选项。转移有资格规则(你账户上的双重身份验证、账户和会员的注册时长、近期购买的额度,以及转移之间的冷却期),因此如果暂时无法转移,页面会告诉你原因。按发票计费的组织无法接收转移。

第 2 步:使用预设来限定模型和提供商的范围

预设是一种可复用的配置,用于固定某个工作负载使用哪个模型和提供商。在组织账户上,预设会在所有成员之间共享。

创建预设

前往 预设设置,为每个工作负载路径创建一个预设,例如 support-bot、internal-search 或 eval-runner。

对于每个预设:

  1. 选择一个模型或一个回退模型数组。
  2. 使用 sort 配置提供商路由偏好。
  3. 应用提供商包含/排除规则。
  4. 可选地设置 system、temperature 和 top_p。
  5. 使用一个稳定的 slug 保存。

预设是带版本的,每次保存都会指定为新的活动版本,API 请求会解析到该版本,同时保留版本历史,以便你可以回滚。请求级参数会浅覆盖预设值。

预设控制功能说明
模型选择将工作负载保持在预期的模型系列上
回退数组在提供商或模型故障期间保持请求正常运行
提供商路由(排序)按延迟或成本路由,取决于你优先考虑哪一项
提供商包含/排除将执行限制在已批准的提供商范围内
提示词与生成参数保持输出风格和波动性一致

从代码中引用预设

通过三种方式引用预设:将其作为模型并配合 @preset/{slug},通过单独的 preset 字段,或作为 model@preset/{slug}。这三种方式都在服务端解析,因此同一个预设可从任何 SDK 使用。

const resp = await fetch('https://openrouter.ai/api/v1/chat/completions', {
  method: 'POST',
  headers: {
    Authorization: `Bearer ${process.env.OPENROUTER_API_KEY}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    model: '@preset/support-bot',
    messages: [{ role: 'user', content: 'Summarize this ticket.' }],
  }),
});

当你通过 API 创建或更新预设时,只会存储配置字段,例如 model、temperature、top_p、provider、system 和 tools。诸如 messages、input、prompt 和 stream 这类临时字段会被忽略。

预设只会影响显式引用它的请求。如果你需要一种密钥无法绕过的模型限制,请改用第 4 步中的护栏模型允许列表。

第 3 步:通过限额与重置来限制每个密钥的支出

你可以为每个 API 密钥设置额度 limit 和 limit_reset,从而让每个工作负载按周期性计划获得新的额度。你通过 Management API 密钥来创建和管理这些密钥,该密钥仅用于密钥管理。

创建 Management API 密钥

前往 Management Keys 并点击 Create New Key。

管理 API 密钥用于处理管理操作,例如 /api/v1/keys 下的密钥管理和 /api/v1/guardrails 下的护栏管理。它无法调用补全端点,因此可以安全地用于配置系统和自动化流水线。用它为每个服务、环境或工程师创建一个密钥,从而让访问权限和支出按工作负载保持独立。

配置限额、重置和生命周期控制

通过 /api/v1/keys 创建或更新密钥时,你可以同时控制支出上限及其重置方式:

字段它设置的内容
limit该密钥的额度上限
limit_reset每日、每周或每月(每日于 UTC 午夜重置)
disabledtrue 会立即禁用该密钥
include_byok_in_limitBYOK 支出是否计入该限额

创建一个带有每日额度上限的密钥:

const res = await fetch('https://openrouter.ai/api/v1/keys', {
  method: 'POST',
  headers: {
    Authorization: `Bearer ${process.env.OPENROUTER_MANAGEMENT_KEY}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    name: 'support-bot-prod',
    limit: 25,
    limit_reset: 'daily',
  }),
});

更新密钥以收紧上限或更改重置周期:

const res = await fetch(`https://openrouter.ai/api/v1/keys/${keyHash}`, {
  method: 'PATCH',
  headers: {
    Authorization: `Bearer ${process.env.OPENROUTER_MANAGEMENT_KEY}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({ limit: 15, limit_reset: 'weekly' }),
});

立即禁用一个密钥以停止支出或切断行为异常的工作负载:

await fetch(`https://openrouter.ai/api/v1/keys/${keyHash}`, {
  method: 'PATCH',
  headers: {
    Authorization: `Bearer ${process.env.OPENROUTER_MANAGEMENT_KEY}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({ disabled: true }),
});

监控用量并自动化治理

每个密钥通过 usage、usage_daily、usage_weekly、usage_monthly、limit_remaining 字段及其 BYOK 对应字段报告各自的用量。你可以通过 cron 任务或后台 worker 轮询这些字段,并在密钥接近其上限时将其禁用。

limit 字段限制的是密钥,而不是个人。当你需要对某个成员名下的所有密钥统一执行限制时,请使用第 4 步中分配给成员的 guardrail。关于密钥轮换和密钥卫生,请参阅 API 密钥管理指南。

第 4 步:使用 guardrail 强制执行按成员的预算和模型允许列表

guardrail 在人员层面执行策略,无论某个成员创建了多少个 API 密钥。它将第 2 步的模型默认值和第 3 步的按密钥上限转化为成员无法绕过的硬性限制。只有组织管理员才能创建和管理 guardrail。

创建 guardrail

前往 Settings > Privacy,滚动到 Guardrails,然后点击 New Guardrail。

配置以下内容:

  1. 预算上限:设置一个美元上限,可按每日、每周或每月重置。超出上限的请求会被拒绝,并返回 403。
  2. 分配范围:分配给某个组织成员(覆盖其所有密钥和聊天会话),或分配给某个特定的 API key(在此基础上叠加一层额外限制)。每个用户或每个 key 只能直接分配一个护栏。
  3. 模型和提供商允许列表:仅允许列表中的模型和提供商。其他一切都会被阻止,即使某个 key 尝试请求也不行。将列表留空不勾选则允许全部。
  4. 可选安全控制:按模型组启用零数据保留(ZDR)、提示词注入和越狱检测、敏感信息(PII)脱敏或拦截,以及自定义正则内容过滤器。

使用资格预览在分配前查看实际生效的限制。

按成员预算的行为方式

护栏预算是按用户和按 key 分别执行的,不会在整个团队中共享。给 3 名成员各设置一个 $50/天的护栏,每个人都会获得各自的额度:Alice 达到 $50 后,她的请求会被阻止,而 Bob 和 Carol 各自仍拥有自己的 $50。某个成员在其所有 key 上的支出会累计为该成员的总支出。

当键级限制和成员级护栏同时生效时,以较低的限制为准。这就是仅靠键级限制无法提供的、针对每个成员的严格预算。

当多个护栏同时适用时,策略如何组合

层级解析方式
模型和提供商允许列表交集:仅允许所有规则都许可的内容
零数据保留(ZDR)按模型组取或
敏感信息管控阻断优先于脱敏
预算按用户和按键分别独立评估;以较低的限制为准

以编程方式管理护栏

你也可以通过 Management key 使用 PATCH /api/v1/guardrails/{id} 更新护栏:

curl -X PATCH https://openrouter.ai/api/v1/guardrails/$GUARDRAIL_ID \
  -H "Authorization: Bearer $OPENROUTER_MANAGEMENT_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "limit_usd": 50,
    "reset_interval": "daily",
    "allowed_models": ["anthropic/claude-sonnet-4.6", "openai/gpt-4o-mini"],
    "allowed_providers": ["anthropic", "openai"]
  }'

允许列表采用精确的模型 slug,而非通配符,因此随着你的模型策略变化,它们需要持续维护。而且预算耗尽前没有任何警告。当请求被阻止时,用户只会收到一个 403。关于何时使用护栏、何时使用密钥级限制,请参阅管理团队 AI 支出。

第 5 步:在 Activity 仪表盘中查看团队支出

打开Activity,查看三张指标卡(Spend、Tokens 和 Requests)。设置时间段(1 Hour、1 Day、1 Week、1 Month 或 1 Year),然后按以下维度分组:

  • Creator显示每位成员的支出。
  • API Key将支出映射到你在第 3 步中设置了上限的工作负载。
  • Model显示哪些模型消耗的预算最多。

在组织上下文中,Activity 信息流会显示所有成员的使用元数据,包括模型、成本和时序,并可按 API key 进行筛选。提示词和响应从不存储。你还可以通过 Options 下拉菜单选择 Export,并选择 CSV 或 PDF 来导出数据。

OpenRouter 在三个地方报告用量,它们回答的是不同的问题:

界面用途其中
usage 对象每次 API 响应都附带按响应统计的 token 和成本数据API 响应体
usage_* 关键字段单个密钥按时间窗口统计的合计GET /api/v1/key
活动仪表盘支出、Tokens、请求数;可分组并可导出openrouter.ai/activity

活动页面中显示的 BYOK 支出是根据提供商标价估算的,可能与你的协商折扣有所不同。

验证你的设置

在把组织交给你的团队之前,请先运行以下四项检查:

  1. 通过预设(@preset/{slug})发起一次调用,并确认响应中返回了 usage.cost。每次响应都会自动包含 usage 对象。
  2. 确认受限密钥的 limit_remaining 在通过 GET /api/v1/key 发起调用后下降。
  3. 发送一个违反护栏(超出预算或不在模型允许列表中)的请求,并确认它返回 403。
  4. 打开 Activity,按 Creator 分组,并确认支出映射到正确的成员。

当允许列表之外的请求返回 403,且 Activity 仪表盘按成员姓名显示每个人的支出时,设置即完成。

常见问题

我如何在 OpenRouter 上追踪整个团队的 AI 支出?

创建一个组织,让所有用量都计入一个共享的额度池,然后打开 Activity 仪表盘并按 Creator 分组,以按成员归属支出。在组织上下文中,活动流会显示每个成员的使用元数据(模型、成本、时间);提示词和响应不会被存储。

我可以为 OpenRouter API 密钥设置支出限额吗?

可以。当你通过 Management API 在 /api/v1/keys 创建或更新密钥时,设置一个 limit(额度上限)以及一个每日、每周或每月的 limit_reset。每日限额在 UTC 午夜重置。该限额限制的是该密钥,而不是持有该密钥的人,因此 5 个各为 $20 的密钥可让一名工程师每天支出 $100。

一个 OpenRouter 组织中可以有多少人?

组织默认成员上限为 10 人。如需更多成员,请联系支持团队。只有管理员可以购买额度或查看账单,而普通成员可以创建密钥并使用组织资源。所有组织密钥的用量都从同一个共享额度池中扣除。

组织成员能否看到彼此的用量?

可以,能看到用量元数据。在组织上下文中,活动动态会显示每位成员的模型、成本和时序数据,你可以按 API 密钥筛选,或按创建者分组,从而将支出归属到每个人。提示词和响应从不存储,因此该动态只包含支出和用量数据,不包含内容。

我能否限制团队可以使用哪些模型?

可以,有两种方式。预设会为通过 @preset/{slug} 引用它的流量设置默认模型或回退列表,但密钥可以跳过预设并直接调用任何模型。护栏模型允许列表则是对每个成员或每个密钥的硬性限制,任何超出允许列表的请求都会返回 403,无论预设如何。当你需要强制约束而不仅仅是默认值时,请使用护栏。

我能否限制某个人每天的支出上限?

可以。为组织成员分配一个护栏预算,每位成员都会获得各自的每日、每周或每月额度。当他们所有密钥的合计支出达到上限时,会被以 403 阻止。按密钥的限制约束的是密钥,而不是个人,因此若要实现真正的按人预算,请使用分配给成员的护栏。

使用 OpenRouter 需要付费吗?有最低消费要求吗?

不需要。按量付费没有最低消费,并且存在免费套餐。对于标准按量付费账户,购买额度时平台收取 5.5% 的手续费,我们不会在提供商定价上加价,因此目录价格就是模型成本。当前套餐层级和费用请参见 定价。

我如何查看我的 OpenRouter 使用情况?

你可以在三个地方查看使用情况。每个 API 响应都包含一个 usage 对象,其中带有 token 数量和成本。GET /api/v1/key 返回可按密钥查询的使用字段,你可以从代码中轮询获取。而 活动页面会显示支出、Token 和请求数,并支持分组以及 CSV 或 PDF 导出。

来源:OpenRouter:Announcements(RSS) · openrouter.ai