Hermes Agent 本身不收费,异常扣费源于调用的第三方API;需检查配置中model.provider、speech_to_text_provider和image_generation_provider字段,确认是否启用OpenAI、Azure、Replicate等付费服务,并可通过config set强制切换至whisper.cpp或none等本地/免费方案。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

如果您在使用 Hermes Agent 时发现图片生成或语音转文字功能出现意外扣费、额度异常消耗或服务中断,则可能是由于底层模型调用链中第三方 API 的计费策略未被显式披露。以下是针对该问题的排查与应对步骤:
一、确认所用模型是否为本地部署或免费提供商
Hermes Agent 本身为 MIT 开源框架,不向用户收取任何授权费或平台服务费;所有费用均来源于其调用的外部模型 API(如 OpenAI、Kimi、Claude 等)或云服务(如 Azure Speech、Replicate 图像生成)。若未主动配置付费模型,系统默认可能回退至社区版免费模型(如 Hermes-4-Instruct 本地推理),但部分插件或工具链会静默启用带配额限制的试用接口。
1、运行 hermes config list 查看当前生效的 model.provider 和 model.default 配置项。
2、检查 ~/.hermes/config.yaml 文件中是否存在 speech_to_text_provider 或 image_generation_provider 字段,及其对应值是否为 openai、azure、replicate 等商业服务商。
3、若字段值为空或为 llama.cpp、ollama、groq(免费 tier)、nous-hermes-local 等标识,则默认不产生外部 API 费用。
二、核查语音转文字模块的实际调用路径
Hermes Agent 的语音转文字能力由 tools/speech_to_text.py 插件驱动,支持多后端切换。当未指定 provider 时,它将按优先级顺序尝试可用服务:本地 Whisper.cpp → Ollama 嵌入模型 → Replicate(需 API Key)→ Azure Speech(需订阅ID)→ OpenAI Whisper API。其中仅前两者完全离线且零成本;后三者均存在隐性计费风险。
1、执行 hermes tool list | grep speech 验证当前激活的语音工具名称及状态。
2、进入 ~/.hermes/tools/speech_to_text.py,搜索关键词 provider == "azure" 或 "openai.com/transcribe",定位实际发起请求的 URL 或客户端初始化代码段。
3、若发现调用 https://api.openai.com/v1/audio/transcriptions,则每次语音文件上传将按音频时长计费($0.006/分钟),且无免费额度。
三、识别图片生成任务的真实出口
图片生成功能通过 tools/image_generation.py 实现,支持 Stable Diffusion WebUI(本地)、Replicate(远程)、Fal.ai(按秒计费)三种模式。Hermes 默认不内置图像模型,仅提供调用胶水层;一旦配置了 Replicate 模型 ID(如 stability-ai/sdxl),即自动绑定账户并启用实时扣款。
1、运行 hermes config get image_generation_provider 获取当前设定值。
统一LLM网关 - 一个API对接70+AI模型,使用单一API密钥即可调用GPT、Claude、Gemini、Qwen、Deepseek、Grok等主流模型。
2、若返回结果为 replicate,立即访问 https://replicate.com/account/billing 查看最近 7 日调用明细,确认是否触发了 stability-ai/sdxl 或 black-forest-labs/flux-schnell 等高单价模型。
3、检查 ~/.hermes/tools/image_generation.py 中第 89 行附近是否存在硬编码的 model = "replicate/xxx",该行若未被注释即代表强制启用付费通道。
四、禁用全部外部 API 并强制回落至本地方案
为彻底规避隐藏费用,可手动切断所有外连通道,使 Hermes Agent 完全依赖本地资源运行。此操作将关闭联网图像生成与云端语音识别,但保留全部记忆、技能演化与终端执行能力。
1、执行 hermes config set speech_to_text_provider whisper.cpp 强制使用本地 Whisper.cpp。
2、运行 hermes config set image_generation_provider none 并删除 tools/image_generation.py 中所有非本地函数调用分支。
3、重启 Agent:先执行 hermes stop,再运行 hermes start --no-daemon 观察启动日志中是否出现 [INFO] Using local whisper.cpp backend 提示。
五、审计历史操作中触发收费行为的具体指令
Hermes Agent 将每次工具调用记录写入 ~/.hermes/logs/tool_calls.db(SQLite 格式),其中包含时间戳、工具名、输入参数哈希及响应元数据。通过分析该数据库,可精准定位哪条用户指令间接启用了付费服务。
1、使用命令 sqlite3 ~/.hermes/logs/tool_calls.db "SELECT datetime(timestamp,'unixepoch'), tool_name, input_hash FROM tool_calls WHERE tool_name LIKE '%speech%' OR tool_name LIKE '%image%';" 提取相关调用记录。
2、对 output 字段执行 base64 解码(若存在),查找返回体中是否含 https://api.replicate.com/ 或 https://api.openai.com/ 等域名。
3、比对调用时间与账单发生时间,确认是否由某次自然语言指令(例如“把这段语音转成文字”或“画一只穿宇航服的猫”)直接触发。

















