随着大语言模型(LLM)的蓬勃发展,越来越多的开发者和企业需要在不同 AI 提供商之间切换。OpenAI、Anthropic、Google 等各家有各自的 API 格式和计费方式,管理多个 API Key 和配额成为一项繁琐的工作。本文将介绍一个轻量级的解决方案——Model API Relay,一个自托管的 AI API 中转代理服务。
什么是 Model API Relay?
Model API Relay 是一个运行在 PHP + SQLite 环境下的 API 代理服务,它可以:
- 统一接口:将多个 AI 提供商的 API 统一为 OpenAI 兼容格式
- 自动转换:在 OpenAI Chat Completions 和 Anthropic Messages 格式之间双向转换
- 智能路由:根据模型名称自动选择可用的上游通道,支持加权负载均衡
- 多用户管理:基于 WordPress SSO 的登录体系,支持配额和钱包管理
- 用量监控:完整的请求日志和 token 消耗统计
核心架构
系统采用经典的前后端分离架构:
- 前端:Apple 设计风格的响应式 UI,包含管理后台、在线 Playground、聊天界面
- 后端:PHP 8.4 原生实现,无框架依赖,轻量高效
- 数据库:SQLite 3,零配置,适合中小规模部署
- 反代:Nginx 反向代理 + Let's Encrypt SSL 证书
- 部署:运行在树莓派 (aarch64) 上,功耗仅 5W
核心功能详解
1. 多格式自动转换
这是系统最核心的能力。当用户以 OpenAI 格式发送请求但模型名为 Claude 系列时,系统会自动将请求体转换为 Anthropic Messages API 格式,转发到上游 Anthropic 通道,然后将响应再转换回 OpenAI 格式返回。反之亦然。
这意味着开发者可以只使用一套 OpenAI SDK,就能调用包括 Claude、GPT、以及各种兼容模型在内的所有 AI 服务。例如:
from openai import OpenAI
client = OpenAI(
api_key="sk-xxx",
base_url="https://apio.m1f.cn"
)
# 用 OpenAI SDK 调 Claude!
response = client.chat.completions.create(
model="claude-3-5-sonnet-20241022",
messages=[{"role": "user", "content": "你好"}]
)
2. 智能通道路由
系统支持配置多个上游 API 通道,每个通道可以设置:
- 类型:OpenAI、Anthropic 或 OpenAI 兼容
- 模型列表:通道支持的模型,支持自动从上游获取
- 优先级和权重:用于加权随机选择,实现负载均衡
- 速率限制:每个通道的请求频率控制
当收到 API 请求时,系统会根据请求的模型名称自动匹配最优通道。如果某个通道出现故障,会自动切换到其他可用通道,保障服务可用性。
3. WordPress SSO 登录
用户无需单独注册,直接使用 m1f.cn 的 WordPress 账号即可一键登录。登录流程基于 OAuth 风格的弹窗授权,安全便捷:
- 用户点击"使用 m1f.cn 账号登录"
- 弹窗跳转到 WordPress 授权页面
- 授权成功后通过 postMessage 传递 token
- 后端验证 token 并创建本地会话
4. 个人钱包与配额管理
系统内置了完整的钱包系统:
- 每个用户有独立的余额账户
- 每次 API 调用根据 token 消耗自动扣费
- 完整的交易记录
- 管理员可以手动调整余额
- 支持按 token 配额和按金额两种计费模式
5. 管理后台
遵循 Apple 设计语言的管理界面,提供完整的系统管理能力:
- 仪表盘:实时统计数据,7 天趋势图
- 用户管理:创建、编辑、禁用用户,设置配额和余额
- 通道管理:添加上游 API 通道,自动同步模型列表,测试连接
- 令牌管理:生成和管理 API 访问令牌
- 调用日志:按用户、模型、时间筛选查看详细调用记录
- 系统设置:动态配置所有系统参数
技术亮点
- 纯 PHP 实现:无框架依赖,零 Composer 依赖,部署即用
- SQLite 存储:无需数据库服务器,单文件数据库便于备份和迁移
- SSE 流式支持:完整支持 Server-Sent Events 流式响应
- CORS 支持:全端点跨域支持,可直接从浏览器调用
- Apple 设计系统:基于 SF Pro 字体和 Action Blue 的精致 UI
部署与使用
访问 apio.m1f.cn 即可使用在线服务。主要入口:
- API 端点:
https://apio.m1f.cn/v1/chat/completions - 在线测试:Playground
- Web 聊天:AI 聊天界面
- API 文档:详细文档
- 管理后台:后台管理(管理员专用)
使用 m1f.cn 账号登录后即可获取 API Key,开始调用。
未来规划
- 支持更多 AI 提供商(Google Gemini、Cohere 等)
- 增加用量告警和自动充值功能
- 支持更多的格式转换
- WebSocket 实时推送
- 多语言界面支持
Model API Relay 是一个持续演进的项目,欢迎提出建议和反馈。

Comments NOTHING