FreeLLMAPI上手指南:聚合34家免费模型,一键获取AI回复

0 阅读

为什么需要 FreeLLMAPI

对于个人开发者或学生来说,想体验最新的大语言模型(LLM)往往面临两个问题:一是各家厂商注册繁琐,二是免费额度分散且有限。Google AI Studio 给一点,Groq 给一点,Mistral 又给一点,单看都不多,而且一旦某个服务限流,代码就得跟着报错。

FreeLLMAPI 的思路很简单:把这些散落的免费资源“打包”。它支持 34 家 AI 提供商,汇聚了 635 个免费模型端点,通过一个统一的 /v1 接口对外提供服务。官方数据显示,这种叠加玩法每月能提供约 74 亿免费 token 的推理能力。

FreeLLMAPI 免费层叠加图:34 家提供商合计每月约 74 亿免费 token

更实用的是它的“智能路由”功能。当你发送请求时,如果首选的提供商因为流量高峰返回 429 错误(限流),FreeLLMAPI 会自动切换到下一个可用的模型。对上层应用而言,这个过程是透明的,你几乎感觉不到中断。这就好比给免费服务加了一层“负载均衡”,让白嫖变得更稳定。

FreeLLMAPI 路由流程图:一个请求进、最优免费模型出,自动故障转移与限额追踪

需要注意的是,该项目明确标注为“个人实验用途”(Personal experimentation only)。免费层没有服务等级协议(SLA)保障,稳定性不如付费 API,因此不适合直接用于生产环境的核心业务,但用来做原型开发、学习测试或日常辅助完全足够。

三种安装方式:选最适合你的

FreeLLMAPI 提供了三种部署路径,从极简到可控,任君选择。

方法一:一行命令(推荐 Docker 用户)

如果你已经安装了 Docker,这是最快的方式。只需在终端执行:

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

脚本会自动完成以下工作:

  1. 在用户主目录创建 ~/freellmapi文件夹。
  2. 生成加密密钥。
  3. 拉取最新镜像并启动容器。

这个命令是幂等的,也就是说,重复执行只会更新到最新版本,不会覆盖你已有的配置数据,放心运行。

方法二:Docker Compose 源码部署(适合进阶用户)

如果你希望更清楚地掌控环境变量和配置文件,可以使用源码部署。首先克隆仓库:

git clone https://gitcode.com/GitHub_Trending/fr/freellmapi
cd freellmapi

接着生成一个随机的加密密钥,并写入 .env 文件。在 Linux/macOS 下:

ENCRYPTION_KEY="$(openssl rand -hex 32)"
printf "ENCRYPTION_KEY=%s\nPORT=3001\n" "$ENCRYPTION_KEY" > .env

Windows PowerShell 用户则需要稍微绕一点弯子来生成随机字节:

$Bytes = New-Object Byte[] 32
[Security.Cryptography.RandomNumberGenerator]::Create().GetBytes($Bytes)
$ENCRYPTION_KEY = -join ($Bytes | ForEach-Object { "{0:x2}" -f $_ })
"ENCRYPTION_KEY=$ENCRYPTION_KEY`nPORT=3001" | Out-File -Encoding utf8 .env

最后启动服务:

docker compose up -d

方法三:桌面应用(Windows/macOS 小白友好)

如果你不想碰命令行,或者只是想在本地电脑上快速试试,桌面版是最省心的选择。下载安装包(Windows 为 .exe,macOS 为 .dmg),安装后它会常驻系统托盘。

桌面版内置了完整的路由器和仪表盘,无需配置账号密码即可自动登录。点击托盘图标就能打开管理界面,还能实时看到请求统计。对于不熟悉 Docker 网络配置的用户,这避免了端口映射和环境变量设置的麻烦。

首次配置:连接你的免费账户

安装完成后,浏览器访问 http://localhost:3001(桌面版可直接从托盘菜单点击“Open Dashboard”)。接下来的步骤很关键,决定了你能用到哪些模型。

1. 添加提供商密钥

进入仪表盘的 Keys 页面。你需要在这里填入各个提供商的 API Key。比如:

  • Google AI Studio 的 Key
  • Groq 的 Key
  • Mistral AI 的 Key
  • 或者其他任何支持 OpenAI 格式接口的服务商

即使你只有一个 Key 也能跑通,但为了发挥“自动故障转移”的优势,建议至少添加两三个不同厂商的 Key。

2. 理解安全性

很多用户担心把这么多 Key 填进去是否安全。FreeLLMAPI 采用 AES-256-GCM 算法对这些密钥进行加密,并存储在本地 SQLite 数据库中。只有在处理请求的瞬间,密钥才会在内存中解密使用,不会明文暴露在网络传输或日志中。当然,作为本地部署工具,确保你的服务器或电脑本身不被他人非法访问仍是前提。

3. 获取统一 API 密钥

配置好提供商 Key 后,在 Keys 页面顶部,你会看到一个以 freellmapi- 开头的长字符串。这就是你的“统一 API 密钥”。

FreeLLMAPI Keys 页面截图:管理提供商 API 密钥并复制统一密钥

以后你的所有代码、应用,只需要认这一个 Key 即可,无需再关心底层具体用的是哪家服务。

发出第一个免费 AI 回复

配置完毕,我们来验证一下是否成功。

方式一:内置 Playground(最快验证)

在仪表盘中找到 Playground 标签页。在输入框随便打一句话,比如“用一句话总结罗马帝国衰落的原因”,然后点击发送。

如果一切正常,你会很快收到回复。注意看回复下方的元数据,它会明确标注:

  • 实际由哪个提供商(Provider)响应
  • 使用了哪个具体模型(Model)
  • 耗时多少(Latency)

