FreeLLMAPI 開源 AI API 閘道:把十幾家免費額度收進一個端點,Claude Code 與 OpenAI SDK 都能接

FreeLLMAPI 是一個 MIT 開源、TypeScript 寫的自架 AI API 閘道(GitHub 超過 1.4 萬顆星),把 Google、Groq、Cerebras、Mistral、GitHub Models 等十幾家大模型廠商的免費額度收進同一個 OpenAI 相容端點,連 Claude Code 設好環境變數都能直接指過來。它內建自動故障轉移、每把 key 的用量計數、AES-256-GCM 加密與單一統一 key,閒置約 40MB 記憶體,可跑在樹莓派上。沒有前沿模型、智能會隨白天遞減、無 SLA,適合個人開發者跑原型與學多模型路由,不適合正式對外服務。

用 AI 摘要這篇文章:

你想用 Claude Code 或 OpenAI SDK 做點東西,卻被 API 帳單卡住。每家 AI 都給了一點免費額度,但單獨用都不夠看,想把它們全接起來,又得面對十幾套 SDK、十幾種限流規則、十幾個可能出錯的地方。FreeLLMAPI 是一個跑在你自己機器上的開源閘道,把 Google、Groq、Cerebras、Mistral、GitHub Models 等十幾家的免費額度收進同一個 OpenAI 相容端點,連 Claude Code 都能直接指過來用。

一句話結論:適合想把零碎免費額度收攏、輪著用的個人開發者;不適合正式對外服務、團隊共用,或需要 GPT-5、Claude Opus 這類前沿推理的場景。它是把零碎免費額度黏起來的工具,不是取代付費 API 的免費午餐。

它實際在做的事,是路由而不是魔法

你不把請求直接丟給某一家 AI,而是先丟給本地這個閘道。閘道做的事說白了就三件:在每次請求時判斷每把上游 key 是否健康、用計數器追蹤每家額度還剩多少、遇到故障就自動換下一條路。計數的顆粒度頗細,會分別記下每把 key 在每個模型上的每分鐘請求數、每日請求數,以及每分鐘與每日的 token 用量,所以閘道挑模型時看的不是粗略的「這家還活著」,而是「這把 key 在這個模型上,現在還在免費額度內嗎」。

具體流程是這樣。每次請求進來,閘道挑一個當下健康、額度還在安全範圍內的模型,把請求轉過去。如果那家回傳 429 頻率超限、5xx 伺服器錯誤或直接逾時,閘道會把那把 key 丟進短暫冷卻池,然後悄悄換到備用鏈上的下一個模型,最多重試 20 次。對你的應用來說,多半只感覺到回應慢了一點,不會直接斷掉。

舉個具體的例子。假設你的備用鏈排成 Groq 上的 Llama 3.3 70B、Cerebras 上的某個免費模型、OpenRouter 上的 Mistral 系列,白天前段的額度陸續被吃光後,閘道不會回報錯誤,而是默默把請求往下走到第二個、第三個模型。你查 X-Routed-Via 才會發現,原來這次回應已經不是最前面那個模型給的。

FreeLLMAPI 官方 Fallback Chain 頁面,顯示模型優先順序、provider 與 token budgetPin
Fallback Chain 頁面可調整模型優先順序,並查看每個 provider 的 token budget。

它還做了一件容易被忽略、但其實很關鍵的事:多輪對話會在 30 分鐘內黏在同一個模型。這不是偷懶,是因為對話中途換模型,新模型不知道前面聊過什麼,很容易出現幻覺或前後矛盾。黏住同一個模型,能把這種傷害降到最低。

每個回應都會帶一個 X-Routed-Via 標頭,告訴你這次實際上是哪一家、哪個模型服務的;如果中間換過線,還會看到 X-Fallback-Attempts。這對除錯和理解「我現在到底用到哪個等級的模型」很有幫助。

一個端點,餵飽各種 AI 用戶端

