hermes function calling guide

Hermes 函数调用实战:构建工具增强型智能体

为什么是 Hermes? 在工具增强型智能体的构建中,函数调用(Function Calling)能力是核心中的核心。当 OpenAI 的 function calling 成为行业事实标准后,开源社区一直在寻找能够可靠执行这一范式的开源模型。NousResearch 的 Hermes 系列正是在这个需求下脱颖而出的产物。 Hermes 不是又一个通用大模型,而是一个专注于"指令遵循和工具使用"的特化模型系列。它通过对大量函数调用对话数据进行精细微调,在开源模型中实现了接近 GPT-4 级别的函数调用可靠性。 Hermes 函数调用机制详解 2.1 与 OpenAI function calling 的对比 OpenAI 的 function calling 采用 JSON Schema 定义函数签名,模型直接输出结构化的 JSON 参数。Hermes 采用了一种不同的方案——基于特殊标记的函数调用格式: 模型在生成文本时,通过特定的标记来表示"我要调用一个函数",然后在标记之间输出 JSON 格式的调用信息。例如,当用户询问天气时,模型会输出类似如下的内容: {"name": "get_weather", "arguments": {"location": "上海", "unit": "celsius"}} 这种设计有几个优势: 可解析性强:特殊标记使得函数调用的边界清晰明确,解析器不需要依赖正则表达式或 JSON 修复 多调用支持:一次响应中可以包含多个函数调用请求 与自然语言混合:模型可以在函数调用前后插入自然语言解释,提升用户体验 2.2 工具定义格式 Hermes 使用 JSON Schema 来定义可用工具,格式与 OpenAI 高度兼容: tools = [ { "type": "function", "function": { "name": "search_web", "description": "搜索互联网获取最新信息", "parameters": { "type": "object", "properties": { "query": { "type": "string", "description": "搜索关键词" }, "max_results": { "type": "integer", "description": "最大返回结果数", "default": 5 } }, "required": ["query"] } } }, { "type": "function", "function": { "name": "read_file", "description": "读取指定路径的文件内容", "parameters": { "type": "object", "properties": { "path": { "type": "string", "description": "文件路径" } }, "required": ["path"] } } } ] 2.3 系统提示构建 Hermes 的函数调用依赖于精心设计的系统提示来引导模型行为: ...

2026-06-26 · 4 min · 791 words · 硅基 AGI 探索者
nous hermes model review

Nous Hermes 系列模型全面评测

引言:开源社区的"爱马仕" 在开源大语言模型的生态中,NousResearch 的 Hermes 系列一直占据着特殊地位。它不以参数规模取胜,而是以精细的对齐策略和出色的指令遵循能力赢得了社区的广泛认可。从 Hermes 2 到 Hermes 3,再到最新的 Hermes 4 系列,NousResearch 展示了一条与主流大厂截然不同的发展路径——不追求通用基准分数的堆砌,而是专注于让模型真正"听话"且"有用"。 本文将从多个维度对 Hermes 系列模型进行系统评测,涵盖推理能力、创意写作、代码生成、多语言处理、角色扮演等核心场景,并为不同使用场景提供模型选择建议。 一、Hermes 系列发展脉络 1.1 Hermes 2:奠定基础 Hermes 2 基于 Llama 2 架构,首次引入了 NousResearch 自研的对齐方法。与标准 RLHF 不同,Hermes 2 采用了基于高质量人类标注数据的 SFT(Supervised Fine-Tuning)策略,数据集涵盖多轮对话、复杂推理、创意写作等场景。这一策略使 Hermes 2 在指令遵循方面表现优异,特别是在长指令和复合指令的处理上。 1.2 Hermes 3:质的飞跃 Hermes 3 基于更新的基座模型(Llama 3.1),在以下方面实现了显著提升: 上下文窗口:从 8K 扩展到 128K 推理深度:在数学推理和逻辑推理基准上提升 30% 以上 多语言能力:新增对中文、日文、韩文等亚洲语言的深度支持 函数调用:原生支持结构化函数调用,适配 Agent 应用场景 1.3 Hermes 4:最新进展 Hermes 4 在保持前代优势的基础上,引入了以下创新: 多模态理解:支持图像输入理解 更强的代码能力:在 HumanEval 和 MBPP 基准上达到同参数级别模型的前列 改进的长文本处理:在 128K 上下文窗口内的信息检索准确率显著提升 增强的角色扮演:在长对话中保持角色一致性的能力大幅改善 二、评测方法论 2.1 评测维度 本次评测覆盖以下六个核心维度: ...

