FlowKit

Le node Text Classifier de n8n : router vos données par catégorie avec l'IA

Publié le 30 juillet 2026 · 5 min de lecture

Trier des emails entrants, ranger des tickets support, séparer les avis clients positifs des réclamations, orienter des leads vers la bonne équipe : une énorme partie des automatisations utiles commence par la même opération — classer un texte dans des catégories métier. Longtemps, cela demandait soit des règles à base de mots-clés fragiles, soit un appel LLM artisanal avec son prompt, son parsing et sa gestion d'erreurs. Le node Text Classifier de n8n encapsule tout cela : vous décrivez vos catégories en français, il route chaque item vers la branche correspondante. Et la fiabilité de l'approche est solidement documentée : une étude de Gilardi, Alizadeh et Kubli publiée en 2023 dans PNAS (« ChatGPT outperforms crowd workers for text-annotation tasks », voir sur Google Scholar) montre que sur des tâches d'annotation de texte — pertinence, thème, position exprimée —, un LLM dépasse la précision d'annotateurs humains rémunérés, pour un coût environ vingt fois inférieur.

Ce que fait le node, concrètement

Le Text Classifier fait partie des nodes IA de n8n (famille LangChain). Il prend en entrée un texte, le soumet à un modèle de chat connecté en sous-node, et compare le contenu aux catégories que vous avez définies. Chaque catégorie du node devient une sortie physique du node : un item classé « Réclamation » sort sur la branche Réclamation, un item classé « Question commerciale » sur la sienne. Vous branchez ensuite ce que vous voulez derrière chaque sortie — un canal Slack, un CRM, un sous-workflow de traitement dédié.

La différence avec un node IF ou Switch est fondamentale : IF et Switch évaluent des conditions exactes sur des champs structurés ; le Text Classifier évalue le sens d'un texte libre. Les deux se complètent d'ailleurs très bien dans un même workflow.

Configuration pas à pas

  1. Ajoutez le node Text Classifier et connectez-lui un Chat Model en sous-node (OpenAI, Anthropic, Mistral, Gemini ou un modèle local via Ollama).
  2. Dans Text to Classify, mappez le champ à classer : {{ $json.body }} pour un email, {{ $json.message }} pour un ticket.
  3. Dans Categories, ajoutez chaque catégorie avec un nom court et une description précise. C'est ici que tout se joue : la description est envoyée au modèle, elle doit dire ce qui appartient à la catégorie et ce qui n'y appartient pas.
  4. Dans les options, choisissez le comportement When No Clear Match : écarter l'item ou le sortir sur une branche « Other » supplémentaire.

Exemple de catégories pour un tri d'emails entrants :

support_technique : problème d'utilisation, bug, erreur, accès impossible
  à un produit déjà acheté. PAS les questions d'avant-vente.
question_commerciale : demande de prix, de devis, de démo, ou question
  sur les fonctionnalités avant achat.
facturation : facture manquante, erreur de montant, remboursement, TVA.
autre : tout ce qui ne rentre dans aucune catégorie ci-dessus.

Écrire des descriptions de catégories qui marchent

La qualité du classement dépend presque entièrement des descriptions, pas de la puissance du modèle. Trois règles tirées de l'expérience :

  • Délimitez les frontières : le cas ambigu classique (« votre produit ne marche pas, remboursez-moi » — support ou facturation ?) doit être tranché dans la description, pas laissé à l'appréciation du modèle.
  • Donnez un exemple par catégorie directement dans la description : « ex. : "je n'arrive plus à me connecter depuis hier" ». Un exemple vaut dix adjectifs.
  • Gardez des catégories mutuellement exclusives si vous faites du routage : en cas de recouvrement, activez plutôt la multi-classification et assumez qu'un item parte sur deux branches.

Ce travail de barème est exactement le même que celui décrit dans notre guide du scoring de tickets support par IA : un critère flou produit un classement flou, quel que soit le modèle.

Gérer les cas limites en production

