进阶 10 分钟Nous Research

Hermes 4本地部署(Ollama):Nous的模型 Research

Hermes 4 是 Nous Research 实验室推出的第四代模型。该实验室以其微调模型著称:这些模型严格遵循系统提示,极少拒绝合法任务。本指南将介绍如何使用 Ollama 安装 Hermes 4,根据您的显卡选择合适的版本,以及如何发挥其两大优势:忠实遵循系统指令,以及为智能体生成结构化输出。我们自己也在配备 12 GB 显存的 RTX 5070 Ti 上将该模型用于生产环境,文中的数据就来自这一环境。

作者: Mohamed Meguedmi·更新于 2026-09-25·已在 Windows、macOS 和 Linux 上测试

#为何选择 Hermes 4 而非基础版的 Qwen 或 Llama

Nous Research 不进行模型预训练。该实验室选用现有的开放权重模型,对其进行大规模后训练:对于 Hermes 4,使用了约 500 万个示例,以及由其 DataForge 管线生成、包含 600 亿个 token 的合成数据,其中经过验证的推理轨迹占很大比例。结果在通用知识基准测试上并不比其基础模型更“聪明”,但日常使用时的行为有所不同:它会按要求执行任务,以指定格式输出,不添加多余的说明。

三个特点解释了 Hermes 为何受到自托管 LLM 用户的欢迎。首先,系统提示被视为权威依据:角色设定、语气、格式约束等,在整个对话过程中都会得到遵守。其次,对齐策略刻意保持中立:模型不会添加未经请求的警告,而且在普通话题(医学、法律、计算机安全、成人小说)上,拒绝回答的频率比面向大众的助手低得多。最后,Nous 的工具调用格式采用专用标签,已成为事实上的标准,被许多智能体框架采用。

Hermes 4 在此基础上加入了继承自 DeepHermes 的混合推理模式:根据您在系统提示词中的指示,模型可以先在 think 标签之间思考再回答,也可以直接回答。每次请求是否承担推理带来的额外 token 开销,都由您决定。

i
Hermes并非一个‘去审查’的模型
请勿将 Hermes 与 Hugging Face 上流传的 abliterated 或 uncensored 变体混淆。Nous Research 并未移除任何内容:它训练的是服从操作者的模型。如果您的系统提示词设定了限制,Hermes 就会遵守;如果您没有设定任何限制,它也不会自行添加。设置防护措施的责任转移到了您身上,而这正是自托管使用所追求的。

#Hermes 4 的变体及所需 VRAM

本地 AI 套件

只需 1 小时,即可在您的电脑上拥有专属的免费 ChatGPT — LM Studio、Ollama、Open WebUI、您的文档,无需云端。

  • 在线空间,终身可用
  • PDF + 文件
  • 30 天内退款

Hermes 4 于 2025 年 8 月底发布,有三种规模,各自基于不同的基础模型构建。这一点很重要:许可证、最大上下文长度和法语表现沿用的是基础模型的特性,并非由 Nous Research 决定。

Hermes 4 14B
基于 Qwen3-14B。采用 Q4_K_M 量化时约需 9 GB 显存,原生上下文窗口较为充裕,法语表现很好。这是适合在 12 至 16 GB 显存的显卡上安装的版本,也是我们在生产环境中使用的版本。许可证继承自 Qwen3:Apache 2.0。
Hermes 4 70B
基于 Llama 3.1 70B。Q4_K_M 量化后约为 40 GB:可使用两块 RTX 3090/4090,或配备至少 48 GB 统一内存的 Mac Studio 或 MacBook Pro。长程推理和遵循复杂指令的能力明显更强。采用 Llama 3.1 Community 许可证。
Hermes 4 405B
基础模型 Llama 3.1 405B,即使在 Q4 量化下也超过 200 GB,远超个人电脑处理能力,仅适用于多 GPU 服务器或 API 服务提供商。我们在此列出以保持完整性。
12GB 以下呢?
Hermes 4 没有 3B 或 8B 版本。对于显存为 8 GB 的显卡,请选用 hermes3:8b(基于 Llama 3.1 8B,Q4_K_M 量化后约占 5 GB):理念相同,工具格式相同,但没有推理模式。