2026-06-26 · 2 min · 412 words · 硅基 AGI 探索者
hermes overview 2026

Hermes Agent 爱马仕智能体全景:越用越聪明的 AI

起源:Nous Research 的野心 Hermes Agent(爱马仕智能体)由 Nous Research 团队发起。Nous Research 是北美知名的独立 AI 研究组织,专注于开源大模型与自主智能体系统。团队核心成员来自 CMU、Stanford 等顶尖院校,此前已发布 Hermes 系列开源模型(Hermes 2、Hermes 3),在 HuggingFace 上累计下载量超过 2000 万次。 2026 年 2 月,Nous Research 正式开源 Hermes Agent 项目,采用 MIT 协议。这不是一个简单的聊天机器人框架,而是一个具备自进化能力的自主智能体系统。 核心定位:The Agent That Grows With You Hermes 的 slogan 是 “the agent that grows with you”——与你共同成长的智能体。传统 AI Agent 的问题在于:用得越多,对话历史越长,但能力并不会增长,反而 context window 膨胀导致性能下降。Hermes 颠覆了这一范式: 传统 Agent: 使用 → 历史膨胀 → 性能下降 → 清空 → 从零开始 Hermes: 使用 → 经验积累 → 技能提炼 → 能力增长 → 越用越强 这一核心理念通过三个机制实现: ...

2026-06-25 · 2 min · 385 words · 硅基 AGI 探索者
hermes install deploy

Hermes Agent 安装部署指南:从零到运行

环境要求 基本环境 组件 最低版本 推荐版本 说明 Node.js 18.0 22 LTS 主运行时 Python 3.10 3.12 复盘 LLM 与工具脚本 Git 2.30 latest 版本管理 RAM 4 GB 16 GB+ 本地模型需更多 磁盘 2 GB 20 GB+ 技能库与记忆数据库 操作系统支持 系统 支持 备注 Linux (Ubuntu 22.04+) ✅ 原生 最佳支持 macOS (13+) ✅ 原生 Apple Silicon 优秀 Windows (10/11) ✅ WSL2 原生支持有限,建议 WSL2 Docker ✅ 跨平台推荐方式 Raspberry Pi ✅ 需使用轻量模型 安装步骤 方式一:快速安装(推荐) # 一键安装脚本 curl -fsSL https://raw.githubusercontent.com/nousresearch/hermes-agent/main/install.sh | bash # 或手动安装 git clone https://github.com/nousresearch/hermes-agent.git cd hermes-agent npm install pip install -r requirements.txt 方式二:Docker 安装 # 拉取官方镜像 docker pull nousresearch/hermes-agent:latest # 快速启动 docker run -d \ --name hermes \ -p 3000:3000 \ -v hermes-memory:/app/memory \ -v hermes-skills:/app/skills \ -e PRIMARY_LLM_PROVIDER=openai \ -e OPENAI_API_KEY=$OPENAI_API_KEY \ nousresearch/hermes-agent:latest 方式三:Docker Compose # docker-compose.yml version: '3.8' services: hermes: image: nousresearch/hermes-agent:latest ports: - "3000:3000" volumes: - hermes-memory:/app/memory - hermes-skills:/app/skills - ./config.yaml:/app/config.yaml environment: - PRIMARY_LLM_PROVIDER=openai - OPENAI_API_KEY=${OPENAI_API_KEY} - REFLECTION_LLM_PROVIDER=ollama - OLLAMA_HOST=http://ollama:11434 depends_on: - ollama restart: unless-stopped ollama: image: ollama/ollama:latest volumes: - ollama-models:/root/.ollama ports: - "11434:11434" restart: unless-stopped volumes: hermes-memory: hermes-skills: ollama-models: docker-compose up -d 模型配置 Hermes 兼容 200+ 模型,通过统一配置接口管理。 ...

2026-06-25 · 4 min · 779 words · 硅基 AGI 探索者
hermes skill auto generation

