Aller au contenu principal
Expert Cybersécurité & IAv9.0
Centres de ressources conformité
Besoin d'un accompagnement expert ?
Devis personnalisé sous 24h — audit, conformité, incident
Checklists Sécurité — Audit & Durcissement
Formats disponibles
📄 PDF 📊 Excel 🌐 Web

11 checklists professionnelles couvrant 2 200+ points de contrôle. Téléchargement gratuit, aucune inscription.

LlamaIndex

ia

Définition

LlamaIndex (anciennement GPT Index) est un framework open-source Python/TypeScript spécialisé dans la construction de pipelines d'indexation et de retrieval pour connecter des LLMs à des données externes. Fondé par Jerry Liu en 2022, il s'est positionné comme l'alternative à LangChain pour les use-cases centrés sur la gestion de données et le RAG avancé, avec une approche plus structurée et orientée données. LlamaIndex fournit un écosystème complet pour le RAG : des Document Loaders (100+ connecteurs : PDF, Notion, Confluence, GitHub, bases de données, APIs), des Node Parsers (découpage intelligent de documents en nodes/chunks), des Index variés (VectorStoreIndex, KnowledgeGraphIndex, SummaryIndex), des Retrievers modulaires (dense, sparse, hybrid), et des Response Synthesizers pour la génération finale. L'abstraction centrale de LlamaIndex est le Node : une unité d'information avec métadonnées, relations et embeddings. Les nodes peuvent être organisés en graphes de connaissance, en hiérarchies (avec des nodes "summary" de plus haut niveau pointant vers les chunks détaillés), ou en structures plates pour le retrieval vectoriel standard. LlamaIndex excelle dans les pipelines RAG complexes : RAG hiérarchique (summary nodes + detail nodes), agentic RAG (agents qui décident quelle source consulter), RAG sur code (parsing intelligent de repositories GitHub), et knowledge graph RAG (GraphRAG via Neo4j ou NeptunDB). Pour les entreprises, LlamaIndex propose LlamaCloud (plateforme managée d'indexation) et LlamaHub (registre de composants communautaires). L'écosystème LlamaParse est particulièrement apprécié pour le parsing avancé de PDFs complexes (tableaux, formules, images) via une API cloud dédiée.

Pipeline RAG LlamaIndex

from llama_index.core import VectorStoreIndex, SimpleDirectoryReader
from llama_index.llms.openai import OpenAI
from llama_index.embeddings.openai import OpenAIEmbedding
from llama_index.core import Settings

# Configuration globale
Settings.llm = OpenAI(model="gpt-4o-mini")
Settings.embed_model = OpenAIEmbedding(model="text-embedding-3-small")
Settings.chunk_size = 1024
Settings.chunk_overlap = 200

# Ingestion et indexation
documents = SimpleDirectoryReader("./docs").load_data()
index = VectorStoreIndex.from_documents(documents)

# Query Engine
query_engine = index.as_query_engine(
    similarity_top_k=4,
    response_mode="compact"  # tree_summarize, refine, simple_summarize
)
response = query_engine.query("Quelles sont les obligations NIS 2 pour les PME ?")
print(response.source_nodes)  # Sources avec scores de similarité

RAG Hiérarchique

from llama_index.core.node_parser import HierarchicalNodeParser
from llama_index.core.retrievers import AutoMergingRetriever

parser = HierarchicalNodeParser.from_defaults(
    chunk_sizes=[2048, 512, 128]  # Nodes gros, moyen, petit
)
# Le retriever cherche les petits chunks, mais si 50%+ d'un parent est récupéré,
# retourne le parent complet → meilleure cohérence contextuelle

Comparatif LangChain vs LlamaIndex

  • LlamaIndex : supérieur pour RAG complexe, indexation multi-sources, knowledge graphs
  • LangChain : supérieur pour agents multi-tools, workflows conditionnels, intégrations externes
  • Les deux frameworks peuvent être combinés : LlamaIndex comme retriever dans une chain LangChain

Articles liés

Un projet cybersécurité ?

Expert dispo · Réponse 24h

Devis