你是否遇到过这样的困境:手头的AI编码助手(比如Claude Code或Codex CLI)只认OpenAI格式API,但你真正想调用的却是本地部署的vLLM、NVIDIA NIM或Ollama服务?Switchyard正是为此而生——它是一个轻量、高性能的Rust语言代理工具,像一位精通多国语言的智能调度员,在OpenAI、Anthropic等主流大模型API协议之间实时翻译,并智能分发请求到任意兼容后端。它不训练模型,不托管服务,却能让现有AI工具“零改造”接入国产/开源/私有大模型生态。
核心功能
- 跨平台协议翻译:自动双向转换OpenAI Chat Completions、Anthropic Messages、OpenAI Streaming Response等格式,彻底消除API协议壁垒
- 灵活可插拔路由:内置随机负载均衡、基于LLM自身响应结果的智能分类路由(如用小模型预筛再交大模型精答)、信号驱动的阶段式路由(如先验检查→生成→校验→重试)
- 开箱即用的可观测性:原生集成Prometheus指标体系,实时监控请求数、错误率、端到端延迟、token吞吐量及路由决策耗时,助你精准定位瓶颈
- 开发者友好扩展设计:提供类型安全的Rust API,支持自定义路由算法、中间件钩子(如日志、鉴权、缓存),5分钟即可编写专属调度逻辑
- 零侵入集成体验:只需将原有应用的API地址指向Switchyard代理端口,无需修改一行业务代码,即可对接vLLM、NIM、Ollama、Together AI等数十种后端
- 面向A/B测试与灰度发布:轻松配置多模型并行打标、按流量比例分流、按用户标签定向路由,加速模型选型与效果验证
适合哪些人用
Switchyard不是给终端用户用的“聊天界面”,而是为技术实践者打造的基础设施层工具:AI应用开发者(想快速切换后端模型而不改SDK)、MLOps工程师(需统一监控多模型服务SLA)、开源项目维护者(希望兼容更多推理引擎)、企业私有化部署团队(需桥接内部NIM集群与外部Agent工具),以及所有正在探索多模型协同、渐进式迁移路线的技术决策者。
快速上手
通过Cargo一键安装(需已安装Rust 1.75+):
cargo install switchyard
启动默认代理(监听localhost:8000,后端指向本地Ollama的llama3模型):
switchyard --backend http://localhost:11434/v1 --model llama3
然后将你的AI工具(如Claude Code CLI)的OPENAI_BASE_URL环境变量设为http://localhost:8000即可。更复杂的多后端配置、自定义路由策略可通过TOML配置文件实现,官方提供详尽示例与CLI帮助文档。
项目信息
772
今日 +370 stars today
Stars
81
Forks
Rust
Apache-2.0
Rust语言开发|GitHub Star数:772|开源协议:Apache-2.0|GitHub 项目地址
如果你厌倦了为每个新模型反复修改API适配层,Switchyard就是那个帮你把“协议适配”变成“配置即代码”的务实利器。



