tokrouter

On-Premise

企业本地化部署

把 AI gateway 装进你自己的网络。prompt 与响应不经过我们、也不经过任何第三方代理, 模型请求只连厂商官方 API 地址(用自建推理服务时只连你内网的地址)。

数据不经第三方代理模型请求直连厂商官方端点(自建推理走你内网)Rust 核心单节点 / 集群两档

Data Flow

数据和账单走两条完全不同的路

请求在单机形态下只经过两条边:你的应用 → 本地 gateway,以及本地 gateway → 厂商官方端点 (或你内网的自建推理服务);集群档还会经过你自己的负载均衡(见交付包第 2 步的端口表)—— 那一跳也在你的网络里,但同样看得到正文。除了这些请求本身,还确认存在 license 校验、 平台额度模式下的用量计数(BYOK 模式不产生后者;用量回传的主机名待开通时给出)、 跨机形态下连你自己 PostgreSQL / Redis 的数据库流量(是否发生取决于拓扑:同宿主机形态不出主机)、 向你的 DNS 解析器查询这些域名这一跳(DNS), 以及启用 SSO 时到你的 IdP 域那一跳(授权 / token / JWKS); 平台额度模式下还有一项尚未确认的出站 —— 余额怎么到本地:若由 gateway 主动拉取,它就是下文 「gateway 会主动连哪些地址」那节清单里的「余额同步」一项(尚未确认,见下文账单节)。 这是本地化部署与云托管版最本质的差别 —— 不是「部署在你那边」,而是「数据面根本不需要我们」。

01 · 你的应用

SDK / Agent / 内部平台,走 OpenAI 兼容端点,base_url 改成本地 gateway 即可,代码不动。

02 · 本地 gateway

路由、fallback、上游负载均衡、缓存、配额、审计都在这一台(或一组)机器上完成。

03 · 厂商官方 API

gateway 直接与厂商官方端点建立 TLS 连接;接自建推理服务时,那是你内网的地址,不产生公网出站。

账单走的是另一条路:license 费 + token 费,费率与结算见下文账单节 —— 平台额度模式下的用量回传已在下一节的清单里单列,不属于 prompt / 响应这一条数据边。 集群档另有一跳你自己的负载均衡:那一跳也在你的网络里,同样看得到正文(与单机形态的两条边不同); 它落不落日志、看不看得到明文,取决于你选的 LB 与 TLS 终止点。

Egress

gateway 会主动连哪些地址

本页列出 gateway 主动出站的目标。其中两项已写进交付包默认清单,一项待开通时补入,其余由你的拓扑与配置决定 (跨机数据库、自建推理、启用 SSO 时的 IdP),另有始终发生的 DNS 一跳与尚未确认的余额同步(见下文)。

  • · 厂商官方 API(已写进默认清单)—— 清单里的厂商只是常见示例, 不保证覆盖你启用的全部厂商 —— 缺的按厂商官方文档补上,原样导入防火墙会让这类上游被挡 (/health 未必反映上游可达性 —— 我们未在交付镜像上核实它探测什么)。
  • · License 校验(已写进默认清单)—— 端点与授权方式以签发 license 时提供的信息为准。
  • · 用量回传(仅平台额度模式)—— 这一项待开通时补入:清单里的占位行就是它, 主机名由 gateway 提供方在开通时给出。
  • · 你自己写进白名单的上游,例如自建推理服务的内网地址。
  • · 数据库主机 —— 跨机形态下 gateway 会连你自己的 PostgreSQL / Redis。
  • · DNS —— 向你的解析器查询上面这些域名这一跳。DNS 解析本身也是一跳出站: 白名单按域名放行,gateway 要先向你的解析器查询这些域名;若指到外部公共 DNS,该解析器也能看到你访问了哪些 厂商端点 —— 建议指到内网解析器。
  • · 你的 IdP 域(仅启用 SSO / OIDC 时)—— 授权端点 / token / JWKS 的请求。 主机名由你的 IdP 决定,交付包默认清单里没有,启用前要自己补进去。
  • · 余额同步(仅平台额度模式,尚未确认)—— 「余额怎么到本地」这一条尚未确认,见下文账单节。

交付包里有一份机器可读的白名单(egress-allowlist.txt)、一份上游示例 (upstreams.example.txt,按交付包 README 第 3 步复制成 upstreams.txt 并按你启用的厂商裁剪)和离线校验脚本 (verify-onprem.sh)。脚本核对的是:

  • · 有 upstreams.txt 就只判它,里面登记的每个上游是否都在白名单内 (存在但一条活跃上游都没有 ⇒ 判红,会挡住第 5 步启动;只在控制台配时别创建这个文件 —— 已经创建的就删掉它); 没有 upstreams.txt 时只对示例模板提示、不计入结论(示例模板本身缺失、 或模板里没有活跃上游时另判红:交付包不完整),结论行会注明「上游声明未核对」。
  • · upstreams.txt 与示例模板逐字相同(只复制没裁剪)时也按模板处理 —— 脚本给提示、结论写「上游声明看起来还是模板」;但仍会按 upstreams.txt 逐条判定 —— 模板里不在你裁过的白名单中的厂商照样判红(模板判定只影响结论是否认领)。
  • · egress-allowlist.txt 的 License 校验段至少要有一条活跃主机名, 且必须是裸主机名(删掉它、或写成端口 / URL / 通配符 / 一行两条 / # 前无空白的注释 / 含引号或逗号 / 退化值(如 - 、.)都会判红,其余非主机名字符同样不合格(裸 IPv6 字面量除外);那一行「# ── License 校验」 段头本身也是判据的一部分,别连它一起删)。
  • · 跨机形态下 POSTGRES_URL / REDIS_URL 指向的数据库主机也要在清单里(DSN 走变量且静态解析不出时 这一条只提示,结论行会点名「数据库主机未核对」)。
  • · DSN 指向已删的 postgres / redis 服务名、或指向容器内回环(localhost / 127.0.0.1 / ::1)也会判红 —— 逐条以 verify-onprem.sh --help 为准。

「你的上游 ⊆ 清单」这一条只判一个方向:清单可以比你在用的多。控制台里的运行时上游脚本读不到。 但导入防火墙前仍要按交付包 README 第 4 步裁到最小权限(License 校验那一行别裁)。 上游地址在控制台里维护,改完记得与 upstreams.txt 同步。

下表只列厂商官方 API / License 校验 / 用量回传这三项目标(何时发生 / 带走什么)—— 其中厂商官方 API 与 License 校验已写进默认清单,用量回传待开通时补入。除表内这三项外,本节清单的其余各项都不在表里,按上面的清单逐项补 —— 别把这张表当成出站目标的全部。

目标何时发生带走什么
厂商官方 API
你启用的上游
每个请求prompt 与响应正文,直接发往厂商官方端点(HTTPS);按 Key 隔离。
License 校验
gateway 提供方
启动时校验;是否周期性重校尚未确认只带 license 校验所需的信息(具体字段我们未核实),不含 prompt / 响应正文。 端点与授权方式以签发 license 时提供的信息为准。
用量回传
仅平台额度模式
按批(频率待开通时确认)模型、token 数、时间戳、Key 标识 —— 不含 prompt 与响应正文。 BYOK 模式不产生这一项。

用自建推理服务(vLLM / Ollama 等 OpenAI 兼容端点)时,那一跳是你内网的地址,不产生公网出站; 写进 upstreams.txt 后必须同时在白名单里放行,否则校验脚本会判红; 两份都没写时脚本看不到它(控制台 ↔ 文本的那个缺口,见本节上文的说明)。

Licenses

按容量授权,不按席位计费

两档按节点数分档:Pro 覆盖单节点,Enterprise 是多节点集群;license 费按授权容量计价 (单价按档位不同:Pro 是固定档,Enterprise 按 GB),与用户数、席位、调用量都无关 —— 调用量只影响 token 费(见下一节)。

Pro

单节点

$320/月

固定 2GB 内存档 · license 费不按席位、不按调用量计 · 计费周期以合同为准

  • · 多模型路由 · fallback · 上游负载均衡
  • · 跨厂商混用,模型名一个接口对齐
  • · Prompt 缓存 · 跨 Key 复用
  • · 成本配额(日 / 月)
  • · 基础审计日志
  • · 本机控制台(密钥 / 配额 / 用量;默认只绑回环)
  • · SSO:OIDC(Azure AD / Okta)(SAML / SCIM 待确认;交付时需先配置 —— 交付包不含 SSO 配置项,开启方式请与 gateway 提供方确认)
  • · 日志留存
  • · Email / 工单支持
获取 Pro 报价

Enterprise

集群 / 多节点

$320/GB/月

容量 2–32GB(节点数 × 内存) · 计费周期以合同为准

  • · Pro 的全部数据面能力(控制台除外:集群节点不开本机控制台;管理面见下方「统一管理面」那一条)
  • · 多节点 / 集群部署(共享 PostgreSQL + Redis)
  • · 合规审计导出 / 长期留存(基础审计日志两档都有;DLP 待确认)
  • · 跨节点的统一管理面(密钥、配额、用量、审计导出;需另起控制台节点、该节点计入授权容量,跨节点传播待真机验证)
  • · 扩展日志留存
  • · 优先支持响应
获取 Enterprise 报价

license 不是 gateway 提供方给出的真实值时,gateway 很可能起来但授权不生效 (我们实测的镜像如此;交付镜像未验证 —— /health 照样 200), 只有交付包 README 第 6 步读的 last_verdict 能判; license 缺失/为空时拒绝启动。续期与升级由许可协议约定。 Enterprise 容量在 2–32GB 之间按需选择。

Billing

账单 = license 费 + token 费

01 · License 费

按授权容量计价的固定费用(单价按档位不同:Pro 固定档,Enterprise 按 GB);调用量涨十倍, license 费一分不多。计费周期(Pro 与 Enterprise)以合同为准。价签是折后月单价 (挂牌价 × 折扣),「/月」「/GB/月」只是计价单位的写法。

一台 $320/月 的 Pro 实例,容量就是 2GB, 不另收席位费或接入费。

02 · Token 费

平台额度:需 gateway 提供方先开通用量回传通道(未开通时不要按该模式计费),之后沿用云端价目按 token 精确扣减;云端档位为满 $100 下月 97 折,满 $500 下月 95 折,满 $2,000 下月 90 折。 月消费档位是否同样适用于本地化部署,目前尚未确认 —— 以合同口径为准。余额由本地 gateway 校验、耗尽即拒绝 —— 但余额怎么到本地(推送还是 gateway 主动拉取)随开通方式确定,我们尚未确认;若是主动拉取,它就是上文 「gateway 会主动连哪些地址」那节清单里的「余额同步」一项(尚未确认)。通道确认前不要按该模式计费。

BYOK(Beta):把厂商密钥放进 gateway 的加密保险库,token 费由你直接付给厂商,gateway 0 加价; 此模式既不产生额度扣减,也不产生用量回传。

两种 token 模式可同时存在,按 Key 或按模型分组各自选择。价格为美元基准,人民币按参考汇率折算(与定价页同口径; 实际结算汇率以签约日为准)。

Performance

Rust 核心,算力花在请求上而不是垃圾回收上

gateway 核心用 Rust 实现:无 GC 停顿、常驻内存小,一台机器就能跑满一条业务线的流量。 参考口径下,每 1GB 内存约合 500 请求/分钟(RPM);按每请求约 2 千 tokens 计, 即约 100 万 tokens/分钟(TPM),可服务约 100 名常规用户(每人约 5 请求/分钟)。

以上是参考值,不是 SLA:实际吞吐受你所接厂商的速率上限与请求复杂度约束。 我们不在页面上给固定硬件清单 —— 按你的并发与上游限速评估,售前会给出建议配置。

Delivery

交付包里有什么

01 · License

按容量签发,绑定实例数量;支持提前评估试跑。

02 · Compose

Pro 单节点与 Enterprise 集群两份编排;gateway 镜像 pin 到 digest。

03 · 配置模板

环境变量模板:镜像引用、license、加密密钥、数据库 / Redis、控制台、绑定地址、日志、请求体上限(交付包默认 25 MB;镜像自身默认更高,我们实测约 50 MB,以镜像文档为准);上游另见 upstreams 清单,计费模式是模板里的说明性注释。

04 · 出站与校验

出站白名单清单 + 离线校验脚本:上线前判配置形态;部署后按交付包 README 第 6 步验 license 的 last_verdict,并打一次最小推理请求(该步的 ①②「连通性 / 授权」只证明 gateway 活着与 license 生效,数据面要真打一次才露出来)。

升级 = 换镜像 digest + 重启(已收敛出口的主机要先临时放行镜像注册中心,或用离线包 docker load, 见交付包 README 运维段);数据在 PostgreSQL 与数据卷里,不随容器重建丢失。

FAQ

常见问题

和云托管版有什么区别?+
云托管版用我们的端点,数据经我们的网关转发;本地化部署是你自己运行同一个 gateway, 数据面不经过我们,也不经过任何第三方代理。云托管版与 Pro 档同源:模型路由、缓存、配额、 基础审计两者都有;Enterprise 相对 Pro 的增量见上方两档清单(集群、合规审计导出 / 长期留存、 跨节点的统一管理面、扩展日志留存、优先支持响应 —— 管理面需另起一台控制台节点、该节点计入授权容量, 跨节点传播待真机验证;Pro 档本身带本机控制台)。 本地化部署与云托管版的区别在部署位置与计费构成。
数据会不会经过你们或第三方?+
prompt 与响应只发往你启用的厂商官方端点(或你内网的自建推理服务),不经过我们、也不经过任何第三方代理; 到厂商端点那一跳仍在公网上。出站目标、以及交付包脚本能核到什么,见上文「gateway 会主动连哪些地址」一节(含跨机数据库、DNS 与启用 SSO 时的 IdP)。 本地化部署的调用日志默认开启,留在你自己的机器上(PG / 卷),LOG_RETENTION_DAYS 默认 Pro 30 天 / Enterprise 90 天(可自行调整); 关掉调用日志(LOG_PERSIST_REQUEST_LOGS=false)会让 /logs/history 无数据、计费与审计对不上。 日志里是否含 prompt / 响应正文我们未核实 —— 安全评审前请与 gateway 提供方确认。 平台额度模式多一项余额同步:它的通道尚未确认,余额同步若走 gateway 主动拉取同样要补进白名单(与用量回传一样), 否则这一跳会被你自己的防火墙挡掉、而失败是静默的;平台推送形态不产生出向,但要求一条入向通路 —— 平台侧连到你的 gateway,或改用反向隧道(那是 gateway 主动连隧道中继,属出站, 在你的网络里留下一条平台侧可发起的通路)。交付包默认不额外开放入向(单机 / Pro 档默认只绑回环,改成内网 IP 后入向来自该网段;集群档按交付包 README 第 2 步绑内网 IP 时,唯一入向来自 LB 与内网), 开通时请与 gateway 提供方确认走哪一种。 上线前跑一次离线自检(只判配置形态),部署后按交付包 README 第 6 步验last_verdict 并打一次最小推理请求(该步的 ①②「连通性 / 授权」只证明 gateway 活着与 license 生效,数据面要真打一次才露出来)。
必须用你们的模型额度吗?+
不必须。BYOK(Beta)模式下密钥在你自己的 gateway 里,token 费直接付给厂商,我们只收 license 费; 平台额度模式沿用云端的价目,需先开通回传通道,未开通时不要按该模式计费。 月消费档位是否同样适用于本地化部署,目前尚未确认 —— 以合同口径为准。
需要什么硬件?+
按并发与上游限速评估,页面不给固定配置单 —— 这是刻意的:给一份配置单,它就会变成事实上的承诺。 Rust 核心常驻内存小,单实例即可承载生产流量;容量档位按内存选择。
支持哪些上游?+
主流厂商的官方 API,以及任何 OpenAI 兼容的自建推理服务(vLLM / Ollama 等)。 上游地址全部由你配置。出站面由「gateway 会主动连哪些地址」那节列的各类目标(其中两项已写进交付包默认清单; 用量回传一项待开通时补入,主机名由 gateway 提供方在开通时给出,交付包清单里没有活跃行)、 你自己写进清单的地址(含跨机形态的数据库主机)、向你的解析器查询这些域名的 DNS 一跳, 以及启用 SSO 时到你的 IdP 域那一跳共同决定;另有尚未确认的余额同步(见该节与账单节)—— 清单与防火墙都在你手上,可以逐项核对。
license 到期会怎样?+
启动时校验 license。是否在运行期重校、到期是否即时生效尚未确认 —— 需要可判定的到期告警,请与 gateway 提供方确认(见交付包 README 第 6 步那段);到期前后的提示、宽限期与停服行为以许可协议为准。续期只需把新的 license 标识填进.env 的GATELLM_LICENSE_KEY(模板里是 REPLACE_WITH_LICENSE_KEY 占位符,换成 gateway 提供方签发的值)并重启,不需要重新部署; 重启后按交付包 README 第 6 步 ② 验一次 last_verdict(若不是 true,按那里排查顺序的第 3 条停容器、移走 license 缓存再起)。
联系我们评估部署方案或直接发邮件到 sales@tokrouter.dev

本地化部署的许可与服务由单独的许可与服务协议约束;本站的隐私政策与用户协议适用于云托管服务。 价格与容量档位以最终报价单为准。