1. 什么是 Hermes Agent

Hermes Agent 是一个基于大语言模型(LLM)的智能代理框架,能够自主理解用户意图、规划任务步骤、调用工具并执行复杂工作流。它支持多种 LLM 后端(如 OpenAI、Anthropic、本地模型),适用于自动化办公、代码开发、数据分析等场景。

2. 环境准备

2.1 硬件要求

  • CPU:4 核及以上(推荐 8 核)
  • 内存:16GB 及以上(推荐 32GB)
  • 磁盘:50GB 可用空间(用于模型缓存和日志)
  • GPU(可选):NVIDIA GPU 8GB+ 显存(用于本地模型推理)

2.2 软件依赖

  • 操作系统:Ubuntu 20.04+ / macOS 12+ / Windows 10+(WSL2 推荐)
  • Python:3.10 - 3.12
  • Git:2.30+
  • Node.js:18+(可选,用于 Web UI)
  • Docker:24+(可选,容器化部署)

3. 安装步骤

3.1 克隆仓库

git clone https://github.com/your-org/hermes-agent.git
cd hermes-agent

3.2 创建虚拟环境

python3 -m venv venv
source venv/bin/activate  # Linux/macOS
# 或
venv\Scripts\activate     # Windows

3.3 安装依赖

pip install --upgrade pip
pip install -r requirements.txt

如果安装速度慢,可使用国内镜像源:

pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

3.4 安装可选依赖(Web UI)

pip install -r requirements-web.txt
cd web && npm install && cd ..

4. 配置 Hermes Agent

4.1 创建配置文件

cp config.example.yaml config.yaml

4.2 配置 LLM 后端

编辑 config.yaml,找到 llm 部分:

llm:
  provider: openai  # 可选: openai, anthropic, ollama, vllm
  model: gpt-4o
  api_key: "sk-your-api-key-here"
  api_base: "https://api.openai.com/v1"  # 可选,用于代理或兼容接口
  temperature: 0.7
  max_tokens: 4096
使用本地模型(Ollama 示例)
llm:
  provider: ollama
  model: llama3.1:8b
  api_base: "http://localhost:11434"
  temperature: 0.7
  max_tokens: 4096

4.3 配置工具

Hermes Agent 支持多种内置工具,在 tools 部分启用:

tools:
  - name: web_search
    enabled: true
    provider: duckduckgo
  - name: code_executor
    enabled: true
    sandbox: docker  # 可选: local, docker
  - name: file_reader
    enabled: true
  - name: file_writer
    enabled: true

5. 运行 Hermes Agent

5.1 命令行模式

python run.py --config config.yaml

启动后进入交互式对话,输入任务描述即可:

User: 帮我分析当前目录下的日志文件,找出错误最多的前5个类型
Agent: 正在分析日志文件...

5.2 Web UI 模式

python run.py --config config.yaml --web

然后在浏览器中访问 http://localhost:8080 即可打开可视化界面。

5.3 Docker 部署

# 构建镜像
docker build -t hermes-agent .
运行容器
docker run -d 
--name hermes-agent
-p 8080:8080
-v $(pwd)/config.yaml:/app/config.yaml
-v $(pwd)/data:/app/data
hermes-agent

6. 进阶配置

6.1 多 Agent 协作

config.yaml 中配置多个 Agent:

agents:
  - name: researcher
    llm:
      provider: openai
      model: gpt-4o
    tools: [web_search, file_reader]
  - name: coder
    llm:
      provider: anthropic
      model: claude-3-5-sonnet-20241022
    tools: [code_executor, file_writer]

6.2 自定义工具

tools/custom/ 目录下创建 Python 文件,继承 BaseTool 类:

from hermes.tools.base import BaseTool
class MyCustomTool(BaseTool):
name = "my_custom_tool"
description = "自定义工具描述"
def run(self, params: dict) -> str:
    # 实现工具逻辑
    return "工具执行结果"</code></pre>
然后在 config.yaml 中注册:
tools:
  - name: my_custom_tool
    enabled: true
    module: tools.custom.my_tool
7. 常见问题排查
7.1 API 连接失败
检查 api_key 是否正确
确认网络能访问 API 地址(可能需要配置代理)
查看日志:tail -f logs/hermes.log
7.2 内存不足
降低 max_tokens 值
使用更小的模型(如 gpt-4o-mini 或 llama3.1:8b)
增加系统 swap 空间
7.3 工具执行超时
在 config.yaml 中调整超时时间:
execution:
  timeout: 120  # 默认60秒,可根据需要调整
8. 总结
本文详细介绍了 Hermes Agent 从环境准备、安装配置到运行部署的完整流程。通过本教程,你应该能够成功搭建自己的智能代理系统。建议先从命令行模式开始体验,熟悉后再尝试 Web UI 和 Docker 部署。如果遇到问题,欢迎在项目 GitHub Issues 中反馈。
Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