BFE v1.8.6 正式发布:AI 网关计费精细化、Claude 协议与会话亲和性升级

发布日期:2026 年 9 月 1 日

GitHub Release

https://github.com/bfenetworks/bfe/releases/tag/v1.8.6

项目地址

https://github.com/bfenetworks/bfe

一、版本概览

BFE(Beyond Front End)作为 CNCF 沙盒项目、百度开源的企业级七层负载均衡软件,于 2026 年 9 月 1 日 正式发布 v1.8.6 版本。本次版本聚焦 AI 网关计费精细化、协议兼容性与会话级调度能力,在 v1.8.5 带来多 API Key 后端调度、RMB 配额、fallback 稳定性之后,继续完善企业级大模型推理服务的流量治理方案。

v1.8.6 是一次 面向成本核算与多厂商兼容的深化迭代:新增缓存 Token 计费、音频 Token 计费、图像生成按张计费,支持 RMB 峰时 / 非峰时分时定价,补齐 Anthropic Claude 协议转发,并引入同集群会话级 API-Key 亲和性与请求体大小条件原语,让 AI 流量在计费精度、协议覆盖和会话连续性上更进一步。

特别说明 :BFE v1.8.6 的 AI 网关功能可与 壬远 AI 网关https://github.com/rainway-ai-gateway)配套使用,共同构建企业级大模型推理服务的全栈流量治理方案。

二、核心更新亮点

1. AI 计费能力精细化

v1.8.6 在 v1.8.5 的 RMB 配额基础上,进一步扩展计费维度,覆盖缓存、音频、图像等更多 AI 请求场景,并支持分时定价。

1.1 缓存 Token 计费

大模型推理服务 increasingly 支持 prompt 缓存命中机制以降低成本。v1.8.6 新增对 缓存 Token 的计费支持:

  • 解析后端响应中的缓存相关 usage 字段;

  • 区分 input_tokens 与缓存命中 token,分别计入成本;

  • 特别针对 DeepSeek 等厂商的缓存字段格式进行了识别适配。

这使得企业能够准确核算缓存命中带来的实际成本节省,而不再将所有输入 token 按统一单价计算。

1.2 音频 Token RMB 计费

针对语音类大模型请求,v1.8.6 支持对 音频 Token 进行 RMB 计费:

  • 从响应 usage 中识别音频输入 / 输出 token;

  • 按模型配置的音频单价独立核算;

  • 与文本 token 成本合并后统一扣减 RMB 配额。

该能力让语音对话、语音合成等场景能够纳入统一的成本管控体系。

1.3 图像生成按张计费

图像生成模型(如 DALL·E、Stable Diffusion 等)通常不按 Token 计费,而是按生成图片数量计费。v1.8.6 新增 image generation per-image billing

  • 根据响应中的图像生成数量统计;

  • 按模型配置的 "每张图单价" 计算成本;

  • 支持将图像生成成本纳入 RMB 配额扣减。

1.4 RMB 峰时 / 非峰时分时定价

v1.8.6 支持在同一模型上配置 分时单价(tiers)

  • 按 Provider 时区定义峰时(peak)与非峰时(off-peak)时段;

  • 不同时段可配置不同 input / output 单价;

  • BFE 根据请求发生时间匹配对应 tier,计算实际成本。

这一能力让企业能够根据业务节奏优化调用成本,例如将非紧急任务调度到低价时段执行。

💡 场景示例:某企业统一使用 Claude 模型,白天高峰期按标准价计费,夜间非高峰期自动切换至优惠单价,月度 AI 调用成本降低 20% 以上。


2. 支持 Anthropic Claude 协议转发

v1.8.6 新增对 Anthropic Claude 协议 的转发支持,扩展了 BFE 在 AI 网关场景下的多厂商兼容能力。

  • 通过 model_protocols 匹配请求应使用的协议;

  • BFE 按 Claude 协议格式完成请求转发与响应处理;

  • 可与现有 OpenAI 兼容流程共存,统一入口支持多厂商后端。

这意味着企业可以在同一 BFE 入口后同时接入 OpenAI、DeepSeek、Claude 等不同协议的后端,由 BFE 根据模型或路由规则自动选择对应协议。


3. 同集群会话级 API-Key 亲和性

v1.8.6 在集群粒度新增 session-level API-Key affinity:同一 session 的多次请求会尽量命中同一个后端 API Key。

3.1 解决的问题

在 AI 对话场景中,部分后端厂商或服务对 API Key 的上下文状态有依赖:

  • 同一 session 内切换 Key 可能导致上下文不一致;

  • 某些按 Key 维度的限流或缓存策略希望保持稳定;

  • 客户端希望由 BFE 自动处理 Key 选择,无需关心后端 Key 分配。

3.2 工作方式
  • 在集群 AIConf 中开启 KeyAffinity 配置;

  • BFE 根据 session 标识(如 API Key、请求头或自定义键)计算一致性哈希;

  • 同一 session 的后续请求优先复用已选中的后端 API Key;

  • v1.8.6 将亲和性 TTL 改为 idle timeout 模式,默认 600 秒,无活动后自动释放,避免 Key 长期占用。

