Comment fonctionne la génération de texte ?

Que signifie le sigle NLG ?

NLG est l’a­cro­nyme anglais de « Natu­ral Lan­guage Gene­ra­tion », en d’autres termes géné­ra­tion (de textes) en lan­gage natu­rel. Il s’a­git de faire pro­duire à une machine des textes sur un sujet donné.

Les tra­vaux sur la géné­ra­tion de textes datent des débuts du trai­te­ment auto­ma­tique des langues, qui est né de la tra­duc­tion auto­ma­tique. En effet, les pre­miers sys­tèmes de tra­duc­tion étaient basés sur le trip­tyque ana­lyse-trans­fert-géné­ra­tion (aus­si appe­lé tri­angle de Vauc­quois)

Les pre­miers sys­tèmes de géné­ra­tion indus­triels hors-tra­duc­tion ont été les sys­tème de pro­duc­tion de bul­le­tins météo. Cer­tains pou­vaient aller jus­qu’à pro­duire dif­fé­rents types de bul­le­tins à par­tir des mêmes don­nées (météo marine et météo « stan­dard ») et ce dans plu­sieurs langues.

Quelles sont les techniques utilisées pour la Génération de Textes ?

Il y a deux grandes familles de tech­no­lo­giques qui peuvent être mobi­li­sées pour faire pro­duire du texte à une machine :

Comment fonctionnent les systèmes de NLG basés sur des templates ?

Les tem­plates sont des modèles de docu­ments qui peuvent aller du simple « texte à trous » jus­qu’aux des­crip­tions de haut niveau des struc­tures de document. 

Les textes à trous sont des textes dans les­quels des variables viennent s’in­sé­rer, comme les cher Mon­sieur NOM, vous avez gagné… qui forment la majo­ri­té des spams. On ne peut pas se limi­ter à de la pure inser­tion de variables, car en fonc­tion des don­nées, il fau­dra chan­ger la for­mule (rem­pla­cer Mon­sieur par Madame), accor­der les adjec­tifs, conju­guer les verbes, etc. Les outils per­mettent de mettre en œuvre ces règles lin­guis­tiques de bas niveau.

Cer­tains sys­tèmes four­nissent des abs­trac­tions de plus haut niveau, met­tant en œuvre des gram­maires lin­guis­tique mas­quées par des pri­mi­tives séman­tiques de haut niveau (décrire une valeur, par exemple).

L’a­van­tage des sys­tèmes basés sur des tem­plates, quels que soient les niveaux d’abs­trac­tion, est qu’ils sont décla­ra­tifs et direc­te­ment liés aux don­nées struc­tu­rées (bases de don­nées, tableurs, etc.). Ce type de géné­ra­tion gui­dé par les don­nées est appe­lé data-to-text . Une liai­son directe et expli­cite aux don­nées per­met d’as­su­rer la fia­bi­li­té et la tra­ça­bi­li­té des textes pro­duits, par­fois aux dépends de la com­plexi­té de ges­tion des templates.

Comment les réseaux de neurones peuvent-ils générer du texte ?

Les récentes avan­cées dans les réseaux de neu­rones ont mon­tré une redou­table capa­ci­té pour ces sys­tèmes à pro­duire des textes, à com­men­cer par la tra­duc­tion neu­ro­nale et plus récem­ment avec des modèles de langue mas­sifs (large lan­guage models) comme GPT‑3.

Ces sys­tèmes ont ten­dance à être par­ti­cu­liè­re­ment créa­tifs : ils sont capables de conti­nuer un texte dont le début aurait été rédi­gé par un humain. En revanche, ils sont dif­fi­ciles à contraindre. Cela les dis­pose donc plus à des appli­ca­tions de type « écri­ture créa­tive » (qui consiste à lais­ser la machine « bro­der » sur un sujet) et moins à de la géné­ra­tion basée sur les don­nées, pour les­quels les tem­plates res­tent la solu­tion pri­vi­lé­giée par les industriels.

Quels systèmes open-source pour générer du texte ?

Des sys­tèmes open-source comme Sim­pleNLG ou RosaeNLG per­mettent de gérer les aspects mor­pho-syn­taxiques de la géné­ra­tion (mise au masculin/féminin, conju­gai­son des verbes, etc.) au tra­vers d’un lan­gage de pro­gram­ma­tion de tem­plates. Ils ne dis­pensent pas de l’é­cri­ture de ces tem­plates pour cha­cun des cas visés. 

