想给团队或全家搭一个共享 AI 助手,市面上的选择往往两头别扭:要么单机单用户各装各的,要么把全家的对话交给云 SaaS。腾讯云 9 月底开源的 Octop(MIT 协议,Python)把四件事打包进一个项目:自托管(数据默认留在你的机器上)、多用户(一个实例服务多人、账号与会话隔离)、多智能体(按人设与权限建专家 Agent)、长期记忆(跨会话记住偏好与结论,不做纯上下文窗口的短命对话)。配 Web 控制台与 IM 机器人入口,桌面、服务器、NAS、Docker 全平台都有安装形态。
官方 README 的路径相当顺:安装脚本用 uv 自带 Python 3.12 隔离环境(本机不用预装 Python),octop init 向导建库建号,octop run 起服务,Docker Compose 与图形安装包备齐。本篇从安装走到建出可用的专家 Agent,再到把编码 Agent 挂进来、做好备份运维,全程照官方文档走。
前置准备:一台 macOS/Linux/Windows 机器或 VPS——服务本体几 GB 内存可跑,要跑本地大模型按模型规模另计显存;接公有云模型就备好对应的 API Key;Docker 部署需要 Docker 环境。
官方推荐的一键安装是 curl 直接管道执行远程 shell 脚本(托管在腾讯云 COS 上)。生产或敏感环境建议先把脚本下载下来人工过一遍再执行,或者改走 PyPI / 桌面安装包路线,绕开管道执行远程代码这件事本身。
Step 1:三条安装路线,按场景选
命令行用户走官方脚本(macOS/Linux 一行,Windows PowerShell 一行);装完重开终端让 octop 进 PATH(~/.octop/bin):
# macOS / Linux
curl -fsSL https://finnie-1258344699.cos.ap-guangzhou.myqcloud.com/octop/install.sh | bash
# Windows (PowerShell)
irm https://finnie-1258344699.cos.ap-guangzhou.myqcloud.com/octop/install.ps1 | iex
PyPI 路线适合自己管 Python 的人:pip install octop;想用本地 ONNX 嵌入模型装 octop[local-embedding](权重缓存在 ~/.octop/embedding_models,只影响嵌入,不是聊天模型)。浏览器自动化要另外装 Playwright 的 Chromium:
pip install octop
# 可选:本地嵌入模型与浏览器内核
pip install "octop[local-embedding]"
python -m playwright install chromium
不想碰终端就走图形安装包:GitHub Releases 提供 Windows exe(含 ARM64)、macOS dmg(Intel/Apple Silicon)、Linux tar.gz;飞牛 fnOS NAS 用户直接装官方 FPK 包,Docker 底座或原生两种形态都有。
Step 2:初始化与启动:init、run、常驻服务
octop init 是交互式向导:在 ~/.octop/ 下创建 SQLite 数据库、JWT 密钥与头一个管理员账号(密码至少 8 位、字母加数字)。然后启动服务:
octop init # 交互式:建库、密钥、管理员
octop run # 前台起 API + Web 控制台
octop run --host 0.0.0.0 --port 8088 # 自定义地址端口
octop service start # 注册为系统服务(systemd/launchd/Windows)
默认监听 http://127.0.0.1:8088,浏览器打开就是 Web 控制台。要 7x24 常驻就 service start 注册成系统服务,重启机器自动拉起。到这一步,骨架已经立起来了,接下来是接模型。
--host 0.0.0.0 会把服务暴露到局域网甚至公网:出门前先完成账号加固,并套一层支持 HTTPS 的反向代理。Octop 自带鉴权,但裸 HTTP 明文传密码在不可信网络里不可接受——这条是部署红线,不是可选项。
Step 3:Docker 部署与初始密码治理
生产环境官方推荐 Docker:数据卷独立于容器,升级就是换镜像。仓库自带 Compose 文件,或用 docker run 一条起:
docker compose -f docker/docker-compose.yml up -d
# 或手动 run
docker run -d \
-p 8088:8088 \
-v octop-data:/data/.octop \
-e HOME=/data \
-e OCTOP_DEFAULT_PASSWORD="" \
octop:latest
容器内数据落在 /data/.octop 并挂进 octop-data 卷。头一次启动会自动创建管理员账号:OCTOP_DEFAULT_PASSWORD 未设置时生成强随机密码,写在容器内 /data/.octop/credential.txt——打开 http://localhost:8088,用里面的凭据登录。
credential.txt 是明文初始密码:头一次登录就改掉它。OCTOP_DEFAULT_PASSWORD 只建议在受控内网临时使用,任何对外部署都用随机密码加首登修改,别把弱密码写进 compose 文件提交到仓库。
Docker 路线的升级动作 = 拉新镜像、重建容器,数据卷不动即无忧——这就是官方把它标为生产推荐的原因。例行备份见 Step 6。
Step 4:接模型:本地 Ollama、OpenAI 兼容、云端任选
在控制台的模型配置里添加供应商:本地 Ollama、DashScope、或任何 OpenAI 兼容接口。以本地 Ollama 为例(示意,字段以控制台当前界面为准):
# 本地 Ollama(控制台里填)
# Base URL: http://127.0.0.1:11434/v1
# API Key : ollama(本地占位即可)
# 公有云 / 自建网关:填对应的 OpenAI 兼容地址与 Key
配完先开一个最简单的会话验证连通,再去建 Agent——模型层的问题(地址错、Key 错、额度尽)要在最简单的场景里暴露,别等到 Agent 链路上再排查。成本敏感的组合拳:日常问答挂本地小模型,重活给专家 Agent 单独配强模型,Octop 的多 Agent 结构天然支持按 Agent 配不同模型。
支持的供应商清单与配置字段随版本演进,以你所用版本的官方 README 与控制台提示为准;本教程不罗列具体供应商列表,避免与实际版本漂移。
Step 5:多用户、记忆与专家 Agent
在控制台创建用户账号分给团队成员或家人:每人独立的会话与记忆,互相不可见——多用户隔离是这个项目的核心卖点,也是「一个实例服务全家」的前提。然后建「专家 Agent」:起名字、写人设、绑定模型与插件、划权限范围;长期记忆默认开启,跨会话记住你的偏好与已经得出的结论。
入口层面,Web 控制台之外可以绑定 IM 机器人渠道,把 Agent 带进钉钉、飞书、企业微信等消息平台(第三方实测口径,支持清单以官方文档为准);知识库与文档语料上传后在 Agent 里挂载引用,问答时自动检索。
给 Agent 开工具与插件就是给权限:文件操作、浏览器自动化、对外发消息一律按最小权限配置;对外服务的 IM 渠道在 Agent 人设里写明「敏感操作先请示人工确认」,别让群友一句话触发不可逆动作。
专家 Agent 的分工照「一个人设干一类事」来建:资料检索、日程提醒、文档问答分开,记忆各归各的。比一个全能 Agent 好调教得多——出问题时你也知道该去哪个 Agent 的记忆与配置里找原因。
Step 6:挂上编码 Agent 与日常运维
社区实测的进阶玩法:把 Claude Code、Codex 这类终端编码 Agent 作为「专业工种」接进来,Octop 负责入口、记忆与调度,专业任务继续交给成熟 CLI(具体集成方式随版本演进,以官方文档为准)。运维三件事:备份就是拷数据目录;升级看 GitHub Releases 的更新日志再动镜像或包;日志与 SQLite 都在数据目录里,出问题先看日志再改配置。
# 本机部署:备份整个数据目录
cp -r ~/.octop ~/backups/octop-$(date +%F)
# Docker 部署:备数据卷
docker run --rm -v octop-data:/data -v $PWD:/backup alpine \
tar czf /backup/octop-data-$(date +%F).tgz -C /data .octop
预期效果自查:Web 控制台能登录、能添加模型供应商并完成一次对话;建了两个用户,验证会话与记忆互不串;一个专家 Agent 绑定了插件与知识库,能在控制台或 IM 里被正常调用。三条全过,你的自托管 AI 中枢就算正式成立了。
放在常开设备上(NAS、迷你主机)比放笔记本上靠谱:Octop 的价值在「一直在」——记忆与 IM 入口都依赖服务常驻,设备休眠等于助手失联。
常见问题 FAQ
和自己跑一个 Open WebUI 有什么区别?Open WebUI 强在多模型聊天工作台(本站教程 433 有专篇);Octop 的差异在多用户体系、Agent 化(人设加插件加权限)与长期记忆默认内置,形态更接近「自托管的多用户 Agent 平台」。要聊天工作台选前者,要多人共享的智能体中枢选后者。
能完全离线运行吗?可以:本地 Ollama 模型加本地嵌入模型,数据不出内网,这是它 local-first 定位的本意;浏览器自动化等插件按需安装。必须联网的时刻只有安装与升级——离线环境提前在有网机器上备好安装包与镜像。
内存要多少?跑得动吗?服务本体几 GB 内存即可;接云 API 无额外要求,跑本地大模型按模型规模另算(7B 级从 8GB 起)。VPS 单核小机也能跑服务本体,但本地模型建议独占显存或内存,别和服务抢资源。