Invitez et gagnez

Fonctionnement des récompenses

Partagez votre lien. Lorsqu’un ami s’inscrit avec ce lien et recharge son solde, vous recevez la récompense affichée sur ses recharges ultérieures.

Modèle local dans Hermes Agent : Ollama, Qwen et bascule explicite vers le cloud

Guide pratique axé confidentialité : connecter Qwen local avec Ollama, vérifier la chaîne sur un petit fichier, ajouter un fournisseur cloud, basculer pour une session ou un seul tour, puis contrôler outils, modèles auxiliaires et fallback.

Sommaire
Modèle local dans Hermes Agent : Ollama, Qwen et bascule explicite vers le cloud

Hermes Agent peut traiter les fichiers et commandes courants avec un modèle local, tout en gardant un modèle cloud disponible pour les tâches qui l’exigent vraiment. La politique la plus lisible consiste à valider d’abord le chemin local, puis à rendre chaque montée vers le cloud explicite au lieu de laisser un fallback invisible décider.

Ce guide suit la documentation actuelle de Hermes et d’Ollama. Il connecte un Qwen local, exécute une petite tâche vérifiable, configure un fournisseur cloud, explique trois portées de bascule et montre quelles étapes peuvent envoyer des données hors de la machine. Il s’agit d’un parcours vérifié dans la documentation, pas d’un benchmark réalisé ici.

Politique conseillée : local par défaut, cloud sur décision explicite

SituationChoix prioritairePourquoi
Fichiers locaux, petites modifications de code, tâches quotidiennesOllama/Qwen localLa requête modèle va vers 127.0.0.1, donc la frontière est facile à contrôler
Échecs répétés d’appels d’outilsDiagnostiquer modèle, runtime et contexteUn tool call incorrect peut venir du serveur, du parseur ou du contexte
Long contexte, raisonnement complexe, vision ou urgenceOuvrir une session propre et passer explicitement au cloudVous gagnez en capacité sans envoyer par accident un ancien contexte privé
Aucune donnée ne doit sortirModèle et outils locaux, sans auxiliaires cloud ni fallbackUn main model local ne rend pas tout le workflow hors ligne

Distinguez le modèle, les outils et les services auxiliaires

ÉtapeDestination habituellePoint à vérifier
Hermes appelle http://127.0.0.1:11434/v1Ollama localLe tag ne finit pas par :cloud et l’URL est une loopback
Tour suivant après une bascule cloudFournisseur cloudContexte, instructions système et schémas d’outils peuvent être envoyés
Fichiers et terminal locauxEn général sur la machineLa commande peut elle-même téléverser, télécharger ou appeler une API
Web, browser, search, MCP distant ou messagerieService contactéRequête, contenu, arguments et résultats
Whisper local avec TTS cloudReconnaissance locale, texte de synthèse dans le cloudCette chaîne vocale est hybride, pas entièrement hors ligne
fallback_providers ou auxiliaires cloudCloud lors du déclenchementErreur, quota, authentification ou capacité peuvent changer la route

Le sélecteur Ollama pour Hermes affiche des modèles locaux et cloud. Un nom se terminant par :cloud utilise toujours une inférence distante.

Chemin rapide avec ollama launch hermes

ollama launch hermes

L’intégration officielle peut installer Hermes, proposer le modèle et configurer http://127.0.0.1:11434/v1. Sélectionnez une entrée explicitement locale ; qwen3.5:cloud, par exemple, n’est pas local.

Vérifiez ensuite la configuration réellement utilisée :

hermes config get model --json
hermes status

Si le lanceur ne détecte pas votre modèle ou si vous voulez contrôler chaque étape, utilisez la méthode manuelle.

Configuration manuelle d’un Qwen local

1. Téléchargez un Qwen compatible avec les tools