Les modèles mas­sifs sont dis­po­nibles en accès libre sur la pla­te­forme Hug­ging­face. Ils demandent tou­te­fois un cer­tain niveau d’ex­per­tise en Intel­li­gence Arti­fi­cielle pour être mis en œuvre. 

Par Hugues de Mazancourt
Président de l'APIL

Études de cas associés

Modérer les commentaires des abonnés en évitant le blocage de contenus

Chef de produit d'un quotidien d'actualités en ligne, je fais attention à la qualité de la section des commentaires rédigés par nos abonnés. Une façon de modérer serait de bloquer des commentaires contenant de fausses informations ou présentant un raisonnement douteux. Cependant, je dois aussi veiller à ce qu'il y ait une bonne interactivité entre les abonnés. Le blocage de commentaires, bien que simple à mettre en place, impactera non seulement la liberté d'expression mais aussi l'échange d'opinions entre les abonnés. J'aimerais savoir s'il existe des solutions moins contraignantes.

Comment alléger la charge que représente la rédaction de comptes-rendus médicaux en milieu hospitalier ?

Je suis chef de service hospitalier et souhaite alléger la charge que représente la rédaction récurrente de comptes-rendus médicaux. Les médecins du service sont amenés à rédiger pour chaque visite de patient des comptes-rendus médicaux nécessaires à leur suivi. Afin d'alléger la charge que représente la rédaction de ces comptes-rendus, je souhaite disposer d'un outil qui permettre d'optimiser la rédaction récurrente de parties redondantes.

Comprendre le fonctionnement et les limites des correcteurs orthographique et grammatical

Dans ma pratique professionnelle, je dois rédiger de nombreux rapports. La correction orthographique et grammaticale amène un gain de temps considérable. Souvent surpris par l'efficacité de ce type d'outils, j'aimerais comprendre comment ils fonctionnent afin de mieux jauger les corrections proposées.

Comment gagner du temps en rédigeant automatiquement des états des lieux ?

Responsable d’une agence immobilière, mon équipe est régulièrement amenée à dresser des états des lieux des biens qui nous sont confiés. Les informations nécessaires pour choisir le type d'état des lieux à créer et le préremplir sont stockées dans une base de données. Comment éviter une perte de temps inutile en automatisant la sélection du bon type d'état des lieux et sa rédaction conformément à la législation en vigueur ?

Création automatique des dossiers de crédit d'entreprise

En tant que responsable de la direction finances et risques d'une banque, je souhaite mettre en place un processus de création automatique des dossiers de crédit aux entreprises à partir des éléments clés : projets de financement, santé financière de l'entreprise, garanties apportées, etc. Cette solution devra être déployée sur l'ensemble du groupe, et notamment être accessible à tous les "risk managers" de l'établissement.

Rédiger automatiquement des fiches prestataires et sociopro à partir d'avis clients

Je suis responsable d'une plateforme touristique d'un office de tourisme, et je souhaite proposer aux touristes potentiels des descriptions de mes prestataires et socioprofessionnels prenant en compte les avis clients.

Pousser au client l'information qu'il ne cherche pas encore

Responsable de la commercialisation de plusieurs titres de presse, je dois acquérir ou fidéliser mes abonnés en ligne en leur proposant l’actualité cruciale, voire critique dans leur activité, parmi des masses d’informations quotidiennes. Les mêmes outils de veille constituent un support précieux pour les journalistes de mes publications, à partir de sources externes.

Comment réduire le temps de mise sur le marché d'un médicament par une rédaction automatique ?

La mise sur le marché d'un médicament nécessite un grand nombre de documents décrivant son processus de validation. Certains d'entre eux peuvent être très longs (jusqu'à plusieurs milliers de pages) et tous ont une procédure de rédaction/relecture très contrôlée. Pourtant, certaines parties de ces document peuvent être produites automatiquement à partir des données des études cliniques qui ont été effectuées, réduisant ainsi le temps qui sépare la conception du médicament de son Autorisation de Mise sur le Marché (AMM).

Produire et publier des centaines de commentaires d'actualité en quelques minutes

Responsable d'un domaine de publication, je dois assurer la mise en ligne en temps quasiment réel de bulletins d’analyse et de synthèse de données chiffrées massives telles que des résultats de rencontres sportives locales ou d'élections, les derniers chiffres de la pandémie COVID ou les prévisions météorologiques régionales et nationales.