🤖HermesBlog
Hermes 实战教程 · 第4篇2026/8/9· Easy Understand Hermes Agent

实战:把 Hermes 当 Python 库用

Hermes 实战教程第4篇:Python 库。在代码里直接调用 Hermes。

这篇教程带你认识 Hermes 的另一面——它不只是命令行工具,还能像积木一样嵌进你自己的 Python 程序里,帮你搭建聊天机器人、自动化脚本,甚至网页后端。


第 1 步:安装 Hermes

把 Hermes 当作 Python 库使用,需要先把它“请”到你的电脑上。打开终端,执行:

git clone https://github.com/NousResearch/hermes-agent.git
cd hermes-agent
uv sync

这就像把一套乐高积木拆包、按说明书拼好底座。之后,你的程序都要用 uv run python 你的程序.py 来运行。

别忘了设置 API 密钥(相当于给 Hermes 办一张“通行证”):

export OPENROUTER_API_KEY="你的密钥"

第 2 步:第一次对话

Hermes 最基础的用法是 chat() 方法——你问一句,它答一句:

from run_agent import AIAgent

agent = AIAgent(
    model="anthropic/claude-sonnet-4.6",
    quiet_mode=True,   # 重要!关掉终端动画,保持输出干净
)
response = agent.chat("法国的首都是哪里?")
print(response)

chat() 内部会自动处理工具调用、重试等复杂环节,你只管拿结果。务必设置 quiet_mode=True,否则 Hermes 会在屏幕上打印一堆进度条和旋转动画,把你的程序输出搅得乱七八糟。


第 3 步:掌控完整对话

如果你需要查看对话历史或自定义系统提示,用 run_conversation()

result = agent.run_conversation(
    user_message="搜索 Python 3.13 的新特性",
    task_id="my-task-1",
)
print(result["final_response"])          # 最终回答
print(len(result["messages"]))           # 消息总数

返回的字典里包含 final_response(最终回答)和 messages(完整消息列表)。你还可以临时换一个“人设”:

result = agent.run_conversation(
    user_message="解释快速排序",
    system_message="你是计算机科学老师,用生活例子讲解。",
)

第 4 步:选择工具集

Hermes 自带多种“工具包”(如网页搜索、终端操作)。你可以用 enabled_toolsets 只开白名单,或用 disabled_toolsets 关掉某些危险工具:

# 只允许网页相关工具
agent = AIAgent(model="anthropic/claude-sonnet-4.6",
                enabled_toolsets=["web"],
                quiet_mode=True)

# 禁用终端访问(适合共享环境)
agent = AIAgent(model="anthropic/claude-sonnet-4.6",
                disabled_toolsets=["terminal"],
                quiet_mode=True)

第 5 步:多轮对话

想让 Hermes 记住上下文?把上一轮的消息历史传回去即可:

result1 = agent.run_conversation("我叫小明")
history = result1["messages"]

result2 = agent.run_conversation("我叫什么?",
                                 conversation_history=history)
print(result2["final_response"])  # 输出:你叫小明

第 6 步:批量处理与集成

Hermes 自带 batch_runner.py 支持并行处理,也可以自己用线程池。注意:每个线程必须创建独立的 AIAgent 实例,因为 agent 内部状态(对话历史、工具会话)不是线程安全的。

它还提供了 FastAPI、Discord 机器人、CI/CD 等现成集成示例,直接复制粘贴就能用。


关键参数速查

参数 作用
quiet_mode 关闭终端输出(嵌入代码时必开)
enabled_toolsets 只启用指定工具集
disabled_toolsets 禁用指定工具集
ephemeral_system_prompt 自定义系统提示(不写入训练数据)
skip_memory 关闭持久记忆(批量任务推荐)
max_iterations 单次对话最大工具调用次数(默认500)

小结

把 Hermes 当 Python 库用,就像把一位全能助手请进你的代码里——它能聊天、能搜索、能写代码,还能配合你的业务逻辑自由组合。记住三个关键点:quiet_mode=True、按需配置工具集、每个线程新建 agent 实例。

下篇预告:我们将深入 Hermes 的“记忆系统”,看看它如何跨对话记住你的偏好,以及如何用 skip_memory 控制隐私边界。敬请期待!

📖 官方文档

本文根据 Hermes Agent 官方文档编写,原文见:官方文档 › developer-guide/programmatic-integration