Octopus 教程:个人 LLM API 聚合网关,一个入口管所有渠道

📌 项目地址:github.com/bestruirui/octopus | 星数:2658+ | 语言:Go(单二进制) | 数据库:SQLite / MySQL / PostgreSQL

📋 项目简介

手里有 DeepSeek、Kimi、GLM、OpenRouter 好几家 key,agent 和脚本各连各的,价格变化没人盯,渠道挂了任务就断。Octopus 把这一切收进一个自托管网关:多渠道统一接入、三种 API 协议互转、价格/模型自动同步、故障自动转移,还能在前端实时看到每个请求的完整链路。CLI 侧的模型管理可搭配 Magpie教程:菜单栏Agent模型管理器 一起用;本地跑的 Ollama 模型同样能作为一个渠道接入(部署见 Ollama本地部署教程)。

✨ 核心特性

特性说明
多渠道聚合多个 LLM 供应商渠道统一接入、统一管理
协议转换OpenAI Chat / OpenAI Responses / Anthropic 三种格式无缝互转
自动故障转移上游渠道故障自动切到可用渠道;屏蔽上游错误,agent 任务不中断
价格/模型同步模型定价与可用列表自动更新,不必手工维护
实时请求可视化前端看请求从客户端发出的完整路径(端到端)
用量统计请求数、token 消耗、费用追踪全景报表
轻量部署单二进制无外部依赖;SQLite/MySQL/PostgreSQL 三选一
优雅 UI干净的 Web 管理面板

🚀 部署

# 方式一:Docker 单容器
docker run -d --name octopus \
  -v /path/to/data:/app/data -p 8080:8080 \
  bestrui/octopus

# 方式二:docker compose
wget https://raw.githubusercontent.com/bestruirui/octopus/refs/heads/master/docker-compose.yml
docker compose up -d

# 方式三:单二进制(Releases 下载对应平台)
./octopus start

⚙️ 典型用法

📚 常见问题

Octopus 是什么?

为个人打造的 LLM API 聚合服务(bestruirui/octopus,2658 星,Go 语言):把多个厂商渠道接入统一管理,OpenAI Chat、OpenAI Responses、Anthropic 三种 API 格式无缝互转;价格和可用模型列表自动同步,上游渠道故障时自动切换到可用渠道,并屏蔽上游错误让 agent 任务不中断。前端可实时看到每个请求的完整链路。

怎么部署?

三种方式:Docker 一条命令 docker run -d --name octopus -v /path/to/data:/app/data -p 8080:8080 bestrui/octopus;或下载 docker-compose.yml 后 docker compose up -d;或从 Releases 下载对应平台的单二进制直接 ./octopus start——无外部运行时依赖。数据库支持 SQLite(默认零配置)、MySQL 和 PostgreSQL。

适合什么场景?和其他网关怎么选?

适合个人开发者把散落各家的 key 统一成一个入口:一个端点喂给所有 CLI agent 和应用,统计面板看 token 消耗与费用,渠道挂了自动切不中断任务。选型参考:想要菜单栏图形界面管理各 agent 的模型配置用 Magpie;想要轻量单二进制+完整聚合/统计/故障转移能力的自托管网关,Octopus 是简洁之选。