# frugaLLM：智能路由代理，让 OpenRouter 免费模型为你省钱

> frugaLLM 是一款零依赖的本地 LLM 路由代理，专为 OpenRouter 用户设计。它能自动发现每日最佳免费模型，将日常请求路由到 $0.00 端点，仅在必要时才升级到付费模型，帮你最大化 API 预算利用率。

- 板块: [Openclaw Llm](https://www.zingnex.cn/forum/board/openclaw-llm)
- 发布时间: 2026-06-13T02:06:31.000Z
- 最近活动: 2026-06-13T02:20:28.210Z
- 热度: 150.8
- 关键词: frugaLLM, OpenRouter, LLM 路由, API 成本优化, 免费模型, 代理服务器, Python, AI 工具
- 页面链接: https://www.zingnex.cn/forum/thread/frugallm-openrouter
- Canonical: https://www.zingnex.cn/forum/thread/frugallm-openrouter
- Markdown 来源: ingested_event

---

## 原作者与来源

- **原作者/维护者：** chorned（GitHub: @chorned）
- **来源平台：** GitHub
- **原始标题：** frugaLLM
- **原始链接：** https://github.com/chorned/frugaLLM
- **发布时间：** 2026-06-13

---

## 背景：API 费用的隐形杀手

对于频繁使用 AI 辅助编程和写作的用户来说，OpenRouter 提供了便捷的统一接口来访问各种大语言模型。然而，一个常见的问题是：无论你让 AI 做一件简单的事（比如修正一个拼写错误），还是让它处理复杂的架构设计，只要调用的是付费模型，每次交互都会消耗你的 API 余额。

想象一下，你往 OpenRouter 账户里充了 11 美元，然后直接让 Cursor、Cline 或 Continue.dev 这样的 AI 编程助手连接到一个高级付费模型。接下来的一整天里，无论是 "修复这个拼写错误"、"格式化这段 JSON" 还是 "写一个简单的 git commit 信息"，这些琐碎任务都在以同样的单价消耗你的余额。结果是什么？那 11 美元可能几天就花光了，而且你还不敢多问 AI 小问题，因为每次提问都要花钱。

这就是 frugaLLM 想要解决的问题。

---

## frugaLLM 是什么？

frugaLLM 是一个零依赖的本地 LLM 路由代理，它位于你的 AI 应用（如 Cursor、Cline、AnythingLLM、Obsidian 插件或 Hermes Agent）和 OpenRouter 之间，充当一个智能的中间层。

它的核心使命很简单：**自动发现当前可用的最佳免费模型，并将你的日常请求路由到这些 $0.00 端点，仅在必要时才升级到付费模型。**

这意味着什么？

- **没有代理时：** 你的 11 美元余额持续流失，你甚至不敢问 AI 小问题，因为每次微交易都在扣费。
- **使用 frugaLLM 后：** 大约 95% 的日常请求会被路由到高质量的免费模型，每次花费 $0.00。你的余额被保留下来，专门用于那 5% 真正需要深度推理的复杂任务。原本几天就花完的 11 美元，现在可以用几个月。

---

## 三层路由架构：智能决策的秘密

frugaLLM 采用了一个简单但有效的三层路由系统，根据请求的性质自动决定使用哪个层级的模型：

### 第一层：Balanced（平衡层）

这是默认的路由目标。所有常规请求（通过默认 Agent 发出的请求）都会被路由到当前可用的最佳免费通用模型。这一层适合日常任务，如文本格式化、简单问答、代码补全等。

**成本：$0.00**

### 第二层：Reasoning（推理层）

当你明确需要更强的推理能力时（通过 Expert Agent 或在提示中指定 `reasoning_free`），请求会被路由到当前最佳的免费推理模型。这一层适合需要逻辑分析、复杂问题解决的场景。

**成本：$0.00**

### 第三层：The Big Guns（付费层）

只有在以下情况之一发生时，请求才会被升级到付费模型：
- 你在提示中输入了 `//escalate` 显式要求升级
- 免费模型连续多次失败
- 请求涉及大规模上下文，免费模型无法处理

此时，frugaLLM 会将请求发送到你配置的付费模型（如 Gemini Pro 等）。

**成本：按模型实际费率计费**

---

## 自动发现：无需手动维护模型列表

frugaLLM 的一个亮点是它的自动发现机制。每次启动时，它会扫描 OpenRouter 的 `/models` 端点，获取当前所有可用模型，并自动更新其路由表，选择当天最佳的免费模型。

这意味着：

- 你不需要手动跟踪哪些模型免费
- 你不需要在 OpenRouter 推出新免费模型时手动更新配置
- 你不需要担心错过限时优惠或新模型发布

frugaLLM 会自动处理这一切，确保你始终在使用当前可用的最佳免费模型。

---

## 零依赖与本地部署

frugaLLM 是一个纯 Python 3.10+ 项目，唯一的依赖是 `requests` 库。它运行在你的本地机器上，监听 `http://localhost:5050/v1`，模拟标准的 OpenAI API 端点。

这种设计有几个好处：

1. **隐私：** 你的请求先经过本地代理，不会直接暴露给外部服务
2. **灵活：** 任何支持自定义 OpenAI 端点的应用都可以使用 frugaLLM
3. **轻量：** 没有复杂的依赖链，部署和维护都很简单
4. **可控：** 你可以随时查看和修改源码，完全掌控路由逻辑

---

## 配置与使用

使用 frugaLLM 非常简单，只需三步：

1. **下载与配置：** 创建项目目录，将 `router_server.py` 放入其中，并在同目录下创建 `.env` 文件，填入你的 OpenRouter API 密钥。

2. **指向代理：** 在你使用的 AI 应用（如 Cursor、Cline）中，将自定义模型提供者的 Base URL 设置为 `http://localhost:5050/v1`，API Key 可以填任意值（frugaLLM 会安全处理你的真实密钥）。

3. **运行服务：** 启动 frugaLLM 后，像平常一样使用你的 AI 应用即可。它会自动处理路由决策。

如果你想在特定场景下强制使用某一层级，可以在应用的模型下拉菜单中选择：
- `auto` 或 `balanced_free` → 第一层（免费通用模型）
- `reasoning_free` → 第二层（免费推理模型）
- `pro` 或在提示中输入 `//escalate` → 第三层（付费模型）

---

## 进阶功能：本地模型支持

除了 OpenRouter 的路由，frugaLLM 还支持通过 `local` 标签路由到本地运行的 LLM 实例（如 Ollama）。如果你有足够的硬件资源，这是一个完全免费、完全离线、完全私密的选项。

结合 OpenRouter 的免费层和本地模型，你可以构建一个几乎零成本的 AI 工作流，仅在真正需要时才支付费用。

---

## 管理命令与自动刷新

frugaLLM 提供了几个简单的 HTTP 端点用于管理：

- **刷新模型列表：** `curl -X POST http://localhost:5050/admin/refresh-models`
  强制重新扫描 OpenRouter 的免费模型目录

- **查看状态：** `curl -s http://localhost:5050/health | python3 -m json.tool`
  查看当前路由状态和活跃模型表

为了保持模型列表最新，你可以设置一个 cron 任务，每天午夜和中午自动刷新：

```
0 0,12 * * * curl -X POST http://localhost:5050/admin/refresh-models >/dev/null 2>&1
```

这样，即使 OpenRouter 的免费模型目录发生变化，frugaLLM 也能保持同步，无需重启服务。

---

## 总结与启示

frugaLLM 代表了一种务实的 AI 使用策略：**不要为简单任务支付高端模型的费用。**

在 LLM 服务日益丰富的今天，免费模型已经能够胜任大量的日常任务。frugaLLM 的智能路由机制帮助用户充分利用这些免费资源，将有限的预算留给真正需要复杂推理的场景。

对于个人开发者、小型团队或任何希望控制 AI 使用成本的用户来说，frugaLLM 提供了一个优雅且易于部署的解决方案。它不仅是一个技术工具，更是一种理性使用 AI 资源的思维方式。

如果你正在使用 OpenRouter 并且每月的 API 账单让你心疼，不妨试试 frugaLLM——让免费模型做它们擅长的事，让你的预算花在刀刃上。
