FreeLLMAPI 完整介紹:打造自己的 AI API Gateway,整合多家模型並統一管理 API
前言:為什麼需要 FreeLLMAPI?
現在 AI Coding Agent 工具越來越多,例如:
Kilo Code
Cline
Roo Code
Continue
OpenAI Codex
Claude Code
這些工具雖然各有特色,但在實際使用時,經常會遇到一個問題:
不同 AI 工具需要設定不同模型供應商的 API Key,模型切換、額度管理與備援也不夠集中。
例如,開發時可能同時使用 Google Gemini、Groq 或其他提供 OpenAI 相容 API 的雲端模型。每次更換模型或開發工具,都可能需要重新調整 API 設定。
這時候,可以考慮使用 FreeLLMAPI。
FreeLLMAPI 是一套可以自行部署的 AI API Gateway,將不同模型供應商的 API 整合到同一個服務入口,再透過統一的 API Key 提供給 AI Coding Agent 或其他應用程式使用。
它的核心概念是:
不需要讓每個 AI 工具直接管理所有模型供應商,而是讓 FreeLLMAPI 負責模型連線、金鑰管理與請求路由。
官方 GitHub:
https://github.com/tashfeenahmed/freellmapi
官方模型目錄:
https://freellmapi.co/models
一、FreeLLMAPI 是什麼?
FreeLLMAPI 可以理解成一個架設在自己電腦或伺服器上的 AI API 中介層。
它主要負責:
管理不同 AI 模型供應商的 API Key。
統一不同模型的 API 存取入口。
管理可使用的模型。
設定模型的 Fallback Chain。
提供統一的 Unified API Key。
透過 Dashboard 管理設定與查看請求狀態。
整體架構可以理解為:
AI Coding Agent
(Kilo Code / Cline)
|
|
Unified API Key
|
v
FreeLLMAPI
API Gateway
|
+---------+---------+
| | |
v v v
Gemini Groq Provider C
| | |
v v v
AI Model AI Model AI Model原本每個 AI Coding Agent 都需要直接設定模型供應商的 API Key。
導入 FreeLLMAPI 之後,Agent 只需要連接同一個 Gateway,再由 FreeLLMAPI 負責將請求送到對應的模型供應商。
這樣可以降低切換模型時的設定成本,也方便集中管理。
需要特別注意:FreeLLMAPI 本身不是 AI 模型,也不會自動提供免費的模型使用額度。實際使用成本與可用額度,仍取決於你設定的模型供應商及其方案。
二、FreeLLMAPI 的主要功能
1. 多家模型供應商整合
可以在 FreeLLMAPI 的 Keys 頁面新增不同供應商的 API Key。
例如:
Google Gemini
Groq
其他支援的模型供應商
自訂 OpenAI 相容 API Endpoint
這樣就不用在每個 AI Coding Agent 裡分別管理多組供應商金鑰。
實際支援的供應商與模型,應以目前 Dashboard 和官方模型目錄為準。
2. 統一 API Key
這是 FreeLLMAPI 最重要的功能之一。
完成供應商設定後,可以取得一組 Unified API Key。
格式通常類似:
freellmapi-xxxxxxxxxxxxxxxx之後,AI Coding Agent 不需要知道每一家模型供應商的原始 API Key,只需要使用這組統一金鑰連線到 FreeLLMAPI。
3. Fallback Chain 模型備援
當主要模型無法使用時,可以透過 Fallback Chain 設定其他可用模型作為備援。
例如:
主要模型:Gemini
|
v
備援模型:Groq
|
v
其他可用模型這樣可以降低單一模型供應商發生服務異常或額度限制時,對開發流程造成的影響。
不過,Fallback 並不代表所有錯誤都一定能自動解決。實際切換行為仍取決於 Gateway 的路由設定、供應商回應及模型相容性。
4. Dashboard 管理介面
FreeLLMAPI 提供 Web Dashboard,可以透過介面管理:
Provider API Keys
模型設定
Fallback Chain
請求與使用狀態
其他 Gateway 設定
不需要每次都直接修改程式碼或設定檔。
三、Windows 安裝方式
如果你是 Windows 使用者,我會建議優先使用官方提供的 Desktop App。
相較於自行架設 Docker 或從原始碼編譯,桌面版比較容易上手。
Step 1:下載安裝程式
前往 GitHub Releases:
https://github.com/tashfeenahmed/freellmapi/releases/latest
下載 Windows 對應的 .exe 安裝檔。
執行安裝程式,依照畫面指示完成安裝。
一般使用者不需要另外安裝:
Docker
WSL
Node.js
Python
注意:如果是自行從原始碼編譯 Windows 桌面版,才需要額外準備 Visual Studio Build Tools 的 C++ 工作負載與 Python。
Step 2:啟動 FreeLLMAPI
安裝完成後啟動 FreeLLMAPI。
它會以桌面常駐程式的形式執行,可以在 Windows 右下角系統匣找到程式圖示。
透過系統匣選單可以開啟 Dashboard。
官方文件也提供本機 Dashboard 入口:
http://localhost:3001如果瀏覽器無法直接開啟,建議從系統匣選單選擇 Open Dashboard。
Step 3:設定 Provider API Key
進入 Dashboard 後,找到:
Keys在這個頁面新增自己已經申請的模型供應商 API Key。
例如:
Google Gemini API Key
Groq API Key
其他 Provider API Key這些金鑰仍然需要自行向對應的模型供應商申請。
FreeLLMAPI 負責管理及轉送請求,不會替你產生供應商的免費額度。
Step 4:設定 Fallback Chain
新增 Provider API Key 後,可以依照自己的使用需求調整 Fallback Chain。
例如:
Primary Model
|
v
Fallback Model 1
|
v
Fallback Model 2建議將自己最常使用、相容性較好的模型放在前面,再將其他可用模型作為備援。
Step 5:取得 Unified API Key
回到 Keys 頁面,在頁面上方找到 Unified API Key。
也可以透過 Windows 系統匣:
FreeLLMAPI Tray
|
v
Copy Key複製後就可以將這組金鑰提供給 AI Coding Agent 使用。
Windows 桌面版不需要另外建立 Dashboard 帳號密碼,官方文件說明桌面版會自動使用本機帳號登入。
四、Docker 安裝方式
如果你希望將 FreeLLMAPI 部署在 Linux 伺服器、NAS 或其他 Docker 環境,也可以使用 Docker Compose。
官方建議使用 Docker Compose 同時啟動 API 與 Dashboard。
Step 1:下載專案
git clone https://github.com/tashfeenahmed/freellmapi.git
cd freellmapiStep 2:產生加密金鑰
FreeLLMAPI 需要 ENCRYPTION_KEY,用來保護儲存在資料庫中的敏感資料。
Linux / macOS:
ENCRYPTION_KEY="$(openssl rand -hex 32)"
printf "ENCRYPTION_KEY=%s\nPORT=3001\n" "$ENCRYPTION_KEY" > .envStep 3:啟動 Docker
docker compose up -d查看執行狀態:
docker compose ps查看服務日誌:
docker compose logs -f freellmapiStep 4:開啟 Dashboard
http://localhost:3001接著依照前面介紹的方式,新增 Provider API Key、設定 Fallback Chain,並取得 Unified API Key。
Docker 網路注意事項
預設情況下,服務只會綁定在:
127.0.0.1如果希望同一個區域網路內的其他設備也能連線,可以使用:
HOST_BIND=0.0.0.0 docker compose up -d但這樣會擴大服務的網路可見範圍。
官方也提醒,這個 Proxy 是單一使用者服務,應只在可信任的網路環境中開放,避免直接暴露在不安全的網路。
另外,如果模型供應商需要透過本機 Proxy 才能連線,Docker 容器內的 127.0.0.1 並不是宿主機的 localhost。
例如使用宿主機上的 Proxy,可以設定:
PROXY_URL=socks5h://host.docker.internal:7890實際連線仍需確認宿主機 Proxy 有接受外部連線。
五、Local Development:從原始碼啟動
如果你是開發者,也可以直接下載原始碼執行。
需要準備:
Node.js 20+
npm
下載專案:
git clone https://github.com/tashfeenahmed/freellmapi.git
cd freellmapi安裝依賴:
npm install產生加密金鑰:
ENCRYPTION_KEY="$(node -e 'console.log(require("crypto").randomBytes(32).toString("hex"))')"建立 .env:
ENCRYPTION_KEY=你的加密金鑰
PORT=3001啟動開發環境:
npm run dev開發環境的 Dashboard 使用:
http://localhost:5173API 請求則會透過 Vite 的開發 Proxy 轉送。
如果需要正式建置:
npm run build啟動建置後的服務:
node server/dist/index.js正式建置後,API 與 Dashboard 都會由 3001 Port 提供服務。
六、如何整合 Kilo Code?
對於使用 VS Code 的開發者,FreeLLMAPI 可以搭配 Kilo Code 使用。
整合的核心概念是:
讓 Kilo Code 透過 OpenAI Compatible Provider 連接 FreeLLMAPI,而不是直接連接 Gemini 或其他模型供應商。
Step 1:開啟 Kilo Code 設定
在 VS Code 開啟 Kilo Code 設定頁面。
選擇模型供應商設定。
Step 2:設定 Provider
選擇支援 OpenAI 相容 API 的 Provider 選項,例如 OpenAI Compatible。
填入以下資訊:
Provider:
OpenAI Compatible
Base URL:
http://localhost:3001/v1
API Key:
freellmapi-xxxxxxxxxxxxxxxx
Model:
你在 FreeLLMAPI 中啟用的模型 ID注意:
Base URL 必須指向 FreeLLMAPI,而不是原始模型供應商。
API Key 使用 Unified API Key。
Model 必須使用 FreeLLMAPI 中實際啟用且可用的模型 ID。
不同版本的 Kilo Code 介面名稱可能略有不同,請以目前版本的 Provider 設定為準。
Step 3:測試模型
完成設定後,可以先用簡單的問題測試:
請用繁體中文介紹目前專案的目錄結構。如果請求成功,代表 Kilo Code 已經可以透過 FreeLLMAPI 呼叫模型。
如果發生錯誤,可以依序檢查:
FreeLLMAPI 是否正在執行。
Base URL 是否正確。
Unified API Key 是否有效。
Model ID 是否存在。
對應 Provider API Key 是否已新增。
模型供應商是否有可用額度。
模型是否支援目前 Agent 所需的工具呼叫能力。
七、進階設定:Declarative Startup Config
除了 Dashboard 操作,FreeLLMAPI 也支援透過 JSON 設定檔進行宣告式初始化。
可以使用:
FREEAPI_CONFIG_PATH指定 JSON 設定檔路徑,或使用:
FREEAPI_CONFIG_JSON直接提供 JSON 設定內容。
例如:
{
"keys": [
{
"platform": "groq",
"key": "gsk_xxxxxxxxx",
"label": "main"
},
{
"platform": "google",
"key": "AIza_xxxxxxxxx",
"enabled": true
}
],
"models": [
{
"platform": "groq",
"modelId": "llama-3.3-70b-versatile",
"displayName": "Llama 3.3 70B",
"supportsTools": true,
"fallbackEnabled": true
}
],
"routing": {
"strategy": "balanced"
}
}這種方式適合:
自動化部署
多環境設定
Docker 部署
伺服器初始化
需要重複套用設定的環境
官方文件指出,這類設定具備冪等性,重複套用時會更新既有設定,而不是單純不斷新增重複資料。
另外,設定檔可能包含 Provider API Key、管理員密碼及 License Key 等敏感資料,必須妥善保護,不能直接提交到公開 Git Repository。
八、資料安全與加密機制
使用 API Gateway 時,不能只關心模型能不能呼叫,也必須注意 API Key 如何保存。
FreeLLMAPI 使用 SQLite 儲存相關設定。
官方文件說明,Provider API Key 等敏感資料會以 AES-256-GCM 加密後儲存。
主要資料包含:
freeapi.db
config.json
logs/freeapi.logWindows 桌面版的資料目錄:
%APPDATA%\FreeLLMAPI\例如:
C:\Users\<使用者>\AppData\Roaming\FreeLLMAPI\其中:
freeapi.db:儲存 API Keys、Models、Settings 等資料。config.json:視窗、主題、Port、LAN 等設定。logs/freeapi.log:程式執行日誌。
ENCRYPTION_KEY 非常重要
如果使用 Docker 或自行部署,請妥善保存 .env 裡的:
ENCRYPTION_KEY不要隨意更換。
因為資料庫中的敏感資料是透過這組金鑰加密的,直接更換金鑰並不會自動重新加密舊資料。
如果需要輪替加密金鑰,必須先依照官方文件使用 rotate-encryption-key 流程完成資料重新加密,並在操作前備份資料庫。
建議:
不要將
.env提交到 Git。不要將 Unified API Key 公開分享。
定期備份 SQLite 資料庫。
保留原本的 ENCRYPTION_KEY。
不要在不可信任的網路上直接暴露 Gateway。
九、更新與解除安裝
更新 Desktop App
桌面版支援透過系統匣或 Settings 檢查更新。
操作方式:
FreeLLMAPI
|
v
Settings
|
v
Check for updates如果有新版,可以下載並重新啟動完成更新。
官方也說明,更新過程會先建立更新前的資料庫備份。
更新 Docker
如果使用 Docker Compose:
docker compose pull
docker compose up -d記得保留原本的 .env 和資料 Volume,否則可能影響既有設定及 API Key。
Windows 解除安裝
前往:
Windows Settings
|
v
Apps
|
v
Installed apps
|
v
FreeLLMAPI
|
v
Uninstall注意:解除安裝不會自動刪除資料目錄。
如果希望連同 API Key、設定及日誌一起刪除,還需要另外刪除:
%APPDATA%\FreeLLMAPI\刪除前請先確認不需要保留資料或備份。
十、FreeLLMAPI 適合什麼樣的開發者?
我認為它比較適合以下使用情境:
1. 經常切換 AI Coding Agent 的開發者
例如同時使用 Kilo Code、Cline 或其他支援 OpenAI 相容 API 的工具。
透過統一入口,可以減少重複設定 Provider API Key 的工作。
2. 使用多家雲端模型的開發者
如果平常會比較不同模型的程式碼理解能力、生成品質及工具呼叫能力,可以透過 Gateway 集中管理。
3. 想建立模型備援機制的開發者
透過 Fallback Chain,可以設定不同模型之間的備援順序,降低單一 Provider 異常時的影響。
4. 想自行管理 AI API 入口的開發者
如果不希望每個 AI 工具都直接連接不同模型供應商,可以將 FreeLLMAPI 作為自己的 API 中介層。
十一、使用前需要了解的限制
FreeLLMAPI 並不是安裝後就能無限制使用 AI 模型。
有幾件事需要先釐清:
第一,FreeLLMAPI 不等於免費模型。
它提供的是 API Gateway。模型使用額度仍然取決於各家供應商的免費方案、付費方案及使用限制。
第二,不是所有模型都具備相同能力。
部分模型可能不支援 Tool Calling、Structured Output 或特定 API 功能。即使能成功連線,也不代表一定適合 AI Coding Agent。
第三,Fallback 不代表完全不會中斷。
如果所有設定的模型都沒有可用額度,或發生相容性問題,請求仍然可能失敗。
第四,Gateway 本身也需要維護。
包括 API Key 保護、資料備份、版本更新、網路連線與模型設定,都需要自行管理。
十二、結語:把模型管理與 Agent 工具分開
我認為 FreeLLMAPI 最有價值的地方,不是它能讓 AI 模型免費使用,而是它將「模型供應商管理」與「AI Coding Agent 工具」分離。
以前使用不同模型,可能需要在每個 Agent 裡面重新設定 Provider、API Key 和模型資訊。
現在可以透過一個 Gateway 統一管理,再讓不同 AI 工具連接同一個 API 入口。
整體架構變成:
AI Coding Agent
/ | \
/ | \
Kilo Cline Continue
\ | /
\ | /
FreeLLMAPI
|
Unified API Key
|
Model Provider
/ | \
Gemini Groq Others對於經常嘗試不同 AI Coding Agent、比較雲端模型,或希望建立個人 AI 開發環境的工程師來說,這是一個值得研究的工具。
AI Agent 負責開發流程,模型供應商負責提供推理能力,而 FreeLLMAPI 則負責把兩者串接起來。
這也是我認為 AI 開發工具逐漸成熟後,值得建立的一種基礎架構。
相關連結
FreeLLMAPI GitHub:https://github.com/tashfeenahmed/freellmapi
官方安裝文件:https://github.com/tashfeenahmed/freellmapi/blob/main/docs/en/install/01-install.md
官方模型目錄:https://freellmapi.co/models
GitHub Releases:https://github.com/tashfeenahmed/freellmapi/releases/latest
#FreeLLMAPI #AIAgent #KiloCode #Cline #OpenAICompatible #API管理 #AI開發工具 #DeveloperTools #LLM
沒有留言:
張貼留言