💡 最佳实践:对于对话类应用,建议开启 KeyAffinity 以提升上下文连续性;对于纯 Stateless 推理任务,可关闭以降低 Key 选择偏差。


4. 路由条件原语扩展:请求体大小匹配

v1.8.6 在 BFE 条件表达式中新增两个原语,用于基于请求体大小进行路由:

  • req_body_larger_than:请求体大于指定字节数时匹配;

  • req_body_less_than:请求体小于指定字节数时匹配。

典型用法:

复制代码
req_body_larger_than(1048576)
req_body_less_than(4096)

企业可据此将大上下文请求路由到高吞吐集群,将小请求路由到低成本集群,实现基于负载特征的精细调度。


5. Token 认证与限流稳定性优化

5.1 token_rule.data 字段简化与 TagLevel 扩展

v1.8.6 简化了 mod_ai_token_auth 导出的 token_rule.data 字段,并扩展 ApikeyTag 支持 TagLevel,便于控制面按层级(如 level1--level5)对 API Key 打标签,支撑后续多维度的配额统计与可观测分析。

5.2 AI 限流 Redis Key 统一

v1.8.6 使用控制面生成的 redis_key 作为 AI 限流计数器的 Redis Key,替代原先由 BFE 内部生成的规则,使得:

  • 限流 Key 在控制面与数据面之间保持一致;

  • API Key / Entity 删除或限流规则移除时,Redis Key 可被完整清理;

  • 便于多 BFE 实例共享同一套限流状态,避免重复计数或残留。

5.3 批量读取配额余额

redis_client 新增 GetInt64Batch 接口,支持批量读取多个配额余额,提升高并发场景下配额校验的性能。


6. 其他修复与改进

  • 修复跨集群重试时的模型名丢失问题 :在 ServeHTTPForAI 的集群间重试过程中,确保 TargetModel 等字段正确传递,避免计费与日志记录失真。

  • 修复价格 JSON 序列化精度问题PriceMap / TierPriceMap 序列化时保留 8 位小数精度,避免浮点误差导致计费偏差。

  • 新增 BFE AI 网关错误码文档:便于运维与开发者快速定位 AI 请求处理过程中的各类错误。

三、版本演进脉络:AI 网关能力持续完善

回顾 BFE v1.8.x 系列的演进路径,可以清晰看到项目从传统七层负载均衡向 AI 原生网关 的战略转型:

版本 发布时间 核心特性
v1.8.0 2025-09 引入 AI 网关基础功能、支持第三方 WAF 集成、后端 HTTPS 转发
v1.8.1 2026-02 外部 Web Server 支持、完整 Kubernetes Demo、AI 功能 Bug 修复
v1.8.2 2026-05 EPP 负载均衡、SSE 支持增强
v1.8.3 2026-07 AI 限流(RPM/TPM/Concurrency)、Token 认证升级、PB 日志、会话保持、功能开关
v1.8.4 2026-08 AI 路由(mod_ai_route)、Token 估算开关
v1.8.5 2026-08 多 API Key 后端调度、RMB 配额、fallback 稳定性、provider/model 前缀裁剪
v1.8.6 2026-09 缓存/音频/图像计费、分时定价、Claude 协议、会话 Key 亲和性

v1.8.6 的发布,标志着 BFE 的 AI 网关能力在 认证 → 限流 → 路由 → 计费 → 会话保持 → 日志 → fallback 容错 → 多厂商协议兼容 全链路上形成了更完整的闭环。

四、下载与升级

配置示例:启用 AI 网关并体验 v1.8.6 新特性

bfe.conf
复制代码
[Server]
EnableAiGateway = true
EstimateToken = true
AccessibleBodySize = 1048576
TotalBodyBufferSize = 104857600

Modules = ...
mod_ai_route
mod_ai_token_auth
mod_ai_rate_limit
mod_body_process
mod_session_sticky
...
ai_token_auth.data(含 RMB 配额)
复制代码
{
  "Version": "v1.8.6",
  "Config": {
    "AI_product": [
      {
        "cond": "default_t()",
        "action": {
          "cmd": "CHECK_TOKEN"
        }
      }
    ]
  },
  "QuotaPlans": {
    "AI_product": [
      {
        "id": "plan-rmb-tiered",
        "unlimited": false,
        "pass_no_quota": false,
        "redis_key": "quota:rmb:proj-a",
        "expired_time": -1,
        "quota": 1000000000000,
        "unit": "RMB"
      }
    ]
  },
  "Tokens": {
    "AI_product": {
      "sk-abc123": {
        "key": "sk-abc123",
        "key_id": "proj-a-claude",
        "enabled": true,
        "expired_time": -1,
        "unlimited_quota": false,
        "quota_plans": ["plan-rmb-tiered"]
      }
    }
  }
}
复制代码

说明:quota 为定点整数,1000000000000 表示 10000.00 元(精度 1e-8 元)。