Ollama indique que la famille Qwen 3.5 prend en charge les tools. L’exemple utilise qwen3.5:4b, assez léger pour tester la connexion ; cela ne garantit pas une qualité agentique stable sur toutes les tâches. Choisissez un tag officiel plus grand si votre RAM ou VRAM le permet.

ollama --version
ollama pull qwen3.5:4b

Démarrez le service seulement s’il ne tourne pas déjà :

ollama serve

Dans un autre terminal :

curl http://127.0.0.1:11434/api/tags

Testez l’endpoint compatible OpenAI avant de configurer Hermes :

curl http://127.0.0.1:11434/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "qwen3.5:4b",
    "messages": [{"role": "user", "content": "Reply with LOCAL_OK"}],
    "max_tokens": 16
  }'

Une réponse JSON contenant la sortie du modèle prouve qu’Ollama sert le modèle local. En cas de Connection refused, corrigez d’abord le service Ollama.

2. Reliez Hermes à l’endpoint local

hermes model

Choisissez Custom endpoint et saisissez :

  • API Base URL : http://127.0.0.1:11434/v1
  • API Key : laissez vide
  • Model : qwen3.5:4b
  • Context length : laissez vide si la version actuelle propose l’auto-détection

Contrôlez le résultat :

hermes config get model --json
hermes status

Vous devez voir le modèle local, le fournisseur custom et l’adresse loopback. Hermes recommande un contexte important pour un usage agentique avec outils. Si une erreur de contexte apparaît, suivez la documentation de votre version et observez la valeur effectivement chargée :

ollama ps

N’imposez pas un contexte trop grand s’il provoque un manque de mémoire ou du swap permanent.

Exécutez une petite tâche et vérifiez le fichier

mkdir -p ~/hermes-local-check
cd ~/hermes-local-check
printf 'alpha\nbeta\ngamma\n' > input.txt
hermes

Dans Hermes, entrez :

Lis input.txt. Crée summary.md avec le nombre de lignes et un résumé en une phrase. N’utilise aucun outil Web, browser, network, messaging ou cloud. Indique ensuite le chemin exact écrit.

Puis vérifiez :

cd ~/hermes-local-check
cat summary.md

Le test est réussi si summary.md existe, identifie trois lignes, Hermes exécute réellement l’écriture au lieu d’afficher seulement du JSON, hermes status reste sur Qwen local et aucun fallback ou auxiliaire cloud indésirable n’est configuré.

Ce test valide l’endpoint, la boucle d’outils et l’écriture de fichier. Il ne mesure pas les tâches complexes et ne prouve pas que tous les outils optionnels sont hors ligne.

Configurez le cloud sans masquer la bascule

hermes model

Choisissez le fournisseur cloud, terminez OAuth ou la saisie interactive du secret, puis sélectionnez un modèle. Ne collez pas de clé dans le chat ni dans une commande conservée par l’historique du shell.

Comme hermes model modifie la valeur par défaut, revenez ensuite au local pour la session active et les nouvelles sessions :

/model qwen3.5:4b --provider custom --global

Les trois portées de bascule sont :

/model YOUR_CLOUD_MODEL --provider YOUR_CLOUD_PROVIDER
/model YOUR_CLOUD_MODEL --provider YOUR_CLOUD_PROVIDER --once
/model YOUR_CLOUD_MODEL --provider YOUR_CLOUD_PROVIDER --global
  • La première commande change seulement la session actuelle.
  • --once utilise le cloud pour le prochain tour puis restaure le modèle précédent.
  • --global change aussi la valeur par défaut des nouvelles sessions.

Pour revenir au local :

/model qwen3.5:4b --provider custom

Si un fournisseur n’apparaît pas dans /model, configurez-le avec hermes model. La commande de session ne crée pas de nouvelles informations d’authentification.

Quand la bascule cloud est-elle justifiée ?

Restez local pour le code non publié, les documents personnels, les logs internes et les tâches limitées. Si les outils fonctionnent et que la vitesse convient, une amélioration théorique ne justifie pas automatiquement l’envoi du contexte.

