内容提要
作者因AI模型提供商众多、切换配置繁琐,尝试自建AI网关。对比New API、OmniRoute后,选用轻量级Bifrost,通过Docker部署在Mac mini并绑定公网域名。配置安全访问、模型接口及虚拟密钥,创建路由规则(免费、快速、专业、视觉)重定向模型。最终实现客户端统一调用网关,切换模型只需在网关操作,省时省力。
延伸解读
自建网关的核心价值
文章指出,频繁切换AI模型提供商时,需要在多个客户端和多个设备上重复配置API,非常繁琐。自建AI网关后,只需在网关统一配置模型接口和路由规则,客户端统一调用网关地址,切换模型只需在网关操作,大大简化了配置流程。
安全配置要点
作者强调,若将网关部署到公网,必须开启强制虚拟密钥、允许直接API密钥、管理后台密码保护,并设置跨域白名单。这些措施能防止未授权访问和滥用,确保模型API密钥安全。
路由规则的设计思路
作者按用途将模型分为免费、快速、专业、视觉四类,并创建对应路由规则。这样可以根据任务类型自动选择合适模型,例如简单任务用免费模型,编码用专业模型,既节省成本又提升效率。
Q&A
Bifrost 是什么?它有什么特点?
Bifrost 是一个企业级 AI 网关,宣称是最快的企业级 AI 网关,界面简洁,资源消耗小(约 200MB 内存)。
如何部署 Bifrost?
可以通过 Docker 部署,例如在 Mac mini 上使用 docker-compose 配置,镜像为 maximhq/bifrost,挂载 ./bifrost 目录到 /app/data。
Bifrost 部署到公网后,如何保障安全?
需要在 Settings - Security 中开启 Enforce Virtual Keys on Inference(强制虚拟密钥)、Allow Direct API Keys(允许直接 API 密钥)、Password protect the dashboard(管理后台密码保护),并设置用户名密码。同时,如果通过浏览器调用,需设置 Allowed Origins 为你的域名。
如何在 Bifrost 中添加模型接口?
在 Models - Model Providers 中,点击 Add New Provider - Custom provider,填写模型接口地址(不带 /v1/chat/completions),然后添加模型 key,点击 Refresh model list 刷新,如果显示 Model list refreshed 则说明配置成功。
Bifrost 中 Virtual Keys 的作用是什么?如何创建?
Virtual Keys 用于统一管理模型访问权限,客户端使用虚拟密钥调用网关,而不是直接使用各家模型的 API key。在 Governance - Virtual Keys 中点击 Add Virtual Key,填写名称,并在 Provider Configurations 中全选即可创建。
如何配置模型路由规则?
在 Models - Routing Rules 中,创建路由规则,例如 'free' 规则,在 Rule Builder 中添加条件 Model = free,然后在 Routing Targets 中选择目标模型(如 HY3),保存即可。
使用 Bifrost 后,切换模型的具体操作是什么?
只需在网关中操作:配置新的模型接口、给 Virtual Keys 添加 Provider 权限、修改模型路由重定向到新模型,客户端无需改动。
作者为什么选择 Bifrost 而不是 New API 或 OmniRoute?
New API 功能大而全,适合搭建付费中转站,但需要单独部署数据库,个人使用太重;OmniRoute 适合个人使用,能接入免费模型 API,但界面 AI 味浓;Bifrost 企业级、界面简洁、资源消耗小,因此作者选择了 Bifrost。