Oracle Cloud免费机跑Hermes Agent:7×24小时在线AI助手部署指南
发布时间:2026/10/4 7:01:42 锦皓数字建站

闲置的 Oracle Cloud 免费机能不能跑一个 7×24 小时在线的 Hermes Agent我先把结论放在最前面能而且能把这件事做得很稳。我最近把一台吃灰很久的 Oracle Cloud Always Free 实例翻出来试了一遍跑的是 Hermes Agent 的常驻 bot 模式连续在线了两周多中途没有主动干预进程也一直活着。Oracle Cloud 的免费 Arm 机器4 核 OCPU 加 24GB 内存拿来跑这种 AI Agent 框架属于典型的“配置过剩”状态。这篇文章会从免费机选型、Hermes Agent 安装、bot mode 配置、Mem0 记忆接入、Obsidian 联动最终到 systemd 保活与排障把完整链路都捋一遍。如果你手里正好有台闲置的甲骨文免费机想把它变成私人 AI 助理或自动化工作流节点这篇可以直接照抄。1. 项目起点免费机跑 Agent 的可行性怎么看1.1 Oracle Cloud Always Free 的硬件底子Oracle Cloud 免费层里最值得花心思的是 Ampere A1 实例。官方给出的 Always Free 配额是最高 4 个 OCPU、24GB 内存外加 200GB 块存储。这台机器的 CPU 是 ARM 架构单核性能放在现在当然不算强但跑常驻 Python 进程、HTTP 服务、向量数据库这些轻量负载绰绰有余。真正会用到的性能高峰也就是模型推理响应返回之后做文本处理那几十毫秒平时 CPU 占用率基本趴在个位数。对比一下同系列里那台 1GB 内存的 AMD 微型实例你就明白为什么强烈建议用 Arm 机器。1GB 内存开机装完 Ubuntu可用内存只剩 600MB 左右而 Hermes Agent 要拉起 Python 运行时、第三方依赖库、模型驱动的工具链、记忆模块实际占用轻松超过 1GB。真把 Agent 塞进 AMD 微实例稍微跑一个浏览器自动化任务就会 OOM连系统都可能卡死。Arm 实例的 24GB 内存才是能长期稳定运行 Agent 的底线配置。磁盘上免费额度给了 200GB 块存储挂载之后用df -h能看到/分区有接近 200GB。对常驻 Agent 来说代码和日志只占很小一部分最占空间的是浏览器自动化产生的截图、临时文件以及向量数据库的索引。只要做好日志和临时文件清理这块存储三五年都用不完。1.2 Hermes Agent 是什么适合跑哪些任务Hermes Agent 是一个开源的通用 AI Agent 框架它的核心概念是把模型推理、工具调用、长期记忆、多代理协作和浏览器/计算机操作能力整合到一个统一入口里。你可以通过命令行直接和它对话也可以让它跑在 bot mode 下变成一个可以被 HTTP 请求调用的后台服务。v0.21 版本是 bot mode 比较成熟的一个节点新版对常驻运行的支持明显更稳。跑在 Oracle Cloud 免费机上这个组合解决的是“个人 AI 助手长期在线”的真实需求。本地电脑不是不能跑 Agent但你要保持开机、保持网络稳定、还得处理睡眠和休眠问题。免费云主机没有这些麻烦它天然就是 7×24 在线网络环境也相对稳定。实际能跑的任务包括定时抓取网页信息并整理成摘要比如每天早上汇总几个技术站点的更新。接收你从 Obsidian 笔记发来的任务指令把回复写回笔记库。作为团队共享的 AI 工具入口通过 HTTP 接口被多个脚本调用。用 CUAComputer Use Agent自动操作浏览器完成登录、填表、巡检等流程。这些任务里定时信息采集和笔记联动是最好上手的两个场景不需要额外硬件也不需要 GPU一台免费机就能全部消化。1.3 可能踩坑的瓶颈点“能跑”和“跑得好”之间通常隔着三个实际问题。第一是模型从哪来。Hermes Agent 本身不带模型它需要接入一个大模型后端来产生推理结果。如果你尝试在免费机上本地跑 7B/8B 模型很快就会发现 CPU 推理慢到没法用一个简单问题要十几秒甚至几十秒才返回完全失去了 Agent 交互的流畅感。所以比较合理的结构是Agent 框架跑在免费机上模型推理走云端 API免费机只负责工具编排和流程控制。第二是 API 费用。常驻 Agent 如果被频繁唤醒token 消耗会悄悄涨起来。对策是调低空闲轮询的频率、给 Agent 设定精确的系统提示词让它只在真正需要模型判断时才发起请求避免无意义的闲聊式调用。第三是进程保活。如果只是用 nohup 或 tmux 把 Hermes Agent 挂在后台机器一旦重启或 SSH 会话断开Agent 就再也起不来了。后面我会专门讲 systemd 守护方案这才是 7×24 在线最核心的一环。2. 从零部署搭建一台可用的免费机环境2.1 创建实例时容易被忽略的操作在 Oracle Cloud 控制台创建实例常规操作是导航到 Compute → Instances → Create instance选择镜像 Ubuntu 22.04 或 24.04 LTS。SSH 密钥对要提前生成私钥保存好这是登录机器的唯一凭证。这里有两个细节很多人会忽略。第一个是网络入站规则。Oracle Cloud 默认的安全列表往往只放行 22 端口如果你打算让 Hermes bot 从公网访问就得去 Networking → Virtual Cloud Networks 对应的 Security List 里添加入站规则允许 TCP 到 bot 服务端口比如 8000。来源地址可以填0.0.0.0/0但更稳妥的是填你办公网或家庭网络的固定公网 IP。第二个是实例的引导卷大小创建时默认给的可能是 50GB记得调整到免費配额允许的更大容量避免以后扩容麻烦。创建完成之后先确认 SSH 能通ssh -i ~/.ssh/oracle_key ubuntu你的公网IP登录成功后先做系统更新这一步不要跳过。2.2 系统基础与 Python 虚拟环境SSH 登录后依次执行sudo apt update sudo apt upgrade -y sudo apt install -y git curl wget unzip python3-venv python3-pipUbuntu 24.04 默认 Python 版本是 3.12Hermes Agent 当前版本对 3.10 到 3.12 都兼容直接用系统 Python 建虚拟环境就行。我的习惯是把所有服务放在/opt/hermes目录下方便管理sudo mkdir -p /opt/hermes sudo chown $USER:$USER /opt/hermes cd /opt/hermes python3 -m venv venv source venv/bin/activate为什么要坚持用虚拟环境因为 Hermes Agent 依赖的第三方库比较多如果你后面又在同一台机器上部署别的 Python 项目依赖版本冲突会让你头大。虚拟环境隔离之后升级 Hermes Agent 或者装新工具都不会波及系统 Python。2.3 安装 Hermes Agent 并验证模型链路虚拟环境激活状态下安装 Hermes Agentpip install --upgrade hermes-agent装完先看版本hermes --version如果输出类似Hermes Agent v0.21.x安装就算成功了。接下来需要配置模型后端。我习惯用环境变量的方式管理配置把模型提供方和密钥从命令行参数里剥离出来export HERMES_MODEL_PROVIDERopenai export HERMES_MODELqwen-plus export OPENAI_API_KEYsk-xxxxx这里HERMES_MODEL_PROVIDERopenai表示使用 OpenAI 兼容协议实际的模型不一定非得是 OpenAI 官方模型。只要是兼容 OpenAI 接口的模型服务商比如通义千问的开放平台、DeepSeek API或者本地用 Ollama 起的 OpenAI 兼容端口都可以这样接入。你只需要把HERMES_MODEL改成服务商对应的模型名把 API Key 换成它家的 Key。首次验证直接进入交互模式hermes -v输入一句“你好介绍一下你自己”。如果模型配置正确Agent 会正常回复。到这里最小闭环已经跑通免费机 Python 环境 云端模型 API就是一个能对话的 AI Agent 了。3. 把 Agent 变成常驻服务配置、联动与实操3.1 bot mode让 Agent 变成 HTTP 服务CLI 模式适合调试但 7×24 小时在线必须靠 bot mode。Hermes Agent v0.21 的 bot mode 会将一个 HTTP 服务常驻在指定端口其他程序可以通过 POST 请求向它发送任务。配置上在/opt/hermes/config.yaml写入bot: enabled: true port: 8000 auth_token: 这里换成至少32位的随机字符串 model_provider: openai model: qwen-plusauth_token 必须设置。常驻公网的服务如果不做认证很快就会被互联网扫描器盯上别人会往你的 Agent 里塞各种垃圾指令白白消耗 API 额度。启动 bothermes --bot看到类似HTTP server started on 0.0.0.0:8000的日志后用 curl 验证curl -X POST http://127.0.0.1:8000/chat \ -H Authorization: Bearer 你的token \ -H Content-Type: application/json \ -d {text: 你好请回答11}能拿到回复bot mode 就正常工作了。之后所有调用都走 HTTP 接口这为外部系统集成打开了很大的想象空间。3.2 长期记忆让 Agent 真正“记得住事”Agent 跑久了最值钱的能力不是对话而是记忆。Hermes Agent 的长期记忆模块底层依赖 Mem0 驱动的向量存储它会把对话中值得保存的信息向量化下次对话时自动召回。配置好之后你可以先告诉它“记住我的工作目录是 /opt/hermes”过几个小时再问“我的工作目录是什么”它能答上来就说明记忆生效了。免费机上跑记忆模块需要注意存储选型。优先选轻量的本地向量存储比如 ChromaDB不要在 24GB 内存的机器上再堆一个沉重的数据库服务。本地存储占内存小数据落盘后重启不丢长期运行稳定性足够。如果你以后想做更复杂的跨 Agent 记忆共享再考虑接入外部的向量数据库服务。记忆模块让 Agent 从“每次对话都是新朋友”变成了“陪你合作很久的同事”是免费机跑常驻 Agent 最值得投入时间的配置项之一。3.3 CUA 与浏览器自动化让 Agent 自己“动手做事”CUAComputer Use Agent是 Hermes Agent 里比较有意思的一个特性它能让 Agent 模拟鼠标键盘操作驱动一个真实浏览器去完成登录、点击、填表、抓取数据这些动作。在免费机上因为没有显示器必须使用 headless 模式。先安装 Playwright 依赖pip install playwright playwright install chromium playwright install-deps最后一步install-deps很关键它会把 Chrome 运行所需的系统库全部装齐少了这步之后启动浏览器大概率会报缺libnss3之类的问题。配置好之后你可以给 Agent 下达一个真实任务“打开某个网站提取页面标题和第一段正文”。它会自己拉起浏览器、访问页面、解析内容再把结果整理回复给你。结合定时任务这意味着免费机可以变成一个自动巡检工具比如每天定时检查某个服务的状态页、抓取竞品价格变更、监测某个页面是否更新。3.4 Obsidian 联动笔记驱动 Agent 的实用玩法在热搜词里hermes agent obsidian 是很受关注的一个组合。本质上Obsidian 联动并不是什么复杂魔法就是让笔记软件往 Hermes 的 HTTP 接口发请求再把回复写回笔记。你可以利用 Obsidian 的 Templater 插件写一个“发送到 Hermes 助手”模板。把选中文本作为任务内容发送到 bot收到回复后自动插入当前笔记。这样你在记笔记时圈中一段文字一键就能让 Agent 帮你总结、翻译或者扩展思路。常用的方式是写一个简易脚本做中转import requests HERMES_ENDPOINT http://你的公网IP:8000/chat TOKEN 你的token resp requests.post( HERMES_ENDPOINT, headers{Authorization: fBearer {TOKEN}}, json{text: 请用中文总结这段内容: ...} ) print(resp.json()[response])然后把这段逻辑封装进 Templater 的 JavaScript 或 QuickAdd 命令里。注意很多人在这一步翻车是因为在本地 Obsidian 里写了 localhost:8000请求打到了自己电脑上。正确做法是把地址换成 Oracle Cloud 实例的公网 IP并确保安全列表和本地防火墙都放行了对应端口。4. 7×24 稳定运行运维、保活与安全4.1 systemd 守护不要再用 nohup 自欺欺人这是整篇文章里我认为最重要的一节。很多人在免费机上用 nohup 或 tmux 挂 Agent看着好像跑起来了但机器一重启或者 SSH 会话断开就再也找不到进程了。正确方案是把 Hermes Agent 托管给 systemd让操作系统负责进程拉起、崩溃重启和日志收集。创建服务文件/etc/systemd/system/hermes-agent.service[Unit] DescriptionHermes Agent Service Afternetwork-online.target Wantsnetwork-online.target [Service] Typesimple WorkingDirectory/opt/hermes EnvironmentFile/opt/hermes/hermes.env ExecStart/opt/hermes/venv/bin/hermes --bot Restartalways RestartSec5 Userubuntu [Install] WantedBymulti-user.target环境变量单独放在/opt/hermes/hermes.envHERMES_MODEL_PROVIDERopenai HERMES_MODELqwen-plus OPENAI_API_KEYsk-xxxxx BOT_AUTH_TOKEN你的token启动并启用服务sudo systemctl daemon-reload sudo systemctl enable --now hermes-agent以后进程因为任何原因退出systemd 都会在 5 秒后自动拉起。查看运行状态和日志systemctl status hermes-agent journalctl -u hermes-agent -f有了这层守护才真正谈得上“7×24 小时在线”。4.2 内存与磁盘的长期管理24GB 内存看起来很充裕但不能掉以轻心。常驻 Python 进程、Chromium 临时进程、向量数据库索引加在一起内存占用会缓慢增长。特别是 Chromium 退出后部分内存碎片并不会立刻归还给系统日积月累可能逼近 OOM。应对策略有两层。第一层是在 systemd 服务里加上内存约束MemoryMax8G MemoryHigh6G第二层是配合系统监控平时用free -h和htop观察趋势。磁盘方面长时间开浏览器自动化会留下大量临时文件和日志特别是 journald 的日志会默默涨大。定期清理sudo journalctl --vacuum-size200M同时调整 Hermes 配置关闭自动截图保存只保留最终结果输出磁盘压力会小很多。4.3 公网暴露与安全加固常驻服务暴露在公网上迟早会迎来扫描器的问候。如果你在 bot 配置里没有设置 auth_token我几乎可以确定第一晚就能看到来自陌生 IP 的垃圾请求。所以认证令牌一定要用足够长的随机字符串。另外强烈建议关闭 SSH 密码登录。修改/etc/ssh/sshd_configPasswordAuthentication no然后重启 SSH 服务sudo systemctl restart ssh如果只是自己用还可以在 VCN 安全列表里把 SSH 和 bot 端口的来源 IP 限制到你的固定公网 IP。这样即使扫描器看到端口也无法建立连接。安全这件事不能靠运气免费机因为零成本反而更容易被攻击者当成批量扫描的目标。5. 常见问题与排查速查5.1 进程被 systemd 反复重启日志里只有异常退出码先看 journalctl 的详细输出journalctl -u hermes-agent -n 200常见原因有三个API Key 过期、依赖库与 Hermes 版本不兼容、配置文件里的模型名写错。逐个排查时可以停掉 systemd 服务在前台用 debug 模式启动systemctl stop hermes-agent /opt/hermes/venv/bin/hermes --bot -v前台会直接打印详细报错看到具体异常再对症处理。5.2 对话响应越来越慢一个请求要等十几秒先判断瓶颈在模型 API 还是本机网络。连续请求同一个任务三次如果每次都很慢且时间稳定大概率是模型 API 本身的服务状态或限流问题。如果时快时慢再检查免费机的网络延迟或是不是有多个进程在争抢资源。用htop看一下 CPU 占用如果接近满载再用journalctl确认是否有进程反复重启。5.3 CUA 的 Chromium 启动失败缺库报错这个问题的根源几乎都是少了系统依赖。执行一次playwright install-deps装完再试。如果还报缺某个具体库再单独安装对应包。5.4 Obsidian 和外部脚本请求超时先确认三点地址写的是公网 IP 而不是 localhostOracle Cloud 安全列表放行了对应端口本地防火墙没有拦截出站请求。用 curl 从你的电脑请求一次 bot 的/health或/chat能通就是配置正确不通就用ss -tlnp从免费机上确认服务监听地址是不是0.0.0.0。把常见问题整理成表格方便对照现象优先级排查点进程频繁重启高journalctl 查看异常前台 debug 模式定位响应极慢中区分模型 API 限流或本机网络/资源瓶颈Chromium 无法启动中playwright install-deps 补系统依赖HTTP 请求超时高检查监听地址、安全列表、认证 token磁盘空间告急低清理 journald、关闭截图、定期处理临时文件内存逐步上涨中systemd MemoryMax 限制 htop 观察6. 最后再说点心得体会跑通这套免费机 Hermes Agent 的方案之后我自己的感受是最大的门槛不是技术而是愿不愿意把运维底子打扎实。systemd 守护、环境变量隔离、日志清理、密钥管理、网络放行这些听起来不酷但没有其中任何一项你的“7×24 在线”都会变成“7×24 失联”。先把稳定运行的基础做牢后面想扩展什么新玩法都顺理成章。我还有一个个人小技巧定期把 Hermes Agent 的配置文件和.env备份到本地仓库这样即使免费机被回收或者误操作重装也可以在半小时内重建整个服务不会丢失长期积累的记忆数据和任务逻辑。最后再分享一个我实测很舒服的场景现在这台免费机每天早上 9 点自动整理前一日技术博客更新中午接一次 Obsidian 发来的笔记任务晚上把当天处理过的内容汇总写入日志库全程不需要我打开电脑干预。如果你手里正好有闲置的 Oracle Cloud 免费机建议今晚就动手试一次先跑通最小闭环再逐步加上记忆、自动化、浏览器操作这些进阶功能。
锦
锦皓数字建站
深耕本土企业品牌数字化升级,专注原创端正雅致商务官网,从视觉设计到稳定运维全程保驾护航。