Pratique Python, IA Engineering et bien plus avec des exercices interactifs et des tests automatiques.
Dans le monde du RAG (Retrieval-Augmented Generation), on manipule des documents. LangChain fournit une classe Document qui représente un morceau de texte avec ses metadonnées. …
Un des problèmes fondamentaux du RAG, c'est que les textes sont souvent trop longs pour etre traites d'un seul bloc. Il faut les decouper en …
Quand on decoupe un texte en chunks, on veut garder la trace de l'origine de chaque morceau. RécursiveCharacterTextSplitter a une méthode split_documents qui prend une …
Pour comparer des textes entre eux, il faut les transformer en nombres. TF-IDF (Term Frequency - Inverse Document Frequency) est une méthode classique qui donne …
Une fois les textes transformes en vecteurs, on peut mesurer leur ressemblance. La similarite cosinus mesure l'angle entre deux vecteurs : si deux textes parlent …
Le coeur du RAG, c'est la recherche : etant donne une question, trouver le document le plus pertinent dans une base. On va combiner TF-IDF …
En RAG, on ne veut pas juste le meilleur document, on veut souvent les K meilleurs. Ca permet de donner plus de contexte au modèle …
Quand on a des milliers de documents, calculer la similarite avec chacun devient lent. FAISS (Facebook AI Similarity Search) est une librairie optimisee pour la …
Maintenant on va assembler les briques : TF-IDF pour créer les vecteurs et FAISS pour les stocker et faire la recherche rapide. C'est un vrai …
En RAG, le pipeline classique c'est : charger les documents, les decouper en chunks, les vectoriser, puis les indexer. On va assembler les étapes de …
En RAG, on ne veut pas toujours chercher dans tous les documents. Parfois on veut filtrer par source, par date, par catégorie. C'est le concept …
Pour finir, on va construire un pipeline RAG de niveau production qui combine tout ce qu'on a appris : Documents LangChain, text splitting, TF-IDF, FAISS …
Dans LangChain, toute donnée textuelle est représentee par un objet Document. C'est la brique de base de tout pipeline RAG. Un Document contient deux choses …
BM25 est un algorithme de recherche textuelle classique, utilise par les moteurs de recherche bien avant l'arrivee des embeddings. Il fonctionne par correspondance de mots-cles …
La similarite cosinus est LA metrique de base pour comparer des vecteurs dans un système RAG. Elle mesure l'angle entre deux vecteurs, independamment de leur …
LangGraph est la librairie de LangChain pour construire des agents et des workflows complexes sous forme de graphes. Au lieu d'enchainer des appels de fonctions …
La vraie puissance de LangGraph, c'est les transitions conditionnelles. Au lieu d'un pipeline lineaire, tu peux diriger le flux vers differents noeuds selon le contenu …
Un Knowledge Graph (graphe de connaissances) représente des informations sous forme de triplets : (sujet, relation, objet). Par exemple : (Python, est_un, langage), (Django, utilise, …
On va maintenant combiner ce qu'on a appris pour construire un mini pipeline RAG complet avec FAISS. Pas d'appel API ici : on va utiliser …
Dans un vrai agent, on veut souvent accumuler des informations au fil des étapes : un historique de messages, une liste de documents trouves, des …
Construire un système RAG c'est bien, mais comment savoir s'il marche correctement ? Il faut l'evaluer avec des metriques. Les deux metriques de base sont …
On va maintenant tout assembler pour construire un vrai agent RAG avec LangGraph et FAISS. L'agent suit un workflow intelligent : 1. Il analyse la …