Le traitement automatique du langage naturel, souvent abrégé NLP (de l'anglais natural language processing) ou TAL en français, regroupe les techniques qui permettent à un ordinateur de lire, comprendre, analyser ou produire du langage humain. Traduire un texte, corriger l'orthographe, classer un e-mail, résumer un document ou répondre à une question en relèvent tous.
Une discipline ancienne
Le traitement du langage est presque aussi vieux que l'informatique. En 1950, Alan Turing propose dans l'article « Computing Machinery and Intelligence » un test fondé sur la conversation pour juger si une machine peut penser. En 1954, l'expérience Georgetown-IBM traduit automatiquement une soixantaine de phrases du russe vers l'anglais. En 1966, ELIZA, programme de Joseph Weizenbaum au MIT, simule une conversation à partir de mots-clés.
Pendant des décennies, la discipline progresse par étapes, chacune avec ses méthodes :
- Les règles écrites à la main (années 1950 à 1980) : des linguistes décrivent la grammaire et le vocabulaire pour que le programme puisse analyser une phrase
- Les méthodes statistiques (années 1990 et 2000) : le programme apprend les régularités à partir de grandes quantités de textes, ce qui améliore notamment la traduction automatique
- L'apprentissage profond (années 2010) : les réseaux de neurones et les embeddings représentent le sens des mots et des phrases par des nombres
- Les grands modèles de langage (depuis la fin des années 2010) : un seul modèle de langage, entraîné sur d'immenses corpus, réalise la plupart des tâches qui demandaient auparavant un outil spécialisé
Les grandes tâches du NLP
- La classification : attribuer une catégorie à un texte, comme « réclamation », « demande de devis » ou « question pratique »
- La reconnaissance d'entités : repérer dans un texte les noms, dates, lieux, montants ou numéros de commande
- La détection d'intention : comprendre ce que veut l'auteur d'un message, au-delà des mots employés
- L'analyse de sentiment : estimer si un message est positif, neutre ou négatif
- La traduction d'une langue à une autre
- Le résumé d'un document ou d'une conversation
- La recherche d'information, dont la recherche sémantique, qui retrouve un passage par son sens
- La génération de texte : rédiger une réponse, un e-mail ou une description
NLP et chatbots
Les premiers chatbots d'entreprise utilisaient le NLP pour une tâche précise : reconnaître l'intention d'un visiteur parmi une liste prévue, puis afficher la réponse écrite d'avance pour cette intention. Le programme comprenait mieux la question qu'une simple recherche de mots-clés, mais il ne pouvait rien dire en dehors des réponses préparées.
Les assistants IA actuels utilisent un modèle de langage qui réalise d'un coup plusieurs tâches de NLP : comprendre la question, repérer les informations utiles, chercher dans les documents, formuler une réponse dans la langue du visiteur. Cette polyvalence explique leur souplesse, et aussi leur principal risque : un modèle qui rédige librement peut produire une hallucination si on ne l'encadre pas.
Les langues ne sont pas toutes égales
Les outils de NLP fonctionnent mieux dans les langues pour lesquelles il existe beaucoup de textes numériques. L'anglais est la mieux servie. Le français, le néerlandais et l'allemand sont très bien couverts par les modèles actuels. Les variantes régionales demandent plus d'attention : les belgicismes comme « septante », « GSM » ou « kot » sont compris, mais un modèle ne les emploie pas spontanément dans ses réponses. Les termes administratifs belges, qui diffèrent de ceux de la France ou des Pays-Bas, méritent d'être précisés dans les documents.
Ce que le NLP permet dans une PME
Sans parler d'assistant conversationnel, plusieurs usages du NLP sont accessibles à une petite organisation :
- Trier automatiquement les e-mails entrants par type de demande
- Extraire des informations d'un formulaire libre ou d'un message
- Résumer une longue conversation avant de la transmettre à un collègue
- Repérer les questions qui reviennent dans les messages des clients, pour compléter une FAQ
Dans un assistant, ces tâches se combinent : la question est comprise, l'intention repérée, les documents consultés, la réponse rédigée, et la conversation résumée si elle passe à l'équipe.
Le NLP dans KernChat
KernChat s'appuie sur des modèles de langage du marché, qui réalisent l'ensemble de ces tâches. Ils comprennent les questions en français, en néerlandais et en anglais, répondent à partir des documents de l'organisation et produisent, à la clôture de la conversation, un résumé, l'intention du visiteur, le ton de l'échange et les sujets abordés. Ces informations aident l'équipe à reprendre une demande sans relire tout l'échange.