一、完整方案要解决什么
「自托管大模型 + Agent」不是单点安装,而是一条可运维链路:模型推理 → 统一 API → Agent 运行时 → 工具与知识库 → 观测与权限。目标是:数据尽量不出域,成本可控,能力可扩展。
二、参考架构
用户 / 内部系统
│
▼
OpenWebUI(可选,人工对话与评测)
│
▼
API 网关(鉴权、限流、熔断、缓存)
│
├────────────► Agent Runtime(Hermes 等)
│ │
│ ├─ 工具:HTTP / DB / 脚本
│ └─ RAG:向量库
▼
Ollama / vLLM / 其他推理服务三、分层落地(建议按周推进)
第 1 层:推理可用
Docker 部署 Ollama(或 GPU 上的 vLLM),拉取与业务匹配的小模型,先保证 /api/tags 与基础对话可用。可参考《Docker 部署 Ollama + OpenWebUI 完整指南》。
第 2 层:统一入口
加 API 网关或至少反向代理:鉴权、RPM/TPM 限流、超时。Agent 与前端都走统一 Base URL,避免各服务直连推理端口。
第 3 层:Agent 闭环
部署 Hermes(或你选型的框架),先只开放 1~2 个只读工具;跑通「用户目标 → 工具调用 → 最终答复」。
第 4 层:知识增强
上 RAG(向量库 + 切分流水线),把 Agent 的「瞎猜」变成「可引用」。
第 5 层:生产加固
备份 volume、HTTPS、审计日志、熔断降级、预算告警。详见稳定性与网关专文。
四、模型侧怎么选才够用
- 工具调用:优先选明确支持 function calling 的型号
- 资源不够:先 3B~7B 把链路跑通,再升 14B+
- 隐私:敏感数据场景坚持内网推理,外网模型仅作降级备援
五、Agent 侧最小安全基线
- 工具白名单 + 参数校验
- 工作目录只读;禁止未审计的 shell
- 最大步数 / 最大 Token / 总超时
- 全链路日志脱敏(Key、用户隐私)
六、验收标准(你可以当作 Definition of Done)
- 内网用户能稳定对话,P95 延迟可接受
- Agent 能完成至少 1 个真实只读业务工具任务
- 推理与 Agent 配置重启不丢失
- 限流与超时在压测下表现符合预期
- 有备份与回滚步骤文档
七、小结
自托管的完整方案,关键不是「装最多组件」,而是每一层都可替换、可观测、可限权。先 Ollama 可用,再 Agent 可用,再 RAG 与网关,顺序反了就会一直停在调环境。
