IA générative – GraphRAG x RAG — Science et données

2024-07-21 18:09:57

Ceci est le deuxième article de la série sur GraphRAG. Accédez au premier article en cliquant ici.

Deux types de représentation des connaissances – vecteurs et graphiques

Le cœur du RAG typique – la recherche vectorielle – traite un morceau de texte en entrée et renvoie un texte conceptuellement similaire à partir d’une base de données vectorielles. C’est agréablement automatique et très utile pour une variété de tâches.

Ce à quoi vous ne pensez peut-être pas à chaque fois que vous faites cela, c’est à quoi ressemble un vecteur ou à quoi fait le calcul de similarité. Regardons une pomme en termes humains, vectoriels et graphiques :

La représentation humaine est complexe et multidimensionnelle et n’est pas quelque chose que nous pouvons entièrement capturer sur papier. Accordons une certaine licence poétique et imaginons que cette image magnifiquement alléchante représente une pomme dans toute sa splendeur perceptuelle et conceptuelle.

La représentation vectorielle de la pomme est une matrice de nombres – une construction du domaine statistique. La magie des vecteurs est que chacun d’eux capture l’essence du texte correspondant sous forme codée. Cependant, dans un contexte RAG, ils ne sont utiles que lorsque vous devez identifier la similitude d’une poignée de mots avec une autre.

Pour ce faire, il suffit d’exécuter un calcul de similarité (également appelé calcul vectoriel) et d’obtenir une correspondance.

Cependant, si vous voulez comprendre ce qu’il y a à l’intérieur d’un vecteur, comprendre ce qui l’entoure, comprendre les éléments représentés dans votre texte ou comprendre comment l’un d’entre eux s’intègre dans un contexte plus large, alors les vecteurs en tant que représentation ne sont tout simplement pas capables de le faire.

Les graphes de connaissances, en revanche, sont des représentations déclaratives – ou, en termes d’IA, symboliques – du monde. En conséquence, les humains et les machines peuvent comprendre et raisonner sur la base de graphiques de connaissances. De plus, vous pouvez interroger, visualiser, annoter, corriger et augmenter les graphiques de connaissances. Un graphique de connaissances représente votre modèle – la partie du monde qui représente le domaine avec lequel vous travaillez.

GraphRAG x RAG

Ce n’est pas une compétition ????.

Les requêtes vectorielles et graphiques ajoutent de la valeur à RAG. Comme l’a souligné Jerry Liu, fondateur de LlamaIndex, il est utile de considérer GraphRAG comme des graphiques comprenant des vecteurs. Ceci est différent du « RAG vectoriel uniquement », qui est strictement basé sur la similitude avec les intégrations basées sur des mots dans le texte.

Fondamentalement, GraphRAG est RAG, où le chemin de récupération comprend un graphe de connaissances. Comme vous pouvez le voir ci-dessous, le modèle principal de GraphRAG est simple. C’est fondamentalement la même architecture que RAG avec des vecteurs, mais avec un graphe de connaissances inséré dans l’image.

Norme GraphRAGarchitecture graphiqueDans l’image ci-dessus, vous voyez une requête basée sur un graphique déclenchée. Eventuellement, il peut inclure une composante de similarité vectorielle. Vous pouvez choisir de stocker vos graphiques et vecteurs séparément dans deux bases de données distinctes, ou d’utiliser une base de données de graphiques comme Neo4j, qui prend également en charge la recherche de vecteurs.

L’un des modèles courants d’utilisation de GraphRAG est le suivant :

  • Effectuez une recherche vectorielle ou par mot-clé pour trouver un ensemble initial de nœuds.
  • Parcourez le graphique pour ramener des informations sur les nœuds associés.
  • Vous pouvez éventuellement reclasser les documents à l’aide d’un algorithme de classement basé sur des graphiques tel que PageRank.

Les modèles varient selon les cas d’utilisation, et comme tout ce qui concerne l’intelligence artificielle aujourd’hui, GraphRAG s’avère être un espace riche, avec de nouvelles découvertes émergeant chaque semaine.

Cycle de vie de GraphRAG

Une application d’IA générative qui utilise GraphRAG suit le même modèle que n’importe quelle application RAG, avec une étape supplémentaire de « création de graphique » au début :

cycle de vie de graphrag

Créer un graphique revient à regrouper des documents et à les charger dans une base de données vectorielle. Les progrès des outils ont rendu la création de graphiques littéralement un jeu d’enfant. La bonne nouvelle est triple :

1- Les graphiques sont hautement itératifs – vous pouvez commencer avec un « graphique minimum viable » et développer à partir de là.

2- Une fois vos données dans un knowledge graph, il est très simple de les faire évoluer. Vous pouvez ajouter davantage de types de données pour bénéficier des avantages des effets du réseau de données. Vous pouvez également améliorer la qualité des données pour augmenter la valeur des résultats de votre candidature.

3- Cette partie de la stack s’améliore rapidement, ce qui signifie que la création de graphiques ne fera que devenir plus facile à mesure que les outils deviendront plus sophistiqués.

L’ajout de l’étape de création du graphique à l’image précédente fournit un pipeline similaire à celui-ci :

création de graphiqueNous parlerons des avantages de GraphRAG dans le prochain article.

David Matos

Les références:

IA générative et LLM pour le traitement du langage naturel

Le manifeste GraphRAG : ajouter des connaissances à GenAI

GraphRAG : une nouvelle approche pour les questions-réponses sur les données privées



#générative #GraphRAG #RAG #Science #données
1721634567

Facebook
Twitter
LinkedIn
Pinterest

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.