找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

4983

积分

0

好友

660

主题
发表于 4 小时前 | 查看: 5| 回复: 0

OpenClaw的发布带来了巨大的关注,同时也引发了对其安全性的广泛担忧。在这之后,市场上出现了不少旨在解决OpenClaw痛点的模仿者。其中,安全问题(尤其考虑到其庞大的仓库规模)和运行成本是两大核心挑战。根据经验,成本很容易失控,因为即便是OpenClaw的创建者也建议使用Claude Opus 4.6这类顶级模型来防范提示词注入风险,而这并不便宜,特别是当你的代理需要在记忆和技能方面发送大量上下文时。

NousResearch hermes-agent GitHub仓库页面截图

正是在这种背景下,Hermes Agent应运而生。这个拥有88k星标的开源项目声称在使用开源模型方面能够超越OpenClaw。它认为,只要拥有正确的“装备”,开源模型也能高效工作。本文将亲自试用这款代理,检验其说法,并带你完成从安装、配置到与不同模型交互的完整上手过程。

什么是 Hermes Agent?

Hermes Agent是由Nous Research实验室(同时也是Hermes模型背后的团队)推出的开源OpenClaw替代方案。它与OpenClaw略有不同,其核心在于能够从经验中创造技能,在使用过程中自我改进,并在不同会话间持久化知识。

Hermes Agent产品功能概览图

Hermes Agent 核心能力

让我们深入了解一下Hermes Agent的一些核心特性。

闭环学习与自我改进记忆

Hermes Agent具备闭环学习能力,这意味着:

  • 它拥有由代理主动策划的记忆,并带有定期提醒机制。
  • 在完成复杂任务后,它能自动创建技能。
  • 这些技能在使用过程中会不断自我改进。

此外,Hermes Agent使用带有FTS5全文搜索功能的SQLite数据库来存储消息会话。这使得它能够检索数周前的记忆,即使这些记忆当前并不在活跃上下文中。Hermes还整合了Honcho记忆系统,使代理能够跨会话持久理解用户,并通过memory.mduser.md文件来增强对用户偏好、目标和沟通风格的认知。

上下文压缩与缓存

使用AI助手的一大痛点在于Token消耗巨大,导致API调用成本高昂。Hermes Agent采用双重压缩机制并结合Anthropic的提示词缓存来管理长对话中的上下文使用,有效控制成本。

Hermes Agent消息处理与上下文压缩流程图

该机制还能防止因上下文过长导致的API调用失败。其工作原理是通过修剪旧信息,并利用LLM对对话进行总结。

传入消息 → 会话触发器(pre-flight,足够近?)→ Agent 上下文压缩器(In-Loop,next Token?)

技能系统

与OpenClaw类似,Hermes Agent支持技能。这些技能与agentskills.io标准兼容,并遵循渐进式披露模式以最小化Token消耗。它自带捆绑的核心技能,并在你使用过程中不断保存新创建的技能。所有技能都存储在~/.hermes/skills/目录中,但你也可以将代理指向外部的技能库。

~/.hermes/skills/
├── mlops/                    # 单一事实来源
│   ├── axolotl/              # 类别目录
│   │   ├── SKILL.md          # 主要指令(必需)
│   │   ├── references/       # 附加文档
│   │   ├── templates/        # 输出格式
│   │   ├── scripts/          # 可从技能调用的辅助脚本
│   │   └── assets/           # 补充文件
│   └── vllm/
│       └── SKILL.md
├── devops/
│   └── deploy-k8s/           # Agent 创建的技能
│       ├── SKILL.md
│       └── references/
├── .hub/                     # Skills Hub 状态
│   ├── lock.json
│   ├── quarantine/
│   └── audit.log
└── .bundled_manifest         # 跟踪种子捆绑技能

子代理与并行工作流

Hermes Agent提供了一个delegate_task工具,用于启动多个子代理。这些子代理拥有受限的工具集和独立的终端会话。它们从零开始新的对话,对主对话历史一无所知,因此你需要提供完成任务所需的所有信息。你可以利用此功能并行处理多个任务,例如同时研究多个主题并汇总、进行代码审查,或者同时修复和重构多个文件。

Hermes Agent核心能力环形图示

强化学习训练与轨迹生成

Hermes Agent集成了基于Tinker-Atropos的强化学习训练流水线。这支持使用GRPO(组相对策略优化)和LoRA适配器在特定环境中训练LLM。

Hermes Agent RL训练系统架构图

环境 BaseEnv 实现 → Atropos API (run-api, port 8000) → 批次:tokens、scores、logprobs → Tinker Trainer (LoRA 训练 + FastAPI) → 提供推理 → OpenAI / sglang 推理 API (port 8001)

运行 Hermes Agent 的前提条件

Hermes 可以在 Linux、macOS 和 WSL2 上运行。它需要 Python 3.11 和 Node.js,不过大多数依赖项会在安装过程中自动处理。

步骤 1:安装 Hermes Agent

打开终端,运行以下单行安装命令:

curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash

安装程序会请求权限,之后将自动完成安装,并询问你是否要立即运行设置向导。

Hermes Agent安装程序运行过程终端截图

步骤 2:获取你的接口令牌(以Telegram为例)

如果你想使用Telegram网关,首先需要在Telegram中操作:

  1. 搜索 @BotFather,向其发送 /newbot,按照提示为你的机器人命名,之后你会获得一个类似 123456789:AAH... 的机器人令牌,请复制保存。
  2. 搜索 @userinfobot,获取你的Telegram用户ID。这是为了让你的机器人只与你对话。

步骤 3:初始化与配置

运行设置向导:

hermes setup

选择 Full Setup 可以配置所有项目,包括API密钥和Telegram机器人。

Hermes Agent配置选项菜单

随后,你将进入详细的配置菜单,例如选择模型和推理提供商。

Hermes Agent模型与提供商选择菜单

如果你已有OpenClaw的配置,设置程序也支持迁移。完成后,可以使用以下命令验证安装状态:

hermes doctor

Hermes Doctor诊断工具输出结果

步骤 4:模型选择与切换

如果你按照上述步骤操作,模型应该已经配置好了。但你随时可以通过运行以下命令来切换模型:

hermes model

命令会列出所有支持的模型提供商,你可以通过输入对应的数字进行选择。

hermes model命令模型选择菜单

步骤 5:设置消息网关

网关允许你通过Telegram等平台与Hermes交互,而无需一直守在终端前。通过运行以下命令进行设置:

hermes gateway setup

hermes gateway setup命令设置过程

完成这些步骤后,你应该就能从Telegram向你的机器人发送消息并收到回复了。

通过Telegram与Hermes Agent对话查询股价的示例

Hermes Agent通过其开源特性、成本控制机制和强大的技能系统,为希望构建个性化、可进化的AI助手的开发者提供了一个颇具吸引力的选择。如果你想探索更多前沿技术实践与开源项目,不妨到云栈社区与更多开发者交流碰撞。




上一篇:源升智能灵巧手完成超亿元融资:21自由度,触觉感知达1KHz
下一篇:从本地内存到Redis集群:千万QPS会话管理架构演进实战
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-4-19 07:15 , Processed in 0.822892 second(s), 41 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表