État des lieux
Outils à disposition & implémentations possibles de l’IA
Quelques généralités
Ce projet d’Olivier Kraif fait état des limites des outils :
- Les outils d’aide à la rédaction (j’ai l’impression qu’ils parlent essentiellement des outils gratuits comme les correcteurs intégrés aux traitements de texte) se limitent aux corrections orthographiques (lexicales, grammaticales)
- Dans le domaine de l’écrit avancé, de très nombreux problèmes
identifiés par les chercheurs (cf. base d’exemples commentés en cours de
construction dans le cadre d’Ecri+) restent non traités. Au delà des
erreurs, ce sont surtout les “maladresses qui l’intéressent”:
- Problème lexicaux et phraséologiques (collocations, registre, etc.)
- Problèmes syntaxiques (coordination, valence, constructions lourdes, etc.)
- Problèmes discursifs (connecteurs, reprises anaphoriques, …)
- Ponctuations (virgules, point, guillemets, etc.)
- Les LLM (Large Language Model) sont désormais capable de corriger un certains nombre de ces problèmes en proposant des corrections / reformulations
=> constitution d’un jeu de données à partir d’un corpus de mémoires d’étudiants et modélisation de ces types d’erreur. Une thèse en cours à l’Université de Grenoble (Amine Hadjabdallah).
Cet article me semble synthétiser les approches en GEC et apporte une peu de clarté :
Évolution des approches :
- Basées sur des règles : premières tentatives reposant sur des règles linguistiques et des analyseurs syntaxiques. Utiliser des règles linguistiques préétablies pour détecter et corriger les erreurs. On écrit des règles comme : “Si un verbe est au présent, il faut ajouter un ‘s’ à la 3e personne du singulier” (exemple : he go → he goes). Un programme analyse les phrases et applique ces règles pour corriger les erreurs. Précision sur des erreurs bien définies. Mais impossible de couvrir toutes les erreurs possibles.
- Basées sur l’apprentissage automatique : approches de classification utilisées pour corriger des erreurs spécifiques (prépositions, articles). On collecte des phrases correctes et incorrectes. Un modèle de machine learning apprend à prédire la bonne version d’un mot dans un contexte donné (exemple : choisir entre in et on dans une phrase). Lorsqu’on lui donne une phrase nouvelle, il propose la correction la plus probable. Nécessite beaucoup de données annotées. Fonctionne bien pour des erreurs fréquentes et limitées (articles, prépositions, conjugaisons…). Un seul type d’erreur à la fois. Peut être combiné avec d’autres méthodes.
- Basées sur la traduction automatique statistique (SMT) : utilisation de corpus parallèles pour “traduire” des phrases erronées en phrases correctes. On entraîne un modèle avec des phrases incorrectes et leurs corrections. Il propose ensuite la phrase la plus probable en fonction des corrections qu’il a vues dans ses données d’entraînement. Nécessite un grand corpus de phrases erronées/corrigées.
- Basées sur la traduction automatique neuronale (NMT) : l’essor du
deep learning a conduit à l’utilisation de modèles seq2seq
(encodeur-décodeur) pour corriger les erreurs grammaticales. On entraîne
un modèle de type encoder-decoder avec des millions de phrases
incorrectes/corrigées.
Lorsqu’il reçoit une phrase erronée, il prédit la meilleure correction en analysant le contexte global. Très performant grâce aux modèles modernes (Transformer, BERT…). Peut généraliser et corriger des erreurs qu’il n’a jamais vues auparavant. Besoin de beaucoup de données pour bien fonctionner. - Basées sur les modèles de langage (LM) : Approches qui ne nécessitent pas de corpus annoté et utilisent des modèles probabilistes pour prédire les corrections. On entraîne un modèle sur un immense corpus de textes corrects. Lorsqu’une phrase incorrecte est donnée, il cherche la version la plus plausible en se basant sur ce qu’il a appris. Pas besoin d’un corpus annoté (fonctionne juste avec du texte correct). Effet black box même en contrôlant les données d’entraînement.
Ces approches peuvent être combinées / hybridées.
Concernant les approches employées par les outils propriétaires, on trouve des informations dans la presse grand public et dans des communications émanant des entreprises. Très vulgarisé et centré sur le produit / les résultats / la performance. On a du mal à voir où se situe l’IA, quelle approche est employée, mais l’IA générative est intégrée à renfort de campagne marketing.
Antidote
IA générative et reformulation = phase de test en 2024 sur Antidote Web / déploiement depuis fin 2024 dans Antidote 12.
https://www.protegez-vous.ca/nouvelles/technologie/antidote-12-l-intelligence-artificielle-au-service-de-vos-textes
Article de Protégez-vous du 4/10/24
“Pour l’instant, le mode Reformulation comporte cinq volets.
Réécrire permet de trouver de nouvelles façons d’écrire une phrase ou un paragraphe. Le logiciel vous propose ensuite quatre versions de reformulation, allant de celle qui est la plus proche de votre texte original jusqu’à celle qui s’en éloigne le plus.
Retoucher est une version un peu plus douce de la réécriture et permet, par exemple, de couper les phrases trop longues en deux, ou de remplacer certaines formulations lourdes.
Épicéniser propose des ajustements pour adopter l’écriture épicène ; par exemple, remplacer « ambassadeur et ambassadrice » par « diplomate ».
Modérer adoucit le ton d’un message.
Raccourcir présente différentes modifications pour réduire le nombre de caractères d’un texte (autour de 15 % du texte en moyenne, lors de mes essais). Notons que cette fonctionnalité ne résume pas un texte : vous ne pourrez pas prendre un rapport de 20 pages et le comprimer en une seule. Elle permet uniquement de retravailler certains passages afin d’économiser des mots.””
“L’IA ne fait pas non plus de changements inutiles. S’il n’y a rien à modérer dans un texte, le ton ne sera pas modifié sans raison.”
Le modèle tourne sur leurs serveurs.
https://www.antidote.info/fr/blogue/nouvelles/antidote-offre-la-reformulation-par-ia-generative
article de blog du 5 décembre 2023
Druide spécialisé dans l’IA linguistique depuis 1993.
Druide déploie son moteur de reformulation, première application à Antidote de l’IA générative. Antidote peut offrir jusqu’à trois reformulations distinctes de la phrase ou du paragraphe original; on choisit celle qu’on préfère et on l’insère directement dans le texte. Basé sur un LLM.
Utilités de cette reformulation :
- rédaction en langue seconde
- reparation des ruptures (là où le correcteur bloque, il sent que quelque chose ne va pas mais il ne sait pas l’analyser, potentielles erreurs syntaxiques)
https://www.antidote.info/fr/blogue/nouvelles/reformulation-et-intelligence-artificielle-antidote
Interview publiée le 5 décembre 2023
Reformulation disponible sur Antidote Web. Implémentation plus rapide que sur la version logicielle. En local connexion aux serveur pour dispo de la puissance de calcul.
Leur explication des formes d’IA employées par Antidote
IA symbolique : arbres de décision. Exemple d’utilisation dans Antidote => les accords. Si un nom remplit toutes les conditions pour être un sujet et qu’il est pluriel, alors le mot qui remplit toutes les conditions pour être le verbe doit aussi être au pluriel. Basé sur des conditions.
IA statistique : analyse du Big Data et tirer des tendances. Données de Antidotes tirées de sources “fiables” (dixit, bibliothèques numériques et sites journalistiques, dixit encore). Exemple d’application dans Antidote => dictionnaire de coocurrence = association de mots fréquentes et spontannées.
IA neuronale : réseaux de neurones. Inclue apprentissage profond et IA générative. Antidote emploie l’apprentissage profond depuis 2021. Application => ajouter des mots ou des virgules manquantes. Permet de dépasser la barrière de la syntaxe, complexe à analyser pour la machine. Atteindre un niveau de correction ++.
Emploi de l’IA générative pour la fonction de reformulation.
“Antidote vous propose des options de réécriture fidèles à votre style et à vos idées.”
“La reformulation d’Antidote n’écrit pas à votre place, vous gardez toujours la maitrise du texte. Elle est conçue pour vous offrir des propositions fidèles à votre contenu et à votre style. Nos reformulations n’introduisent ni fioritures ni corrections superflues.”
Sources vérifiées feraient la force de Antidote et assurerait la qualité des reformulations.
Par exemple IA générative pour résoudre un signalement de rupture (là où son analyse bute) => il propose alors une reformulation.
Leur propre modèle de langue open source. Indépendance sur les infra. Filtrage des résultats par Antidote pour ajuster aux configurations de l’utilisateur. Antidote “veille à la qualité” des propositions de reformulation. Une forme de filtrage~?
Trois reformulations par cas. Le LLM en génère +, mais un algo supplémentaire sélectionne les trois meilleurs.
“Pourquoi trois? Parce qu’au terme de trois reformulations, nos tests démontrent que ni la qualité ni la variété ne s’améliorent vraiment.”
Exemples de reformulation
Correction de rupture
On mixe le tout et on filtre avant d’ajoute 1 kilo de sucre de
canne
⇨ On mélange le tout et on filtre. On ajoute ensuite 1 kilo de sucre de
canne.
Correction d’impropriété
De nouveaux programmes seront dispensés par cet établissement
d’enseignement.
⇨ De nouveaux programmes seront proposés dans cet établissement
d’enseignement.
Amélioration du style
Elle a réfléchi ce weekend à comment elle pourrait apporter de la
valeur à l’équipe.
⇨ Elle a réfléchi durant le weekend à la manière d’apporter de la valeur
à l’équipe.
https://www.antidote.info/fr/blogue/nouvelles/antidote-canalise-lintelligence-artificielle-generative
Post de blog du 16 octobre 2024
Antidote 12 intègre l’IA générative pour la reformulation.
Cinq volets de reformulation : Réécrire, Retoucher, Épicéniser, Modérer
et Raccourcir.
LLM entraîné par Druide propose des reformulation. Filtrage des
résultats et ordonne les propositions de reformulation.
“résultats fidèles à ses idées”
“De nouveaux moteurs neuronaux augmentent fortement la perspicacité du correcteur” => augmenter le nombre de cas détectés.
“technologie Anti-Oups!, qui vérifie les courriels avant leur envoi, ajoute une nouvelle détection : celle du ton vexant”
“la Correction Multidocument simplifie la correction en lot d’un ensemble de documents en format HTML, TXT, Markdown et LaTeX. Utile pour la correction récurrente de textes appelés à changer souvent, comme un site Web ou une documentation complexe, elle facilite les corrections multiples à travers un lot de documents”
Word
https://www.gestisoft.com/fr/blogue/comment-utiliser-copilot-dans-word-guide-etape-par-etape
Intégration de Copilot à Word. Création de brouillon, synthèse de documents complexe.
“Plus qu’un simple assistant d’écriture, il offre une assistance en temps réel pour la rédaction, l’édition, le résumé et la mise en forme.”
- Générer des brouillons à partir des prompts.
- Proposer des suggestions de tonalité adaptées à votre document.
- Résumer un contenu volumineux.
- Réécrire des sections pour les rendre plus claires et plus concises.
“Copilot améliore la clarté en réécrivant le texte pour le rendre concis et professionnel. Il identifie et corrige aussi les erreurs grammaticales.”
“Automatise des tâches telles que la création de tableaux, de puces et l’ajustement des titres pour plus de cohérence.” “mettre en forme votre texte en un seul clic”
“Si vous souhaitez réviser, développer ou modifier des sections spécifiques du contenu généré, vous pouvez mettre en surbrillance du texte, des listes ou des tableaux spécifiques pour que Copilot dans Word puisse travailler avec.”
https://mssolutions.ca/blogue/actualite/microsoft-365-copilot-lintelligence-artificielle-qui-va-revolutionner-votre-quotidien/
“utilise les données de votre entreprise, disponibles dans Microsoft Graph”
Partage des données historiques.
“Pour que Microsoft Copilot puisse offrir des suggestions et des recommandations pertinentes, il est crucial de lui fournir des données historiques de productivité de votre entreprise. Cela comprend des éléments tels que les courriels, les présentations, les rapports, les conversations et les réunions. Plus vous partagez ces informations avec Copilot dès que possible, plus il pourra s’imprégner de vos données et enrichir sa base de connaissances, ce qui sera extrêmement bénéfique pour vous dès le jour 1.”
https://momentum-tech.ca/copilot-pour-office-365-comment-lia-transforme-le-paysage-professionnel/
“Face aux solutions gratuites dispersées sur le marché, Copilot pour Office 365 se positionne comme une alternative offrant un éventail de fonctionnalités plus développé, mais aussi une plus grande confidentialité et une meilleure sécurité des données.”
Je vous épargne le discours sur les “considérations éthiques”…
Prolexis
Je ne trouve pas grand chose, informations vagues…
https://www.prolexis.com/intelligence-artificielle/
Utilisation conjointe de l’IA avec les algorithmes
“classiques”.
Essentiellement pour améliorer la correction syntaxique, si je comprends
bien. Pas de reformulation.
“Plusieurs réseaux de neurones sont spécialement entraînés sur des centaines de milliers de phrases pour résoudre certains problèmes très complexes.”
Parsers
Essai pas très concluant, pourtant avec une biblio relativement bien formatée. Cf. anystyle.bib.
C’est du Layout Analysis.
“GROBID (or Grobid, but not GroBid nor GroBiD) means GeneRation Of BIbliographic Data.
GROBID is a machine learning library for extracting, parsing and re-structuring raw documents such as PDF into structured XML/TEI encoded documents with a particular focus on technical and scientific publications. First developments started in 2008 as a hobby, following a suggestion by Laurent Romary (Inria). In 2011 the tool has been made available in open source. Work on GROBID has been steady as side project since the beginning and is expected to continue as such.
The following functionalities are available:
[…]
- References extraction and parsing from articles in PDF format, around .87 F1-score against on an independent PubMed Central set of 1943 PDF containing 90,125 references, and around .90 on a similar bioRxiv set of 2000 PDF (using the Deep Learning citation model). All the usual publication metadata are covered (including DOI, PMID, etc.).
- Citation contexts recognition and resolution of the full bibliographical references of the article. The accuracy of citation contexts resolution is between .76 and .91 F1-score depending on the evaluation collection (this corresponds to both the correct identification of the citation callout and its correct association with a full bibliographical reference).
[…]
- Parsing of references in isolation (above .90 F1-score at instance-level, .95 F1-score at field level, using the Deep Learning model).
- Parsing of names (e.g. person title, forenames, middle name, etc.), in particular author names in header, and author names in references (two distinct models).
- Parsing of affiliation and address blocks.
- Parsing of dates, ISO normalized day, month, year.
- Consolidation/resolution of the extracted bibliographical references using the biblio-glutton service or the CrossRef REST API. In both cases, DOI/PMID resolution performance is higher than 0.95 F1-score from PDF extraction.
- Extraction and parsing of patent and non-patent references in patent publications.
[…]”
“Neural ParsCit is a citation string parser which parses reference strings into its component tags such as Author, Journal, Location, Date, etc. Neural ParsCit uses Long Short Term Memory (LSTM), a deep learning model to parse the reference strings. This deep learning algorithm is chosen as it is designed to perform sequence-to-sequence labeling tasks such as ours. Input to the model are word embeddings which are vector representation of words. We provide word embeddings as well as character embeddings as input to the network.””
Je sens que ma machine ne supportera pas le test… Besoin d’un GPU pour la génération des vecteurs.
Format pdf de l’article en entrée
Sortie = article et références segmentés et formatés en html
Essai pas concluant du tout. cf. cermine.html
Crossref Metadata API
https://api.crossref.org/swagger-ui/index.html
Quelques réflexions perso
En ce qui concenrne purement le formatage de la biblio :
parseur => (DOI =>) crossref API => réupérer un .bib propre => application du style CSL => C/C une biblio bien formatée
Si on doit juste attraper le DOI => une bonne regex
Mais j’imagine que toutes les refs n’ont pas de DOI…
Mais une bonne logique algorithmique sans IA devrait être capable de faire des comparaisons sur d’autres champs
Conclusion
- des logiciels propriétaire assez opaques
- de l’IA générative pure mais on peut adopter des stratégies de prompt
- des approches plus bricole et algorithmiques