量化选择遵循本站的常规原则:Q4_K_M 是默认的合理折中;如果显存允许,而且您要进行结构化提取,则可选择 Q5_K_M 或 Q8_0,因为在这类任务中,每增加一比特精度都能减少格式错误。在我们的 12 GB 显存 RTX 5070 Ti 上,hermes4:14b 采用 Q4_K_M 量化、上下文长度为 8 192 个 token 时,占用 9.4 GB 显存,还能留出空间同时加载一个嵌入模型。

→
搭载 Apple Silicon 的 Mac
在配备24GB统一内存的M4 Pro上,14B模型的Q4_K_M版本运行流畅。70B模型至少需要48GB内存才能保持流畅运行;若仅使用36GB内存,虽可启动,但上下文长度会过短,不适合用于智能体场景。

#先决条件

Ollama 已更新至最新版本
14B 版本所基于的 Qwen3 要求使用 2025 年 4 月之后发布的 Ollama 版本。请用 ollama --version 检查版本,并在必要时更新,否则加载时会出现未知架构错误。
GPU 或统一内存
14B 模型采用 Q4_K_M 量化并使用 8k 上下文时,需要 12 GB 显存。若只有 8 GB,模型会部分加载到 CPU 上,生成速度降至每秒几个 token:请改用 hermes3:8b。
磁盘空间
14B 模型在 Q4_K_M 下约需 9 GB,Q8_0 下约需 15 GB,70B 模型在 Q4_K_M 下约需 40 GB
界面(可选)
使用 Open WebUI 或 LM Studio,便于舒适地进行对话。Open WebUI 会自动折叠推理内容块,使用 Hermes 4 时,这一点尤其方便。

#分 4 步使用 Ollama 安装 Hermes 4

  1. 01
    下载适配您设备的版本
    在 Ollama 模型库中,hermes4 标签提供不同大小的版本。对于显存为 12 至 16 GB 的显卡,请选择 14B 版本;这是我们日常运行的标签版本。
  2. 02
    或从Hugging Face导入官方GGUF文件
    Nous Research 发布自己的 GGUF 量化版本。Ollama 的 hf.co 语法可精确选择量化级别(Q4_K_M、Q5_K_M、Q8_0),无需使用 Modelfile。如果您需要 Q8_0,或模型库中的标签未提供所需的量化版本,应优先采用此方式。
  3. 03
    检查 GPU/CPU 的加载情况和分配
    ollama ps 命令显示占用的内存以及加载到 GPU 上的比例。目标是达到 100% GPU:一旦有一部分转到 CPU 上运行,速度就会急剧下降。
  4. 04
    使用系统提示进行首次测试
    不要在没有系统提示的情况下测试 Hermes,否则会错过它值得关注的特点。请给它指定一个角色、一种输出格式和一项约束,然后观察它遵守这些要求的程度。
终端 — 来自 Ollama 模型库
ollama pull hermes4:14b
ollama run hermes4:14b
终端 — Nous Research 官方 GGUF,量化方式自选
# Q4_K_M : le compromis recommandé (environ 9 Go)
ollama run hf.co/NousResearch/Hermes-4-14B-GGUF:Q4_K_M

# Q8_0 si vous avez 16 Go et plus, pour l'extraction structurée
ollama run hf.co/NousResearch/Hermes-4-14B-GGUF:Q8_0
终端 — 控制加载过程
ollama ps
# NAME           SIZE     PROCESSOR    CONTEXT
# hermes4:14b    9.4 GB   100% GPU     8192
!
默认上下文长度过短
Ollama 默认以 4096 个 token 的上下文加载模型。对于不断累积工具调用的智能体,或可能产生数千个思考 token 的推理模式,这个长度并不足够:最初的消息会超出上下文窗口,模型便会“忘记”其指令。请将 num_ctx 至少设为 8192;如果 VRAM 允许,则设为 16384(参见设置部分)。

#Hermes 与面向大众的对齐模型有何区别

面向大众的助手经过训练,旨在迎合匿名用户并保护其开发商。这会产生一些久而久之不再引人注意的行为:先用一段开场白重述问题,在回答末尾附上警告,一出现敏感关键词就礼貌拒绝,以及倾向于把话说得委婉些。用于聊天时,这些行为可以接受。但对于等待 JSON、排序结果或改写文本的自动化流水线,每一次偏差都会使下游处理出错。

