nouvelles

L'open source GraphRAG de Microsoft explose en popularité, l'IA générative est-elle entrée dans l'ère des graphes de connaissances ?

2024-07-15

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Rapport sur le cœur de la machine

Editeur : Panda W

Le Knowledge graph ne se retire jamais de l’environnement !

Le LLM est très puissant, mais il présente également des défauts évidents, tels que des problèmes d'hallucinations, une mauvaise interprétabilité, une incapacité à saisir l'objet du problème, des problèmes de confidentialité et de sécurité, etc. La génération augmentée par récupération (RAG) peut améliorer considérablement la qualité de la génération et l'utilité des résultats du LLM.

Au début de ce mois, Microsoft a publié GraphRAG, la solution de base de connaissances open source RAG la plus puissante. Le projet est devenu populaire immédiatement après sa mise en ligne, et le nombre d'étoiles atteint désormais 10,5 000.



  • Adresse du projet : https://github.com/microsoft/graphrag
  • Documentation officielle : https://microsoft.github.io/graphrag/

Certaines personnes disent qu'il est plus puissant qu'un RAG ordinaire :



GraphRAG utilise LLM pour générer des graphiques de connaissances, ce qui peut améliorer considérablement les performances des questions et réponses lors de l'analyse de documents sur des informations complexes, en particulier lorsqu'il s'agit de données privées.



Résultats de comparaison entre GraphRAG et RAG traditionnel

Aujourd'hui, RAG est une technique qui utilise des informations du monde réel pour améliorer les résultats du LLM et constitue une partie importante de la plupart des outils basés sur le LLM. De manière générale, RAG utilise la similarité vectorielle comme recherche, appelée Baseline RAG. Mais Baseline RAG ne fonctionne pas parfaitement dans certaines situations. Par exemple:

  • Baseline RAG a du mal à relier les points. Cela se produit lorsque répondre à une question nécessite de parcourir différentes informations via des attributs partagés pour fournir de nouvelles informations combinées ;
  • Baseline RAG fonctionne mal lorsqu'on lui demande de comprendre de manière exhaustive les concepts sémantiques résumés dans de grands ensembles de données ou même dans un seul grand document.

GraphRAG proposé par Microsoft utilise LLM pour créer un graphe de connaissances basé sur la bibliothèque de textes d'entrée. Ce graphique combine les résumés de la communauté et les résultats de l'apprentissage automatique des graphiques pour améliorer les indications au moment de la requête. GraphRAG montre des améliorations significatives dans la réponse aux deux types de questions, démontrant des performances supérieures par rapport aux méthodes précédentes sur des ensembles de données privés.

Cependant, au fur et à mesure que tout le monde comprenait mieux GraphRAG, ils ont constaté que ses principes et son contenu étaient vraiment difficiles à comprendre.



Récemment, Philip Rathle, CTO de Neo4j Company, a publié un article de blog intitulé « GraphRAG Manifesto : Adding Knowledge to Generative AI ». Rathle a présenté les principes de GraphRAG, la différence avec le RAG traditionnel, les avantages de GraphRAG et bien plus encore.

Il a déclaré : « Votre prochaine application d’IA générative utilisera probablement un graphe de connaissances. »



Philip Rathle, directeur technique de Neo4j

Lisez cet article ci-dessous.

Nous nous en rendons compte : pour faire quelque chose de vraiment significatif avec l'IA générative, vous ne pouvez pas vous fier uniquement aux LLM autorégressifs pour prendre des décisions à votre place.

Je sais ce que vous pensez : "Utilisez RAG". Ou peaufinez, ou attendez GPT-5.

Oui. Des techniques telles que la génération d’augmentation de récupération (RAG) basée sur des vecteurs et le réglage fin peuvent vous aider. Et ils résolvent assez bien certains cas d’utilisation. Mais il existe un type de cas d’utilisation qui mettra un terme à toutes ces technologies.

Pour de nombreux problèmes, la solution au RAG vectoriel (et au réglage fin) consiste essentiellement à augmenter la probabilité d’obtenir la bonne réponse. Mais aucune des deux techniques ne fournit un niveau de certitude quant à la bonne réponse. Ils manquent souvent de contexte et rendent difficile la connexion à quelque chose que vous connaissez déjà. De plus, ces outils ne fournissent pas d’indices sur les raisons pour lesquelles une décision particulière a été prise.

