You are currently viewing Recherche en IA primée à Bensheim

Recherche en IA primée à Bensheim

Nous sommes très heureux de partager aujourd’hui une histoire de réussite toute particulière de notre équipe : notre collègue Ernesto Curmen a été distingué pour son mémoire de master exceptionnel. Dans sa contribution, il nous donne lui-même un aperçu du contenu passionnant et raconte quels thèmes l’ont particulièrement marqué. Bonne lecture!

Retrieval Augmented Generation, ou RAG en abrégé, a changé pour toujours le paysage de la recherche documentaire. L’approche de base est très simple: les documents sont divisés en sections de texte plus petites (chunks). Ces chunks sont ensuite convertis en embeddings (des représentations vectorielles qui contiennent les informations sémantiques du texte) et stockés dans une base de données. Après ce processus, un utilisateur peut poser une question, dont l’embedding est également créé et placé dans la base, et ainsi tous les embeddings les plus proches sur le plan sémantique peuvent être retrouvés. Ces passages de texte sélectionnés sont ensuite utilisés pour générer la réponse finale.

Il existe toutefois un problème central avec RAG : les solutions traditionnelles ignorent le contexte global, ce qui conduit souvent le système à ne pas trouver d’informations pertinentes dans la base de connaissances. Par exemple, un utilisateur hypothétique pourrait poser la question suivante : « Quelles décisions ont été prises concernant les prochaines étapes à l’école Max Mustermann ? » Cet utilisateur souhaite obtenir des informations sur les délais, les étapes à venir et les accords prévus dans le cadre de la construction de l’école. Pourtant, le chunk correspondant, qui contient la réponse, peut ne pas comporter de référence explicite à l’école Max Mustermann et ne peut donc pas être correctement récupéré pour générer la réponse.

L’image montre un exemple graphique d’une requête RAG avec des segments mis en évidence.

Dans mon mémoire de master, j’ai étudié ce problème et mis en œuvre l’approche « Contextual-RAG » avec le corpus des protocoles parlementaires du groupe de recherche DisLab de l’université technique de Darmstadt. L’étape de contextualisation a lieu après la division du texte en chunks et avant leur conversion en embeddings. Chaque chunk est enrichi d’un contexte pertinent, issu d’énoncés précédents ou suivants, ou même lié à l’idée principale de l’ensemble du texte. Chaque chunk est ainsi complété par des indices sémantiques qui n’étaient pas présents auparavant mais qui peuvent désormais correspondre à une requête d’utilisateur. Cette contextualisation a été réalisée à l’aide de modèles linguistiques locaux disponibles publiquement. Les résultats permettent de conclure que l’application de Contextual-RAG à la recherche dans un corpus politique atteint jusqu’à 18 % de meilleures performances de rappel que l’utilisation de Basic-RAG. Cela signifie que davantage de résultats pertinents sont trouvés parmi les top-k réponses.

L’image montre un graphique à barres présentant les résultats de rappel et MRR de différentes approches RAG.

Les connaissances et méthodes acquises dans ce travail seront directement intégrées au logiciel d’entreprise Inno:docs. Inno:docs est un chatbot basé sur l’IA qui permet de rechercher des données d’entreprise en langage naturel et fournit des réponses factuelles. L’approche Contextual-RAG permet au système de trouver davantage de documents pertinents, puisque chaque chunk prend en compte le contexte complet du texte et n’est pas stocké isolément dans la base de données.

 

Image : Innomatik AG