Retour à Apprendre
Tuto · 02 · IA & Outils

Construire
un Hermes Agent
pas à pas.

Hermes, c'est la famille de modèles IA open-source de Nous Research. Leur particularité : ils sont fine-tunés pour agir, pas juste discuter. Je t'explique comment en faire un agent qui travaille pour toi — sans dépendre d'OpenAI ni payer une facture qui explose.

10 min de lecture Niveau Avancé · Dev Coût 0€ en local
Jérémy Sagnier · Entrepreneur · pas dev · teste l'IA tous les jours Publié 10 avril 2026 · MAJ 20 avril 2026
En 30 secondes

Ce que tu vas apprendre

⚠️ Article 100% dev · à lire avant de te lancer

Celui-ci demande d'écrire du Python, d'installer Ollama en terminal, et de comprendre les API. Tu n'es pas dev ? Pas grave — va voir le parcours débutant d'abord, ou l'article Loops Claude Code qui fonctionne avec ton Claude Code standard, sans rien installer de nouveau.

Mon test personnel · sur 1 semaine

J'ai fait tourner Hermes sur 200 mails pendant 7 jours

Résultat : 91% bien classés (182 sur 200), 11 erreurs de tag, 8 faux positifs "spam soft", 4h économisées sur la semaine par rapport à mon tri manuel. Tout en local, zéro token facturé, mes mails ne sortent pas de ma machine.

Les 3 prompts qui ont marché : (1) « Tag "urgent" uniquement si l'expéditeur demande une action dans les 48h ET si c'est un client payant. », (2) « Tag "à lire plus tard" si c'est une newsletter que j'ai ouverte moins de 2 fois sur les 5 derniers envois. », (3) « Tag "spam soft" si l'objet contient plus de 2 emojis ou un pourcentage de réduction. »

Les 2 qui ont échoué : (1) « Tag "important" selon ton intuition » → trop vague, il taggait 80% des mails en "important". (2) « Réponds automatiquement aux mails simples » → il a commencé à répondre à ma mère comme si c'était un prospect. J'ai coupé le tool "send_email" immédiatement.

— Avant tout

C'est quoi Hermes ?

Hermes, c'est une famille de modèles IA développée par Nous Research, un des collectifs open-source les plus respectés de l'écosystème IA. Ils prennent des modèles de base (Llama, Mistral) et les fine-tunent pour qu'ils soient meilleurs sur des tâches réelles : suivre des instructions précises, appeler des outils, tenir une conversation structurée.

Les versions les plus utilisées aujourd'hui : Hermes 3 (basé sur Llama 3.1, stable et massivement déployé) et Hermes 4 (sorti août 2025, en 14B / 70B / 405B, avec un mode raisonnement intégré). Tous deux excellent en function calling — c'est-à-dire appeler des outils/fonctions via du JSON structuré. C'est la brique clé pour construire un agent.

Pourquoi je m'y intéresse

Je suis entrepreneur, je ne veux pas dépendre à 100% d'OpenAI ou Anthropic pour mes outils IA. Hermes me permet de tourner des agents en local sur mon Mac — gratuit, privé, sans limite de tokens. C'est aussi un bon réflexe de sécurité pour les données sensibles de mes clients.

Hermes vs ChatGPT / Claude

Ne cherche pas à remplacer ChatGPT ou Claude sur les tâches complexes — ils restent supérieurs en raisonnement. Hermes est complémentaire : parfait pour les tâches répétitives, les automatisations simples, le traitement en lot, ou quand tu veux garder tes données en local.

Les alternatives sérieuses à Hermes en 2026

Hermes n'est plus le seul modèle open-source excellent en function calling. Trois alternatives à tester sur le même cas d'usage que toi :

  • Llama 3.3 70B (Meta) — devenu une référence, très bon en tool-use, disponible sur Ollama (llama3.3:70b)
  • Qwen 3 (Alibaba) — performant en agent, souvent moins censuré, bon support multilingue (qwen3:8b ou qwen3:14b)
  • DeepSeek V3 — très fort en raisonnement et code, si tu veux un modèle polyvalent

Mon conseil : teste les 3 sur ton cas réel, garde celui qui te sort les meilleurs résultats. Le "meilleur" varie selon la tâche.

Côté licence : à savoir avant de commercialiser

Hermes 3 hérite de la licence Llama 3.1 (Meta). Cette licence interdit l'usage commercial si ton service dépasse 700 millions d'utilisateurs actifs mensuels sans accord explicite de Meta. Pour 99% des entrepreneurs c'est un non-sujet. Mais si tu vises du SaaS grand public avec forte croissance, lis les termes avant d'investir.

— Setup

Installation en 3 étapes.

La méthode la plus simple : Ollama. C'est un outil qui télécharge et fait tourner des LLMs en local, sans configuration compliquée.

01

Installer Ollama

Va sur ollama.com et télécharge l'app Mac. Double-clic, glisse dans Applications, lance. Ça tourne en fond dans ta barre de menu.

Vérifie dans ton terminal :

ollama --version
02

Télécharger Hermes

Une seule commande. Attention : le modèle fait 4-8 GB selon la taille choisie.

# Version légère (8 GB, rapide)
ollama pull hermes3:8b

# Ou version plus puissante si tu as 32 GB+ de RAM
ollama pull hermes3:70b

Laisse tourner le temps du téléchargement (5-15 min selon ta connexion).

03

Premier test

Lance une conversation rapide pour vérifier que tout marche :

ollama run hermes3:8b

Tu es dans un chat. Tape "Raconte-moi ce que tu peux faire" et vois ce qu'il te répond. Pour quitter : /bye.

RAM et taille du modèle