Revenons à 2012, lorsque Google a lancé son moteur de recherche de deuxième génération et publié un article de blog emblématique « Présentation du Knowledge Graph : des choses, pas des chaînes ». Ils ont découvert que si, en plus d'effectuer divers traitements de chaînes, ils utilisaient un graphe de connaissances pour organiser tous les éléments représentés sous forme de chaînes dans une page Web, cela pourrait conduire à une amélioration considérable de la recherche.

Aujourd’hui, une tendance similaire émerge dans le domaine de l’IA générative. De nombreux projets d’IA générative se heurtent à un mur, où la qualité de leurs résultats est limitée par le fait que la solution traite des chaînes et non des objets.

Aujourd’hui, des ingénieurs en IA et des chercheurs universitaires de pointe ont redécouvert ce que Google avait découvert autrefois : le secret pour briser ce goulot d’étranglement est le graphe de connaissances. En d’autres termes, il s’agit d’introduire des connaissances sur des choses dans une technologie textuelle basée sur des statistiques. Son fonctionnement est similaire à celui des autres RAG, sauf qu'en plus de l'indexation vectorielle, il appelle également le graphe de connaissances. C'est-à-dire : GraphRAG ! (GraphRAG = Graphique de connaissances + RAG)

Le but de cet article est de fournir une introduction complète et compréhensible à GraphRAG. La recherche montre que la création de vos données dans un graphe de connaissances et leur utilisation via RAG peuvent vous apporter plusieurs avantages puissants. De nombreuses recherches prouvent que GraphRAG peut mieux répondre à la plupart ou à la totalité des questions que vous posez LLM que RAG qui utilise uniquement des vecteurs ordinaires.

Cet avantage à lui seul suffit à favoriser grandement l’adoption de GraphRAG.

Mais cela ne s'arrête pas là : puisque les données sont visibles lors de la création d'une application, elle est également plus simple à développer.

Un troisième avantage de GraphRAG est que les humains et les machines peuvent bien comprendre les graphiques et effectuer des inférences basées sur ceux-ci. En conséquence, la création d'applications à l'aide de GraphRAG est plus simple et donne de meilleurs résultats, tout en étant plus facile à interpréter et à auditer (critique pour de nombreuses industries).

Je pense que GraphRAG remplacera le RAG vectoriel uniquement comme architecture RAG par défaut pour la plupart des cas d'utilisation. Cet article explique pourquoi.

Qu'est-ce qu'une carte ?

Nous devons d’abord clarifier ce qu’est un graphique.

Le graphique, également appelé graphique, est souvent traduit par « graphique », mais il est donc facilement confondu avec des concepts tels que image et image. Afin de faciliter la distinction, cet article utilise uniquement la méthode de traduction « 图图 ».

Le graphique ressemble probablement à ceci :



Exemple de carte

Bien que cette image soit souvent utilisée comme exemple de graphe de connaissances, sa source et son auteur ne sont plus connus.

ou ca:



Carte des relations entre les personnages de "Game of Thrones", de William Lyon

ou ca:



Plan du métro de Londres. Fait intéressant : Transport for London a récemment déployé une application de jumeau numérique basée sur des graphiques pour améliorer les capacités de réponse aux incidents et réduire les embouteillages.

En d’autres termes, une carte n’est pas un diagramme.

Ici, nous ne nous attarderons pas trop sur les problèmes de définition, en supposant que vous compreniez déjà ce qu’est une carte.

Si vous comprenez les images ci-dessus, vous pouvez probablement voir comment les données sous-jacentes du graphique de connaissances (stockées dans la base de données graphique) peuvent être interrogées et utilisées dans le cadre d'un flux de travail RAG. C'est GraphRAG.

Deux formes de présentation des connaissances : les vecteurs et les graphiques

Le cœur d'un RAG typique est la recherche vectorielle, qui consiste à trouver et à renvoyer des textes conceptuellement similaires à partir de documents écrits candidats sur la base de blocs de texte d'entrée. Ce type d'automatisation fonctionne très bien et même les recherches de base sont utiles.

Mais chaque fois que vous effectuez une recherche, vous n’avez peut-être pas réfléchi à ce qu’est un vecteur ni à la manière dont le calcul de similarité est mis en œuvre. Jetons ensuite un coup d'œil à Apple. Il présente différentes formes du point de vue humain, du point de vue vectoriel et du point de vue graphique :



