.jpeg)
Louis Graffeuil
14/5/2024
•
11 min
L’objectif de l’édition : créer une interface permettant de poser n’importe quelle question très technique sur un sujet précis (l’investissement immobilier dans l’exemple) pour avoir une réponse ultra-complète.
Pour créer votre propre GPT boostée par vos données, on va utiliser la technique de l’embedding knowledge base.
Pour rappel, une base de connaissance permet aux équipes de trouver facilement une information sur un sujet donné. Dans notre exemple, je prends l’exemple d’une entreprise qui propose énormément de produits (plus d’une cinquantaine), très difficile de tous les connaitre, surtout quand ces derniers sont amenés à évoluer.
Pourtant, on a parfois des questions précises sur certains produits. C’est particulièrement difficile pour de nouveaux arrivés d’avoir les connaissances suffisantes sur ces produits, tout en apportant une réponse au client.
Tout serait largement simplifié avec un GPT incluant votre base de connaissance spécialisée sur les produits de l’entreprise.
Pour rendre l’IA plus intelligente sur votre demande, on utilise le knowledge base embedding.
Les IA sont entrainées sur une grande quantité de textes, toutes ces connaissances sont implicites et non structurées. Si on demandait à ces modèles la capitale de la France, le modèle devrait faire une succession de recherches pour déterminer que la réponse est Paris.
Les modèles ont donc intégré des bases de connaissances, c’est comme des "encyclopédies" informatiques, où chaque information est stockée de manière structurée et reliée. C’est le cas de site comme Wikidata, la base relie “Paris” aux informations “capitale de la France” + toutes les caractéristiques liées à Paris.
Le knowledge base embedding consiste à intégrer ces informations structurées dans les représentations apprises par l'IA. Et la bonne nouvelle, c’est qu’on peut nous aussi lui apporter de la donnée structurée.
Le knowledge base embedding est un mix entre :
C'est l'une des clés pour créer des IA plus fiables, capables de raisonnements complexes et de dialogues naturels. Cette techniques de knowledge base embedding révolutionnent la recherche d'information !
Petit schéma qui résume cette approche en 3 phases :
Pour créer notre base de connaissance à injecter, il nous faut structurer la donnée. J’ai sous la main une base de données qui concentre une grande information sur des produits financiers en accès libre. (plus de 70 produits)
Je vais pouvoir construire un CSV avec toutes ces données et l’ajouter dans la partie data d’un outil comme [Relevance.ai]. Grâce à cet outil, je vais pouvoir transformer mon CSV en une base de données vectorielles et qui sera injecté ensuite dans le LLM.
Pour rappel, la base de données vectorielles permet de stocker et rechercher des données basées sur leur similarité. C’est de cette manière que l’IA réussit à trouver des informations pertinentes en lien avec la demande utilisateur.
C’est un peu comme si chaque information de notre base de données est convertie en un code-barres unique. Le principe de la vectorisation transforme chaque donnée en un vecteur, une sorte d'empreinte numérique. Tous ces vecteurs sont ensuite rangés dans une grande bibliothèque, la fameuse base de données vectorielles. Quand on lance une requête, l'IA scanne tous les code-barres pour dénicher en un éclair ceux qui ressemblent le plus à notre demande. Elle renvoie les informations correspondantes de manière ultra pertinente.
Exemple du processus de vectorisation qui va ensuite stocker la donnée dans une base de données vectorielle structurée :
Bref, en gros ce travail n’est pas à faire avec un outil comme Relevance.ai et ça nous arrange bien !
Si vous voulez faire des tests et créer votre propre base de connaissance, vous pouvez retrouver des datasets sur Kaggle ou Hugging-face sur des sujets très pointus.
Un exemple de datasets de 34 000 lignes sur des fiches couvrant l'intégralité du cursus de médicines (avec des sujets comme l'anatomie, la physiologie, la pathologie, la pharmacologie, ..)
Une fois la base de connaissance prête, on va pouvoir l’exploiter dans une interface.
On a ajouté les connaissances produits en base sur Relevance.ai.
On crée un prompt en lien avec notre besoin et l’outil lui injecte les données les plus pertinentes par rapport à la question (input de l’utilisateur).
Au final, le process ressemble à ces étapes :
Avec la particularité qu’une partie de notre base d’informations est partagée aux modèles pour compléter sa réponse.
Voici une démo de l’interface :
Je demande une explication sur un produit financier présent dans la base et j’ai directement les informations pertinentes sur le produit.
Un vrai gain de temps pour un conseiller financier par exemple !
Pour vous montrer la différence du résultat, voici le résultat que l’on obtient sur une demande
L’outil que vous avez crée est accessible depuis un lien partageable sans aucune connexion, vous pouvez le partager avec votre équipe.
Le succès d’un tel projet réside dans la qualité des données (comme c’est souvent le cas en IA). Il est important de s’assurer que les données sont fiables, complètes et bien formatées. Cela demande du temps.
La plupart des connaissances sont souvent stockées dans la tête des opérateurs / commerciaux / .. et même quand c’est mis par écrit, le format change entre des Google Docs, notions, captures d’écrans, … et personne ne sait si la donnée est à jour !
Le knowledge base embedding reste un formidable exemple d’utilisation de l’IA, facilement implémentable pour une entreprise pour exploiter ses propres données. Cette technique permet d’enrichir un modèle avec des connaissances explicites.
Les réponses sont plus précises en apportant des données plus personnalisées sur des marchés spécifiques. Cela améliore drastiquement l’efficacité des équipes et la rapidité d’accès à l’information.
D’autres exemples concrets d’utilisations de la knowledge base embedding :