cluster_conf.data(含 Claude 协议、分时定价与 Key 亲和性)
复制代码
{
  "ClusterBasic": {...},
  "BackendConf": {...},
  "AIConf": {
    "Type": 0,
    "Provider": "anthropic",
    "Protocol": "claude",
    "Keys": [
      {
        "Name": "default",
        "Key": "sk-xxx",
        "Weight": 100
      }
    ],
    "KeyPolicy": {
      "Strategy": "weighted_random",
      "MaxRetries": 0,
      "RetryBackoffInitial": 500,
      "RetryBackoffMax": 5000
    },
    "KeyAffinity": {
      "Enabled": true,
      "IdleTimeout": 600
    },
    "ModelTable": {
      "Currency": "RMB",
      "Models": [
        {
          "Provider": "anthropic",
          "Model": "claude-sonnet-4.6",
          "BaseModel": "claude-sonnet-4.6",
          "Mode": "chat",
          "Prices": {
            "input_cost_per_token": 0.000003,
            "output_cost_per_token": 0.000015
          },
          "Tiers": [
            {
              "Name": "peak",
              "StartTime": "09:00",
              "EndTime": "21:00",
              "Prices": {
                "input_cost_per_token": 0.000004,
                "output_cost_per_token": 0.000020
              }
            },
            {
              "Name": "off-peak",
              "StartTime": "21:00",
              "EndTime": "09:00",
              "Prices": {
                "input_cost_per_token": 0.000002,
                "output_cost_per_token": 0.000010
              }
            }
          ]
        }
      ]
    }
  }
}
ai_route.data(含请求体大小路由条件)
复制代码
{
  "Version": "v1.8.6",
  "route_rules": {
    "global_default": {
      "type": "global",
      "owner": "platform",
      "rules": [
        {
          "name": "large_context_claude",
          "Cond": "req_body_json_prefix_in(\"model\", \"claude-\") && req_body_larger_than(1048576)",
          "targets": [
            { "ClusterName": "cluster_claude_high_cap", "Model": "claude-sonnet-4.6", "Weight": 100 }
          ]
        },
        {
          "name": "default_claude",
          "Cond": "req_body_json_prefix_in(\"model\", \"claude-\")",
          "targets": [
            { "ClusterName": "cluster_claude_default", "Model": "claude-sonnet-4.6", "Weight": 100 }
          ]
        }
      ]
    }
  }
}

五、结语

BFE v1.8.6 的发布,进一步夯实了这款源自百度万亿级流量锤炼的七层负载均衡软件在 AI 原生网关 赛道上的技术底座。缓存 Token、音频 Token、图像生成按张计费与 RMB 分时定价,让企业能够按真实业务形态精细化核算 AI 成本;Anthropic Claude 协议转发补齐了多厂商兼容版图;同集群会话级 API-Key 亲和性与请求体大小条件原语,则为会话连续性和基于负载特征的调度提供了新工具。

**BFE v1.8.6 的 AI 网关功能可与壬远 AI 网关(https://github.com/rainway-ai-gateway)配套使用**,前者作为底层数据面引擎提供高性能七层负载均衡与 AI 流量治理,后者在配额控制、限流、Provider 管理等维度提供增强的管理能力,二者协同可构建覆盖数据面到控制面的完整企业级 AI 网关解决方案。

对于正在规划或建设 AI 网关基础设施的团队而言,BFE v1.8.6 值得认真评估与试用。

反馈

对本次发布的功能和优化,还有哪些问题?您在 BFE 使用中有什么疑问?访问下面的链接,提交您的反馈:

https://github.com/bfenetworks/bfe/issues


关注我们,获取更多 BFE 开源项目动态:

相关推荐
冬奇Lab28 分钟前
一天一个开源项目(第206篇):T3 Code - AI 编程 Agent 的统一控制台
人工智能·开源·资讯
IT古董28 分钟前
AI 资讯日报 | 2026年9月1日 :混元 Hy4 开源、DeepSeek 多模态登顶、可灵获国家队 14 亿注资
人工智能·开源
冬奇Lab28 分钟前
Code Agent 解剖(18):AgentTeams——TeamFanout 与 TeamCollect 的并行机制
人工智能
Brilliantwxx29 分钟前
【Linux】 进程(10) 进程控制深度解析:创建、终止与等待
linux·运维·服务器·c语言·开发语言·网络
ai小陈35 分钟前
FramePack图生视频云端部署实战:从单图输入到视频输出的完整流程
服务器·人工智能·安全·ai·音视频·gpu算力
程序员-Benothing1 小时前
OpenAI断供Cursor:当AI巨头开始“清理门户“,开源生态的中立性还能撑多久?
人工智能·开源·大模型
光锥智能1 小时前
机器人走进大众时代加速到来:郎朗跨界合作启元机器人,消费级人形机器人开启直播发售
人工智能
Jialu.1 小时前
中文 BERT 多任务分类项目:从模型结构到训练细节
人工智能·pytorch·分类·微软·nlp·bert
ZhouDevin1 小时前
算法论文/数据集3——CLD(TMLR2025)压缩训练集,仅保留对验证集有益的样本
人工智能·深度学习·算法·计算机视觉