PageIndex : Le Cadre Open‑Source de RAG Basé sur le Raisonnement

PageIndex : Le cadre open-source de RAG basé sur le raisonnement

Lorsque vous pensez à Retrieval Augmented Generation (RAG), la première image qui vient en tête est souvent une grande base de données vectorielle, un tas d'embeddings, et une recherche qui repose sur la similarité cosinus. En pratique, cette approche peut rencontrer des difficultés avec les longs documents structurés que les analystes financiers, les équipes juridiques et les chercheurs académiques rencontrent régulièrement.

Pourquoi PageIndex ?

PageIndex a été conçu pour répondre à la question : Un vector database est-il vraiment nécessaire pour une RAG efficace ? La réponse s’avère être pas du tout.

  • Sans vecteurs : au lieu de convertir chaque page ou segment en embedding, PageIndex construit un arbre hiérarchique qui reflète les sections naturelles d’un document (pensez à l’index des matières). Chaque nœud peut optionnellement contenir un résumé.
  • Pas de découpage : les pipelines traditionnels divisent les documents en fragments artificiels qui brisent souvent le contexte. PageIndex conserve les sections entières intactes, préservant la fluidité narrative.
  • Récupération semblable à un humain : en permettant au LLM de parcourir l’arbre, PageIndex simule la façon dont les experts du domaine lisent et raisonnent. Le modèle peut traverser la hiérarchie, poser des questions de clarification et revenir en arrière — se comportant davantage comme un analyste humain.
  • Explicabilité et traçabilité : chaque réponse peut être retracée jusqu’à un nœud et à une page spécifiques, offrant aux développeurs un audit clair.

Concepts de base

  1. Index d’arbre : une structure JSON où chaque nœud contient des métadonnées : titre, indices de début / fin, résumé, et nœuds enfants. L’arbre devient effectivement un « table des matières » adapté à la consommation par le LLM.
  2. Raisonnement LLM : au lieu d’une recherche par voisin le plus proche, le LLM raisonne sur l’arbre en effectuant une recherche d’arbre. Il interroge quelle branche explorer ensuite, puis sélectionne les sections pertinentes à transmettre.
  3. Configurations optionnelles : les utilisateurs peuvent contrôler le modèle, le nombre maximal de tokens par nœud, la profondeur, et la décision d’inclure les ID de nœud ou les résumés.

Installation rapide et exécution

# 1. Clonez le dépôt
git clone https://github.com/VectifyAI/PageIndex.git
cd PageIndex

# 2. Installez les dépendances
pip install -U -r requirements.txt

# 3. Configurez votre clé API OpenAI
# Créez un `.env` à la racine du dépôt
# echo "CHATGPT_API_KEY=sk-…" > .env

# 4. Générer un arbre pour un PDF
python run_pageindex.py --pdf_path /path/to/your/document.pdf

Les options facultatives vous permettent d’ajuster le processus : - --model gpt-4o : choisir le modèle - --toc-check-pages 20 : pages à scanner pour l’index des matières - --max-pages-per-node 10 : nombre de pages que chaque nœud peut contenir - --if-add-node-summary yes : inclure un court résumé pour chaque nœud

Pour les fichiers Markdown suivant les conventions d’en‑tête (#, ##, etc.), utilisez --md_path à la place.

Cas d’utilisation

Domaine Problème Comment PageIndex aide
Finance Les dépôts SEC dépassent 200 pages avec des sections imbriquées ; les embeddings négligent fréquemment les nuances. PageIndex construit un arbre qui permet à un LLM de zoomer sur des sections précises, améliorant l’exactitude de FinanceBench à 98,7 %.
Juridique La jurisprudence et les contrats exigent des citations paragraphaires précises. L’arbre conserve les plages de pages, les réponses incluent donc des références de localisation précises.
Académique Les articles de recherche comportent plusieurs sous‑sections ; la recherche par sujet est peu fiable avec les embeddings. Les résumés de nœuds guident le LLM vers la section pertinente, produisant des citations plus précises.
Manuel technique Les documents de firmware contiennent des tableaux et diagrammes. PageIndex peut indexer les images via RAG visuel sans OCR, fournissant le contexte directement depuis les images de page.

Mise en évidence du benchmark

Le système RAG embarqué de PageIndex, Mafin 2.5, a obtenu une précision de 98,7 % sur le benchmark FinanceBench — surpassant plusieurs systèmes RAG basés sur des vecteurs d’une large marge. La combinaison d’un index d’arbre propre et d’une recherche guidée par le raisonnement élimine de nombreux écueils de la récupération uniquement par similarité.

Options d’intégration

  • Auto‑hébergé : exécutez le dépôt Python localement. Fonctionne sur un ordinateur portable ou un serveur.
  • Plateforme de chat : VectifyAI propose une interface de type ChatGPT que vous pouvez essayer immédiatement.
  • MCP/API : exposez la fonctionnalité avec un code minimal et intégrez‑la dans votre propre pipeline.

Perspectives futures

  1. Récupération multimodale : combinaison de nœuds texte et image pour soutenir les images PDF sans OCR.
  2. Résumés fins : tirer parti de modèles de synthèse plus avancés pour de meilleures explications de nœud.
  3. Fonctionnalités collaboratives : permettre à plusieurs utilisateurs d’annoter les chemins de nœuds et de partager la logique de récupération.

Réflexions finales

PageIndex démontre qu'un index bien structuré, associé au raisonnement LLM, peut remplacer l'approche traditionnelle basée sur les vecteurs pour de nombreuses tâches réelles. Pour les développeurs souhaitant construire des systèmes RAG fiables et explicables sur de longs documents, le cadre propose une solution convaincante à faible effort de codage qui garde l'utilisateur impliqué — comme un expert humain réel.

Original Article: Voir l’original

Partager cet article