Skip to main content
PromptQuorum
Accueil/LLM locaux avancés/LlamaIndex : le framework RAG code-first (pas un constructeur visuel) — guide 2026
RAG & Document Chat

LlamaIndex : le framework RAG code-first (pas un constructeur visuel) — guide 2026

·12 min de lecture·Par Hans Kuepper · Fondateur de PromptQuorum, outil de dispatch multi-modèle · PromptQuorum

LlamaIndex est un framework Python gratuit et open source (licence MIT) qui connecte les grands modèles de langage à vos propres données via indexation, recherche et moteurs de requête — une bibliothèque de code à importer, pas un constructeur visuel glisser-déposer.

LlamaIndex est une bibliothèque Python que l'on importe et sur laquelle on écrit du code, pas un canevas où l'on glisse des blocs. Ce guide explique ce qu'il fait réellement, ce qui est gratuit ou payant, avec un exemple de code fonctionnel.

LlamaIndex : le framework RAG code-first (pas un constructeur visuel) — guide 2026

Points clés

  • Licence MIT — le framework Python principal est gratuit, sous licence permissive, et activement maintenu
  • Briques essentielles : Documents/Nodes alimentent un Index (souvent un VectorStoreIndex), un Retriever récupère les nœuds pertinents, un Query Engine répond à la question
  • Gratuit à installer et auto-héberger : pip install llama-index, avec votre propre fournisseur LLM et votre propre base vectorielle
  • LlamaCloud est une plateforme distincte, payante, à l'usage, pour l'analyse automatisée de documents (LlamaParse) et l'extraction — non requise pour utiliser le framework open source
  • Code-first : aucun canevas visuel — c'est une bibliothèque Python que vous importez et sur laquelle vous écrivez du code
  • Le SDK TypeScript, LlamaIndex.TS, a été archivé et marqué obsolète le 30 avril 2026 — Python est l'implémentation activement maintenue
  • Idéal pour : les développeurs construisant des systèmes RAG en production qui veulent un contrôle programmatique sur l'indexation et la logique de recherche

📍 En une phrase

LlamaIndex est un framework Python gratuit et open source (MIT) qui connecte les grands modèles de langage à vos propres données via indexation, recherche et moteurs de requête — conçu pour les développeurs qui écrivent du code, pas pour les constructeurs visuels no-code.

💬 En termes simples

Plutôt que de glisser des blocs sur un canevas, LlamaIndex vous donne des classes Python : charger vos documents, construire un index, puis l'interroger — chaque étape est du code que vous pouvez versionner, tester et personnaliser.

📌Note: Si vous voulez construire un pipeline RAG en connectant des blocs plutôt qu'en écrivant du Python, LlamaIndex n'est pas le bon outil — regardez plutôt un constructeur visuel comme Flowise, Langflow ou Dify.

Qu'est-ce que LlamaIndex ?

LlamaIndex (github.com/run-llama/llama_index) est un framework Python open source, sous licence MIT, pour construire des applications qui connectent les grands modèles de langage à vos propres données. C'est d'abord un framework de données : la bibliothèque est organisée autour de l'ingestion de documents, de leur structuration pour la recherche, et de la réponse aux questions posées à leur sujet — pas autour d'une orchestration d'agents généraliste.

  • Connecteurs de données : SimpleDirectoryReader pour les fichiers locaux, plus 300+ intégrations communautaires et officielles sur LlamaHub pour les PDF, API, bases SQL et autres sources
  • Index : structures qui organisent les données ingérées pour la recherche par un LLM — VectorStoreIndex (recherche sémantique par embeddings) est le plus courant
  • Retrievers : récupèrent les nœuds pertinents pour une requête à partir d'un index
  • Query Engines : combinent un retriever et un appel LLM pour répondre à une question sur vos données — le cœur de la boucle de génération augmentée par la recherche (RAG)
  • Workflows : un système événementiel pour orchestrer des agents et pipelines multi-étapes au-delà d'une simple requête
  • Le dépôt Python principal affiche plus de 50 000 étoiles GitHub

Quelles sont les briques essentielles de LlamaIndex ?

LlamaIndex organise un pipeline RAG en cinq briques : Document/Node, Index, Retriever, Query Engine et Workflow. Chacune correspond à une étape pour transformer des fichiers bruts en un LLM capable de répondre à des questions à leur sujet.

Document / Node

Ce qu'il fait:
Donnée brute, puis fragments structurés qui en sont issus

Index

Ce qu'il fait:
Organise les nœuds pour la recherche (ex. VectorStoreIndex)

Retriever

Ce qu'il fait:
Récupère les nœuds pertinents pour une requête

Query Engine

Ce qu'il fait:
Combine recherche + appel LLM pour répondre

Workflow

Ce qu'il fait:
Orchestration événementielle d'agents multi-étapes

En quoi LlamaIndex diffère-t-il de LangChain et des constructeurs visuels ?