Le texte vide ou hors sujet. Activez la sortie « Other » plutôt que le rejet silencieux : en production, cette branche est votre radar. Si elle grossit, vos catégories ne couvrent plus la réalité du flux entrant.

Les textes longs. Un email de trois lignes se classe très bien ; un thread de cinquante messages transférés, beaucoup moins. Tronquez ou résumez d'abord les documents longs, puis classez le résumé — c'est plus fiable et moins cher.

Les erreurs d'API. Le node hérite des réglages retry classiques de n8n. Encadrez-le avec un Error Workflow et prévoyez un fallback vers un second fournisseur si le tri est critique pour votre activité.

Les coûts. Un modèle léger suffit : la tâche est courte et bornée. Si le volume devient significatif, notre guide pour suivre le coût des appels IA montre comment mesurer précisément la dépense par workflow.

Trois cas d'usage éprouvés

  • Tri d'emails entrants : Text Classifier en sortie d'un trigger IMAP ou Gmail, routage vers support / commercial / facturation. C'est le cœur de notre workflow gratuit de tri d'emails par IA en IMAP, et la première brique du Pack Inbox IA (79 €), qui y ajoute priorisation, digest quotidien et brouillons de réponse.
  • Modération de contenus : classer les messages d'un formulaire ou d'un chat en « légitime / spam / abusif » avant publication, en complément des techniques décrites dans notre guide de détection du phishing et du spam par IA.
  • Qualification de leads : premier niveau de tri sémantique avant le scoring plus fin des leads entrants, pour séparer d'emblée les vraies demandes des candidatures spontanées et du démarchage.

Text Classifier ou AI Agent ?

Si votre besoin est « classer puis router », le Text Classifier est plus simple, plus rapide et moins cher qu'un node AI Agent : pas d'outils, pas de mémoire, pas de boucle de raisonnement — une seule décision par item, avec des sorties câblées dans le canvas. Réservez l'AI Agent aux cas où la classification n'est qu'une étape d'un raisonnement plus large. Et si vous avez besoin d'extraire des champs structurés en plus de la catégorie (montant, produit concerné, urgence), combinez le Text Classifier avec un Information Extractor sur la branche concernée.

Un classifieur bien configuré, c'est vingt lignes de descriptions de catégories qui remplacent des centaines de règles de filtrage — et qui s'améliorent en relisant simplement ce qui sort de la branche « Other ».

FAQ

Questions fréquentes

Quelle est la différence entre le Text Classifier et un node IF ou Switch ?

IF et Switch routent selon des conditions exactes (égalité, contient, regex) sur des champs déjà structurés. Le Text Classifier route selon le sens d'un texte libre : il comprend qu'un email qui dit « je n'arrive plus à me connecter depuis hier » relève du support technique sans qu'aucun mot-clé prédéfini ne soit présent. En pratique, les deux se combinent : le Text Classifier catégorise, puis des IF/Switch affinent le routage sur des champs précis.

Le Text Classifier peut-il assigner plusieurs catégories à un même texte ?

Oui, l'option « Allow Multiple Classes To Be True » autorise la multi-classification : un même item peut alors sortir sur plusieurs branches à la fois. C'est utile pour du tagging (un article peut être à la fois « produit » et « annonce »), mais gardez-la désactivée pour du routage exclusif, sinon un même email peut déclencher deux traitements concurrents.

Que devient un texte qui ne correspond à aucune catégorie ?

Par défaut, l'item est simplement écarté (« Discard »). L'option « When No Clear Match » permet à la place de le sortir sur une branche dédiée « Other », ce qui est presque toujours préférable en production : vous voyez ce que le classifieur n'a pas su ranger, et cette branche alimente l'amélioration des descriptions de catégories.

Quel modèle utiliser pour ne pas exploser les coûts ?

La classification est une tâche courte : un modèle économique (gpt-4o-mini, Claude Haiku, ou un Mistral Small) suffit dans l'immense majorité des cas, pour un coût de l'ordre de quelques centièmes de centime par item. Si le volume est important, dédupliquez avant classification et surveillez la consommation avec un suivi des coûts par workflow.

Bundle FlowKit Complet

269 €