Skip to content

Repository files navigation

无限额度 · AI 模型网关 | Unlimited AI API Gateway

聚合多个免费 LLM 额度(NVIDIA / 商汤 / 魔搭 / Gemini 等),OpenAI 兼容接口,智能轮询自动切换,单渠道额度用完或故障无感切换,多个免费额度叠加 ≈ 无限额度体验。

🎁 桌面版下载 exe 双击即用,无需 Python 环境 · 自带实时监控面板 · 支持系统托盘后台常驻

如果这个项目对你有帮助,欢迎点 Star 支持!你的 Star 是持续更新的动力。

openai兼容 免费API 无限额度 LLM聚合 API网关 智能轮询 熔断容灾 负载均衡 NVIDIA 商汤 魔搭 Gemini API监控 反代 AI网关 openai api-gateway llm free-api reverse-proxy


📖 项目简介

本程序是一个模型 API 网关,可将多个上游 LLM 提供商(如 NVIDIA、商汤 SenseNova、魔搭 ModelScope 等)聚合为一个统一的 OpenAI 兼容接口。你在任何支持 OpenAI 格式的第三方工具(ChatBox、NextChat、SillyTavern、Dify 等)里填入本网关的地址和密钥,即可:

  • 自动在多个上游渠道间智能轮询,单个渠道挂了无感切换
  • 实时监控所有模型的健康状态、可用率、延迟
  • 自定义路由组,按需调度模型
  • 统计 Token 消耗

程序提供**桌面版(exe)网页版(自行部署)**两种使用方式。


💡 为什么叫"无限额度"?

绝大多数主流 LLM 提供商都提供免费额度(如 NVIDIA 每月免费调用次数、魔搭、商汤、Gemini 等),但单个渠道的免费额度往往很快用完。

本网关的做法是:把你所有的免费渠道聚合成一个 OpenAI 兼容入口——

你的多个免费渠道 网关做的事
NVIDIA 免费额度 自动轮询
商汤 SenseNova 免费额度 额度用完 → 无感切下一个
魔搭 ModelScope 免费额度 渠道故障 → 自动熔断跳过
Gemini 免费额度 按可用率/延迟择优

多个免费额度叠加 + 智能切换 = 你几乎永远有可用的免费模型,这就是"无限额度"的来源。

⚠️ 前提:你需要自行注册各提供商账号并获取各自的免费 API Key,网关只负责聚合与调度,不提供密钥。


✨ 功能特性

📊 实时监控

  • 展示所有上游模型健康状态、SLA 可用率、平均/极速/最慢延迟、探针次数
  • 模型名旁的状态点代表上次轮询结果:🟢 正常 / 🔴 异常 / ⚪ 尚未巡检
  • 后台每 5 分钟自动巡检,也可点右上角"立即检测"手动触发
  • 支持按可用性、提供商、关键词筛选

📏 上下文长度

  • 直接点击监控表格"上下文窗口"列的数字即可修改,回车保存
  • 上下文长度 ≥ 1M 的模型自动纳入 auto-router-1m 智能路由候选

🔀 路由配置

  • 创建自定义路由组并勾选成员模型,每个模型旁显示上下文长度
  • 客户端 model 字段填路由组名即命中(如 1m256k
  • 网关在组内按可用率/延迟择优
  • 内置 auto-router-1m 自动聚合所有 1M 上下文模型
  • 路由组创建后自动出现在"输出模型"列表

⚙️ 模型管理

  • 每个提供商支持:编辑连接信息、勾选启用的模型、删除
  • 添加提供商时自动从上游拉取可用模型列表
  • 支持仅拉取免费模型

📦 管理输出模型

  • 查看本网关对外暴露的所有模型 ID(格式 提供商名-模型名
  • 一键复制,方便填入第三方工具

📈 消耗统计

  • 按今日 / 7 天 / 30 天统计请求数、输入/输出/合计 Token
  • 按"渠道·模型"维度明细展示

🛡️ 智能容灾

  • 熔断机制:某模型连续失败 3 次熔断 60 秒,期间自动跳过
  • 请求转发时按质量分(可用率 + 延迟)排序候选,逐个尝试直到成功
  • 无感 fallback,用户端不会感知到单渠道故障

💾 系统托盘(后台常驻)

  • 关闭窗口时程序最小化到系统托盘,监控/轮询/转发持续运行不中断
  • 双击托盘图标或右键"显示窗口"即可恢复
  • 右键托盘 → "退出" 才会真正关闭程序
  • 图标纯代码生成,不依赖外部图片文件

📢 系统公告

  • 程序启动时自动弹出公告
  • 公告内容由作者远程维护,支持 markdown 渲染

🌙 其他

  • 深色 / 浅色模式切换(自动记忆)
  • 所有回复强制简体中文
  • 首次启动显示免责声明
  • 界面文字可自由选择复制

🚀 使用方式

方式一:桌面版(推荐普通用户)

  1. 下载 网关客户端.exe(见 Releases
  2. 双击运行 → 首次显示免责声明 → 点"我已阅读并同意"
  3. 自动打开程序窗口,首次会自动生成配置
  4. 在"上游提供商"里点"+ 添加提供商",填入你的 API 信息
  5. 把程序显示的 Base URLAPI Key 填入任何支持 OpenAI 格式的工具即可使用

桌面版无需安装 Python 环境,开箱即用。关闭窗口后程序会最小化到系统托盘后台运行,右键托盘"退出"可彻底关闭。程序同目录会自动生成配置文件。

方式二:网页版(自行部署)

适合想在服务器上部署、或本地有 Python 环境的用户。

1. 克隆仓库

git clone https://github.com/zk-2025/model-gateway.git
cd model-gateway

2. 安装依赖

pip install -r requirements.txt

3a. 以桌面窗口模式运行(带原生窗口)

python app.py

会启动服务并弹出一个原生桌面窗口(需额外安装 pip install pywebview)。

3b. 以纯网页模式运行(适合服务器)

python -m uvicorn app:app --host 0.0.0.0 --port 8000

然后在浏览器访问 http://你的服务器IP:8000

服务器部署建议用 uvicorngunicorn,可配合 nginx 反向代理。网页版和桌面版功能完全一致,只是运行形态不同。

4. 配置提供商

首次启动会自动生成 config.json(含本地密钥)。在管理面板的"上游提供商"里添加你的 API,或直接编辑 providers.json


⚙️ 配置文件说明

文件 作用 说明
config.json 本地密钥 首次启动自动生成,含 local_api_key
providers.json 上游提供商 配置你的 API 渠道(名称、Base URL、API Key、模型列表)
models_meta.json 模型元数据 模型别名、上下文长度、描述
routers.json 路由配置 自定义路由组(在面板里配置,自动生成)
history.jsonl 巡检历史 自动保留 30 天
usage.jsonl 消耗统计 自动保留 30 天

可参考仓库里的 config.example.jsonproviders.example.json


🔐 鉴权说明

接口 凭据
/v1/chat/completions/v1/models Authorization: Bearer <local_api_key>
/api/*(管理面板) Authorization: Bearer <local_api_key>

🧪 测试

pytest tests/ -v

📦 打包为 exe

pip install pyinstaller
pyinstaller 网关客户端.spec --noconfirm

生成的 exe 在 dist/ 目录,文件名 网关客户端.exe(无控制台桌面窗口版,双击即用)。


📄 License

CC BY-NC 4.0

About

🚀无限额度 AI 模型网关 | 聚合多个免费 LLM 额度,支持 OpenAI 兼容接口,智能轮询,无感容灾切换

Resources

Stars

12 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages