Hermes-Agent 简明指南
自从OpenClaw发布以来几乎每周都有新的智能体被创建尝试它们所有几乎变得不可能。但有一个新智能体引起了很多人包括我的注意。它在GitHub上只有6k星相比之下OpenClaw有307k星在撰写本文时。然而与大多数其他智能体不同它不是在内存使用上竞争而是专注于性能。这就是为什么它可能是这个领域唯一真正的OpenClaw竞争对手。Hermes智能体是由Nous Research创建的完全基于Python的开源智能体。它最有趣的功能之一是能够随时间学习。随着你的使用智能体可以将其学到的知识转化为可重用的技能通过经验改进它们存储有用的信息甚至搜索之前的对话。这使它能够更好地理解你在不同会话中的交互方式。Nous Research是一个AI研究实验室和去中心化AI初创公司以开发开源大语言模型LLM而闻名例如Hermes-4-405B和Hermes-4-70B。你可以从Hugging Face下载它们的模型或使用它们的API来尝试这些模型。然而Hermes智能体并不限于这些模型。它像OpenClaw一样多才多艺你可以使用OpenAI、OpenRouter或Nous Research的API密钥来驱动它。如果你有所需的硬件也可以在本地运行模型这增加了额外的隐私层。在本文中我将逐步指导你如何设置智能体并浏览仓库以及分享一些有趣的用例和与OpenClaw的主要区别。让我们开始使用Hermes智能体吧1、在VPS上设置Hermes智能体Hermes适用于Linux、macOS或Windows的WSL就像OpenClaw一样最佳方法是在VPS或备用计算机上设置它。我个人喜欢使用Contabo的Cloud VPS 20。每月仅需6美元你就能获得12GB RAM和200GB SSD。大多数VPS提供商会询问你想要使用哪个Linux发行版。我通常选择Ubuntu因为它有最广泛的文档支持。连接到机器后你可以用单个命令安装Hermes智能体curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash它会为你创建一个虚拟环境包含所有你需要的Python和Node.js依赖。之后你只需要重新加载shellsource ~/.bashrcHermes还包括一个入门体验虽然我发现它比OpenClaw提供的那个不够用户友好。但这并不是真正的问题因为其他一切都文档完善且组织良好从仓库结构开始它看起来像这样~/.hermes/ ├── config.yaml # 设置模型、终端、TTS、压缩等 ├── .env # API密钥和密钥 ├── auth.json # OAuth提供商凭证Nous Portal等 ├── SOUL.md # 可选全局人设智能体体现这种个性 ├── memories/ # 持久记忆MEMORY.md、USER.md ├── skills/ # 智能体创建的技能通过skill_manage工具管理 ├── cron/ # 定时任务 ├── sessions/ # 网关会话 └── logs/ # 日志errors.log、gateway.log — 密钥自动屏蔽你可以将config.yaml视为主文件。从这里你可以自定义你的智能体这相当于OpenClaw的openclaw.json。但在探索config.yaml和其他文件之前最好检查你是否在入门过程中成功添加了提供商密钥你可以在.env文件中看到这一点。例如对于OpenRouter只需在这里复制你的API密钥如果它还没有的话OPENROUTER_API_KEYsk-or-v1-60a...这应该足以让你开始与智能体对话了。在下一章中我们将看到最有用的CLI命令。2、有用的Hermes智能体CLI命令Hermes命令非常直观你可以在文档页面找到它们。在这里我只强调我发现最有用的那些。聊天要与智能体对话你只需要这个hermes打开聊天后你会发现数百个斜杠/命令可以用来替换许多CLI命令。好处是你不需要记住每个命令的作用因为它们旁边都有简要的描述模型你可以使用以下命令切换当前模型hermes model这将显示所有可用的提供商你会找到默认模型但你也可以输入自定义模型。在撰写本文时Nvidia刚刚在OpenRouter上发布了一个完全免费的超快速模型所以如果你想节省一些积分可以使用那个nvidia/nemotron-3-super-120b-a12b:free配置如果你想快速查看你的配置可以运行这个hermes config你会看到你正在使用的模型、API密钥等等你也可以使用config别名来编辑和更新配置hermes config # 查看当前配置 hermes config edit # 在编辑器中打开config.yaml hermes config set KEY VAL # 设置特定值 hermes config check # 检查缺失的选项更新后 hermes config migrate # 交互式添加缺失的选项 # 示例 hermes config set model anthropic/claude-opus-4 hermes config set terminal.backend docker hermes config set OPENROUTER_API_KEY sk-or-... # 保存到.env会话智能体将你进行的每次对话保存为会话用于让它随时间学习。你可以使用以下命令列出它们# 列出最近的会话默认最近20个 hermes sessions list # 按平台过滤 hermes sessions list --source telegram # 显示更多会话 hermes sessions list --limit 50你也可以导出完整会话并在需要迁移智能体到另一台机器而不丢失信息时执行更多任务。你可以在文档中找到更多信息。网关网关是一个后台进程持续运行并允许你在Telegram、Slack和其他渠道上聊天。然而有时它遇到一些问题需要启动、停止或重启hermes gateway start hermes gateway stop hermes gateway restart你也可以配置网关包装的消息平台hermes gateway setup定时任务很多人用这些智能体做的事情之一是安排任务和设置提醒。这通常通过定时任务完成可以使用CLI命令列出和编辑hermes cron list # 查看定时任务要删除定时任务你可以使用以下斜杠命令/cron remove job_id更新和卸载要使用仓库中的最新更改更新Hermes你可以运行hermes update如果你不喜欢Hermes而想坚持使用OpenClaw你可以卸载它hermes uninstall目前Hermes没有auditCLI命令这是OpenClaw目前的一个优势因为它可以指导你遵循最佳实践并检查你的智能体是否有可疑之处。你目前能做的最好的是在聊天中运行\insights你会得到迄今为止所做一切的摘要包括总会话数、成本、活跃时间等等。在下一节中我将向你展示如何将Hermes连接到Telegram。3、将Hermes连接到Telegram开始总是相同的你需要使用BotFather创建一个新机器人。打开Telegram并搜索BotFather。发送/newbot选择显示名称例如Hermes Agent。选择用户名。这必须是唯一的并以bot结尾例如my_hermes_botBotFather回复你的API令牌。现在你需要获取你的用户ID。最快的方法是搜索userinfobot。现在你可以运行此命令并选择Telegramhermes gateway setup按照步骤添加Bot API令牌和你的令牌ID。否则你也可以直接将信息粘贴到.env文件中TELEGRAM_BOT_TOKEN8566... TELEGRAM_ALLOWED_USERS835... TELEGRAM_HOME_CHANNEL835...如果由于某种原因你应用了更改但仍无法在Telegram上与你的智能体对话请尝试重启网关。现在让我们自定义智能体4、自定义Hermes智能体可以自定义好几样东西。例如你可以更改智能体的个性、推理努力程度、它使用的终端本地、Docker等、记忆设置以及文本转语音和语音转文本功能等等。大多数这些都可以通过更改config.yaml文件来配置。赋予个性Hermes自带所有这些个性你可以用斜杠命令选择它们personalities: helpful: 你是一个乐于助人、友好的AI助手。 concise: 你是一个简洁的助手。保持回复简短且切中要点。 technical: 你是一个技术专家。提供详细、准确的技术信息。 creative: 你是一个有创意的助手。跳出框框思考并提供创新的解决方案。 mother: 你是一个慈母般的助手。你是一个乐于助人、耐心、体贴的助手。你总是倾听用户的问题并帮助他们解决。你也非常友好和平易近人。但你直接切入要点不会说太多废话。不需要说我的爱人、亲爱的之类的话。 teacher: 你是一个耐心的老师。用例子清晰地解释概念。你可以直接在config.yaml文件的列表中添加另一个个性。然后在这里添加新个性的名称display: personality: mother更改智能体名称默认情况下你的智能体被称为Hermes但你可以在skins文件夹中更改它。首先你应该创建一个皮肤.yaml文件其中包含你的智能体名称branding: agent_name: Pecas我的智能体叫Pecas所以我把文件命名为pecas-skin.yaml。在config.yaml中我在display下添加了皮肤名称display: skin: pecas-skin你可以向皮肤文件添加更多信息例如欢迎和告别消息、提示符号、自定义UI颜色等等。启用文本转语音TTS对于TTS它支持OpenAI、Edge免费和ElevanLabs。你可以在config.yaml文件中看到所有三个选项tts: provider: edge edge: voice: en-US-AriaNeural elevenlabs: voice_id: pNInz6obpgDQGcFmaJgB model_id: eleven_multilingual_v2 openai: model: gpt-4o-mini-tts voice: alloy与OpenClaw在启用TTS时总是显示音频消息不同Hermes需要你明确要求音频消息或者你需要创建一个总是生成音频消息的技能。对某些用户来说这可能感觉像是降级。然而对我来说这实际上更好因为它节省内存而且我不需要每次都听到语音消息。最近我还在GitHub上发现了一个名为Fish Speech的新TTS和STT模型GitHub - fishaudio/fish-speech: SOTA Open Source TTS你可以在本地使用该模型或使用他们的API。启用语音转文本STT与TTS类似STT也在config.yaml文件中配置stt: enabled: true model: whisper-1对于此功能你需要OpenAI API令牌。现在让我们看看我添加到Hermes智能体的一些技能和项目示例。5、创建技能和项目Hermes自带几个预安装的技能例如Claude Code将编码任务委派给Claude CodeAnthropic的CLI智能体Apple Notes通过macOS上的CLI管理Apple NotesDog Food对Web应用程序进行系统探索性QA测试YouTube Content获取YouTube视频转录并将其转换为结构化内容OpenHue通过OpenHue CLI控制Philips Hue灯光、房间和场景Nano PDF使用nano-pdfCLI通过自然语言指令编辑PDF还有更多可用技能老实说如果你拥有正确的模型创建新技能非常容易。我做的第一件事是用Perplexity Sonar替换Firecrawl网页搜索工具。不仅因为我喜欢Perplexity提供摘要信息的方式还因为我想在我的设置中使用更少的API。所以我可以重复使用我的OpenRouter API密钥来使用Sonar。使用带有OpenRouter的Perplexity的SKILL.md文件在这里--- name: perplexity-web-search description: 配置Hermes使用Perplexity通过OpenRouter进行网页搜索替代Firecrawl version: 1.0.0 author: Pecas license: MIT metadata: hermes: tags: [web-search, perplexity, openrouter, configuration] related_skills: [duckduckgo-search] --- # Perplexity网页搜索 配置Hermes使用Perplexity的sonar-pro模型通过OpenRouter进行网页搜索替代Firecrawl。 ## 概述 - **默认搜索后端**通过OpenRouter的Perplexity sonar-pro - **需要**环境变量OPENROUTER_API_KEY - **替代模型**llama-3.1-sonar-small-128k-online、llama-3.1-sonar-large-128k-online ## 配置步骤 1. 确保OPENROUTER_API_KEY已设置在你的环境中 2. 更新web_tools.py以使用Perplexity客户端替代Firecrawl 3. 使用OPENROUTER_API_KEY要求注册工具 ## 关键组件 ### Perplexity客户端 使用带有OpenRouter基础URL的AsyncOpenAI base_url: https://openrouter.ai/api/v1 model: perplexity/sonar-pro ### URL提取 Perplexity在回复末尾返回来源。使用正则表达式提取 - 来源格式- Source Name: https://URL - 引用格式[N](https://URL) ## 测试 bash cd ~/.hermes/hermes-agent PYTHONPATH. python3 -c from tools.web_tools import web_search_tool; print(web_search_tool(query, 3))注意事项web_extract仍然使用Firecrawlweb_search需要OPENROUTER_API_KEYPerplexity返回带有来源的完整答案而不仅仅是URL你也可以使用Hermes进行氛围编码项目和Web应用程序。 例如我创建了一个类似Tricount的脚本在与女友共享的Telegram群组中使用。我给它提示遵循与Tricount类似的逻辑我称之为Hermescount。这是Telegram上固定的用户手册消息  我还生成了一个SKILL.md文件所以我可以与社区分享Hermescount。 在我安装的其他项目和技能中有一个对于获取最新信息特别有用例如技术职位列表、技术新闻等等那就是Apify MCP技能。  我也只是要求Hermes基于这个JSON文件创建它你可以在[Apify MCP页面](https://mcp.apify.com/?fprulosg)底部找到{“mcpServers”: {“apify”: {“url”: “https://mcp.apify.com/?toolsactors,docs,get-dataset,dadhalfdev/techcrunch-scraper-per-event,dadhalfdev/futurism-scraper-per-event”,“headers”: {“Authorization”: “Bearer ”}}}}它需要一个Apify令牌。如果你还没有可以在[这里](https://mcp.apify.com/?fprulosg)创建账户。 ## 6、结束语 我一直在使用OpenClaw和Hermes智能体到目前为止很难说更喜欢哪一个。 Hermes完全基于Python的事实让我有偏见因为我可以阅读所有代码这使我对它的信任超过OpenClaw。我也喜欢所有密钥都保存在.env文件中我不需要每次都导出它们或者让它们暴露在JSON和.txt文件中。 Hermes的另一个很酷的功能是每次它设置某些东西时你都可以看到它正在做的所有更改就像这里 terminal: “mkdir -p ~/.hermes touch ~/.hermes…”✍️ write_file: “/home/ubuntu/hermes-agent/expense_tra…” terminal: “cd /home/ubuntu/hermes-agent pytho…” skill_manage: “expense-tracker”这对于跟踪智能体在做什么非常好你总可以检查修改的文件以确认没有出错。 然而OpenClaw在许多情况下似乎更快。这可能是由于Hermes的学习系统它在你与智能体聊天时记笔记和更新技能。但这不是更快的模型或一些配置调整无法解决的问题。 Hermes的另一个缺点是缺少审核命令和仪表板就像OpenClaw提供的那样。 但是嘿Hermes才存在几天而OpenClaw已经存在三个月了。我认为团队添加这些功能并使智能体更流畅只是几天或几周的事情。 目前我将继续使用两者并分享我的见解。 --- 原文链接[Hermes-Agent 简明指南 - 汇智网](https://www.hubwiz.com/blog/hermes-agent-concise-guide/)
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2424128.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!