Hermes 技能自动生成:从任务经验到可复用 Skill

从经验到技能:核心问题 AI Agent 每天执行大量任务,但这些经验几乎总是"用完即弃"。即使有对话历史,那也只是一堆非结构化的聊天记录,无法被下次任务直接复用。 Hermes Agent 的核心创新之一是技能自动生成:系统从任务执行记录中自动提炼结构化的 SKILL.md 文件,形成可复用、可测试、可版本管理的技能库。 技能触发条件 并非所有任务都值得提炼为技能。Hermes 定义了明确的触发条件: 触发规则 条件 阈值 原因 工具调用次数 ≥ 5 次 5 次以上说明任务有复杂度 错误修复成功 任意 出错后修复 = 有价值的经验 重复任务模式 ≥ 3 次 重复说明这是常见需求 用户显式要求 任意 用户判断有价值 复盘 LLM 评估 score ≥ 0.7 复盘模型认为值得提炼 class SkillTrigger: """技能生成触发器""" def should_extract(self, task_record, pattern_history): # 条件 1:工具调用次数 if task_record.tool_call_count >= 5: return True, "complex_task" # 条件 2:错误修复 if task_record.had_error and task_record.error_fixed: return True, "error_recovery" # 条件 3:重复模式 similar_count = pattern_history.count_similar(task_record) if similar_count >= 3: return True, "repeated_pattern" # 条件 4:用户显式要求 if task_record.user_requested_skill: return True, "user_request" # 条件 5:复盘 LLM 评估 score = self._evaluate_skill_worth(task_record) if score >= 0.7: return True, "llm_evaluation" return False, None def _evaluate_skill_worth(self, task_record): """复盘 LLM 评估任务是否值得提炼为技能""" # 输入:任务摘要、工具调用、结果 # 输出:0-1 分数 ... 多条件组合 实际场景中可能多个条件同时满足,Hermes 使用加权评分: ...

2026-06-25 · 4 min · 749 words · 硅基 AGI 探索者
hermes dual llm design

Hermes 双 LLM 架构:主模型+复盘模型协同

单模型的问题 大多数 Agent 框架使用单个 LLM 完成所有工作:理解指令、规划任务、调用工具、生成回复、总结经验。这带来三个问题: 成本高:用 GPT-4o 做经验总结是大材小用,总结任务用 Llama 3 8B 就够了 延迟高:任务执行完后还要等同一个模型完成总结才能返回 质量妥协:为了省成本用便宜模型,执行质量打折;用好模型,总结又太贵 Hermes 的解法是双 LLM 架构:一个主模型负责"干活",一个轻量复盘模型负责"学习和记忆"。 架构全景 用户消息 │ ▼ ┌──────────────┐ │ 主 LLM │ ← GPT-4o / Claude / Qwen(强大但昂贵) │ (执行层) │ │ │ │ · 任务理解 │ │ · 规划决策 │ │ · 工具调用 │ │ · 结果生成 │ └──────┬───────┘ │ │ 同步返回结果给用户 ▼ 用户收到回复 │ │ 异步触发(不阻塞用户) ▼ ┌──────────────┐ │ 复盘 LLM │ ← Llama 3 8B / Qwen 7B(轻量但够用) │ (学习层) │ │ │ │ · 经验总结 │ │ · 技能提炼 │ │ · 记忆更新 │ │ · 画像修正 │ └──────────────┘ 关键点:复盘 LLM 完全异步执行,用户不需要等待学习过程完成。 ...

2026-06-25 · 4 min · 684 words · 硅基 AGI 探索者
hermes memory architecture

Hermes 四层记忆架构:从短期到永久的记忆系统

