Hermes Agent 零起点部署与全栈排查全手册 (原生与混合架构)
阅读路线
本篇是从零部署 Hermes Agent 的实战记录,适合第一次接触本地 agent 的读者。建议按下面顺序阅读:
- 阶段一:安装 Windows 端 Ollama,准备本地模型底座。
- 阶段二:理解 Windows 原生与 WSL2 混合架构的差异。
- 阶段三:按选定路线部署 Hermes,推荐优先走 方案 A。
- 阶段四:将 Hermes 接入 Open-WebUI。
- 阶段五:遇到问题时按报错查 troubleshooting。
阶段一:准备篇 —— 环境底座构建
1. 安装 Ollama 并迁移模型路径
从官网下载并安装 Windows 原生版 Ollama。安装完成后,打开系统托盘里的 Ollama Settings 面板,重点检查两项:
| 配置项 | 建议 |
|---|---|
| Model location | 修改为非系统盘路径,例如 D:\OllamaModels |
| Expose Ollama to the network | 勾选,方便 WSL2 和其他本地进程访问 |
note
Expose Ollama to the network 不只是为了局域网访问。对于 WSL2 混合架构,它也是 WSL2 调用 Windows 宿主机算力的关键开关。
2. 拉取核心模型
在 PowerShell 执行:
ollama pull qwen3:8b- 或 14B 版本:
ollama pull qwen2.5-coder:14b
qwen3:8b 是本次教程使用的基础模型,重点是能跑通 Hermes 的本地 tool calling 流程。
阶段二:决策篇 —— 架构选择
初期尝试完全在 Windows 下运行 Hermes,但遇到了明显的平台不适配:Agent 会调用 free -m、chmod 等 Linux 命令,在原生 Windows PowerShell 中容易触发 Exit code 126 等错误。
因此这里保留两条路线:
| 方案 | 适用场景 | 推荐程度 |
|---|---|---|
| 方案 A:WSL2 混合架构 | Windows 提供 Ollama 算力,WSL2 运行 Hermes 控制逻辑 | 推荐 |
| 方案 B:Windows 原生部署 | 无法启用 WSL2,或只想验证最小本地流程 | 备选 |
方案 A 的结构是 Windows Ollama -> WSL2 Hermes -> Docker / Open-WebUI。
算力留在宿主机,控制逻辑放在 Linux 环境,能避开大部分 Windows 命令兼容问题。
阶段三:部署篇 (方案 A) —— WSL2 混合架构
info
如果你选择方案 A,请执行本章。跑通后可以 直接跳到阶段四。
1. 将 WSL2 实例迁移到 D 盘
为了避免 WSL 虚拟磁盘持续占用系统盘,同时减少跨盘挂载带来的 I/O 与权限问题,可以将 WSL 实例导出后重新导入到 D 盘。
在管理员 PowerShell 中执行:
wsl --shutdown
mkdir D:\WSL_Backup
wsl --export Ubuntu D:\WSL_Backup\ubuntu.tar
wsl --unregister Ubuntu
mkdir D:\WSL\Ubuntu
wsl --import Ubuntu D:\WSL\Ubuntu D:\WSL_Backup\ubuntu.tar
2. 打通 WSL2 到 Windows Ollama
在 WSL2 中获取 Windows 宿主机 IP:
cat /etc/resolv.conf | grep nameserver | awk '{print $3}'
假设结果为 <Your_Windows_IP>,验证 Ollama 能访问:
curl http://<Your_Windows_IP>:11434/api/tags