FreeLLMAPI 开源聚合代理,多平台免费额度聚合

FreeLLMAPI 开源聚合代理,多平台免费额度聚合

🚀 什么是 FreeLLMAPI?

FreeLLMAPI 是一个开源的 OpenAI 兼容 API 聚合代理,它能将数十家 AI 服务商提供的免费额度整合到一个统一接口后面。

简单来说:你不再需要记住每个平台的 API 文档、SDK 和限流规则,只需配置一个本地代理,就能像调用 OpenAI 一样使用 Google Gemini、Groq、Mistral、智谱等多家平台的免费模型,且所有路由、故障切换和用量追踪都是自动完成的。

目前该项目在 GitHub 上已获得超过 5100 个 Star,广受开发者关注。

✨ 核心功能

1. 多平台免费额度聚合

FreeLLMAPI 支持的提供方非常广泛。据最新数据,它已接入约 34 家 AI 服务商,提供 635 个免费模型端点,合计每月约 74 亿 Token 的免费推理额度。

主要支持的平台包括:

  • Google Gemini:Gemini 2.5 Flash、2.0 Flash 等
  • Groq:Llama 3.3 70B、Llama 4、GPT-OSS 等
  • Cerebras:Llama 3.3 70B、Qwen3 235B 等
  • Mistral:Mistral Small、Large 3、Codestral 等
  • OpenRouter:20+ 免费模型(:free 后缀)
  • GitHub Models:GPT-4.1、GPT-4o、GPT-4o Mini
  • 智谱(Z.ai):GLM-4.5、GLM-4.7 Flash
  • NVIDIA NIMCohereCloudflare Workers AIHuggingFaceOllama(本地模型)等

2. OpenAI 兼容,零门槛接入

任何支持 OpenAI SDK 的客户端(如 LangChain、LlamaIndex、Cursor、Cline、Continue 等),只需修改 base_url 指向本地服务即可直接使用,无需改动业务代码。

from openai import OpenAI

client = OpenAI(
    base_url="http://localhost:3001/v1",  # 只需改这一行
    api_key="freellmapi-your-unified-key",
)

response = client.chat.completions.create(
    model="auto",  # 智能路由自动选择最优模型
    messages=[{"role": "user", "content": "Hello!"}],
)

3. 智能路由与自动故障转移

  • 自动选择最优模型:路由器会从你配置的密钥中,选择优先级最高、当前健康且未超限的模型来响应请求。
  • 自动故障切换:如果某个平台返回 429(限流)或 5xx(服务错误),系统会自动将其标记为冷却状态,并尝试下一个提供方,最多重试 20 次。
  • 响应头反馈:每次请求的响应头会带上 X-Routed-Via(实际处理请求的平台/模型)和 X-Fallback-Attempts(故障转移尝试次数),方便调试追踪。

4. 会话粘性(Sticky Sessions)

多轮对话会锁定同一个模型 30 分钟,避免中途切换模型导致输出质量跳变或上下文断裂。

5. 加密存储,安全可控

你添加的各平台 API 密钥会在存入 SQLite 数据库前使用 AES-256-GCM 加密,解密只在发起请求前于内存中进行,降低密钥泄露风险。

6. 配套管理面板

项目自带一个 React + Vite 构建的可视化管理后台,支持:

  • 管理各平台密钥(查看健康状态、最后检测时间)
  • 拖拽调整回退链优先级
  • Playground 在线测试对话
  • 查看 24h/7d/30d 的请求量、成功率、Token 用量、延迟等分析数据

🔧 快速上手

方式一:Docker 一键安装(推荐)

curl -fsSL https://freellmapi.co/install.sh | bash

该脚本会自动创建 ~/freellmapi 目录,生成加密密钥,拉取镜像并启动容器。

方式二:源码运行

git clone https://github.com/tashfeenahmed/freellmapi.git
cd freellmapi
npm install

# 生成加密密钥
cp .env.example .env
echo "ENCRYPTION_KEY=$(node -e "console.log(require('crypto').randomBytes(32).toString('hex'))")" >> .env

# 启动服务 + 管理面板
npm run dev

启动后,访问 http://localhost:3001(或开发模式下的 http://localhost:5173)进入仪表盘。

💡 典型使用场景

  • 个人开发者本地实验与原型验证:快速接入多家模型进行对比测试
  • 多模型切换与压测:统一接口下轻松切换模型,对比效果和性能
  • 低功耗设备常驻代理:项目空载仅约 40MB RSS,可在树莓派等 ARM 设备上运行
  • 编程智能体(Coding Agent)集成:项目为 Claude Code、Codex CLI、Cline、Aider、Continue 等主流编程助手提供了专门的配置命令,如 npx freellmapi setup-claude --url http://localhost:3001

⚠️ 注意事项

  • 免费额度有上限:各平台的免费额度并非无限,高峰期可能降级到较小模型。项目官方也明确说明为个人实验用途,不保证生产环境的可靠性。
  • 模型水平有限:聚合的免费模型最高大致在 Llama 3.3 70B、Gemini 2.5 Pro 级别,无法提供 GPT-5 或 Claude Opus 级别的推理能力。
  • 本地优先,单用户设计:FreeLLMAPI 定位为本地优先、单用户的代理服务,不适用于多租户或生产级商业化场景。

FreeLLMAPI 官方主页:freellmapi.co
GitHub 仓库:tashfeenahmed/freellmapi