概览

运行时优化

BitRouter 从成本、性能和安全三个维度优化你的 LLM 运行时——只需一个开源 Rust 代理在本地运行,零基础设施依赖。高级功能将在 BitRouter Cloud 上提供(即将推出)。

成本优化

智能路由

  • 基于优先级的服务提供商选择和轮询负载均衡
  • 通过 provider:model_id 语法直接指定提供商路由
  • 在 5xx 错误或超时时自动故障转移——对 Agent 完全透明

费用追踪与预算控制

  • 按请求计算成本,提供细粒度 Token 分解(缓存读取、缓存写入、推理 Token)
  • 按账户、模型和提供商持久化费用日志
  • 通过 JWT 声明进行预算控制——按会话或按账户限制,以微美元为单位,支持时间窗口或轮次窗口
  • 模型白名单限制 Token 可访问的模型(支持 glob 模式)

性能优化

异步 Rust 运行时

  • 基于 Tokio 的异步 I/O,路由开销低于 10ms
  • 零基础设施依赖——无需 Postgres、Redis 或 Docker
  • 原生流式支持,提供细粒度流事件(TextDelta、ToolCall、Finish)
  • 跨提供商共享连接池

可观测性与指标

BitRouter 跟踪通过代理的每个请求。所有可观测性通过 ObserveCallback trait 流转,在每个请求完成后触发。

每个请求事件包含:

字段描述
route虚拟模型名称(如 defaultfast
provider处理请求的上游提供商
model上游模型 ID
account_id调用者账户(来自 JWT)
latency_ms端到端请求延迟
input_tokens输入 token 数
output_tokens输出 token 数
success请求是否成功
error_type失败时的错误类别(如 TransportProviderAccessDenied

BitRouter 收集内存中的按路由指标,包含按端点细分:

  • 请求计数 — 每个路由和端点的总请求数和错误数
  • 错误率 — 错误数 / 总请求数
  • 延迟百分位 — p50 和 p99(有界采样,每路由最多 10k 样本)
  • 平均 token 使用 — 平均输入和输出 token(仅非流式请求)
  • 最后使用 — 最近请求的时间戳

通过管理 API 查询指标:

curl http://localhost:8787/admin/metrics

指标仅保存在内存中,进程重启后重置。

支出追踪

BitRouter 使用提供商的 token 定价为每个请求计算成本,并将支出日志持久化到配置的数据库。

使用细粒度 token 定价按请求计算成本(每百万 token):

Token 类别描述
input_tokens.no_cache非缓存输入 token
input_tokens.cache_read缓存读取输入 token
input_tokens.cache_write缓存写入输入 token
output_tokens.text文本输出 token
output_tokens.reasoning推理输出 token

支出日志存储在配置的数据库中(sqlite://postgres://mysql://)。表通过迁移自动创建。

对于流式请求,指标中仅记录流开始时间延迟和请求/错误计数。token 使用在流完成前不可用。

安全优化

运行时防护栏

BitRouter 内置代理层防火墙,检查代理与 LLM 提供商之间流动的内容。它透明地包装模型路由器 — 你的代理和提供商无需任何更改。

护栏默认启用。流量在两个方向上被检查:

  • Upgoing — 从代理到 LLM 提供商的出站流量(用户 → 模型)
  • Downgoing — 从 LLM 提供商返回代理的入站流量(模型 → 用户)

内置模式

模式 ID方向检测内容
api_keys出站OpenAI、Anthropic、AWS、GCP、GitHub、Stripe 的 API 密钥
private_keys出站PEM 编码的私钥(RSA、EC、Ed25519 等)
credentials出站内联密码、Basic Auth 头、数据库连接字符串
pii_emails出站电子邮件地址
pii_phone_numbers出站电话号码
ip_addresses出站IPv4 地址(非本地回环)
suspicious_commands入站危险 shell 命令(rm -rf /curl | sh、fork 炸弹等)

操作

每个模式可以分配三种操作之一:

操作行为
warn记录警告但允许内容通过(默认)
redact替换匹配内容后转发
block拒绝整个请求并返回错误

配置

guardrails:
  enabled: true

  disabled_patterns:
    - ip_addresses

  upgoing:
    api_keys: redact
    private_keys: block
    credentials: block
    pii_emails: warn

  downgoing:
    suspicious_commands: block

  custom_patterns:
    - name: internal_token
      regex: "myapp_[A-Za-z0-9]{32}"
      direction: upgoing    # upgoing | downgoing | both

  custom_upgoing:
    internal_token: redact

  block_message:
    include_details: true
    include_help_link: true

认证与 Agent 身份

  • Web3 JWT 认证,支持 Solana(Ed25519)和 EVM(secp256k1)验证——零服务端状态
  • 作用域 Token(管理员 vs API)、模型白名单、预算声明
  • ACP Agent Cards 绑定 CAIP-10 钱包地址,提供发现端点

高级运行时优化功能——包括分析仪表盘、团队级策略控制和托管防护栏管理——即将在 BitRouter Cloud 上推出。

完整源代码请访问 BitRouter GitHub 仓库

How is this guide?

Last updated on

On this page