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.

Agentic RAG

ia

Définition

Agentic RAG est une evolution du RAG ou le systeme de retrieval est pilote par un agent LLM autonome qui peut utiliser plusieurs outils de recherche (bases vectorielles, moteurs de recherche web, APIs specifiques, bases de donnees SQL) et decider dynamiquement de la strategie de retrieval optimale en fonction de la question. Plutot qu'un pipeline fixe 'retrieve-then-generate', l'agent planifie et execute le retrieval en plusieurs etapes. L'architecture type d'Agentic RAG : (1) Planification — l'agent decompose la question en sous-questions et decide quels outils utiliser, (2) Retrieval multi-source — execution parallele ou sequentielle des recherches selon les outils (vectorstore, web search, SQL, APIs), (3) Synthese — l'agent combine les informations de sources multiples et identifie les contradictions, (4) Auto-verification — l'agent verifie si la reponse est suffisamment supportee par les sources. Les frameworks pour Agentic RAG : LangGraph (graphe d'etats pour les agents RAG), LlamaIndex Workflows (pipeline event-driven), AutoGen (agents multi-modeles), et Haystack (pipelines declaratifs). Ces frameworks permettent de definir des workflows ou l'agent peut choisir entre differents chemins de retrieval selon la question. Les cas d'usage de l'Agentic RAG incluent : analyse financiere complexe (combiner rapports internes + news web + bases donnees), recherche medicale (PubMed + base de medicaments + guide clinique), support technique (documentation + historique tickets + base de code), et veille concurrentielle (multiples sources web + base interne). Les defis de l'Agentic RAG : la latence augmente avec chaque iteration de l'agent (10-60 secondes vs 1-3 secondes pour le RAG simple), le cout est plus eleve (plusieurs appels LLM), et la fiabilite diminue avec la complexite de la chaine. Une monitoring robuste et des timeout par etape sont essentiels.

Agentic RAG avec LangGraph

from langgraph.graph import StateGraph, END
from langchain_community.tools import TavilySearchResults

def should_retrieve(state):
    if 'answer' in state and state['confidence'] > 0.8:
        return END  # Assez confiant, pas besoin de plus
    return 'retrieve'  # Besoin de retrieval

def retrieve(state):
    docs = vectorstore.similarity_search(state['question'], k=5)
    web_results = TavilySearchResults().run(state['question'])
    return {**state, 'context': docs + web_results}

graph = StateGraph({'question': str, 'context': list, 'answer': str, 'confidence': float})
graph.add_node('plan', plan_retrieval)
graph.add_node('retrieve', retrieve)
graph.add_node('generate', generate_answer)
graph.add_conditional_edges('generate', should_retrieve)

Articles liés

Un projet cybersécurité ?

Expert dispo · Réponse 24h

Devis