Repolode
bestruirui

bestruirui/octopus

面向个人的自托管 LLM API 聚合网关,统一接入多个模型渠道并支持故障切换与用量统计。

可替代:OpenRouter

Star
2,742
Fork
450
未关闭 Issue
16
最近提交
16天前

这是什么?

Octopus 是一个自托管的网关,位于客户端与多个 LLM 服务商之间。你可以为 OpenAI、Anthropic、Gemini 等服务商配置渠道,再把多个渠道归入同一个模型名称下,客户端只需调用一个接口,无需关心实际由哪家服务商响应。

它支持 OpenAI Chat、OpenAI Responses 与 Anthropic 三种 API 格式之间的转换,因此 Claude Code、Codex 等工具只需修改 Base URL 即可接入。某个上游渠道出错时,请求会自动切换到其他可用渠道。模型价格可从 models.dev 自动同步,也支持手动覆盖;请求数量、Token 消耗与费用统计都会在 Web 管理面板中展示。

项目以单个 Go 二进制文件发布,前端界面已内嵌其中,数据可存储在 SQLite、MySQL 或 PostgreSQL 中,也支持 Docker 部署。

核心功能

  • 01将多个 LLM 服务商渠道聚合到统一的模型分组名称下
  • 02在 OpenAI Chat、OpenAI Responses 与 Anthropic 接口格式之间转换
  • 03上游渠道出错时自动切换到其他可用渠道
  • 04同步模型价格与可用模型列表
  • 05在 Web 面板中统计请求数、Token 用量与费用
  • 06以单个二进制文件运行,支持 SQLite、MySQL 和 PostgreSQL

适用场景

  • 让 Claude Code 或 Codex 通过一个本地地址访问多个服务商
  • 在个人环境中用一个 API Key 和统一模型名调用多个 LLM 账号
  • 上游服务商故障时保持智能体任务持续运行
  • 在一处统一查看各 LLM 服务商的 Token 消耗与费用

快速上手

  1. 1

    运行 Docker 容器

    docker run -d --name octopus -v /path/to/data:/app/data -p 8080:8080 bestrui/octopus
  2. 2

    或从发布页下载二进制文件并启动

    ./octopus start

使用前须知

  • 默认管理员账号密码均为 admin,首次登录后必须立即修改。
  • 统计数据先缓存在内存中,使用 kill -9 等强制终止方式可能导致数据丢失。
  • 使用 MySQL 或 PostgreSQL 前需要手动创建数据库。

收录于专题

标签

常见问题

octopus 是什么?
面向个人的自托管 LLM API 聚合网关,统一接入多个模型渠道并支持故障切换与用量统计。 Octopus 是一个自托管的网关,位于客户端与多个 LLM 服务商之间。你可以为 OpenAI、Anthropic、Gemini 等服务商配置渠道,再把多个渠道归入同一个模型名称下,客户端只需调用一个接口,无需关心实际由哪家服务商响应。
octopus 可以免费使用吗?用的什么许可证?
octopus 以 AGPL-3.0 许可证开源。用于商业产品前,请先确认许可证条款。
octopus 还在维护吗?
活跃维护中。octopus 最近一次提交是在 2026年10月23日。
octopus 适合用来做什么?
让 Claude Code 或 Codex 通过一个本地地址访问多个服务商 在个人环境中用一个 API Key 和统一模型名调用多个 LLM 账号 上游服务商故障时保持智能体任务持续运行 在一处统一查看各 LLM 服务商的 Token 消耗与费用
octopus 怎么安装和运行?
运行 Docker 容器: docker run -d --name octopus -v /path/to/data:/app/data -p 8080:8080 bestrui/octopus 或从发布页下载二进制文件并启动: ./octopus start
在哪里获取 octopus?
源代码和安装说明在 GitHub 上:https://github.com/bestruirui/octopus

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目