Le node Sentiment Analysis de n8n : classer n'importe quel texte par sentiment avec l'IA
Publié le 5 août 2026 · 7 min de lecture
Savoir si un message exprime de la satisfaction, de l'agacement ou une colère froide est la première brique d'une foule d'automatisations : alerter sur un avis négatif, prioriser un ticket tendu, mesurer le moral d'une base de réponses NPS. C'est un problème que la recherche travaille depuis plus de vingt ans — la synthèse de référence de Bo Pang et Lillian Lee, Opinion Mining and Sentiment Analysis (2008, voir sur Google Scholar), recensait déjà des centaines de travaux sur le sujet, à l'époque à base de lexiques et de classifieurs entraînés à la main. Le node Sentiment Analysis de n8n rend cette opération triviale : vous lui donnez un texte et un modèle de chat, il sort chaque item sur la branche correspondant à son sentiment. Ce guide couvre sa configuration, ses options, ses limites, et quand lui préférer un autre node.
Ce que fait le node, concrètement
Le Sentiment Analysis appartient à la famille des nodes IA de n8n (LangChain). Son fonctionnement tient en une phrase : il soumet le texte d'entrée à un Chat Model connecté en sous-node, lui demande de le classer dans une des catégories de sentiment définies, et route l'item vers la sortie physique correspondante. Trois catégories = trois branches dans le canvas, chacune prête à recevoir la suite du traitement.
Exemple avec les catégories par défaut :
Entrée : "Livraison en retard de quatre jours et service client
injoignable. Je ne recommanderai pas."
→ sortie sur la branche Negative
Entrée : "Commande reçue, conforme à la description."
→ sortie sur la branche Neutral
Entrée : "Équipe au top, problème résolu en dix minutes !"
→ sortie sur la branche Positive
Pas de prompt à écrire, pas de parsing de réponse, pas de node IF derrière : le routage est câblé dans le node lui-même.
Configuration minimale
Deux éléments suffisent pour un node fonctionnel :
- Text to Analyze : le champ à analyser, mappé en expression —
{{ $json.body }}pour un email,{{ $json.comment }}pour une réponse d'enquête,{{ $json.text }}pour un avis. - Un Chat Model connecté en sous-node : OpenAI, Anthropic, Google Gemini, Mistral ou un modèle local, comme pour tous les nodes de la famille.
C'est tout. Avec les catégories par défaut (Positive, Neutral, Negative), le node est opérationnel en moins d'une minute.
Personnaliser les catégories de sentiment
Le champ Sentiment Categories accepte une liste libre, séparée par des virgules. Deux façons de s'en servir :
- Affiner l'échelle :
Very Positive, Positive, Neutral, Negative, Very Negativepour distinguer un client content d'un ambassadeur, ou un déçu d'un furieux. Utile quand la réaction diffère selon l'intensité — un « Very Negative » déclenche un appel, un « Negative » un email d'excuse. - Passer à des catégories orientées action :
Urgent, Satisfait, À risquepour un flux de tickets,Enthousiaste, Tiède, Perdupour des réponses de relance commerciale. Le node reste un classifieur de tonalité, mais la tonalité est exprimée dans le vocabulaire de votre équipe, et chaque branche correspond directement à un traitement.
Règle d'expérience : trois à cinq catégories maximum, ordonnées sur une échelle cohérente. Au-delà, les frontières entre catégories voisines deviennent floues et le modèle hésite — exactement le même phénomène que pour un barème de scoring de tickets support trop granulaire.
Les options qui comptent
Include Detailed Results. Désactivée, le node se contente de router. Activée, elle ajoute à l'item la catégorie retenue accompagnée d'estimations de force (strength) et de confiance (confidence) produites par le modèle. La documentation n8n est claire sur leur statut : ce sont des indicateurs approximatifs générés par le LLM, pas des probabilités calibrées. Ils restent très utiles pour une chose : router les faibles confiances vers une relecture humaine plutôt que de trancher automatiquement.
System Prompt Template. Remplace le prompt système utilisé pour la classification, avec un placeholder {categories} pour injecter vos catégories. C'est le levier pour donner du contexte métier (« ces textes sont des avis sur un restaurant ; les critiques sur le prix seul comptent comme Neutral ») ou forcer la langue d'analyse. Ne le touchez qu'en cas de besoin réel : le prompt par défaut est solide.
Enable Auto-Fixing. Si le modèle renvoie une sortie mal formée, le node relance automatiquement un appel pour la corriger au lieu d'échouer. Coût : un appel LLM supplémentaire occasionnel ; bénéfice : nettement moins d'exécutions en erreur, surtout avec les petits modèles. À laisser activée en production.
Sentiment Analysis ou Text Classifier ?
Les deux nodes se ressemblent — un texte, un LLM, une branche par catégorie — et la confusion est fréquente. La différence est dans la nature des catégories :
- Le Text Classifier classe selon des thèmes arbitraires que vous décrivez librement : support technique, question commerciale, facturation, spam. La question posée est « de quoi parle ce texte ? ».
- Le Sentiment Analysis classe selon une échelle d'opinion : la question est « quel ton exprime ce texte ? », et le prompt interne est optimisé pour cela.
Les deux se combinent très bien en cascade : un Text Classifier trie les emails par sujet, puis un Sentiment Analysis sur la branche « réclamation » sépare le client agacé du client prêt à partir. Et si vous devez extraire des champs structurés en plus du ton (produit concerné, montant, demande précise), ajoutez un Information Extractor sur la branche concernée.
Quel modèle, pour quel coût ?
La classification de sentiment sur des textes courts est l'une des tâches où les LLM généralistes sont le plus à l'aise. L'étude de Zhang, Deng, Liu, Pan et Bing, Sentiment Analysis in the Era of Large Language Models: A Reality Check (NAACL 2024, voir sur Google Scholar), qui évalue les LLM sur 26 jeux de données, conclut qu'ils atteignent des performances satisfaisantes en zéro-shot sur la classification de sentiment simple — là où ils peinent, c'est sur les tâches fines comme l'analyse par aspect, ce que le node ne prétend pas faire.
Conséquence pratique : un petit modèle suffit — GPT-4o mini, Claude Haiku ou équivalent — pour une fraction de centime par texte. Sur 3 000 avis par mois, la différence entre un modèle premium et un modèle économique se chiffre en dizaines d'euros pour un gain de précision marginal sur cette tâche. Si le volume devient significatif, mesurez la dépense réelle avec notre méthode de suivi du coût des appels IA par workflow.
Quatre cas d'usage branchés
- Avis Google → alerte Slack : le node classe chaque nouvel avis, la branche Negative déclenche une notification immédiate dans un canal dédié. Le pipeline complet — collecte multi-source, agrégation, réponses suggérées — est détaillé dans notre guide pour analyser les avis clients par IA.
- Réponses NPS : le verbatim d'un détracteur part vers l'équipe concernée, celui d'un promoteur alimente les témoignages. Notre guide de l'analyse des réponses NPS par IA montre comment croiser le score déclaré et le sentiment du commentaire libre.
- Tickets support : un Sentiment Analysis en tête de flux avec des catégories
Urgent, Standard, À risquefait un premier tri émotionnel avant le scoring détaillé. - Mentions réseaux sociaux : sur un flux de mentions de marque, la branche Negative part en revue humaine, le reste s'agrège en statistiques hebdomadaires.
Les pièges à connaître
- Textes courts ou ambigus : « ok merci » ne porte presque aucun signal ; un modèle le classera Neutral par défaut, parfois Positive. Activez Include Detailed Results et routez les confiances faibles vers un humain.
- Sarcasme et ironie : « Bravo, quatre jours pour répondre à un email » reste un cas difficile pour tous les modèles. Sur des flux où l'ironie est fréquente (réseaux sociaux), acceptez un taux d'erreur résiduel et gardez une boucle de relecture.
- Multilingue : les LLM classent correctement la plupart des langues courantes, mais si votre flux mélange les langues, précisez dans le System Prompt Template que le sentiment doit être évalué quelle que soit la langue — et testez sur un échantillon réel.
- Gros volumes et rate limits : un backlog de 10 000 avis envoyé d'un coup finira en erreurs 429. Cadencez avec Loop Over Items et Wait, comme détaillé dans notre article sur les rate limits des API IA dans n8n.
En résumé
Le node Sentiment Analysis de n8n transforme une tâche autrefois réservée aux équipes NLP en un bloc de canvas : un texte en entrée, un Chat Model connecté, une branche de sortie par catégorie de sentiment — par défaut Positive/Neutral/Negative, ou vos propres gradations métier. Les options Include Detailed Results, System Prompt Template et Enable Auto-Fixing couvrent les besoins de production, et un petit modèle suffit à la tâche. Pour le voir travailler sur un cas concret de bout en bout, le Pack Inbox IA (79 €) applique exactement cette logique de classification et de routage par IA à votre boîte email : tri, priorisation par ton et urgence, et brouillons de réponse prêts à valider.
FAQ
Questions fréquentes
Quelle est la différence entre le node Sentiment Analysis et le Text Classifier de n8n ?
Les deux nodes classent un texte via un LLM et créent une branche de sortie par catégorie, mais le Text Classifier classe selon des catégories thématiques arbitraires (support, facturation, spam…) tandis que le Sentiment Analysis classe selon une échelle d'opinion (positif, neutre, négatif, ou vos propres gradations). Si votre question est « de quoi parle ce texte ? », utilisez le Text Classifier ; si c'est « quel ton ou quelle émotion exprime ce texte ? », utilisez le Sentiment Analysis.
Peut-on utiliser d'autres catégories que Positive, Neutral et Negative ?
Oui. Le champ Sentiment Categories accepte n'importe quelle liste séparée par des virgules : une échelle plus fine (Very Positive, Positive, Neutral, Negative, Very Negative) ou des catégories métier orientées action comme Urgent, Satisfait, À risque. Chaque catégorie devient une sortie physique du node — restez entre trois et cinq catégories, au-delà les frontières deviennent floues et le classement moins fiable.
Quel modèle connecter au node Sentiment Analysis pour maîtriser les coûts ?
La classification de sentiment est une tâche courte et bien bornée : un modèle économique comme GPT-4o mini ou Claude Haiku suffit dans la grande majorité des cas, pour une fraction de centime par texte analysé. Réservez un modèle plus puissant aux textes vraiment ambigus (sarcasme, avis mêlant positif et négatif) et surveillez la dépense avec un suivi des coûts par workflow si le volume grimpe.
Bundle FlowKit Complet
269 €