LlamaIndex est d'abord un framework de données, LangChain un framework d'orchestration généraliste, et des outils comme Flowise, Langflow et Dify sont des constructeurs visuels no-code — les trois résolvent des problèmes différents, même s'ils se recoupent sur le RAG. Le choix entre eux dépend de ce que vous privilégiez, pas de savoir lequel est « meilleur ».

LlamaIndex est-il gratuit, ou faut-il payer pour LlamaCloud ?

Le framework principal de LlamaIndex est gratuit à vie sous licence MIT — vous pouvez l'auto-héberger avec votre propre LLM et votre propre base vectorielle, sans coût pour LlamaIndex. LlamaCloud, une plateforme hébergée distincte pour l'analyse et l'extraction automatisée de documents (LlamaParse, LlamaExtract), facture des crédits à l'usage en plus : 1,25 $ pour 1 000 crédits, l'analyse coûtant 1 à 45 crédits par page et l'extraction 5 à 60 crédits par page selon le niveau choisi.

  • Framework open source (pip install llama-index) : gratuit, sous licence MIT, auto-hébergé — aucun compte ni crédit requis
  • LlamaCloud / LlamaParse : analyse de documents payante, facturée au crédit, pour les PDF à mise en page complexe, documents scannés, tableaux et graphiques
  • Un compte LlamaCloud n'est pas nécessaire pour construire ou exécuter un pipeline RAG avec le framework open source — SimpleDirectoryReader et d'autres chargeurs gratuits couvrent le texte brut, le Markdown et les PDF standards
  • LlamaCloud devient pertinent quand les documents sont assez complexes (mises en page multi-colonnes, tableaux intégrés, écriture manuscrite) pour qu'un analyseur gratuit produise des fragments de mauvaise qualité

Comment construire un pipeline RAG minimal avec LlamaIndex ?