Passez au cloud si le modèle local échoue encore après vérification de l’endpoint, du contexte et du tool support ; si la tâche exige un contexte bien plus long, la vision, un raisonnement multietape ou une latence plus faible.

Pour une tâche sensible, ouvrez une nouvelle session cloud et ne fournissez que le minimum. Hermes documente qu’un changement en cours de session réinitialise le prompt cache et que la requête suivante relit la conversation. Côté confidentialité, supposez donc que le contexte pertinent sera transmis au fournisseur cloud.

Auditez les modèles auxiliaires et le fallback

Si chaque appel externe doit être décidé par vous, ne configurez pas fallback_providers. Un fallback peut se déclencher après une erreur, un rate limit, un problème d’authentification ou de capacité ; ce n’est pas une décision humaine disant que la tâche est trop difficile.

Hermes peut aussi affecter la compression, la vision ou l’extraction Web à des modèles auxiliaires. Un main model local ne prouve pas que ces slots sont locaux.

Sous Bash, macOS ou Linux :

grep -nE 'fallback|auxiliary|base_url|provider|default' ~/.hermes/config.yaml

Sous Windows, examinez %USERPROFILE%\.hermes\config.yaml. Vérifiez l’endpoint principal, les auxiliaires, fallback_providers et toute Base URL distante inconnue.

Pour une preuve plus forte, utilisez les logs du pare-feu, du DNS ou d’un proxy sortant. Une étiquette « local » dans l’interface n’est pas une garantie réseau de bout en bout.

Résoudre les problèmes courants

Connection refused

curl http://127.0.0.1:11434/api/tags

En cas d’échec, lancez ollama serve ou le service de bureau.

Le modèle affiche du JSON d’outil sans agir

Vérifiez que le tag Qwen exact prend en charge les tools et que Hermes et Ollama sont à jour. Un petit modèle peut rester instable sur des arguments complexes. Rejouez le test à un fichier, puis essayez un modèle local plus grand ou une bascule cloud explicite.

Le modèle ou le fournisseur manque

Utilisez hermes model. /model n’affiche que les routes déjà configurées.

Le chat actif semble rester sur l’ancien modèle

Le changement de valeur par défaut concerne surtout les nouvelles sessions. Utilisez /model dans le chat actif ou ouvrez une nouvelle session.

Réponses lentes ou erreur de contexte

ollama ps

Contrôlez la taille, le GPU offload et le contexte. Un grand contexte aide à conserver les schémas d’outils, mais augmente la mémoire et le temps de prefill.

Un système hybride peut être utile sans être entièrement hors ligne

Un utilisateur de X a décrit un prototype personnel combinant Gemma via Ollama Cloud, Qwen cloud, Qwen local, Whisper local et TTS cloud. Cela illustre un routage par tâche, mais reste un témoignage individuel sans configuration reproductible publiée, logs réseau ni benchmark indépendant.

Les modèles, la voix et les outils ont chacun leur frontière. Whisper local ne rend pas le TTS cloud local, et un main model local ne rend pas privées les requêtes vers un calendrier, un outil de gestion de projet, un moteur de recherche ou un MCP distant.

Checklist finale

  • Le tag local ne finit pas par :cloud et la Base URL est http://127.0.0.1:11434/v1.
  • Le test curl direct fonctionne et hermes status montre la route attendue.
  • La tâche jetable crée réellement summary.md.
  • Le fournisseur cloud est configuré, mais chaque bascule passe explicitement par /model.
  • Une tâche sensible dans le cloud commence dans une session neuve avec un contexte réduit.
  • Les outils distants, auxiliaires et fallback_providers ont été contrôlés.
  • Pour une exigence hors ligne, tous les outils réseau et services cloud restent désactivés.

Sources

Prêt à optimiser votre workflow LLM ?

Connectez vos modèles via une API unique, gérez les clés et maîtrisez vos dépenses d’IA.

Commencer gratuitement