Hermes 4 是面向模型操作者训练的,而非最终用户。Nous Research 使用自建的 RefusalBench 基准测试评估了这一取向;在该测试中,Hermes 4 的拒答明显少于闭源模型和大多数经过对齐的开放权重模型。具体来说,在要求从客服工单语料中提取投诉原因时,面向大众的模型有时会回答“我无法提供法律建议”,而 Hermes 则返回所要求的字段。在改写任务中,它不会额外添加“如有其他问题,请随时提出”。

不包含引言和结论
如果系统提示说「仅以 JSON 格式回复」,则回复将以大括号开头。在许多模型上,需要三个示例和后处理才能获得相同结果。
稳定的人格设定
系统提示中定义的角色能在数十轮对话中保持稳定,不会逐渐偏离设定,即使用户试图让它突破既定角色的限制也不例外。
无端拒绝更少
医疗、法律、信息安全、黑暗题材小说:Hermes 会处理这些请求。限制由您写明。
中性风格
不吹捧提问的质量,不使用表情符号,也不表现出刻意的热情。风格完全可以通过系统提示来调整。

相应的代价也很明显:如果您让陌生人使用 Hermes,例如通过公开聊天机器人,就必须自行编写防护措施。列明助手不得做什么的系统提示,以及应用端针对关键情况设置的输出过滤器,都是必不可少的。对于个人或内部使用,这份责任恰恰就是所追求的优势。


#系统提示词,这是Hermes 4的强项

使用 Hermes 4 时,系统提示词不是建议,而是契约。这改变了编写方式:要明确、完整,不要指望模型用助手的“常识”来填补未说明的内容。遵循三条规则就足以获得可靠的结果。

用一句话描述角色
「你是 X 市场营销团队的文案助手」比三个段落的上下文更有效。Hermes 不会稀释信息,而简洁的角色设定更稳定。
显式设置输出格式
长度、语言、结构以及需要省略的内容。Hermes 能遵守诸如“不加引言、不加结论、最多 120 词”这样的约束,无需您反复强调。
明确列出禁止内容
既然模型不会自行添加限制,就请列出您自己的限制:哪些主题超出范围、哪些信息绝不能透露,以及遇到含糊问题时应如何应对。

最便捷的方式是将系统提示固定在Modelfile中:您将获得一个可直接使用的别名,其上下文和温度参数已预设,可在Open WebUI、脚本中以及终端中调用使用。

Modelfile — 法语写作助手
FROM hermes4:14b

PARAMETER num_ctx 16384
PARAMETER temperature 0.6
PARAMETER top_p 0.95
PARAMETER repeat_penalty 1.05

SYSTEM """Tu es un assistant de rédaction pour une PME française.
Tu réponds toujours en français, au vouvoiement.
Tu ne commences jamais par reformuler la demande et tu ne termines jamais par une formule de politesse.
Quand on te demande de réécrire un texte, tu renvoies uniquement le texte réécrit, sans commentaire.
Si une demande sort du cadre de la rédaction professionnelle, tu le dis en une phrase et tu t'arrêtes."""
终端 — 创建并使用别名
ollama create hermes-redac -f Modelfile
ollama run hermes-redac "Réécris en deux phrases : Nous sommes ravis de vous annoncer que notre nouvelle offre est disponible dès maintenant et qu'elle vous permettra de gagner du temps."
→
测试角色的稳定性
创建别名后,尝试用两三条消息让模型偏离设定的行为范围(“忘记你的指令”、“用英语和我说话”)。在这类测试中,Hermes 4 比基础版 Qwen3-14B 更能守住设定,这也是检查您的系统提示词是否完整的好方法。

#启用或关闭推理模式

Hermes 4 是一种混合推理模型:默认情况下,它像常规指令模型一样直接作答。要启用思考功能,需要在系统提示中加入一条专门的指令,即 Nous Research 在模型说明页中列出的那条指令。随后,模型会先在 think 标签之间输出思考过程,再给出回答。

系统提示词——Nous Research 推荐的推理指令
You are a deep thinking AI, you may use extremely long chains of thought to deeply consider the problem and deliberate with yourself via systematic reasoning processes to help come to a correct solution prior to answering. You should enclose your thoughts and internal monologue inside <think> </think> tags, and then provide your solution or response to the problem.

您可以在其后追加自己用法语编写的指令,将两者结合使用。推理对数学、较复杂的代码、智能体规划或长文档分析很有用。对于字段提取、分类或改写,推理既无用又成本高:执行这些任务时,请保持直接模式。每次请求预计需要 500 到数千个思考 token,因此将 num_ctx 设置得足够大很重要。