Règle réelle : il te faut environ 1,2× la taille du fichier quantifié (le modèle charge en RAM + un peu d'overhead). Voici ce que ça donne sur Mac Apple Silicon :

Modèle Taille Q4 RAM mini Mac recommandé Vitesse
hermes3:3b 2 GB 8 GB M1/M2 de base 40-60 tok/s
hermes3:8b 4,7 GB 16 GB M1/M2/M3 confortable 20-40 tok/s
hermes3:70b 40 GB 64 GB M2/M3 Ultra ou Max 128 GB 8-12 tok/s

Attention piège : le M3 Pro est plus lent que le M2 Pro pour les LLM (bande passante mémoire réduite de 200 à 150 GB/s). Si tu achètes pour l'IA locale, vise M-Max ou M-Ultra.

— Le cœur du sujet

Construire un agent.

Un agent, c'est un LLM qui peut appeler des outils quand il en a besoin. Exemple : "Quel temps fait-il à Paris ?" → le LLM appelle une API météo → il te donne la réponse. Sans tools, il te dit "je ne sais pas". Avec tools, il va chercher l'info.

Voici le squelette d'un agent Hermes en Python. Tu peux copier-coller et adapter.

01

Définir tes outils

Chaque outil = une fonction Python + une description JSON que le LLM peut lire.

def get_weather(city: str) -> str:
    # Appelle ton API météo ici
    return f"Il fait 20°C à {city}"

tools = [{
    "type": "function",
    "function": {
        "name": "get_weather",
        "description": "Récupère la météo d'une ville",
        "parameters": {
            "type": "object",
            "properties": {
                "city": {"type": "string"}
            },
            "required": ["city"]
        }
    }
}]
02

Appeler Hermes avec les tools

Ollama expose une API OpenAI-compatible. Utilise le SDK OpenAI avec la baseURL locale :

from openai import OpenAI
client = OpenAI(
    base_url="http://localhost:11434/v1",
    api_key="ollama"  # valeur bidon, ignore
)

response = client.chat.completions.create(
    model="hermes3:8b",
    messages=[{"role": "user", "content": "Quel temps à Paris ?"}],
    tools=tools,
)
03

La boucle agent

L'agent = une boucle LLM → appel outil → résultat → LLM, jusqu'à ce qu'il ait fini.

while True:
    msg = response.choices[0].message
    if msg.tool_calls:
        # Le LLM veut appeler un outil
        for call in msg.tool_calls:
            result = get_weather(**json.loads(call.function.arguments))
            messages.append({
                "role": "tool",
                "tool_call_id": call.id,   # ⚠️ obligatoire, sinon crash
                "content": result,
            })
        response = client.chat.completions.create(...)
    else:
        # Réponse finale
        print(msg.content)
        break

Le piège n°1 si tu copies-colles ce code ailleurs : le champ tool_call_id est obligatoire dans le message retour. Sans lui, la boucle crashe à la 2ᵉ itération. Je l'ai appris à mes dépens — noté pour toi.

Tu as compris ?

L'agent Hermes, c'est ça : un LLM + des outils + une boucle. Rien de magique. Si tu maîtrises ces 3 briques, tu peux construire un agent pour n'importe quelle tâche : booking, recherche, automation, analyse, etc.

— Cas d'usage

Ce que j'en ai fait.

Cas 01 · Agent de veille interne

Un agent qui scanne des RSS et trie pour moi

J'ai branché Hermes 3 à 15 flux RSS. Il lit chaque nouvelle entrée, note sa pertinence de 0 à 100 selon mes critères, ne me remonte que ce qui dépasse 70. Tout en local, gratuit, mes flux RSS sensibles ne sortent pas de ma machine.

Cas 02 · Catégorisation de mails

Un tri automatique de mes emails entrants

J'ai exposé un outil "lire_email(id)" et un outil "tag_email(id, label)". L'agent lit ma boîte, tag chaque mail (urgent / client / à lire plus tard / spam soft). 200 emails/jour traités en arrière-plan, zéro token facturé.

— Pour aller plus loin

Les ressources essentielles.

Prochaine étape

Si tu veux passer à l'agent multi-étapes (par exemple "fais-moi une recherche + synthèse + rédige un mail"), j'ai prévu un futur tuto sur les chains d'agents avec Hermes. Inscris-toi à la newsletter pour être prévenu.

— Alternative sans Python

Tu veux juste trier tes mails ?

Si tout ce qui précède t'a un peu perdu, bonne nouvelle : tu peux avoir 70% du résultat sans écrire une ligne de code. Voici la version 2 minutes.

La version sans terminal, sans Python, sans rien installer

Ouvre Claude.ai dans ton navigateur, crée un Project appelé "Tri mails", colle tes 10 derniers mails dedans, et demande-lui : "Classe-les par priorité (urgent / à traiter cette semaine / à lire plus tard / ignorable) et dis-moi pourquoi en une phrase.". C'est moins puissant qu'un vrai agent Hermes (tu dois copier-coller, rien n'est automatique), mais ça tourne en 2 minutes et ça couvre 70% du besoin réel. Quand tu sentiras que tu as besoin de plus — du vrai temps réel, des volumes plus gros, de la confidentialité locale — reviens sur cet article.

Tu repères une erreur ?

Une info obsolète, un chiffre qui a bougé, une source périmée ? Écris-moi à sagnier.jeremy@gmail.com · je corrige en 48h max et je note la date de MAJ en haut de l'article. Les retours terrain valent mille fois les articles — je lis tout, je réponds.

— Et maintenant ?

Tu reçois mes prochains tutos.

Chaque nouveau tuto IA que je publie arrive dans ma newsletter AI Playbook. Si tu ne veux pas manquer la suite (agents multi-étapes, fine-tuning, RAG), laisse ton email sur la home.

Voir les newsletters →
Partage

Cet article t'a servi ? Dis-le.