Apple du point de vue humain, du point de vue vectoriel et du point de vue cartographique

Pour les humains, la représentation d’une pomme est complexe et multidimensionnelle, et ses caractéristiques ne peuvent être entièrement décrites sur papier. Ici, nous pouvons imaginer poétiquement que cette photo rouge puisse représenter une pomme sur le plan perceptuel et conceptuel.

La représentation vectorielle de cette pomme est un tableau. La magie des vecteurs est qu’ils capturent chacun l’essence du texte correspondant sous forme codée. Mais dans le contexte de RAG, les vecteurs ne sont nécessaires que lorsque vous devez déterminer dans quelle mesure un morceau de texte est similaire à un autre morceau de texte. Pour ce faire, effectuez simplement un calcul de similarité et vérifiez la correspondance. Mais si vous souhaitez comprendre la signification d’un vecteur, comprendre ce qui est représenté dans le texte et avoir un aperçu de sa relation avec le contexte plus large, alors l’utilisation de la représentation vectorielle ne vous aidera pas.

En revanche, les graphes de connaissances représentent le monde sous une forme déclarative - dans la terminologie du domaine de l'IA, c'est-à-dire symbolique. Par conséquent, les humains et les machines peuvent comprendre le graphe de connaissances et effectuer un raisonnement basé sur celui-ci. Ceci est important et sera mentionné plus tard.

De plus, vous pouvez interroger, visualiser, annoter, modifier et étendre le graphe de connaissances. Un graphe de connaissances est un modèle mondial qui peut représenter le monde dans votre domaine de travail actuel.

GraphRAG et RAG

Les deux ne sont pas en compétition. Pour RAG, les requêtes vectorielles et les requêtes graphiques sont utiles. Comme le souligne Jerry Liu, fondateur de LlamaIndex : Lorsque l'on pense à GraphRAG, il est utile d'inclure des vecteurs. Ceci est différent du "RAG vectoriel uniquement" - qui repose entièrement sur la similitude entre les incorporations de texte.

Fondamentalement, GraphRAG est une sorte de RAG, sauf que son chemin de recherche inclut le graphe de connaissances. Comme vous le verrez ci-dessous, le schéma de base de GraphRAG est très simple. Son architecture est la même que celle de RAG utilisant des vecteurs, mais inclut une couche de graphe de connaissances.

Mode GraphRAG

Un modèle commun pour GraphRAG



Comme vous pouvez le voir, une requête graphique a été déclenchée dans l'image ci-dessus. Il peut éventuellement inclure une composante de similarité vectorielle. Vous pouvez choisir de stocker le graphique et les vecteurs dans deux bases de données différentes, ou d'utiliser une base de données graphique telle que Neo4j qui prend en charge la recherche de vecteurs.

Un modèle courant d’utilisation de GraphRAG est donné ci-dessous :

1. Effectuez une recherche vectorielle ou une recherche par mot-clé pour trouver un ensemble de nœuds initiaux ;

2. Parcourez le graphique et ramenez des informations sur les nœuds pertinents ;

3. (Facultatif) Utilisez des algorithmes de classement basés sur des graphiques tels que le PageRank pour reclasser les documents

Différents cas d'utilisation entraîneront différents modèles d'utilisation. Comme toutes les directions de recherche dans le domaine de l'IA d'aujourd'hui, GraphRAG est également un domaine riche en recherche, avec de nouvelles découvertes émergeant chaque semaine.

Cycle de vie de GraphRAG

L'IA générative utilisant GraphRAG suit également le modèle de toute autre application RAG. Il y a une étape de « création de graphique » au début :



Cycle de vie de GraphRAG

Créer un graphique revient à décomposer un document et à le charger dans une base de données vectorielle. Les progrès des outils ont rendu la création de cartes assez facile. Voici trois bonnes nouvelles :

1. Les cartes sont très itératives : vous pouvez commencer avec une « carte minimale viable », puis la développer en fonction de celle-ci.

2. Une fois les données ajoutées au graphique de connaissances, elles peuvent facilement évoluer. Vous pouvez ajouter plus de types de données pour obtenir et profiter des effets du réseau de données. Vous pouvez également améliorer la qualité de vos données pour augmenter la valeur de votre application.

