Hermes 4 — Llama-3.1 70B

image/jpeg

Model Description

Hermes 4 70B is a frontier, hybrid-mode reasoning model based on Llama-3.1-70B by Nous Research that is aligned to you.

Read the Hermes 4 technical report here: Hermes 4 Technical Report

Chat with Hermes in Nous Chat: https://chat.nousresearch.com

Training highlights include a newly synthesized post-training corpus emphasizing verified reasoning traces, massive improvements in math, code, STEM, logic, creativity, and format-faithful outputs, while preserving general assistant quality and broadly neutral alignment.

What’s new vs Hermes 3

  • Post-training corpus: Massively increased dataset size from 1M samples and 1.2B tokens to ~5M samples / ~60B tokens blended across reasoning and non-reasoning data.
  • Hybrid reasoning mode with explicit <think>…</think> segments when the model decides to deliberate, and options to make your responses faster when you want.
  • Reasoning that is top quality, expressive, improves math, code, STEM, logic, and even creative writing and subjective responses.
  • Schema adherence & structured outputs: trained to produce valid JSON for given schemas and to repair malformed objects.
  • Much easier to steer and align: extreme improvements on steerability, especially on reduced refusal rates.

Our Mission: Frontier Capabilities Aligned to You

In pursuit of the mission of producing models that are open, steerable and capable of producing the full range of human expression, while being able to be aligned to your values, we created a new benchmark, RefusalBench, that tests the models willingness to be helpful in a variety of scenarios commonly disallowed by closed and open models.

image/png

Hermes 4 achieves SOTA on RefusalBench across all popular closed and open models in being helpful and conforming to your values, without censorship.

Benchmarks (Hermes 4 70B)

image/png

Full tables, settings, and comparisons are in the technical report.

Prompt Format

Hermes 4 uses Llama-3-Chat format with role headers and special tags.

Basic chat:

<|start_header_id|>system<|end_header_id|>

You are Hermes 4. Be concise and helpful.<|eot_id|>
<|start_header_id|>user<|end_header_id|>

Explain the photoelectric effect simply.<|im_end|>
<|start_header_id|>assistant<|end_header_id|>

Reasoning mode

Reasoning mode can be activated with the chat template via the flag thinking=True or by using the following system prompt:

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.

Note that you can add any additional system instructions before or after this system message, and it will adjust the models policies, style, and effort of thinking, as well as its post-thinking style, format, identity, and more. You may also interleave the tool definition system message with the reasoning one.

When the model chooses to deliberate, it emits:

<|start_header_id|>assistant<|end_header_id|>
<think>
…model’s internal reasoning may appear here…
</think>
Final response starts here…<|eot_id|>

Additionally, we provide a flag to keep the content inbetween the <think> ... </think> that you can play with by setting keep_cots=True

Function Calling & Tool Use

Hermes 4 supports function/tool calls within a single assistant turn, produced after it's reasoning:

System message (example):

<|im_start|>system
You are a function-calling AI. Tools are provided inside <tools>…</tools>.
When appropriate, call a tool by emitting a <tool_call>{...}</tool_call> object.
After a tool responds (as <tool_response>), continue reasoning inside <think> and produce the final answer.
<tools>
{"type":"function","function":{"name":"get_weather","description":"Get weather by city","parameters":{"type":"object","properties":{"city":{"type":"string"}},"required":["city"]}}}
</tools><|im_end|>

Note that you may also simply place tool definitions into the "tools:" field of your messages, and the chat template will parse and create the system prompt for you. This also works with reasoning mode for improved accuracy of tool use.

The model will then generate tool calls within <tool_call> {tool_call} </tool_call> tags, for easy parsing. The tool_call tags are also added tokens, so it makes it easy to parse while streaming! There are also automatic tool parsers built-in to VLLM and SGLang for Hermes, just set the tool parser in VLLM to hermes and in SGLang to qwen25.

Inference Notes

  • Sampling defaults that work well: temperature=0.6, top_p=0.95, top_k=20.
  • Template: Use the Llama chat format for Hermes 4 70B and 405B as shown above, or set add_generation_prompt=True when using tokenizer.apply_chat_template(...).

Transformers example

from transformers import AutoTokenizer, AutoModelForCausalLM
import torch

model_id = "NousResearch/Hermes-4-Llama-3.1-70B"

tokenizer = AutoTokenizer.from_pretrained(model_id, trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained(
    model_id,
    torch_dtype=torch.float16,
    device_map="auto"
)

messages = [
    {"role":"system","content":"You are Hermes 4. Be concise."},
    {"role":"user","content":"Summarize CRISPR in 3 sentences."}
]

inputs = tokenizer.apply_chat_template(
    messages, add_generation_prompt=True, return_tensors="pt"
).to(model.device)

outputs = model.generate(
    **inputs, max_new_tokens=400, temperature=0.6, top_p=0.95, top_k=20, do_sample=True
)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))

For production serving on multi-GPU nodes, consider tensor parallel inference engines (e.g., SGLang/vLLM backends) with prefix caching.

Inference Providers:

Nous Portal:

chutes logo

Chutes:

chutes logo

Nebius:

nebius.com logo

Luminal:

luminal logo

Quantized / Smaller Variants

Hermes 4 is available as BF16 original weights as well as BF16 as well as FP8 variants and GGUF variants by LM Studio.

FP8: https://huggingface.co/NousResearch/Hermes-4-70B-FP8

GGUF (Courtesy of LM Studio team!): https://huggingface.co/lmstudio-community/Hermes-4-70B-GGUF

Hermes 4 is also available in smaller sizes (e.g., 70B) with similar prompt formats.

See the Hermes 4 collection to explore them all: https://huggingface.co/collections/NousResearch/hermes-4-collection-68a731bfd452e20816725728

How to cite

@misc{teknium2025hermes4technicalreport,
      title={Hermes 4 Technical Report}, 
      author={Ryan Teknium and Roger Jin and Jai Suphavadeeprasit and Dakota Mahan and Jeffrey Quesnelle and Joe Li and Chen Guang and Shannon Sands and Karan Malhotra},
      year={2025},
      eprint={2508.18255},
      archivePrefix={arXiv},
      primaryClass={cs.AI},
      url={https://arxiv.org/abs/2508.18255}, 
}
Downloads last month
479
Safetensors
Model size
70.6B params
Tensor type
BF16
·
Inference Providers NEW
Input a message to start chatting with NousResearch/Hermes-4-70B.

Model tree for NousResearch/Hermes-4-70B

Finetuned
(45)
this model
Finetunes
2 models
Quantizations
17 models

Collection including NousResearch/Hermes-4-70B