对比
与 Bifrost、LiteLLM 的差异
三个项目都是 LLM 网关,但对「网关应对请求做什么」给出了不同答案。下表列出的内容,都可以在各自项目本身中核实。
什么情况下不要选 Solidway
我们更希望你先选对工具。符合以下任一条,Solidway 就不是合适的选择。
- 你希望用 OpenAI SDK 调用 Claude,或用某家的 SDK 调用另一家的模型。Solidway 不在协议方言之间转换;Bifrost 与 LiteLLM 会做这件事。
- 你需要现成适配、覆盖很长的 provider 清单。LiteLLM 覆盖的 provider 比我们多。
- 你希望用 Python 修改网关行为,与团队现有技术栈保持一致。LiteLLM 更合适。
设计取舍
| 对比维度 | Solidway | Bifrost | LiteLLM |
|---|---|---|---|
| 网关对请求做什么 | 原样转发 | 先转为统一 schema,再转为上游格式 | 先转为统一 schema,再转为上游格式 |
| 实现语言 | Rust | Go | Python |
| 用 A 家 SDK 调用 B 家模型 | 设计上不支持 | 支持 | 支持 |
| 接入新 provider | 修改配置 | 编写适配代码 | 编写适配代码 |
| 故障转移 | 内置 | 内置 | 内置 |
| 负载均衡 | 内置 | 内置;自适应均衡属于商业版 | 内置,提供多种已发布的策略 |
| 熔断 | 内置 | 商业版功能 | 部署级冷却与重试预算 |
| 部署形态 | 单个静态二进制 | 单个二进制或容器 | Python 服务或容器 |
某项能力若只有商业版才提供,表中会注明,而不是直接标记为「无」。
三种不同的约束
Solidway
保持上游自身的协议契约不变。网关只负责路由与健康判断,不介入请求载荷。模型发布的新参数无需等待网关发版,路径上也不存在能改变请求内容的一环。
Bifrost
在中间放一层统一 schema,让一个 SDK 可以触达多家 provider,并在外围提供治理、预算与插件体系。熔断与自适应均衡属于其商业版本。
LiteLLM
优先覆盖广度:provider 清单长、接口面多,并提供多种已发布的路由策略。网关用 Python 编写,便于在原位扩展。