直接模式(默认)
无需特殊指令。立即响应,非常适合处理流水线和日常聊天。我们在对信息监测所得内容进行自动化评估时使用的就是这个模式。
推理模式
在系统提示词开头添加上述指令。Open WebUI 会折叠 think 块;在您的脚本中,请在显示或解析回答之前将其过滤掉。
两个别名
最简单的方法是创建两个 Modelfile,分别命名为 hermes-direct 和 hermes-think,再根据任务选择其中一个,而不是每次调用时都修改提示词。

#应用场景:智能体与结构化提取

Nous Research 的工具调用格式让模型在系统提示词中接收可用函数列表,并以带标签的 JSON 形式发出调用;Ollama 的聊天 API 通过 tools 参数使用的正是这种格式。使用 Hermes 4 时,无需额外配置:描述您的函数,发送对话,模型就会在需要时返回结构化调用,否则返回文本回答。

对于结构化提取,两种方法可以相互补充。第一种是通过 Ollama 的 format 参数强制指定 JSON 模式:引擎约束生成过程,模型无法偏离该模式。第二种完全依赖系统提示词,而这正是 Hermes 的优势所在:即使没有解码约束,它在绝大多数情况下也能返回有效的 JSON,且不附带任何说明,从而简化与不支持约束解码的工具的集成。

Python —— 强制遵循指定模式的结构化提取
from ollama import chat
from pydantic import BaseModel

class Ticket(BaseModel):
    motif: str
    produit: str
    urgence: int  # 1 à 5
    remboursement_demande: bool

message = """Bonjour, ma cafetière X200 achetée il y a 3 semaines fuit par le dessous.
Je veux un remboursement, c'est la deuxième fois que ça arrive."""

response = chat(
    model="hermes4:14b",
    messages=[
        {"role": "system", "content": "Tu extrais les informations d'un ticket de support. Réponds uniquement avec le JSON demandé."},
        {"role": "user", "content": message},
    ],
    format=Ticket.model_json_schema(),
    options={"temperature": 0.1, "num_ctx": 8192},
)

ticket = Ticket.model_validate_json(response.message.content)
print(ticket)
# motif='fuite' produit='X200' urgence=4 remboursement_demande=True
终端 — 通过REST API调用工具
curl http://localhost:11434/api/chat -d '{
  "model": "hermes4:14b",
  "stream": false,
  "messages": [
    {"role": "system", "content": "Tu es un assistant qui utilise les outils fournis quand ils sont pertinents."},
    {"role": "user", "content": "Quel temps fait-il à Lyon ?"}
  ],
  "tools": [{
    "type": "function",
    "function": {
      "name": "get_weather",
      "description": "Donne la météo actuelle pour une ville",
      "parameters": {
        "type": "object",
        "properties": {"ville": {"type": "string"}},
        "required": ["ville"]
      }
    }
  }]
}'

回复包含一个 tool_calls 字段,其中列出函数名称及其参数。您需要执行该函数,并通过角色为 tool 的消息返回结果,让模型生成最终回答。LangChain、CrewAI、n8n 或 Hermes Agent 实现的就是这一循环。Hermes Agent 是 Nous Research 自己发布的智能体框架,可配合任意模型使用,但其设计围绕这一格式展开。

分类与路由
根据预设类别对邮件、工单或文章进行分类。采用低温度设置、直接模式,并强制遵循 JSON 模式:14B 模型在配备 12 GB 显存的显卡上每小时可处理数百条内容。
字段提取
发票、简历、产品资料、报告:Hermes 会准确返回所要求的字段;如果您在系统提示中明确说明,信息缺失时就会返回 null。
自动化评估
按评分标准为文本打分(我们的每日信息监测流水线使用 hermes4:14b 做的就是这件事)。格式稳定、评分不迎合,才能让这些分数具有实际用途。
具备工具的智能体
在数据库中检索、调用内部 API、执行经人工批准的命令。推理模式有助于制定多步骤计划。
!
14B模型始终是14B
当智能体连续进行超过五六次工具调用,且返回结果较长时,14B 模型就开始跟不上思路,无论是否有 16k 上下文。对于这些场景,70B 模型确实能带来显著改变。如果您的硬件不支持,就把任务拆分给执行短任务的子智能体,而不是延长循环。

