KeepRouter API Key 配置:从免费模型走到一次受控付费请求

先用公开的 free 模型检查认证与基础聊天请求。切换付费模型时,需要准确目录 ID、允许该模型的 Key 和足够预付余额。先核对一次请求,再扩大调用。

发布 2026-09-23 · 更新 2026-09-29 · KeepRouter Editorial · 6 分钟阅读

应用、AI Gateway 与模型供应商之间的分层责任图
认证、模型范围、账户余额与有用输出是不同检查项。

第一笔 KeepRouter 请求应回答一个很小的问题:这个应用能否正确认证,并从预期端点收到响应?先选择公开的 free 模型,创建仅允许它的 Key。基础路径运行正常后,再用独立范围和可核对请求评估一个付费模型。

KeepRouter 的付费用量从预付美元余额扣除。free 是具体目录条目,它的存在不代表整个目录都免费。类似地,免费文本请求成功,也不能证明某个付费模型的工具调用、图片处理、上下文行为或回答质量。快速开始与实时目录是本文操作步骤的当前参考。

为明确用途创建 Key

通过站点的登录入口进入账户控制台,为测试应用创建 Key。使用容易识别的名称,便于以后区分请求。第一轮将模型 allowlist 限制为 free;需要时,再按控制台提供的选项设置过期时间和消费限制。

把显示的凭证保存到运行环境的密钥存储或本地环境变量。不要放进浏览器打包文件、公开仓库或客服截图。Key 用来让服务识别应用,模型 allowlist 决定它可以请求哪些目录模型;账户余额与 Key 权限是两个独立条件。

控制项回答的问题不能据此推断
凭证调用方是否被识别是否允许全部模型
模型范围该模型是否获准调用账户是否有付费余额
消费控制Key 是否仍在配置预算内端点是否与模型兼容
账户余额是否能够支付付费用量输出是否满足应用要求

新客户端排错时,尽量不要直接使用范围宽泛的生产 Key。独立测试 Key 的流量更容易识别,实验结束后也可以单独撤销,而不影响其他应用。

运行一个最小免费请求

在当前进程环境中设置 KEEPROUTER_KEY 后,下面的 Python 代码会发送一笔基础聊天请求。它读取变量的值,不会把变量名误当成密钥。示例供你自行运行,不代表本文已经替任何账户创建凭证或执行请求。

import os
from openai import OpenAI

client = OpenAI(
    base_url="https://keeprouter.com/v1",
    api_key=os.environ["KEEPROUTER_KEY"],
    timeout=30.0,
    max_retries=0,
)
reply = client.chat.completions.create(
    model="free",
    messages=[{"role": "user", "content": "Reply with a short greeting."}],
    max_tokens=64,
)
print(reply.id, reply.model)
print(reply.choices[0].message.content)
print(reply.usage.model_dump() if reply.usage else "usage missing")

使用当前可用的 OpenAI Python SDK,并在项目锁文件中记录版本。如果应用运行在容器或部署平台里,在另一个终端设置变量并不等于配置了该进程。可以确认运行环境是否读到变量,但不要打印值。

SDK 的 Base URL 为 https://keeprouter.com/v1,聊天操作路径由 SDK 追加。如果把完整 /chat/completions 当作 base,可能拼出错误地址。Anthropic 客户端的请求结构不同,需要该接口时应阅读 Anthropic 兼容 API 指南。

按错误所在层逐项排查

现象优先检查
401当前进程有 Key、复制无误、未被撤销
模型被拒绝请求 ID 是否在 Key 的 allowlist 中
模型不存在当前目录有该 ID,没有照抄其他服务命名空间
404主机和基础路径是否适合该客户端
余额或预算不足账户余额与此 Key 的剩余额度
操作不支持模型是否公布了所调用端点

保留请求标识和状态,便于后续诊断。认证失败不应该靠充值解决;账户有余额,也不能修复错误 Base URL。一次只改一个关键设置,并先阅读错误参考。联系支持时,发送安全的请求元数据和已去除凭证的载荷,不要发送 API Key。

有意识地准备一次付费请求

从模型目录中选一个候选,确认它的计费单位和端点。Claude Sonnet 4.6这样的聊天模型,与图片、语音、视频线路是不同选择。使用 API 费用计算器时,应填写该操作相应的 token 或其他单位假设。

在控制台新建 paid-test Key,并将所选准确模型加入它的 allowlist。保留原来的 free-only Key,可以让两种测试各自范围清晰。通过控制台当前提供的支付流程增加预付余额,并在余额页面确认入账。查看结账显示的总额、适用费用和税额;模型 token 单价与支付结账金额不是同一概念。浏览器跳转完成,也不能单独证明信用余额已经到达账户。

将应用运行环境中的 KEEPROUTER_KEY 更新为刚创建的 paid-test Key,然后重启进程或重新创建 SDK client,确保它读取新值。已经用 free-only Key 创建的客户端仍持有旧凭证;充值或修改模型 ID 不会替换这个凭证。

限制测试规模,采用所选线路支持的输出上限,并发送有明确预期的合成任务。仅对兼容聊天模型复用前面的脚本:把 free 换成已核实 ID,并根据线路调整字段。非聊天模型需要它自己的操作和载荷,不能只换一个名字继续请求。

将响应与用量记录对上

付费调用后,在控制台核对请求模型、时间、状态、输入、输出、缓存信息及扣费;应用侧保留请求标识。如果客户端超时,应先检查请求记录,再决定是否重复。超时不等于上游从未执行工作,也不意味着该次调用一定免费。

应区分四个里程碑:账户已经建立、Key 能认证、请求已经完成、结果实际有用。即使前三项通过,产品仍可能需要调整提示词或重新评估模型。应关注第一次有用的付费任务,而不是把创建 Key 当成完成采用。

弄清免费调用已经证明了什么

免费模型调用成功,证明该 Key 与型号的基本客户端路径可用,不证明付费型号已有足够余额、在 Key 范围内或支持全部字段。首次付费请求前,打开目标模型页,检查单位价格和输出限制,再核对一次用量记录。KeepRouter 快速开始是设置参考。第一项付费任务尽量简单,方便理解和纠正错误。

将验证过的配置移入应用

将 Base URL 和准确模型 ID 保存为配置,在运行时注入密钥;条件允许时,为不同应用环境使用独立 Key。部署后发出一个无害且有边界的请求,并核对用量记录。应用 Key 检查完成后,再撤销一次性测试 Key。

把 SDK 配置指南加入应用操作手册。工作负载明显变化前,应重新查看模型端点和客户价格。增加并发、接入工具或发送图片,都会形成新的测试案例;最初那条免费问候不能替代这些检查。

常见问题

充值前可以测试吗?

可以使用公开 free 模型和仅允许 free 的 Key,具体仍受当前可用性与限制约束。

免费请求成功后,付费请求为什么还会失败?

应分别检查付费模型 ID、Key 范围、余额、Key 限额和端点。

创建 Key 就算成功激活了吗?

不是。还应验证请求完成与应用结果有用,付费采用还需理解扣费。

排错时应该提供什么?

提供请求时间、标识、模型、状态与去除凭证后的载荷信息,不要提供 API Key。

参考的一手资料

本文最近复核 2026-09-29

  1. [1] KeepRouter quickstart
  2. [2] KeepRouter free model
  3. [3] KeepRouter error reference
  4. [4] OpenAI Python SDK

继续阅读

← 全部文章 · 模型与价格 · 获取 API Key