HippoRAG propose une méthode de RAG avancée capable de répondre à des questions à partir d'informations dispersées dans plusieurs documents.
La méthode commence par une phase d'indexation afin d'extraire les "named entities" et des tuple de relations d'un graphe de connaissances. Par exemple, "Teddy Riner", "Judo", "Paris" sont des entités nommées (NE) et ["Teddy Riner", "est un champion de", "judo"] est une partie du graphe.
Lors de la phase de recherche, ils commencent par extraire les NE de la requête puis ils s'en servent pour parcourir le graphe à l'aide d'un algorithme de type "Page Rank". Entre autre, plus un noeud est loin du noeud de départ (une NE extraite depuis la query) et plus son score est faible.
Les résultats dépassent ceux des benchmark actuels jusqu'à 20 %.
Je trouve que la méthode de construction d'un graphe par LLM afin de s'en servir pour récupérer les informations pertinentes est quelque chose à creuser. Plus une base de connaissances augmente en taille et plus il est difficile d'extraire les connaissances pertinente simplement avec des recherches.
Tous les prompts sont donnés à la fin du papier 👌