Un pipeline RAG fonctionnel avec LlamaIndex tient en cinq lignes de Python : charger les documents, construire un index, créer un moteur de requête, et l'interroger. Cet exemple utilise la base vectorielle en mémoire par défaut et un LLM compatible OpenAI ; pour un fournisseur local (Ollama, par exemple), installez son paquet d'intégration et définissez Settings.llm avant de construire l'index.

  1. 1
    Installer le framework : pip install llama-index (ajoutez un paquet fournisseur comme llama-index-llms-ollama pour utiliser un modèle local au lieu d'une API hébergée).
  2. 2
    Définir vos identifiants de fournisseur LLM — par exemple export OPENAI_API_KEY=... — ou configurer Settings.llm vers un fournisseur local avant l'étape suivante.
  3. 3
    Placer vos fichiers source dans un dossier (par exemple data/) et les charger : documents = SimpleDirectoryReader("data").load_data().
  4. 4
    Construire un index à partir des documents chargés : index = VectorStoreIndex.from_documents(documents). Cela découpe chaque document en Nodes et les embedde.
  5. 5
    Créer un moteur de requête à partir de l'index : query_engine = index.as_query_engine().
  6. 6
    Interroger vos données et afficher la réponse : response = query_engine.query("Votre question ici"); print(response).
python
from llama_index.core import VectorStoreIndex, SimpleDirectoryReader

# Load documents from a folder
documents = SimpleDirectoryReader("data").load_data()

# Build an index from documents
index = VectorStoreIndex.from_documents(documents)

# Create a query engine
query_engine = index.as_query_engine()

# Query your data
response = query_engine.query("Your question here")
print(response)

Cet index est-il reconstruit à chaque exécution du script ?

Oui, par défaut. Pour tout usage au-delà d'un script ponctuel, appelez index.storage_context.persist() après la construction de l'index, puis rechargez-le avec load_index_from_storage() lors des exécutions suivantes au lieu de ré-embedder chaque document à chaque fois.

Puis-je utiliser un LLM et une base vectorielle locaux au lieu d'OpenAI ?

Oui. Installez le paquet d'intégration correspondant (par exemple llama-index-llms-ollama pour un modèle local, ou un paquet de base vectorielle comme llama-index-vector-stores-chroma), puis définissez Settings.llm et Settings.embed_model, ou passez la base vectorielle à VectorStoreIndex.from_documents(), avant d'exécuter le même code de moteur de requête.

La version TypeScript de LlamaIndex est-elle encore maintenue ?

Non. LlamaIndex.TS (run-llama/LlamaIndexTS sur GitHub) a été archivé par ses mainteneurs et marqué obsolète le 30 avril 2026. La note du dépôt lui-même indique que le projet « is deprecated and no longer maintained » et redirige les utilisateurs vers la documentation LlamaCloud/LlamaParse plutôt que vers le SDK TypeScript.

  • Le framework Python (llama_index) est l'implémentation activement maintenue — cet article couvre cette version
  • Les projets TypeScript existants basés sur LlamaIndex.TS continueront de fonctionner, mais ne recevront plus de mises à jour, corrections de bugs ni correctifs de sécurité
  • Pour un nouveau projet TypeScript ou JavaScript, évaluez LangChain.js (activement maintenu, sous licence MIT) plutôt que de démarrer sur une bibliothèque archivée

Pour qui LlamaIndex est-il fait ?

LlamaIndex occupe une position spécifique dans le paysage des outils RAG : les développeurs qui veulent un contrôle au niveau du code sur l'indexation et la recherche, pas le chemin le plus rapide vers un prototype visuel.

LlamaIndex vs. alternatives

Le bon choix dépend de si vous voulez un contrôle au niveau du code (LlamaIndex, LangChain, Haystack) ou un canevas visuel (Flowise et outils similaires).

OutilInterfaceLicenceIdéal pourMaintenance
LlamaIndexCode PythonMITPipelines RAG riches en données, sur mesureActive
LangChainCode Python / JSMITOrchestration LLM généralisteActive
HaystackCode PythonApache 2.0Recherche d'entreprise + pipelines RAGActive
FlowiseVisuel, glisser-déposerApache 2.0Prototypage no-code (non maintenu)Archivé / aucune

Erreurs fréquentes lors de l'évaluation de LlamaIndex

Ces erreurs viennent du fait de traiter LlamaIndex comme une catégorie d'outil différente de ce qu'il est réellement.

Questions fréquentes

LlamaIndex est-il gratuit ?

Oui. Le framework Python principal est open source et gratuit sous licence MIT. LlamaCloud, une plateforme hébergée distincte pour l'analyse et l'extraction de documents, facture des crédits à l'usage (1,25 $ pour 1 000 crédits), mais elle est optionnelle et non requise pour construire ou exécuter un pipeline RAG.

Sous quelle licence LlamaIndex est-il publié ?

Licence MIT, à la fois pour le framework Python (llama_index) et, tant qu'il était maintenu, pour le SDK TypeScript (LlamaIndex.TS). MIT autorise l'usage commercial, la modification et la redistribution.

En quoi LlamaIndex diffère-t-il de LangChain ?

LlamaIndex est un framework de données construit spécifiquement autour de l'indexation et de la recherche — Documents, Nodes, Index, Retrievers et Query Engines. LangChain est un framework d'orchestration généraliste couvrant chains, agents et appel d'outils, où la recherche n'est qu'une capacité parmi d'autres. Les deux sont sous licence MIT, Python-first, et activement maintenus ; de nombreux systèmes en production utilisent les deux ensemble.

LlamaIndex est-il un constructeur visuel no-code ?

Non. LlamaIndex est une bibliothèque Python (et anciennement TypeScript) que vous importez et sur laquelle vous écrivez du code — il n'y a pas de canevas glisser-déposer. Pour une approche visuelle et no-code du RAG ou des pipelines d'agents, évaluez plutôt Flowise, Langflow ou Dify.

Qu'est-ce que LlamaCloud, et en ai-je besoin ?

LlamaCloud est une plateforme distincte, payante et à l'usage, de la même entreprise, proposant LlamaParse (analyse de documents) et LlamaExtract (extraction structurée) pour les documents complexes. Elle n'est pas nécessaire pour utiliser le framework open source LlamaIndex — elle devient utile seulement quand les chargeurs de documents gratuits produisent de mauvais résultats sur des PDF complexes, des pages scannées ou des tableaux denses.

La version TypeScript de LlamaIndex est-elle encore maintenue ?

Non. LlamaIndex.TS a été archivé par ses mainteneurs et marqué obsolète le 30 avril 2026. Le framework Python reste l'implémentation activement maintenue. Pour un nouveau projet TypeScript/JavaScript, évaluez LangChain.js.

Qu'est-ce qu'un Query Engine dans LlamaIndex ?

Un Query Engine combine un Retriever et un appel LLM en un seul appel de méthode. Appeler index.as_query_engine().query("votre question") récupère les nœuds pertinents dans l'index, construit un prompt qui les contient, et renvoie la réponse du modèle — le cœur de la boucle de génération augmentée par la recherche (RAG).

Combien d'intégrations LlamaIndex prend-il en charge ?

LlamaHub héberge plus de 300 paquets d'intégration communautaires et officiels couvrant des chargeurs de données (PDF, API, bases SQL et plus), des fournisseurs LLM et des bases vectorielles, en plus du SimpleDirectoryReader intégré pour les fichiers locaux.

Puis-je utiliser un LLM local avec LlamaIndex au lieu d'une API cloud ?

Oui. Installez l'intégration fournisseur correspondante (par exemple llama-index-llms-ollama pour Ollama), puis définissez-la comme défaut via Settings.llm avant de construire votre index — le reste du pipeline Document/Index/Retriever/Query Engine fonctionne de la même façon quel que soit le fournisseur LLM utilisé.

Dois-je écrire du Python pour utiliser LlamaIndex ?

Oui, pour la version actuellement maintenue. LlamaIndex est un framework code-first sans interface visuelle. Les non-développeurs ou les équipes souhaitant une approche no-code devraient plutôt évaluer un constructeur visuel comme Flowise, Langflow ou Dify.

Sources

← Retour aux LLM locaux avancés