📌 本文重點
- 用 Frugon 分析 LLM 使用紀錄與成本結構
- 比較便宜/開源與高價模型的品質差異
- 產生模型路由建議,讓簡單任務改用便宜模型
只要你大量用 GPT/Claude 跑程式與 Agent 工作流,Frugon 要解決的,就是「到底哪些請求可以改用便宜或開源模型」,讓帳單直接往下掉。
- Frugon GitHub:https://github.com/Rodiun/frugon
- 原始介紹(Show HN):https://news.ycombinator.com/item?id=42005254
核心功能:把「模型選錯」找出來
1. 讀取 API 日誌,算出你真實的模型成本結構
Frugon 是一個本機 CLI 工具,核心第一步就是把你的 LLM 使用紀錄抓進來,算出每種任務到底花了多少錢。
可採取的行動:
- 在你常用的 AI 平台(OpenAI / Anthropic)導出使用紀錄:
- OpenAI:到 Usage 頁面,下載帳單/log 檔(或透過 API 取得
responses.jsonl類似格式)。 - Anthropic:到帳務或使用頁面,匯出調用紀錄(通常是 JSON 或 CSV)。
- 在本機安裝
frugon:
bash
pip install frugon - 在有日誌檔的資料夾執行:
bash
frugon analyze --logs ./logs
Frugon 會讀取「OpenAI-style」的日誌格式,統計:
- 各模型的使用次數、token 用量
- 各任務類型(例如:搜尋、程式生成、摘要)的大致成本占比
💡 關鍵: 透過實際日誌統計,你可以精確看到成本主要消耗在哪些模型與任務,而不是憑印象猜測。
你會看到一個很直接的事實:大量錢其實花在一些很簡單的請求上,而不是最難的那 5% 任務。
2. 對同一任務測試不同模型,估算品質差異
真正的重點,是 Frugon 不只算錢,它會幫你試:同一個 prompt,如果改用便宜模型、甚至改用本地開源模型,結果差多少。
可採取的行動:
- 準備你想比較的模型,例如:
- 雲端:
gpt-4.1-mini、gpt-4.1、claude-3.5-sonnet、claude-3-haiku - 本地(透過 Ollama 或 vLLM):
glm-4、glm-5.2、phi-4、qwen2.5等 - 在 Frugon 設定中,把不同模型接到同一組任務樣本:
bash
frugon compare \
--logs ./logs \
--models gpt-4.1-mini,gpt-4.1,glm-5.2 \
--provider-config ./providers.yaml - 查看報告:Frugon 會對每個任務類型輸出:
- 成本:每千 token 價格,預估每月支出
- 品質:用自動評估(例如比較回覆結構、關鍵字覆蓋率,或你自定的評分規則)估算「能否接受」
實際效果:
- 你會發現像 Databricks 報告提到的
pi-coding-agent、GLM 5.2等模型,在程式碼任務上,成本大幅低於主流付費模型,但通過率相近甚至更好(參考:https://www.reddit.com/r/LocalLLaMA/comments/1usrek0/)。 - 對於簡單篩選、摘要、規則轉換類任務,
gpt-4.1-mini或開源模型往往「好到足夠」,沒必要動用最貴那一檔。
💡 關鍵: 對相同任務批量 AB 測試不同模型,可以找到「成本明顯較低但品質仍達標」的替代方案。
3. 自動給出「可以改用便宜模型」的路由建議
分析完日誌與模型表現後,Frugon 會告訴你:哪些呼叫可以安全地改路由到便宜模型,還能估出你能省下的大致比例。
可採取的行動:
- 在分析後產出的建議中,鎖定成本最高的前幾個任務類型,例如:
code_generation_draft(寫樣板、測試腳架)search_scan(大量文本掃描、RAG 初步檢索)bulk_copywriting(批量行銷文案)- 將這些任務標記為「可路由到便宜模型」,輸出為一份路由規則 YAML 或 JSON:
“`yaml
routes:- task_type: code_generation_draft
preferred_model: glm-5.2
fallback_model: gpt-4.1 - task_type: search_scan
preferred_model: gpt-4.1-mini
fallback_model: claude-3.5-sonnet
“`
- task_type: code_generation_draft
- 在你的 Agent 或服務端程式裡,導入這份規則,改成:
- 先看任務類型(或 prompt tag)
- 符合路由規則時用便宜/開源模型
- 只有在評分不夠好時才回退到主力高價模型
這就是 Towards AI 提到的「模型路由+編排(orchestration)」的實作方式:成本問題不是模型本身,而是你怎麼調度它們(參考:https://pub.towardsai.net/your-ai-coding-bill-is-not-a-model-problem-its-an-orchestration-problem-eeeacb340d1e)。
💡 關鍵: 透過明確的路由規則,先用便宜模型處理大部分請求,再在需要時回退到高價模型,可以在不犧牲品質的前提下大幅壓低帳單。
適合誰用:幾個很具體的場景
1. 公司內部 Coding Agent/AI 助理
如果你有:
- 內部的程式碼自動補全、重構、寫測試的 Agent
- 或自己用 GPT/Claude 當主力 coding 助理
可採取的行動:
- 用 Frugon 分析最近一個月的 coding 相關 API 日誌。
- 把任務粗分為:
- 簡單工作:自動補全、樣板代碼、註解、測試腳架
- 困難工作:跨模組設計、大重構、疑難除錯
- 參考 Towards AI 的策略:讓簡單工作全部路由到本地開源模型(例如
GLM 5.2、phi-4),只在困難工作時才叫GPT-4.1/Claude 3.5。(https://pub.towardsai.net/how-to-cut-your-ai-coding-bill-without-giving-up-the-frontier-model-870469d0d27d)
2. 批量文案生成服務
如果你在做:
- 大量短文案(社群貼文、電郵片段)
- SEO 標題、meta 描述、A/B 測試版本
可採取的行動:
- 把最近的批量文案請求丟給 Frugon 分析,看哪幾類 prompt 消耗最多 token。
- 用較便宜模型(例如
gpt-4.1-mini或本地qwen2.5)重跑一部分樣本,看品質是否能接受。 - 把「可接受的任務類型」在路由規則裡標記為便宜模型優先,主力模型只負責:
- 重要 campaign 的首稿
- 關鍵頁面(首頁/定價頁)的文案
3. RAG 查詢服務、搜尋掃描類應用
如果你有:
- 內部知識庫問答網站
- 客戶支援聊天機器人
大多數成本在於「長上下文+大量查詢」,而不是最終回答的語氣。
可採取的行動:
- 用 Frugon 找出所有包含超長 context 的調用(RAG 問答)。
- 評估:檢索+初步摘要能否先用便宜模型處理,再將壓縮後的內容交給高階模型發 final 回覆。
- 實作一條省錢路徑:
- 便宜模型/開源模型:負責檢索結果摘要、濾掉不相關段落(上下文壓縮)。
- 高階模型:只在最後一次,基於壓縮後資訊生成答案。
怎麼開始:從第一次分析報告,到省錢工作流
步驟 1:在本機安裝 Frugon
Frugon 是 MIT 授權、可本地離線跑的 CLI 工具:
pip install frugon
frugon --help
建議在專用虛擬環境裡安裝,方便後續更新和管理:
python -m venv .venv
source .venv/bin/activate # Windows 用 .venv\Scripts\activate
pip install frugon
步驟 2:導出並載入 OpenAI/Anthropic 使用紀錄
- 從各平台匯出最近 2–4 週的 API 使用紀錄到
./logs目錄。 - 若格式不同,可先轉成近似 OpenAI responses JSON 結構(Frugon 文件裡有範例結構,可在 GitHub repo 查看)。
- 跑第一次分析:
bash
frugon analyze --logs ./logs --out report.json
完成後你會拿到:
- 各模型的 token 用量和估算費用
- 各任務類型的成本分布
步驟 3:設定模型比較與路由建議
- 建一個
providers.yaml,配置多家模型來源:
yaml
openai:
api_key: $OPENAI_API_KEY
anthropic:
api_key: $ANTHROPIC_API_KEY
ollama:
host: http://localhost:11434 - 跑比較:
bash
frugon compare \
--logs ./logs \
--models gpt-4.1-mini,gpt-4.1,glm-5.2,phi-4 \
--provider-config ./providers.yaml \
--out routing_suggestions.yaml - 根據輸出的
routing_suggestions.yaml,在你的後端服務加上簡單的模型路由: - 以
task_type、max_tokens或importance_level作為分流條件 - 優先走便宜/本地模型,必要時再升級到高價模型
步驟 4:用表格想清楚你的模型池搭配
為了方便設計工作流,你可以把常用模型與工具列成表格:
| 名稱 | 核心功能 | 免費方案 | 適合誰 |
|---|---|---|---|
| Frugon | 讀取日誌、算成本、模型比較 | 開源 MIT,本機 | 有 API 日誌的開發者/團隊 |
| GLM 5.2 | 程式碼生成、一般助手 | 開源,可本地 | 內部 coding agent、IDE 助理 |
| pi-coding-agent | 精簡 Bash 工具的 coding agent | 依託基礎模型 | 想要低成本自動化寫程式的人 |
| GPT-4.1-mini | 通用任務、便宜高效 | 依使用計費 | 批量文案、RAG 前處理 |
| Claude 3.5 | 高難度推理、長上下文 | 有免費層+計費 | 關鍵決策、難題除錯 |
你不需要一次全換,只要先挑:
- 成本最高的任務類型
- 品質要求相對沒那麼嚴苛的場景
用 Frugon 跑一輪比較,按表格逐步把這些流量導到更便宜或本地的模型,就能把 AI 帳單穩定壓下來,而不用放棄你熟悉的 GPT/Claude 主力模型。
🚀 你現在可以做的事
- 到 Frugon GitHub 將
frugon安裝在本機,並準備最近 2–4 週的 API 日誌- 匯出 OpenAI/Anthropic 使用紀錄到
./logs,執行frugon analyze與frugon compare產生第一版報告- 根據產出的
routing_suggestions.yaml,在你的後端或 Agent 加入模型路由邏輯,先讓一兩個任務類型切換到便宜或本地模型


發佈留言