返回列表 发布新帖

[玩法教程] Octopus——个人打造的 LLM API 聚合服务

1105 1
发表于 2026-2-5 11:35:35 | 查看全部 阅读模式 IP:–湖南

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
本帖最后由 夏夏子 于 2026-2-5 13:48 编辑

octopus是个为个人打造的 LLM API 聚合和负载平衡服务。

官方文档:https://github.com/bestruirui/octopus


docker部署

1、compose文件

  1. services:
  2.   octopus:
  3.     image: bestrui/octopus
  4.     container_name: octopus
  5.     restart: unless-stopped
  6.     ports:
  7.        - 8080:8080 # 冒号前面的8080可以改成未被占用的
  8.     volumes:      
  9.        - ./data:/app/data
复制代码

2、配置项

配置文件默认位于 data/config.json ,并在首次启动时自动生成。所有配置选项也可以通过环境变量覆盖,格式为 OCTOPUS_ + 配置路径(用 _ 连接):

配置项环境变量配置文件默认值
监听地址OCTOPUS_SERVER_HOSTserver.host0.0.0.0
服务器端口OCTOPUS_SERVER_PORTserver.port8080
数据库类型OCTOPUS_DATABASE_TYPEdatabase.typesqlite
数据库连接地址OCTOPUS_DATABASE_PATHdatabase.pathdata/data.db
日志级别OCTOPUS_LOG_LEVELlog.levelinfo
用于在获取最新版本时限制速率(可选)OCTOPUS_GITHUB_PAT
最大 SSE 事件大小(可选)OCTOPUS_RELAY_MAX_SSE_EVENT_SIZE

3、数据库


支持三种数据库类型:SQLite(默认,不需额外配置)、MySQL、PostgreSQL。
  • SQLite是默认数据库,不需要额外配置。
  • MySQL和PostgreSQL需要手动创建数据库。应用程序将自动创建表格结构。

  1. # 默认SQLite 配置示例
  2. {
  3.   "database": {
  4.     "type": "sqlite",
  5.     "path": "data/data.db"
  6.   }
  7. }


  8. # MySQL 配置示例
  9. {
  10.   "database": {
  11.     "type": "mysql",
  12.     "path": "root:password@tcp(127.0.0.1:3306)/octopus"
  13.   }
  14. }

  15. # PostgreSQL 配置示例:
  16. {
  17.   "database": {
  18.     "type": "postgres",
  19.     "path": "postgresql://user:password@localhost:5432/octopus?sslmode=disable"
  20.   }
  21. }
复制代码


基础设置

首次启动后,使用IP:端口访问页面,使用默认的用户名admin,密码 admin 登录管理面板:
octopus-01.png

登陆成功后,点击设置页面,在账户设置栏修改用户名和密码。如果需要使用域名登陆,还得在系统栏设置CORS跨域白名单,否则登陆会提示登录失败,请检查登录凭据。如果在其他地方比如沉浸式翻译配置有这样的报错:服务返回错误, 暂时没有权限访问该服务。403: fetchError,也是要设置这个。

octopus-02.png


渠道

1、点击渠道菜单,会展示所有的渠道。右上角的+按钮可以添加新的渠道。
octopus-03.png

2、添加渠道
  • 填写渠道名称,选择渠道类型
  • 填写渠道的地址和 API 密钥。
  • 输入模型名称或者点击刷新按钮获取模型列表
  • 高级设置和要不要使用代理看需求
  • 点击创建按钮

octopus-04.png


3、渠道类型及请求路径

渠道类型自动附加路径Base URL完整请求 URL 示例
OpenAI Chat/chat/completionshttps://api.openai.com/v1https://api.openai.com/v1/chat/completions
OpenAI Responses/responseshttps://api.openai.com/v1https://api.openai.com/v1/responses
Anthropic/messageshttps://api.anthropic.com/v1https://api.anthropic.com/v1/messages
Gemini/models/:model:generateContenthttps://generativelanguage.googleapis.com/v1betahttps://generativelanguage.googl ... ash:generateContent


分组

分组用于将多个渠道聚合为一个统一的对外模型名称。

核心概念:
  • 分组名称即程序对外暴露的模型名称
  • 调用API时,将请求中的model参数设置为分组名称即可

1、点击组菜单,会展示所有的组。右上角的+按钮可以添加新的组。

octopus-05.png

2、添加组
  • 填写分组名称,可以留空按分组名称模糊匹配,设置首字超时时间(单位秒)
  • 选择负载均衡模式
  • 点击自动添加按钮,系统会自动将所有可用的模型添加到已选模型中
  • 点击创建按钮

octopus-06.png
负载平衡模式
  • 轮询:每次请求依次切换到下一个渠道
  • 随机:每次请求随机选择一个可用渠道
  • 加权分配:根据渠道设置的权重比例分配请求
  • 故障转移:优先使用高优先级渠道,仅当其故障时才切换到低优先级渠道

日志

可以点击日志菜单查看所有请求的日志。

octopus-07.png

API密钥

在设置菜单里找到API密钥栏,可以添加密钥。也可以使用密钥来登陆octopus查看该密钥的使用情况~

octopus-08.png

然后就可以在CherryStuido、Kelivo等软件里使用Octopus了。

octopus-09.png




评论1

种田滴张老三Lv.1 发表于 2026-2-27 09:32:33 | 查看全部 IP:–山东–青岛 /百度云加速节点
999

评论

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Copyright © 2026 绿联NAS私有云社区 版权所有 All Rights Reserved. 粤公网安备44030002002555号| 粤ICP备12028978号
关灯 在本版发帖
联系技术支持
返回顶部
快速回复 返回顶部 返回列表