free-router-proxy README

The project's README from github.com/www222fff/free-router-proxy. As one markdown file: README.md.

Free Router

Free Router architecture: any OpenAI client to a local gateway to pluggable providers

Local OpenAI-compatible gateway. Point any client at http://127.0.0.1:8787/v1 and use free-best. It ranks currently free models across any OpenAI-compatible provider you configure, then fails over when one is rate-limited, down, or empty. A missing key just drops that provider.

Site: www222fff.github.io/free-router

Run

Node.js 20+. Copy .env.example to .env, add at least one provider key, then:

git clone https://github.com/www222fff/free-router.git
cd free-router
cp .env.example .env
./start.sh

Stop with ./stop.sh. Docker: docker compose up -d. Open http://127.0.0.1:8787/ to set keys and watch usage.

Variable Where
GEMINI_API_KEY Google AI Studio
OPENROUTER_API_KEY openrouter.ai/keys
TOKENROUTER_API_KEY TokenRouter
BAI_API_KEY chat.b.ai

More providers: add a block in config.json. See How it works.

./models.sh          # current free-best order
./models.sh --usage  # today's quota

Star History

Star History Chart

free-router-proxy (www222fff/free-router-proxy)

Searching Database…

这是什么?Free Router 是一个本地 OpenAI 兼容网关,把你的客户端指向你所配置的任意 OpenAI 兼容服务商提供的免费模型,并对它们排序,当某个服务商被限流、宕机或没有密钥时自动故障转移。
这是托管服务,还是我自己运行的东西?它是一个自托管的本地服务器(Node.js 应用或 Docker 容器),运行在你自己的机器上,不是托管云服务。
怎么让它跑起来?用 Node.js 20+ 运行:把 .env.example 复制为 .env,添加至少一个服务商密钥,然后启动服务器;用 ./stop.sh 停止。也可以用 Docker Compose 通过「docker compose up -d」运行。
运行之前需要准备什么?你需要 Node.js 20 或更新版本(如果用 compose 方式则需要 Docker),以及至少一个提供免费模型的 OpenAI 兼容服务商的 API 密钥。
服务商的免费额度用完了会怎样?如果已配置的服务商被限流、宕机或无可用模型,Free Router 会自动故障转移到排序中的下一个服务商;未配置密钥的服务商会被直接跳过。
可以在哪些平台上运行?凡是能运行 Node.js 20+ 或 Docker 的地方都能运行,包括 Linux、macOS 和 Windows。
它如何挑选要用的免费模型?它会对你配置的所有 OpenAI 兼容服务商中当前免费的模型进行排序,并路由到最佳可用模型,失败时自动切换。
能把现有的 OpenAI 客户端指向它吗?可以,由于它暴露的是 OpenAI 兼容 API,你只需把任何现有的 OpenAI 客户端指向本地的 Free Router 端点,而不是服务商的端点。
需要配置每一个服务商吗?不需要,只需为想使用的服务商添加密钥;未配置密钥的服务商会自动跳过。
Creator
www222fff
Size
0.6 MB
Stars
479
Age
1mo
Commits · 90 Days