为什么 Agent 需要记忆 人类记忆分为短期记忆、工作记忆、长期记忆,各有不同容量与持久性。AI Agent 面临同样的问题:对话窗口有限,但用户期望 Agent 记住偏好、历史决策、学到的技能。 传统 Agent 的记忆方案通常是两种极端: 全部塞进 context:对话历史越来越长,token 成本爆炸,性能下降 无持久记忆:每次对话从零开始,用户反复解释需求 Hermes Agent 的解决方案是四层记忆架构,模拟人类记忆的分层机制,在不同层级存储不同生命周期的信息。 四层记忆总览 ┌─────────────────────────────────────────────────┐ │ 第一层:核心记忆 (Core Memory) │ │ 容量:~800 token | 生命周期:当前会话 │ │ 存储介质:内存 | 检索方式:直接注入 prompt │ ├─────────────────────────────────────────────────┤ │ 第二层:用户画像 (User Profile) │ │ 容量:~2000 token | 生命周期:永久 │ │ 存储介质:USER.md 文件 | 检索方式:会话开始注入 │ ├─────────────────────────────────────────────────┤ │ 第三层:长期历史 (Long-term History) │ │ 容量:无限 | 生命周期:永久 │ │ 存储介质:SQLite + FTS5 | 检索方式:全文检索 │ ├─────────────────────────────────────────────────┤ │ 第四层:技能记忆库 (Skill Memory) │ │ 容量:无限 | 生命周期:永久 + 版本管理 │ │ 存储介质:SKILL.md 文件集 | 检索方式:语义匹配 │ └─────────────────────────────────────────────────┘ 第一层:核心记忆(Core Memory) 核心记忆是 Agent 的"工作记忆",存在于当前会话的 context window 中。Hermes 严格控制其大小在 800 token 以内。 ...

2026-06-25 · 4 min · 761 words · 硅基 AGI 探索者
hermes security framework

Hermes 五层安全防线:从用户授权到供应链安全

AI Agent 的安全困境 AI Agent 拥有执行 Shell 命令、读写文件、调用 API 的能力,这让它极其强大,也极其危险。一个不受控的 Agent 可能删除重要文件、泄露敏感数据、甚至被注入攻击利用。 Hermes Agent 构建了五层安全防线,从内到外形成纵深防御: ┌─────────────────────────────────────────────────────┐ │ 第五层:供应链安全 │ │ 技能市场审核、依赖校验、签名验证 │ ├─────────────────────────────────────────────────────┤ │ 第四层:行为审计 │ │ 操作日志、异常检测、告警通知 │ ├─────────────────────────────────────────────────────┤ │ 第三层:容器隔离 │ │ Docker 沙箱、资源限制、网络策略 │ ├─────────────────────────────────────────────────────┤ │ 第二层:危险命令审批 │ │ 命令分类、风险评分、人工确认 │ ├─────────────────────────────────────────────────────┤ │ 第一层:用户授权 │ │ 身份认证、权限分级、操作范围限制 │ └─────────────────────────────────────────────────────┘ 第一层:用户授权 身份认证 # config.yaml - 认证配置 auth: mode: token # token | oauth | multi # Token 认证 tokens: - token: "hermes-xxxx" user: "alice" role: admin # admin | user | readonly # 多用户支持 users: alice: role: admin allowed_tools: ["*"] allowed_paths: ["/"] bob: role: user allowed_tools: ["shell", "file_read", "file_write"] allowed_paths: ["/home/bob", "/tmp"] guest: role: readonly allowed_tools: ["file_read"] allowed_paths: ["/public"] 权限分级 角色 可用工具 文件访问 危险命令 管理操作 admin 全部 全部 需确认 允许 user Shell/文件/API 用户目录 需确认 禁止 readonly 只读工具 指定目录 禁止 禁止 class AuthManager: """用户授权管理""" def check_permission(self, user, action, resource): role = self.get_role(user) # 检查工具权限 if action.tool not in role.allowed_tools: return False, "tool_not_allowed" # 检查路径权限 if not self._check_path(resource.path, role.allowed_paths): return False, "path_not_allowed" # 检查危险操作 if action.is_dangerous and not role.can_dangerous: return False, "dangerous_not_allowed" return True, "ok" 第二层:危险命令审批 命令分类系统 Hermes 将所有可执行命令分为四个风险等级: ...

2026-06-25 · 5 min · 922 words · 硅基 AGI 探索者
hermes self evolution

Hermes 自进化机制:AI 如何学会自己成长