这是判断路由是否生效的最直观方式。

方式二:通过代码调用(Python 示例)

对于开发者,真正的价值在于将其接入现有项目。由于 FreeLLMAPI 完全兼容 OpenAI API 标准,你只需要修改 base_url 和 api_key 即可。

以下是使用 Python openai 库的示例:

from openai import OpenAI

# 初始化客户端,指向本地 FreeLLMAPI 服务
client = OpenAI(
    base_url="http://localhost:3001/v1",
    api_key="freellmapi-your-unified-key", # 替换为你复制的统一Key
)

# 发送请求
resp = client.chat.completions.create(
    model="auto",  # 关键:设为 auto 让路由器自动选择最优模型
    messages=[
        {"role": "user", "content": "用一句话总结罗马帝国的衰落。"}
    ],
)

print(resp.choices[0].message.content)

这里有两个细节值得注意:

  1. model="auto":这是 FreeLLMAPI 的特色参数。设置为 auto 时,路由器会根据实时评分(速度、可靠性、智能程度)自动挑选当前最合适的免费模型。你也可以指定 auto:fast(优先速度)或 auto:smart(优先智力),或者直接写死某个具体模型名如 gemma-2-9b-it。
  2. 响应头 X-Routed-Via:在 HTTP 响应头中,你可以查到这次请求实际是由哪家提供商处理的,方便调试和统计。

FreeLLMAPI Playground 截图:第一条免费 AI 回复,显示路由到的模型与延迟

除了聊天补全,FreeLLMAPI 还支持流式输出(Streaming)、工具调用(Function Calling)、Embedding 甚至图像生成,具体接口定义可参考项目文档 docs/api.md。

FreeLLMAPI Models 页面截图:免费模型的路由顺序与实时评分

智能路由是如何工作的?

很多人好奇,所谓的“智能”到底体现在哪?

当请求进入 FreeLLMAPI 时,路由器并非随机挑选,而是基于三个维度实时评分:

  1. 速度:历史响应延迟。
  2. 能力:模型的参数量及基准测试表现。
  3. 可靠性:最近的成功率。

路由器会优先选择评分高、密钥健康且未触及频率限制的模型。如果请求发出后遇到 429(Too Many Requests)或 5xx 服务器错误,系统会立即将该密钥暂时“冷却”,并在毫秒级时间内重试链路中的下一个模型。

这种机制极大地提高了免费服务的可用性。毕竟,免费层最容易遇到的问题就是“突然不可用”,而自动重试解决了这个痛点。

如果你想深入了解代码实现,核心逻辑位于 server/src/services/router.ts,而故障转移的重试循环则在 server/src/lib/fallback-loop.ts 中。

监控与调试:看清每一笔 Token 的去向

FreeLLMAPI 的仪表盘不仅是个配置后台,也是个不错的监控工具。

  • Models 页面:这里列出了所有可用的模型,并按当前的真实路由顺序排序。每个模型旁边都有实时的可靠性、速度和智能评分。你还能看到整个模型池剩余的月度 Token 预算,心里有底。

  • Analytics 页面:提供了更宏观的数据视图。你可以查看过去 24 小时到 90 天内的请求量、成功率、Token 进出总量以及平均延迟。数据还按提供商进行了拆分,让你清楚知道哪家服务贡献最大,哪家经常掉链子。

FreeLLMAPI Analytics 页面截图:请求量与 token 用量统计面板

常见问题排查

在使用过程中,可能会遇到一些小障碍,这里整理了一些高频问题:

Q: 需要设置密码吗? A: 桌面版不需要,启动即自动登录。如果是通过 Docker 或源码部署的服务器版,首次启动时需要设置邮箱和密码。

Q: 忘记密码怎么办? A: 在登录页点击“Forgot password?”,重置链接或验证码会直接打印在服务器的控制台日志中。注意,重置码通常只有 15 分钟有效期。

Q: 局域网其他设备能访问吗? A: 默认情况下可能只绑定 localhost。如果需要局域网访问,启动 Docker 时需设置环境变量 HOST_BIND=0.0.0.0,例如:HOST_BIND=0.0.0.0 docker compose up -d。请确保仅在可信网络环境下这样做,以免暴露 API Key。

Q: 日志在哪里看? A: Docker 用户运行 docker compose logs -f freellmapi 即可实时查看。桌面版用户可以在系统托盘菜单中选择“Open Logs Folder”。

接下来可以玩什么?

跑通“安装-配置-调用”流程后,你可以尝试更多进阶玩法:

  1. 接入编程智能体:Claude Code、Codex CLI、Aider 或 Cline 等编程助手都支持自定义 API 端点。按照 docs/clients.md 中的指南配置,你可以让这些强大的编程助手免费运行在你的本地环境中。

  2. 添加本地模型:如果你本地运行了 Ollama、vLLM 或 LM Studio,可以将它们作为自定义端点添加到 Keys 页面。这样,FreeLLMAPI 就能混合调度云端免费模型和本地私有模型,实现成本与隐私的平衡。

  3. 尝试 Fusion 多模型合成:这是一个有趣的功能。请求虚拟的 fusion 模型时,系统会并行调用多个免费模型生成草稿,再由一个“裁判模型”综合这些草稿,输出一份质量更高的答案。虽然延迟会增加,但在某些复杂任务上效果显著。

最后再次提醒,FreeLLMAPI 是一个优秀的个人实验工具,它降低了接触前沿 AI 技术的门槛。但鉴于免费层的不稳定性,若你要开发面向公众的商业产品,请务必在发布前切换至稳定的付费 API 方案。