3. Le domaine évolue rapidement, ce qui signifie qu'à mesure que les outils deviennent plus sophistiqués, la création de cartes deviendra de plus en plus facile.

L'ajout des étapes de création de carte à l'image précédente entraînera un flux de travail comme indiqué ci-dessous :



Ajouter des étapes de création de carte

Jetons un coup d'œil aux avantages que GraphRAG peut apporter.

Pourquoi utiliser GraphRAG ?

Par rapport au RAG vectoriel uniquement, les avantages de GraphRAG sont principalement divisés en trois catégories :

1. Une plus grande précision et des réponses plus complètes (avantage en termes de temps d'exécution/production)

2. Une fois le graphe de connaissances créé, il sera plus facile de créer et de maintenir des applications RAG (avantage en termes de temps de développement)

3. Meilleures explicabilité, traçabilité et contrôle d’accès (avantages en matière de gouvernance)

Voici un aperçu approfondi de ces avantages.

1. Plus de précision et des réponses plus utiles

Le premier avantage de GraphRAG (et le plus immédiatement visible) est la meilleure qualité de ses réponses. Que ce soit dans le monde universitaire ou industriel, nous pouvons voir de nombreuses preuves étayant cette observation.

Comme cet exemple de la société de catalogue de données Data.world. Fin 2023, ils ont publié un rapport de recherche montrant que GraphRAG pouvait améliorer la précision des réponses LLM de 3 fois en moyenne sur 43 questions commerciales. Cette étude de référence fournit la preuve que les graphiques de connaissances peuvent améliorer considérablement la précision des réponses.



Le graphique de connaissances améliore la précision de la réponse LLM de 54,2 points de pourcentage, soit environ 3 fois.

Microsoft a également fourni une série de preuves, notamment un blog de recherche de février 2024 « GraphRAG : Unlocking LLM Discovery on narrative private data » et un document de recherche connexe « From Local to Global : A Graph RAG Approach to Query-Focused Summarization » 》Et des logiciels : https://github.com/microsoft/graphrag (le GraphRAG mentionné au début ci-dessus).

Parmi eux, ils ont observé les deux problèmes suivants avec le RAG de base utilisant des vecteurs :

  • Baseline RAG rend difficile la connexion des points. Afin de synthétiser différentes informations afin d'obtenir de nouvelles informations, différents fragments d'informations doivent être parcourus via des attributs partagés. À l'heure actuelle, il est difficile pour le RAG de base de connecter différents fragments d'informations.
  • Baseline RAG fonctionne mal lorsqu'on lui demande de comprendre de manière exhaustive les concepts sémantiques résumés de manière inductive sur de grandes collections de données ou même sur des documents volumineux uniques.

Microsoft a découvert : « En utilisant le graphe de connaissances généré par LLM, GraphRAG peut améliorer considérablement la partie « récupération » de RAG, en remplissant un contenu plus pertinent pour la fenêtre contextuelle, obtenant ainsi de meilleures réponses et en obtenant des sources de preuves. " Ils ont également constaté que par rapport à d'autres méthodes alternatives, GraphRAG nécessite 26 à 97 % de jetons en moins, de sorte qu'il donne non seulement de meilleures réponses, mais a également un coût inférieur et une meilleure évolutivité.

En approfondissant un peu la précision, nous savons que s’il est important que la réponse soit correcte, elle doit également être utile. Il a été constaté que GraphRAG rend non seulement les réponses plus précises, mais également plus riches, plus complètes et plus utiles.

Le récent article de LinkedIn « Génération de récupération augmentée avec des graphiques de connaissances pour la réponse aux questions du service client » est un excellent exemple de l'impact de GraphRAG sur ses applications de service client. GraphRAG a amélioré la précision et la richesse des réponses de son service client, les rendant plus utiles, et a réduit de 28,6 % le temps médian nécessaire à son équipe de service client pour résoudre chaque problème.

L'atelier Generative AI de Neo4j propose un exemple similaire. Comme indiqué ci-dessous, voici la réponse obtenue par les méthodes « vecteur + GraphRAG » et « vecteur uniquement » pour un ensemble de dépôts auprès de la SEC :



Comparaison des méthodes "vecteur uniquement" et "vecteur + GraphRAG"

Veuillez noter la différence entre « décrire les caractéristiques des entreprises susceptibles d'être touchées par la pénurie de lithium » et « énumérer les entreprises spécifiques qui peuvent être touchées ». Si vous êtes un investisseur cherchant à rééquilibrer un portefeuille en réponse aux changements du marché, ou une entreprise cherchant à réaligner sa chaîne d'approvisionnement en réponse à une catastrophe naturelle, les informations sur le côté droit du graphique ci-dessus sont certainement beaucoup plus importantes que les informations sur la gauche. Ici, les deux réponses sont exactes. Mais la réponse à droite est clairement plus utile.

L'épisode 23 de Going Meta de Jesus Barrasa donne un autre excellent exemple : commencer par une carte de mots pour travailler avec des documents juridiques.

Nous voyons également de temps à autre de nouveaux exemples venant du monde universitaire et de l’industrie. Par exemple, Charles Borderie de Lettria a donné un exemple comparatif de méthodes « vecteur uniquement » et « vecteur + GraphRAG » qui s'appuie sur un flux de travail texte-graphique basé sur LLM pour organiser 10 000 articles financiers dans un graphe de connaissances :



Méthodes de recherche uniquement par rapport aux méthodes de recherche de graphiques

On peut voir que par rapport à l'utilisation de RAG ordinaire, l'utilisation de GraphRAG peut non seulement améliorer la qualité des réponses, mais également réduire d'un tiers le nombre de jetons dans ses réponses.

Prenons un autre exemple de Writer. Ils ont récemment publié un rapport de référence RAG basé sur le framework RobustQA, qui comparait leur méthode basée sur GraphRAG avec d'autres outils similaires. Le score obtenu par GraphRAG est de 86 %, ce qui est nettement meilleur que les autres méthodes (allant de 33 % à 76 %), tout en ayant des performances de latence similaires ou meilleures.



Résultats de l'évaluation de la précision et du temps de réponse de la méthode RAG

GraphRAG prend en charge une variété d'applications d'IA générative. Les graphiques de connaissances ouvrent la voie pour rendre les résultats de l’IA générative plus précis et plus utiles.

2. Amélioration de la compréhension des données et itération plus rapide

Les graphiques de connaissances sont intuitifs, à la fois conceptuellement et visuellement. L’exploration des graphiques de connaissances conduit souvent à de nouvelles informations.

De nombreux utilisateurs de graphes de connaissances ont partagé ce résultat inattendu : une fois qu'ils ont investi dans la réalisation de leur propre graphe de connaissances, cela peut les aider à créer et à déboguer leurs propres applications d'IA générative d'une manière inattendue. Cela s'explique en partie par le fait que si vous pouvez examiner les données sous forme de graphique, vous pouvez voir que les données sous-jacentes à ces applications présentent une image vivante des données.

Les graphiques vous permettent de tracer les réponses, de trouver des données et de retracer la chaîne causale tout au long du processus.

Regardons l’exemple ci-dessus concernant la pénurie de lithium. Si vous visualisez son vecteur, vous obtiendrez quelque chose comme l'image ci-dessous, mais avec plus de lignes et de colonnes.



Visualisation vectorielle

Et si vous convertissez les données en graphique, vous pouvez les comprendre d’une manière qu’une représentation vectorielle ne peut pas comprendre.

Ce qui suit est un exemple d'un récent webinaire LlamaIndex, montrant comment ils utilisent la relation « MENTIONS » pour extraire des morceaux de mots vectorisés (graphe de vocabulaire) et LLM pour extraire un graphique d'entités (graphe de domaine) et connecter les deux capacités :



Extraire la carte de vocabulaire et la carte de domaine

(Il existe également de nombreux exemples utilisant des outils tels que Langchain, Haystack et SpringAI.)

Vous pouvez voir la riche structure des données dans ce diagramme et imaginer les nouvelles possibilités de développement et de débogage qu'il permet. Chaque élément de données a sa propre valeur, et la structure elle-même stocke et transmet une signification supplémentaire que vous pouvez utiliser pour rendre votre application plus intelligente.

Ce n'est pas seulement une visualisation. Il s’agit également de permettre à vos structures de données de transmettre et de stocker du sens. Voici la réaction d'un développeur d'une société fintech bien connue, une semaine seulement après avoir introduit les graphes de connaissances dans le flux de travail RAG :



Réaction des développeurs à GraphRAG

La réaction de ce développeur est tout à fait cohérente avec l'hypothèse du « développement piloté par les tests », qui consiste à vérifier (mais pas à faire confiance) si la réponse est correcte. Personnellement, je serais horrifié si on me demandait de donner 100 % de mon autonomie à une IA dont la prise de décision est complètement opaque. Plus précisément, même si vous n'êtes pas un partisan de l'apocalypse de l'IA, vous serez d'accord : si vous ne pouvez pas mapper les mots ou les documents liés à "Apple, Inc." à la société "Apple Corps" (qui sont deux choses complètement différentes), sera en effet d'une grande valeur. Étant donné que ce sont en fin de compte les données qui déterminent les décisions génératives en matière d’IA, il est sans doute plus essentiel d’évaluer et de garantir l’exactitude des données.

3. Gouvernance : explicabilité, sécurité et plus encore

Plus l’impact d’une décision d’IA générative est grand, plus vous devez convaincre les personnes qui sont finalement responsables si la décision tourne mal. Cela implique généralement un audit de chaque décision. Cela nécessite un enregistrement fiable et reproductible des bonnes décisions. Mais ce n'est pas assez. Lorsque vous adoptez ou abandonnez une décision, vous devez également en expliquer les raisons.

LLM lui-même ne le fait pas bien. Oui, vous pouvez vous référer à la documentation utilisée pour prendre cette décision. Mais ces documents n’expliquent pas la décision elle-même – sans compter que c’est LLM qui a inventé les sources. Les graphiques de connaissances se situent à un tout autre niveau, rendant la logique de raisonnement de l’IA générative plus claire et facilitant l’interprétation des entrées.

Continuons avec l'exemple ci-dessus : Charles de Lettria a chargé des entités extraites de 10 000 articles financiers dans un graphe de connaissances et a utilisé un LLM pour exécuter GraphRAG. Nous voyons que cela apporte de meilleures réponses. Jetons un coup d'œil aux données :



Chargez les entités extraites de 10 000 articles financiers dans le graphe de connaissances

Tout d’abord, considérez vos données sous forme de graphique. De plus, nous pouvons parcourir et interroger les données, puis les réviser et les mettre à jour à tout moment. L'avantage de la gouvernance est qu'il devient beaucoup plus simple de visualiser et d'auditer le « modèle mondial » de ces données. L’utilisation d’un graphique augmente la probabilité que la personne responsable en fin de compte comprenne le raisonnement derrière la décision plutôt que l’utilisation d’une version vectorielle des mêmes données.

Lorsqu'il s'agit de garantir la qualité, si vous pouvez placer vos données dans un graphe de connaissances, il sera plus facile de trouver les erreurs et les surprises et de les remonter jusqu'à leur source. Vous pouvez également obtenir des informations de provenance et de confiance dans le graphique, qui peuvent ensuite être utilisées dans des calculs et des interprétations. Vous ne pouvez tout simplement pas faire cela avec une version uniquement vectorielle des mêmes données, et comme nous l'avons vu précédemment, les données vectorisées sont difficiles à comprendre pour les personnes moyennes (et même non moyennes).

Les graphiques de connaissances peuvent également améliorer considérablement la sécurité et la confidentialité.

La sécurité et la confidentialité ne sont souvent pas très importantes lors de la construction d’un prototype, mais elles sont essentielles si l’on veut l’intégrer à un produit. Dans les secteurs réglementés tels que la banque ou la santé, l'accès aux données de tout employé dépend de son titre de poste.

Qu'il s'agisse d'un LLM ou d'une base de données vectorielle, il n'existe aucun bon moyen de limiter la portée de l'accès aux données. Les graphes de connaissances peuvent constituer une bonne solution, en utilisant le contrôle des autorisations pour réguler la portée des bases de données auxquelles les participants peuvent accéder, les empêchant ainsi de voir les données qu'ils ne sont pas autorisés à voir. Ce qui suit est une politique de sécurité simple qui peut implémenter un contrôle précis des autorisations dans le graphe de connaissances :



Une stratégie de sécurité simple qui peut être implémentée dans des graphes de connaissances

Créer un graphe de connaissances

Que faut-il pour construire un graphe de connaissances ? La première étape consiste à comprendre les deux graphiques les plus pertinents pour les applications d’IA générative.

Le graphique de domaine représente le modèle mondial pertinent pour l'application actuelle. Voici un exemple simple :



Carte du domaine

Un graphe lexical est un graphe de la structure du document. Le graphique de vocabulaire le plus basique se compose de nœuds composés de morceaux de mots :



carte de vocabulaire

Les gens l'étendent souvent pour inclure des relations entre des morceaux, des objets de document (tels que des tableaux), des chapitres, des paragraphes, des numéros de page, des noms ou des numéros de documents, des collections, des sources, etc. Vous pouvez également combiner des cartes de domaine et des cartes de vocabulaire, comme indiqué ci-dessous :



Combinez la couche de domaine et la couche de vocabulaire

La création d'une carte de vocabulaire est très simple, il s'agit principalement d'une simple analyse et d'un regroupement. Quant à la carte de domaine, il existe différents chemins de création selon la source des données (à partir de sources de données structurées, de sources de données non structurées, ou les deux). Heureusement, les outils permettant de créer des graphiques de connaissances à partir de sources de données non structurées se développent rapidement.

Par exemple, le nouveau Knowledge Graph Builder de Neo4j peut créer automatiquement des graphiques de connaissances à l'aide de documents PDF, de pages Web, de vidéos YouTube et d'articles Wikipédia. L'ensemble du processus est aussi simple que quelques clics sur un bouton, et vous pouvez visualiser et interroger les cartes de domaine et de vocabulaire du texte que vous saisissez. Cet outil est très puissant et intéressant, et peut abaisser considérablement le seuil de création de graphes de connaissances.

Quant aux données structurées (telles que les données structurées que votre entreprise stocke sur les clients, les produits, les emplacements géographiques, etc.), elles peuvent être directement mappées dans un graphe de connaissances. Par exemple, pour les données structurées, qui sont le plus souvent stockées dans des bases de données relationnelles, certains outils standards peuvent être utilisés pour cartographier les relations dans des graphiques basés sur des règles éprouvées et fiables.

Utiliser le graphique de connaissances

Une fois que vous avez un graphe de connaissances, vous pouvez créer GraphRAG. Il existe de nombreux frameworks parmi lesquels choisir, tels que LlamaIndex Property Graph Index, Langchain intégré Neo4j et la version intégrée Haystack. Ce domaine se développe rapidement, mais désormais la méthode de programmation devient très simple.

Il en va de même pour la création de graphiques. Des outils tels que Neo4j Importer (qui peut importer et mapper des données tabulaires dans des graphiques via une interface graphique) et Neo4j Knowledge Graph Builder susmentionné sont désormais apparus. La figure ci-dessous résume les étapes de création d'un graphe de connaissances.



Créez automatiquement des graphiques de connaissances pour l'IA générative

L’utilisation de graphiques de connaissances peut également mapper des questions en langage humain dans des requêtes de bases de données graphiques. Neo4j a publié un outil open source, NeoConverse, qui permet d'utiliser le langage naturel pour interroger des graphiques de connaissances : https://neo4j.com/labs/genai-ecosystem/neoconverse/

Même s’il faut un certain apprentissage pour commencer à utiliser des graphiques, la bonne nouvelle est qu’à mesure que les outils évoluent, cela devient plus facile.

Résumé : GraphRAG est l'avenir inévitable de RAG

Les compétences informatiques et linguistiques inhérentes à LLM, combinées à un RAG vectoriel, peuvent conduire à de très bons résultats. Afin d'obtenir de bons résultats de manière stable, il est nécessaire d'aller au-delà du niveau des chaînes et de construire un modèle mondial au-dessus du modèle mot. De même, Google a constaté que pour maîtriser la recherche, il devait aller au-delà de la simple analyse de texte et cartographier les relations entre les éléments représentés par les chaînes. Nous commençons à voir le même schéma émerger dans le monde de l’IA. Ce mode est GraphRAG.

La courbe de développement de la technologie est en forme de S : lorsqu'une technologie atteint son apogée, une autre technologie favorisera le progrès et dépassera la première. À mesure que l'IA générative se développe, les exigences en matière d'applications associées augmenteront également - des réponses de haute qualité à l'explicabilité en passant par le contrôle précis des droits d'accès aux données, de la confidentialité et de la sécurité, la valeur des graphiques de connaissances augmentera également.



L’évolution de l’IA générative

Votre prochaine application d’IA générative utilisera probablement un graphe de connaissances.

Lien de référence : https://neo4j.com/blog/graphrag-manifesto/