自进化:Agent 的根本问题 传统 AI Agent 面临一个根本矛盾:能力不会随使用增长。你用了 Agent 一千次,它还是第一次的水平。对话历史越来越长,但那是负担而非财富——context window 膨胀、响应变慢、成本上升。 Hermes Agent 的核心突破在于学习闭环(Learning Loop):每次任务执行都是一次学习机会,系统自动从经验中提炼可复用的技能,存入技能库供未来使用。 学习闭环的三层架构 Hermes 的学习闭环分为三层,每层负责不同粒度的学习: 第一层:任务级学习(Task-Level Learning) 每次任务执行完成后,复盘 LLM 立即启动,对该次任务进行总结: # Hermes 复盘流程伪代码 async def reflection_loop(task_result): # 1. 提取关键信息 summary = await reflection_llm.analyze( task=task_result.task, actions=task_result.actions, outcome=task_result.outcome, errors=task_result.errors, prompt=f""" 分析本次任务执行: - 任务目标:{task_result.task} - 执行步骤:{task_result.actions} - 最终结果:{task_result.outcome} - 遇到错误:{task_result.errors} 请总结: 1. 成功的关键步骤 2. 可以改进的地方 3. 是否有可复用的模式 """ ) # 2. 写入长期记忆 memory_store.add_experience(summary) # 3. 判断是否触发技能提炼 if should_extract_skill(task_result): await skill_extraction(task_result, summary) 第二层:模式级学习(Pattern-Level Learning) 当相似任务出现多次,系统识别出重复模式,触发技能提炼。Hermes 的技能触发条件: ...

2026-06-25 · 3 min · 446 words · 硅基 AGI 探索者
hermes vs openclaw deep

爱马仕 vs 龙虾:Hermes 与 OpenClaw 深度技术对比

两个框架,两种哲学 Hermes Agent 和 OpenClaw 是 2026 年最受关注的两个开源 AI Agent 框架。它们都能让 LLM 执行任务、调用工具、与用户交互,但底层哲学截然不同。 Hermes(爱马仕):进化者——Agent 越用越聪明,从经验中自动学习 OpenClaw(龙虾):执行者——Agent 稳定可靠,通过社区插件扩展能力 这不是简单的功能对比,而是两种 Agent 设计哲学的碰撞。 架构哲学对比 Hermes:自进化优先 Hermes 核心循环: 用户消息 → 主 LLM 执行 → 结果返回 → 复盘 LLM 学习 → 技能积累 → 下次更强 Hermes 的架构围绕"学习"设计。双 LLM 是为了学习,四层记忆是为了存储学习成果,技能自动生成是为了复用学习经验。整个系统的每个组件都服务于"越用越聪明"这一目标。 OpenClaw:执行优先 OpenClaw 核心循环: 用户消息 → LLM 执行 → 调用工具/Skill → 结果返回 OpenClaw 的架构围绕"执行"设计。单 LLM 模型、技能由社区开发和安装、记忆系统相对简单。系统专注于"把当前任务做好",扩展能力通过社区插件生态实现。 哲学差异总结 维度 Hermes OpenClaw 核心信念 Agent 应该自己学习成长 Agent 应该稳定执行任务 能力增长 自动(自进化) 手动(安装插件) 复杂度 较高(双 LLM + 四层记忆) 较低(单 LLM + 基础记忆) 上手难度 中等 简单 长期价值 随使用增长 随插件增多增长 记忆系统对比 Hermes 四层记忆 核心记忆(800 token) → 用户画像(USER.md) → 长期历史(SQLite FTS5) → 技能记忆库(SKILL.md) 分层存储,按需检索 SQLite FTS5 全文检索 技能语义匹配 跨会话持久化 OpenClaw 记忆 对话上下文 → MEMORY.md → memory/YYYY-MM-DD.md → 启动时注入 文件式存储,启动时加载 依赖 LLM 主动维护 无全文检索 无自动压缩 对比 能力 Hermes OpenClaw 短期记忆 核心记忆 800 token 精确控制 对话窗口 用户画像 自动提取与更新 USER.md 手动编写 USER.md 历史检索 SQLite FTS5 全文检索 全文加载 memory/ 目录 记忆压缩 复盘 LLM 自动压缩 依赖 LLM 上下文窗口 技能记忆 语义匹配自动加载 手动安装后静态加载 跨会话 完整持久化 文件持久化 技能系统对比 这是两个框架差异最大的部分。 ...

2026-06-25 · 4 min · 641 words · 硅基 AGI 探索者
鲁ICP备2026018361号