#推荐设置

以下数值是我们生产环境中的实际使用值。它们并非来自模型文档,模型文档对此类信息描述简略,而是基于在 12 GB 显存显卡上持续数月的日常使用得出的。

num_ctx
聊天和信息提取使用 8192,智能体和推理模式使用 16384。上下文长度每翻一倍,显存消耗都会增加:在 12 GB 显存下,使用量化的 KV 缓存时可以支持 16k 上下文(见下文),但不能再高。
temperature
对话和写作场景下为0.6至0.7,提取、分类以及需要可复现的任务场景下为0.1至0.2。
top_p 和 repeat_penalty
0.95 和 1.05。更强的重复惩罚会降低 JSON 输出质量,因为 JSON 中重复出现键名是正常的。
量化
日常使用推荐Q4_K_M;若进行大规模提取且拥有16 GB显存,可使用Q8_0:格式错误几乎消失。

在服务器端,两个 Ollama 环境变量可为配备 12 GB 显存的显卡节省空间:Flash 注意力和 8 位 KV 缓存量化。这些变量可在 Linux 系统的 systemd 服务文件中定义,Windows 系统的用户环境变量中设置,或在 macOS 上通过 launchctl 配置。

Linux — /etc/systemd/system/ollama.service.d/override.conf
[Service]
Environment="OLLAMA_FLASH_ATTENTION=1"
Environment="OLLAMA_KV_CACHE_TYPE=q8_0"
Environment="OLLAMA_KEEP_ALIVE=24h"
终端 — 应用
sudo systemctl daemon-reload
sudo systemctl restart ollama
ollama ps   # vérifier que le modèle est toujours à 100 % GPU

采用 q8_0 格式的 KV 缓存可将上下文占用的内存减半,在信息提取和聊天任务上没有可测得的性能损失。正是这一设置,使 hermes4:14b 能在 12 GB 显存上容纳 16k 上下文。将 keep-alive 设为 24 小时,可避免在每次间隔较长的调用时重新加载 9 GB 的模型数据,这对全天响应脚本请求的服务器很有用。


#故障排除

回复中会出现think标签
在终端或通过原始 API 使用推理模式时,这是正常现象。Open WebUI 会将这部分内容折叠显示;在脚本中,请先删除闭合标签之前的所有内容,再进行解析。如果不需要推理,请从系统提示中移除专门用于启用推理的指令。
模型以英文回复
Hermes 4 的训练数据绝大部分是英文数据。在系统提示中添加“你始终用法语回答”:仅这一行在几乎所有情况下就足够了,正是因为模型会遵循系统提示。
加载时遇到未知架构错误
您的 Ollama 版本过旧,无法支持 14B 模型所基于的 Qwen3。请更新后重新执行拉取操作。
每秒几个标记
ollama ps montre un pourcentage CPU : le modèle ne tient pas en VRAM. Réduisez num_ctx, activez le cache KV q8_0, ou passez à hermes3:8b.
JSON 偶尔无效
通过 format 参数传入结构定义(schema),让生成过程受到约束。如果无法这样做,请将温度降至 0.1,并在系统提示中加入一个预期输出的示例。
模型在多轮对话后忘记指令
上下文已满。请增大 num_ctx,或在应用程序端截断历史记录,同时始终将系统提示保留在最前面。
意外拒绝
这种情况很少见,但当措辞类似攻击场景时,14B模型也可能出现。请重新表述,并在系统提示词中明确合法的使用背景(经授权的测试、工作场景):Hermes会遵循您设定的框架。

#深入了解

掌握 Hermes 4 周边的组件后,才能充分发挥它的价值。本站的以下指南可作为本指南的补充:

掌握系统提示词
介绍如何编写完整的系统提示词,并提供不同使用场景的示例。这是本指南的自然补充,因为控制 Hermes 正是通过系统提示词来实现的。
使用 Ollama 进行函数调用和结构化 JSON 输出
详细介绍 format 参数、JSON 模式和工具调用循环,并提供完整的 Python 示例。
选择量化方案(Q4、Q5、Q8、FP16)
根据您的VRAM容量和对格式错误的容忍度,在Q4_K_M和Q8_0之间进行选择。
这份指南对您有帮助吗?

有反馈、发现了错误,或想补充说明?请告诉我们,让这份指南对每个人都更有帮助。