专栏
new-api 源码拆解
逐模块拆解开源大模型网关 new-api:请求生命周期、渠道与负载均衡、relay 适配器、计费倍率、缓存与插件。
共 12 篇 · 按阅读顺序排列
- 1 new-api 源码拆解:学习路径与模块地图 开源大模型网关 new-api 的完整学习路径——按功能模块逐篇拆解:请求生命周期、鉴权、渠道、relay 适配器、负载均衡、计费、日志、缓存与插件。
- 2 架构总览与请求生命周期 一个 sk-xxx 请求从进门到返回的完整旅程——new-api 的分层架构、路由组织、中间件链,以及模块之间靠什么协作。
- 3 鉴权体系:令牌、会话与三层凭据 sk-xxx 的完整校验链路、控制台 session 与 access token 的分流、多协议 key 的兼容设计,以及 token 缓存的「突变 fence」——new-api 的鉴权全景。
- 4 用户、分组与权限 分组是 new-api 最被低估的设计——一个字段同时决定权限面、渠道选择和计费倍率。用户模型、角色体系、usingGroup 判定与分组联动全解析。
- 5 渠道管理与 model_mapping 渠道是网关的弹药库——Channel 的完整字段解析、多 key 模式、渠道测试如何走完整 relay 链路、model_mapping 的链式重定向与环检测。
- 6 relay 中继核心:适配器与协议互转 new-api 的技术心脏——Adaptor 接口方法集、relaykit 四协议互转矩阵、SSE 流式处理、参数覆盖引擎,以及新增一个上游提供方的完整清单。
- 7 负载均衡与失败重试 优先级分档、加权随机、重试降档、auto 组跨组切换、自动熔断——new-api 如何让几十个不可靠的上游像一个非常可靠的端点。
- 8 计费与倍率 预扣费 → 结算 → 退款的三段式计费、模型/补全/缓存/分组四层倍率公式、阶梯计费表达式与双资金来源——把「按 token 收费」做对的全部细节。
- 9 日志与可观测性 每一笔消费都可追溯——logs 表的字段与索引设计、八类日志、request_id 双链路排障、数据看板与性能剖析三件套。
- 10 缓存与性能工程 渠道缓存全量重建、Redis Lua 原子预扣、突变 fence、五类批量落库、过载保护——new-api 扛住并发的全部手段,逐个拆解。
- 11 插件系统与部署 在 Go 里安全地跑 JavaScript——jsplugin(sobek 引擎)的沙箱与信任边界、声明式任务插件的完整结构,以及单二进制与多机部署实践。
- 12 token 估算器:在计费之前猜对 token 数 上游还没响应就要先扣费——new-api 如何用字符级状态机、按厂商权重表和图像分块公式,把 token 估算做到"够准、够快、够安全"。