這裡才是 FreeLLMAPI 最實用的地方,也是它跟一般額度聚合器最大的差別。它不只相容 OpenAI 格式,而是把好幾種主流 API 線都想通了:

  • OpenAI SDK:把 base_url 指到本地閘道,官方 SDK 與 LangChain、LlamaIndex 這類相容用戶端都能直接用。
  • Claude Code 與 Anthropic SDK:閘道實作了一份 Anthropic Messages API,所以 Claude Code 設好環境變數就能跑在你的免費額度上。重點是把 ANTHROPIC_BASE_URL 指到閘道的根位址(例如 http://localhost:3001,不要自己補 /v1/messages,Claude Code 會自己加上),並用 ANTHROPIC_AUTH_TOKEN 帶統一 key,千萬不要設 ANTHROPIC_API_KEY,否則 Claude Code 會把它當成衝突的第一方憑證而拒絕啟動。
  • 新版 Codex CLI:透過 /v1/responses 端點支援,這是近期 Codex 版本需要的格式。
  • 編輯器自動完成/v1/completions 讓 Continue 這類送舊式 prompt 與 suffix 請求的 ghost-text 工具,也能掛上免費額度做行內補全。
  • 其他:embeddings、圖片生成、文字轉語音也都路由得到。

這裡有個設計細節值得給開發者看:embeddings 的故障轉移刻意不跨模型。不同模型的向量空間彼此不相容,硬在中途換模型會弄壞你建立在上面的向量庫,所以 embeddings 是以「同一家族」為單位做備援,只在那個家族的不同 provider 之間換,絕不跨到另一個模型。這種對邊界條件的小心,正是它比一般額度聚合器可靠的地方。

說白一點,只要你的工具能改 base_url,幾乎都能接。這對手上同時有好幾個 AI 編程與聊天工具、又想控制成本的開發者來說,等於把分散的免費額度換成一本通用護照。如果你也在意這些工具的用量怎麼追蹤,可以看看 不用交出 API Key 就能掌握 AI 工具用量的 CodexBar,思路剛好互補。

FreeLLMAPI 官方 Playground 頁面,顯示聊天測試、路由結果、模型 ID 與延遲資訊Pin
Playground 送出測試後,會顯示實際路由到的 provider、模型 ID 與延遲。

自架不難,但它是本地優先、單用戶

安裝門檻很低。有 Docker 的話,一行 curl 安裝腳本就能把容器跑起來;也可以用 docker compose up -d;連 macOS 與 Windows 都有現成的桌面版安裝包可以直接下載。預設監聽 port 3001,資料存在 SQLite 裡,閒置時只佔約 40MB 記憶體,丟到樹莓派上跑也沒問題。如果你的部署環境磁碟不持久,例如某些雲端小主機隨時可能清空儲存空間,它還能設定一份加密的資料庫備份,定期上傳到你自己指定的位置,換機或重裝時再把金鑰與備份還原回來,不會因為磁碟被清空就弄丟所有 key 設定。

FreeLLMAPI 官方 Keys 管理頁,顯示 provider API key 狀態、模型與額度資訊Pin
Keys 頁面集中管理各 provider 的 API key、模型與額度狀態。

安全設計是它值得肯定的地方。你的上游 provider key 在寫進 SQLite 之前,會先用 AES-256-GCM 加密,解密只在你發請求的那一刻發生在記憶體裡。對外則只暴露一組 freellmapi- 開頭的統一 key,你的應用永遠碰不到原始的 provider key。這套「一把統一 key 進、多把真實 key 藏在後面」的設計,觀念上跟 安全傳遞 API Key 與密碼的 DropLock 是同一個方向:把敏感憑證收在最少人能看到的地方。

不過有個前提必須講清楚:它是單用戶設計,沒有多租戶鑑權。容器預設只綁 127.0.0.1,想從區網其他設備連,得自己改 HOST_BIND=0.0.0.0,而且只該在信任的內網做。千萬別直接開到公網,把它當成一個對外的 API 服務經營,那既超出它的設計,也踩到下一節要談的條款紅線。

用之前你得先認的幾個限制

第一,沒有前沿模型。免費額度的天花板大約到 Llama 3.3 70B、GLM-4.5、Qwen 3 Coder、Gemini 2.5 Pro 這個等級。想要 GPT-5、Claude Opus 那種推理深度,這裡拿不到,請乖乖付費買正規 API。

第二,智能會隨著白天往下掉。你最愛用的強模型,通常每日額度也最少,會最先被吃光。一旦見底,閘道就順著你設的優先順序往下掉到較弱的模型,直到世界協調時間午夜才重置。意思是同一個端點,白天越晚越笨,深夜常常只剩小模型在值班。重要的、需要穩定品質的工作,別排到這個時段跑。

FreeLLMAPI 官方 Analytics 頁面,顯示請求量、成功率、token 用量、延遲與 provider 分布Pin
Analytics 頁面呈現請求量、成功率、token 用量、平均延遲與 provider 分布。

第三,延遲變動很大,而且沒有 SLA。你拿到的是當下剛好有額度的那一家,逐字串流時若中途換線,還可能感覺到明顯停頓;對延遲敏感的即時問答場景,最好在前端做點緩衝。需要穩定與保證,請用付費 provider。

第四,免費額度本身會無預警變動。廠商經常調整、放寬或直接取消免費層,一旦發生,你就會開始收到 429 或驗證錯誤,直到你更新模型目錄為止。這不是程式的 bug,而是疊免費額度這條路天生要承受的不確定性,挑工具前要先認了這一點。

疊免費額度,合規嗎?

很多人最想問、卻最常被輕輕帶過的是合規。你拿各家免費 key 自架一個統一閘道,第一個會踩到的其實不是技術,而是每家廠商對「這些免費額度能怎麼用」的限制。程式本身合法,真正要緊的是你跟上游簽下的條款。專案作者在文件裡自己做了一次條款整理,結論值得參考:多數 provider 對「個人、單用戶、自架」這種用法沒有明文禁止,但有幾個明確的地雷。

最嚴格的是 Cohere,條款明文禁止「個人、家庭或家用」用途,建議直接避開。Google Gemini 在 2026 年 3 月把適用範圍收窄到「專業或商業用途」,自架開發者代理還算站得住腳,但這是新增的條款,要留意。NVIDIA NIM 與 GitHub Models 的免費層則標明僅供「評估、原型」使用,不能用於正式生產。Cloudflare Workers AI 的條款狀態比較模糊,專案作者自己也標為待確認,使用前建議自行核對它的最新服務條款。

把它整理成幾條實用守則就是:一個帳號對應一家、不轉售、不分享給其他人、別把免費額度當付費後端操。守住這幾條,多數 provider 的條款對個人單用戶自架沒有明文禁止,但這不等於官方保證或默許。這裡講的是資訊整理,不是法律建議,最終還是得以你接受條款當下的各家最新規定為準。

和 LiteLLM、OpenRouter、Ollama 差在哪

挑這類工具時,通常會拿 LiteLLM、OpenRouter、Ollama 來比,但它們其實在解不同的問題。

LiteLLM 當對照,兩者關心的層級不同。LiteLLM 是替團隊與生產環境設計的控管閘道,重點放在額度怎麼分配、用量怎麼稽核這類企業需求;FreeLLMAPI 完全不碰這些,它只服務「一個人想把幾把免費 key 收起來輪著用」這個場景,所以輕、好讀,但能管的範圍也就那麼大。說到底,差別是「誰出錢、誰管 key」:LiteLLM 假設你付得起、要管一群人,FreeLLMAPI 假設你只管自己、想省著用。

OpenRouter 比,差別在誰來保管 key。OpenRouter 是託管在雲端的聚合服務,有免費模型也有付費方案,你的請求得經過它的伺服器;FreeLLMAPI 則完全自架,key 從頭到尾留在你自己的機器上,不經過第三方。想省事、願意付費或要穩定,OpenRouter 仍是較輕鬆的選擇;要完全自持、不信任第三方,才輪到 FreeLLMAPI。

Ollama 比,根本是兩件事。Ollama 是在你自己的電腦上「跑模型」,吃的是你的 GPU 與 CPU;FreeLLMAPI 不跑任何模型,只把請求路由到雲端的免費額度。兩者還能串在一起:Ollama 可以當成 FreeLLMAPI 裡的一個自訂 provider。如果你好奇自己的機器到底跑不跑得動本地模型,先看 一鍵檢測電腦能不能跑本地 AI 大模型的 Can I Run AI 會更有概念。

適合誰,不適合誰

最對題的是兩種人。一種是手上已經攢了 Google、Groq、Mistral、GitHub Models 這些零碎免費 key、額度卻從來沒用滿的人,閘道替你把這些散落額度收攏成一個出入口。另一種是想搞懂「一個請求進來,閘道怎麼在十幾個 provider 之間挑選、冷卻、換線」的人,這份 TypeScript 原始碼把 sticky session、embedding 不跨模型、per-key 計數這些設計都攤開來,是少見能逐個環節對照的範例。

不適合的場景,問題通常不在規模,而在「要求」。需要 SLA 的對外服務、需要 GPT-5 或 Claude Opus 等級推理的任務、需要多租戶鑑權與帳單的團隊平台,這三類需求 FreeLLMAPI 在設計上就沒打算滿足,硬上只會在最需要穩定的那一刻掉鏈子,這些場景從第一天起就該編付費 API 的預算。若你只是想追蹤自己付費 API 的用量,Windows 上的 DeepSeek API 監控工具是更直接對題的選擇。

常見問題

要付費嗎? 核心完全免費,MIT 開源。它另外有 Premium 方案,大約是每年 19 美元或終身 49 美元,差別在模型目錄的更新頻率:免費版每個月一次快照,Premium 每 2 到 3 天抓一次最新清單。這不只是「晚點拿到新模型」而已,免費版意味著廠商若中途取消或調整免費層,你最晚要等一個月才拿到新目錄,那段時間會持續收到 429 或驗證錯誤。加密與自架本身不會因為付不付費而不同。

會被上游封號嗎? 程式本身不違規,風險在你接受的條款。別轉售、別多人共用、別當付費後端操,多數 provider 的條款對個人單用戶自架沒有明文禁止,但這不等於官方保證或默許,會不會被限流仍視各家規定。Cohere 因為明文禁止家用,建議直接避開。

能跑 Claude Code 嗎? 能接得上,但要分清楚「接得起這個用戶端」和「拿到 Claude 模型」是兩回事。把 ANTHROPIC_BASE_URL 指到閘道的根位址(例如 http://localhost:3001,不要自己補路徑),用 ANTHROPIC_AUTH_TOKEN 帶統一 key,不要設 ANTHROPIC_API_KEY。Claude 系列的模型名稱只會被對應到你的免費模型池,並不會給你真正的 Claude Opus,免費額度裡根本沒有前沿模型。

跟直接用 OpenRouter 差在哪? OpenRouter 託管在雲端,請求經過它的伺服器;FreeLLMAPI 自架,key 不離開你的機器。要省事付費用 OpenRouter,要完全自持用 FreeLLMAPI。

支援幾家廠商、一個月大約多少額度? 官方 README 標榜十六家、大約十七億 token 一個月,但這個數字會隨各廠商免費層的增減而變動,實際能用到多少,以你架好當下閘道裡的目錄為準。

新手先申請哪幾家的 key? 門檻最低、額度也算大方的是 Google、Groq、Mistral 與 GitHub Models 這幾家,先把這四家的免費 key 拿到手,就足夠排出一條像樣的備用鏈了。

接下來怎麼動手

1. 先確認手上至少有 3 家 provider 的免費 key,Google、Groq、Mistral 通常是最容易拿到的幾家。

2. 用 Docker 一行把閘道跑起來,在 Keys 頁面把 key 加進去,依照你的偏好排好 Fallback Chain 的優先順序。

3. 把 OpenAI SDK 或 Claude Code 的 base_url 指到 http://localhost:3001,用 model="auto" 發一個請求,看 X-Routed-Via 確認真的通了。

對工具開發者來說,FreeLLMAPI 不只是省錢,更是觀察多模型路由怎麼設計的活教材。原始碼與最新的支援廠商清單都在 GitHub 專案頁,想深入了解或貢獻都從那裡出發。

Sliven 褚崇名
Sliven 褚崇名

每日分享科技新知、免費資源以及 WordPress、虛擬主機相關主題,任何問題歡迎在科技月球下方留言,或是發送 Email 至 [email protected] 與我聯繫。

文章: 698

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *


目錄
Share to...