00:00:00Résolvons le problème de Claude Code et de la mémoire pour que les systèmes d'IA puissent de manière fiable et précise
00:00:06répondre à des questions sur des conversations passées ou d'immenses volumes de documents, c'est un problème que nous
00:00:13essayons de résoudre depuis des années et la réponse typique a été le RAG, la génération augmentée de récupération, et
00:00:20bien que cette vidéo s'intitule « Les sept niveaux de Claude Code et du RAG », ce dont il est réellement question ici
00:00:26est de déconstruire ce problème de Claude Code, des systèmes d'IA en général et de la mémoire, et même
00:00:33plus important encore, cette vidéo a pour but de vous donner une feuille de route qui vous montre où vous en êtes dans ce
00:00:37combat entre systèmes d'IA et mémoire, et ce que vous pouvez faire pour passer au niveau supérieur. Alors, au cours de ce voyage
00:00:43à travers ces sept niveaux de Claude Code et du RAG, nous allons aborder un certain nombre de sujets, mais nous
00:00:48n'allons pas commencer par le GraphRAG ou quoi que ce soit de compliqué ; nous allons commencer par le commencement,
00:00:53c'est-à-dire les systèmes de mémoire de base qui sont natifs de Claude Code car, aussi triste que ce soit à dire,
00:00:59c'est là que la plupart des gens non seulement commencent, mais c'est là qu'ils restent. De l'auto-mémoire et des choses comme
00:01:04le claud.md, nous passerons à des outils externes comme Obsidian avant de finir par nous retrouver
00:01:10avec les grands noms, les vrais systèmes RAG. À ces niveaux, nous parlerons de ce qu'est réellement le RAG,
00:01:16comment il fonctionne, les différents types de RAG : le RAG naïf contre le GraphRAG contre le RAG agentique, des choses comme
00:01:21les re-rankers et tout ce qu'il y a entre les deux. Et à chaque niveau, nous allons décomposer les choses de la même
00:01:25manière : nous parlerons de ce qu'il faut attendre à ce niveau, des compétences à maîtriser, des
00:01:29pièges à éviter et de ce que vous devez faire pour passer au niveau suivant. Ce que cette vidéo
00:01:34ne sera pas, c'est une explication technique ultra-approfondie sur la façon de configurer nécessairement ces
00:01:40systèmes spécifiques, car je l'ai déjà fait dans de nombreux cas. Quand nous parlons de GraphRAG et
00:01:45de LightRAG par exemple, ou même de sujets plus avancés comme le RAG pour n'importe quel type de
00:01:50systèmes d'embeddings, j'ai fait des vidéos où je décompose du tout début à la toute fin comment
00:01:55configurer cela vous-même. Ainsi, quand nous arriverons à ces sections, je mettrai les liens vers ces vidéos, et c'est pour
00:02:00notre bien à tous les deux, pour que cette vidéo ne dure pas cinq heures. Mais pour ces niveaux, nous allons quand même parler
00:02:04de ce que cela signifie réellement, de ce que chaque système vous apporte et de quand vous devriez l'utiliser. Mais avant
00:02:09de commencer par le niveau un, un mot rapide de notre sponsor d'aujourd'hui : moi-même. Le mois dernier, j'ai sorti la
00:02:15Masterclass Claude Code, et c'est le meilleur moyen de passer de zéro à développeur IA, surtout si vous ne venez
00:02:21pas d'un milieu technique. Et cette masterclass est un peu différente car nous nous concentrons sur un
00:02:25certain nombre de cas d'utilisation différents pour apprendre à utiliser Claude Code. L'un d'eux est par exemple le
00:02:31RAG de niveau production : comment construire les systèmes RAG que vous allez voir dans cette vidéo dans un scénario réel et
00:02:37l'utiliser réellement en tant que membre d'une équipe ou le vendre à un client, c'est sur ce genre de choses que nous nous concentrons. Donc,
00:02:42si vous voulez y accéder, vous pouvez le trouver dans Chase AI Plus, il y a un lien vers cela dans le
00:02:47commentaire épinglé, et nous serions ravis de vous y accueillir. Commençons maintenant par le niveau un : l'auto-mémoire.
00:02:51Il s'agit des systèmes que Claude Code utilise automatiquement pour créer une sorte d'appareil mémoriel afin de
00:02:58se souvenir réellement des choses dont vous avez parlé. Vous savez que vous en êtes là si vous n'avez jamais rien
00:03:02configuré intentionnellement pour aider Claude Code à se souvenir du contexte général des conversations précédentes
00:03:09ou simplement de ce qui se passe dans votre base de code. Et quand nous parlons d'auto-mémoire, c'est tout
00:03:13simplement son nom : le système d'auto-mémoire, qui est automatiquement activé lorsque vous utilisez Claude
00:03:18Code. Essentiellement, cela permet à Claude Code de créer ses propres fichiers Markdown qui listent
00:03:26les choses qu'il juge importantes vous concernant dans ce projet particulier. Et cela est purement basé
00:03:32sur sa propre intuition selon vos conversations. Je peux voir ces fichiers mémoire qu'il a créés ; encore
00:03:37une fois, il le fait de lui-même. Si vous allez dans votre dossier .claude, puis dans projects, vous y verrez un
00:03:42dossier nommé memory. À l'intérieur de ce fichier, vous verrez un certain nombre de fichiers Markdown ; ici,
00:03:47il y en a quatre, et ils sont comme la version Claude Code des post-it disant : « Oh oui, il a mentionné
00:03:51une fois ses objectifs de croissance pour son projet YouTube, notons cela. » Et dans le dossier
00:03:59mémoire de chacun, il y aura un fichier memory.md. Vous voyez dans ce fichier mémoire qu'il y a une petite note sur
00:04:04l'une de mes compétences, et ensuite il y a, vous savez, essentiellement un index de tous ces sous-fichiers mémoire disant :
00:04:09« Hé, il y en a un sur la croissance YouTube ici, un sur les revenus ou les références, et voici ce qu'il y a à l'intérieur. »
00:04:13Donc si je parle simplement à Claude Code dans mon fichier de coffre-fort et que je mentionne quelque chose sur YouTube et mes
00:04:19objectifs de croissance ou autre, il va s'y référer et dire : « Ah oui, Chase essaie d'obtenir
00:04:23tel nombre d'abonnés d'ici fin 2026. » C'est mignon, mais finalement, ce n'est pas si utile.
00:04:30C'est un peu comme lorsque vous êtes dans ChatGPT et qu'il ressort des trucs aléatoires de
00:04:35conversations précédentes et qu'il les force un peu ; on se dit : « Ok, je vois que tu t'en souviens,
00:04:40mais je m'en fiche un peu, et honnêtement, c'est un peu bizarre de continuer à ramener ça sur le tapis. Je préférerais que tu ne le fasses pas. »
00:04:44Et malheureusement, c'est là que la plupart des gens s'arrêtent dans leur parcours mémoriel, et c'est construit sur un
00:04:49passé presque abusif que nous avons tous eu en utilisant ces chatbots,
00:04:54parce que ces chatbots n'ont aucune sorte de vraie mémoire d'une conversation à l'autre, et donc
00:05:00nous avons toujours une peur bleue de devoir fermer une fenêtre de chat ou quitter une session de terminal
00:05:06parce qu'on se dit : « Oh mon Dieu, il ne va pas se souvenir de ma conversation. » Et c'est en fait un
00:05:10vrai problème parce que quelle est la réponse de tout le monde au fait que la fenêtre de chat ne puisse rien
00:05:17mémoriser ? Eh bien, la réponse est que vous continuez simplement cette conversation pour toujours parce que vous ne voulez pas
00:05:22vous retrouver dans un scénario où vous devez quitter et qu'il oublie tout. C'est une peur qui est née ici, à l'intérieur
00:05:26de ces fenêtres de chat, en commençant par ChatGPT, et la même chose avec l'application Web de Claude. Et honnêtement, c'était
00:05:31infiniment pire avec l'application Web de Claude car je pense que nous nous souvenons tous de l'époque avant la
00:05:35fenêtre de contexte d'un million de tokens, où on avait genre 30 minutes pour parler avec Claude avant qu'il dise : « Bon, à
00:05:39dans quatre heures. » Le problème est que les gens ont apporté ce genre de comportement psychotique et névrotique au
00:05:45terminal. Et ce qu'ils font en grande partie — parce qu'on peut maintenant s'en sortir avec une fenêtre de contexte d'un million —
00:05:50c'est qu'ils ne vident jamais, ils continuent de parler encore et encore avec Claude Code parce qu'ils
00:05:55ne veulent jamais qu'il oublie ce dont ils parlent à cause de ces problèmes de mémoire. Et le
00:06:00souci avec ça, c'est que votre efficacité chute drastiquement avec le temps au fur et à mesure que vous parlez avec Claude Code
00:06:05dans la même session. C'est l'idée fondamentale de la « pourriture du contexte » (context rot). Si vous ne savez pas ce que c'est,
00:06:10c'est le phénomène par lequel plus j'utilise un système d'IA au sein de la même session, au sein du même chat,
00:06:16et que je remplis cette fenêtre de contexte, plus il devient mauvais. Vous pouvez le voir juste ici : Claude Code, fenêtre de contexte d'un
00:06:23million ; à 256k tokens — c'est-à-dire que je n'ai rempli qu'environ un quart de sa fenêtre de contexte — nous sommes à
00:06:3092 %. À la fin, je suis à 78 %. Donc plus vous l'utilisez dans le même chat, plus il s'affaiblit. C'est l'un
00:06:36des problèmes majeurs que les gens rencontrent avec les systèmes d'IA et la mémoire. J'ai Claude Code, il a un million de contexte
00:06:42désormais, et pourtant je ne veux pas qu'il oublie la conversation en cours, alors je ne quitte jamais la
00:06:47fenêtre, je la remplis encore et encore. Deux choses se produisent : un, l'efficacité
00:06:51diminue comme vous venez de le voir ; deux, votre consommation explose car le nombre de tokens utilisés pour
00:06:59un contexte de 800 000 est bien supérieur à un contexte de 80 000. Ce n'est pas le seul problème,
00:07:08mais pour s'écarter un peu du sujet, nous sommes dans un écosystème actuel où tout le monde se plaint que Claude Code est
00:07:12bridé et que ma consommation s'envole automatiquement. Il y a un certain nombre de raisons à cela, mais l'une d'elles
00:07:18est sans aucun doute le fait que, depuis l'introduction du million de contexte, les gens n'ont aucune idée de la façon de
00:07:24gérer leur propre fenêtre de contexte et ils ne sont pas du tout assez
00:07:29agressifs pour effacer et réinitialiser la conversation, mais c'est un peu hors sujet.
00:07:34Le point de toute cette discussion est que, lorsqu'il s'agit de mémoire dans cette discussion sur le RAG et
00:07:39Claude Code, nous devons garder la « pourriture du contexte » à l'esprit car nous essayons constamment de gérer
00:07:44cette tension : d'accord, je veux ingérer du contexte pour que Claude Code puisse répondre à des questions sur plusieurs
00:07:50sujets, mais en même temps, je ne veux pas que le contexte devienne trop large car alors il devient moins bon.
00:07:55Donc, cela doit toujours être quelque chose à quoi nous pensons dans cette conversation sur la mémoire.
00:08:02Mais pour revenir à la vidéo et au niveau un : que font les gens au niveau un ? La
00:08:06réponse est qu'ils ne font pas grand-chose. Et comme ils ne font rien, ils comptent simplement
00:08:10sur une fenêtre de contexte gonflée pour se souvenir des choses. On sait qu'on en est là quand on n'a jamais édité
00:08:15un fichier claud.md et qu'on n'a jamais créé de type d'artefact ou de fichier qui permet à Claude
00:08:23Code de réaliser ce qui se passe, ce qu'il a fait par le passé et ce qu'il doit
00:08:27faire à l'avenir. Alors, que devons-nous maîtriser à ce niveau ? Eh bien, tout ce que vous avez vraiment besoin de
00:08:31maîtriser, malgré tout ce que j'ai écrit ici, c'est de comprendre que l'auto-mémoire ne suffit pas
00:08:35et que nous devons jouer un rôle actif en ce qui concerne Claude Code et la mémoire, car le piège à ce niveau
00:08:40est que si vous ne jouez pas un rôle actif, vous n'avez aucun contrôle. Et nous devons contrôler ce que Claude Code
00:08:44prend en compte lorsqu'il répond à nos questions. Ainsi, pour débloquer le niveau un et passer au niveau deux,
00:08:50nous avons besoin d'une mémoire explicite et nous devons trouver comment faire cela concrètement. Quels fichiers
00:08:57devez-vous éditer et comprendre qu'ils existent pour jouer un rôle actif dans cette
00:09:01relation ? Le niveau deux concerne un fichier spécifique : le fichier claud.md. Quand vous découvrez
00:09:06ce truc, c'est comme une bénédiction ; il y a enfin un endroit unique où je peux donner à Claude
00:09:12Code des règles et des conventions que j'ai toujours voulu qu'il suive, et il va le faire. En
00:09:16fait, je peux inclure des choses dont je voulais qu'il se souvienne et il le fera toujours. Cela ressemble vraiment à un
00:09:20progrès au début. Voici un modèle d'un fichier claud.md standard pour un projet d'assistant personnel. Maintenant,
00:09:29Claude Code va automatiquement créer un fichier claud.md, mais vous avez la possibilité de
00:09:33l'éditer ou même de le mettre à jour à la demande en utilisant une commande comme /init. Et l'idée
00:09:38de ce truc, c'est que c'est encore une fois comme le Saint Graal des instructions pour Claude Code pour ce projet
00:09:43particulier. À toutes fins utiles, Claude Code va y jeter un œil avant chaque tâche qu'il
00:09:50exécute. Donc, si vous voulez qu'il se souvienne de choses spécifiques, qu'allez-vous faire ? Vous allez
00:09:54les mettre dans le claud.md. Théoriquement, c'est à plus petite échelle que le RAG, vous savez, nous
00:10:00n'y mettons pas des documents complets, mais ce sont des choses dont vous voulez que Claude Code
00:10:05se souvienne toujours et des conventions que vous voulez qu'il suive. Pour celui-ci, nous avons une section « À propos de moi »,
00:10:09nous avons une décomposition de la structure du système de fichiers et de la manière dont nous voulons qu'il opère réellement quand
00:10:14nous lui donnons des commandes. Et comme je l'ai dit, comme c'est référencé sur pratiquement chaque prompt, Claude Code
00:10:18est très doué pour suivre cela. Donc l'idée de « Hé, je veux qu'il se souvienne de trucs précis », ça
00:10:22semble être un excellent endroit où les mettre. Mais il faut être prudent car on peut en faire trop. Quand on regarde des
00:10:28études comme celle-ci évaluant agents.md — et vous pouvez remplacer agents.md par claud.md —
00:10:33ils ont découvert dans l'étude que ce genre de fichiers peut en fait réduire l'efficacité des grands
00:10:40modèles de langage en général. Et pourquoi cela ? Eh bien, c'est parce que la chose qui le rend si bon, le fait
00:10:45qu'il soit injecté dans pratiquement chaque prompt, est aussi ce qui peut le rendre si mauvais. Est-ce que nous
00:10:51injectons réellement le bon contexte ? Avons-nous traversé le bruit pour lui donner un
00:10:57signal propre, ou jetons-nous simplement des choses que nous pensons bonnes ? Car si ce n'est pas pertinent pour
00:11:02quasiment chaque prompt que vous allez donner dans votre projet, est-ce que cela devrait être ici dans le claud.md ?
00:11:08Est-ce un bon moyen de laisser Claude Code se souvenir des choses ? Je dirais que non, pas vraiment. Et cela
00:11:15va à l'encontre de ce que beaucoup de gens disent sur le claud.md et sur la façon dont vous devriez le structurer. D'après des études
00:11:20comme celle-là et d'après mon expérience personnelle, « moins c'est mieux ». La pollution contextuelle est réelle, la pourriture contextuelle est réelle.
00:11:26Donc, si quelque chose est dans claud.md et que cela n'a pas de sens pour, encore une fois, pratiquement
00:11:32chaque prompt que vous lui donnez, est-ce que cela devrait y être ? La réponse est non, mais la plupart des gens ne le réalisent pas et
00:11:37au lieu de cela, ils tombent dans ce piège d'un manuel de règles boursouflé. Au lieu de cela, les compétences que nous devrions maîtriser
00:11:42sont : comment créer un contexte de projet à haut signal ? Comment m'assurer que ce que je mets réellement
00:11:48à l'intérieur de ce truc est logique ? Et avec cela vient l'idée de la conscience de la pourriture contextuelle,
00:11:53comme nous en avons parlé au niveau précédent. Et quand on met tout cela ensemble, le niveau deux donne l'impression d'avoir
00:11:57avancé : « Hé, je joue un rôle actif dans la mémoire, j'ai ce fichier claud.md. » Puis vous réalisez
00:12:02que ce n'est pas vraiment suffisant. Et quand nous parlons du niveau trois et de ce que nous pouvons faire pour progresser,
00:12:08nous voulons penser non pas à un manuel de règles statique, mais à quelque chose qui peut évoluer, et c'est
00:12:14quelque chose qui peut inclure claud.md. Au lieu de compter sur claud.md pour tout faire, et si nous
00:12:18utilisions claud.md un peu comme un fichier d'index qui oriente Claude Code dans la bonne direction à la place ?
00:12:24Qu'est-ce que je voulais dire par « claud.md agissant comme un index » et pointant vers d'autres fichiers ?
00:12:30Eh bien, je parle d'une architecture au sein de votre base de code qui n'a pas qu'un seul fichier Markdown
00:12:37essayant de gérer tous les problèmes de mémoire sous la forme de claud.md. Je parle d'avoir
00:12:41plusieurs fichiers pour des tâches spécifiques. Je pense qu'un excellent exemple de cela en action est ce que GSD,
00:12:47l'outil d'orchestration « Get Shit Done », fait. Il ne crée pas juste un fichier qui dit : « Hé, voici ce que
00:12:53nous allons construire, voici les exigences, voici ce qu'on a fait et où on va. »
00:12:56Au lieu de cela, il en crée plusieurs. Vous pouvez voir ici sur la gauche : nous avons un project.md, un requirements.md,
00:13:02un roadmap et un state. Ainsi, les exigences existent pour que Claude Code sache toujours et ait une mémoire de
00:13:08ce qu'il est censé construire. La feuille de route décompose précisément ce que nous allons
00:13:12créer, pas seulement maintenant, mais ce que nous avons fait par le passé et dans le futur. Et le projet lui donne
00:13:16de la mémoire, lui donne le contexte de ce que nous faisons avec une vue d'ensemble de haut niveau. Quelle est notre étoile polaire ? Et en
00:13:22fractionnant la mémoire, le contexte et les conventions dans ce genre de système, nous luttons contre l'idée
00:13:29de la pourriture contextuelle et l'idée soulevée dans cette étude qui dit qu'injecter ces fichiers dans chaque
00:13:34prompt tout le temps, comme nous le faisons dans claud.md, est en fait contre-intuitif ; cela ne nous aide pas à obtenir
00:13:39de meilleurs résultats. De plus, le décomposer en ces morceaux et avoir un chemin clair que Claude
00:13:44Code peut suivre permet de dire : « Hé, je veux savoir où est cette information. Oh, je vais dans claud.md. »
00:13:49« Ah, claud.md dit que j'ai ces cinq options. D'accord, c'est celle-là, laissez-moi aller la trouver. »
00:13:54Ce genre de structure est ce que vous allez voir à 100 % au niveau suivant quand nous parlerons
00:13:58d'Obsidian, et c'est vraiment comme une réinvention brute du système de découpage (chunking) et de la
00:14:04recherche de similarité vectorielle que nous voyons dans les vrais systèmes RAG. Mais évidemment, c'est à petite échelle
00:14:10à ce niveau ; nous parlons de quatre fichiers Markdown ici, pas d'un système qui
00:14:14peut gérer des milliers et des milliers de documents. Mais comme vous allez m'entendre le dire
00:14:20souvent : qu'est-ce que cela signifie pour vous ? Avez-vous besoin d'un système dont nous allons parler aux niveaux quatre,
00:14:26cinq, six et sept, capable de gérer autant de documents ? La réponse est peut-être que non. Et donc une partie de ce
00:14:32périple RAG consiste à comprendre non seulement où vous en êtes, mais aussi où vous devez réellement aller. Avez-vous
00:14:36toujours besoin d'être au niveau sept et de savoir comment faire un système RAG agentique dans Claude Code ? C'est
00:14:41probablement bien de savoir le faire, mais c'est tout aussi bien de savoir quand vous n'avez pas besoin de
00:14:46le mettre en œuvre. Parfois, ce que nous voyons dans des systèmes comme celui-ci est suffisant pour beaucoup de gens.
00:14:52Il est donc tout aussi important de savoir comment le faire que de savoir si vous en avez besoin et si vous devriez le faire.
00:14:58Quand on parle du niveau trois et des fichiers d'état, comment savons-nous que nous y sommes ?
00:15:00Eh bien, nous savons que nous y sommes quand nous sommes encore strictement dans l'écosystème Claude Code, que nous n'avons pas
00:15:04intégré d'outils ou d'applications externes et qu'en réalité, nous nous contentons de créer
00:15:09plusieurs fichiers Markdown pour créer notre propre système maison de découpage de mémoire.
00:15:14Mais c'est quand même très important ; nous maîtrisons ici de vraies compétences. L'idée de
00:15:18structurer réellement les docs, d'avoir un système en place qui met à jour l'état à chaque
00:15:23session, car cela peut aussi être un problème avec le RAG : comment s'assurer que tout est à
00:15:28jour ? Et il y a de fortes chances que vous commenciez aussi à vous appuyer sur des couches d'orchestration à ce stade, des choses comme
00:15:33GSD et Superpowers qui gèrent d'eux-mêmes cette architecture multi-fichiers Markdown. Mais
00:15:40il y a un vrai piège ici : ce que nous créons dans ce projet est très spécifique à ce projet, c'est
00:15:46un peu lourd de prendre ces fichiers Markdown et de les transférer sur un autre projet. Donc, au niveau
00:15:51quatre, c'est là que nous introduisons Obsidian, et c'est un outil qui a énormément de succès
00:15:56et pour une bonne raison. Quand vous avez des gens comme Andrej Karpathy qui parlent de ces
00:16:00bases de connaissances LLM qu'ils ont créées, qui sont bâties à toutes fins utiles sur une fondation
00:16:06Obsidian, et que cela fait presque 20 millions de vues, on devrait probablement écouter et voir comment ça fonctionne.
00:16:11Maintenant, pour le contexte, j'ai fait une analyse approfondie de cette base de connaissances LLM Obsidian d'Andrej Karpathy,
00:16:18je mettrai le lien ci-dessus. Donc, si vous voulez vous concentrer sur cela, comment construire ça, allez voir ça
00:16:22au-dessus. Et ce que je veux aussi mentionner à la plupart des gens, c'est que ce truc d'Obsidian dont on va
00:16:27parler juste ici au niveau quatre, c'est honnêtement le niveau que la plupart des gens devraient viser,
00:16:32car c'est suffisant pour la plupart des gens et des cas d'utilisation. Quand nous parlerons des niveaux cinq, six et
00:16:37sept, nous parlerons de vraies structures RAG et, pour être honnête, c'est trop pour la plupart des gens. C'est
00:16:43excessif pour la majorité. On adore parler du RAG, c'est génial, je comprends, mais
00:16:50Obsidian est cette solution à 80 % qui, en réalité, est une solution à 99 % pour la plupart des gens parce que c'est gratuit,
00:16:56qu'il n'y a pratiquement aucun frais de gestion et que ça fait le travail pour l'opérateur solo. Et quand je dis que ça fait le travail
00:17:02pour l'opérateur solo, je veux dire que ça résout le problème de connecter Claude Code à un tas de
00:17:07documents différents, un tas de fichiers Markdown différents, et de pouvoir obtenir des informations précises et rapides
00:17:13à partir de là, tout en ayant un aperçu de ces documents en tant qu'être humain. Car quand je clique
00:17:19sur ces documents, on voit très clairement ce qui s'y passe et on voit très clairement quels documents
00:17:24y sont liés. Quand je clique sur ces liens, je suis amené vers d'autres documents. Quand je clique sur ces liens,
00:17:30je suis amené vers encore d'autres documents. Et donc, pour moi, en tant qu'humain, avoir cet aperçu est important
00:17:36car, pour être tout à fait honnête, je dirais que la vision basée sur Obsidian sur les documents l'emporte sur
00:17:42beaucoup d'aperçus que vous obtenez des systèmes RAG. Quand on parle de milliers et de milliers de
00:17:47documents intégrés dans un système de RAG graphique comme celui-ci ; c'est visuellement superbe,
00:17:52c'est très impressionnant, mais savez-vous vraiment ce qui s'y passe ? Peut-être bien, honnêtement.
00:17:58Vous vous fiez un peu aux réponses affichées, aux liens et autres, mais c'est un peu
00:18:03difficile de décortiquer les plongements. Tout ça pour dire qu'il faut accorder une attention
00:18:08particulière à Obsidian et Claude Code, car lorsqu'on parle de ce parcours depuis le RAG, je suggère
00:18:13toujours à tout le monde, clients inclus : "Commençons par Obsidian et voyons jusqu'où nous pouvons aller",
00:18:20et finalement, si nous atteignons une limite, on peut toujours passer à des systèmes de RAG plus robustes.
00:18:26Alors pourquoi ne pas essayer l'option simple ? Si ça marche, c'est génial, c'est gratuit, ça ne coûte rien,
00:18:31plutôt que de s'attaquer à ce système de RAG qui peut être difficile à mettre en production selon vos objectifs.
00:18:35Commencez toujours par les choses simples ; il n'est jamais trop tard pour passer à plus complexe.
00:18:40Alors, de quoi parle-t-on vraiment ici, au niveau 4 ? Il s'agit de reprendre
00:18:45cette structure que nous avons commencé à bâtir au niveau 3, vous savez, avec un fichier d'index pointant
00:18:50vers différents fichiers Markdown, de l'étendre, puis d'intégrer cet outil externe qu'est Obsidian pour
00:18:56permettre à l'être humain de visualiser réellement ces connexions. L'idéal platonicien de cette version
00:19:00est pratiquement ce qu'Andrej Karpathy a décrit en bâtissant une base de connaissances LLM sur Obsidian
00:19:05et propulsée par Claude Code, et voici à quoi ressemble une telle structure. Quand vous utilisez Obsidian
00:19:11et que vous le téléchargez (c'est gratuit, encore une fois, voyez la vidéo postée plus tôt), vous définissez un
00:19:16certain dossier comme le "coffre" (vault). Considérez ce coffre comme le système de RAG, ce
00:19:23quasi-système de RAG que vous avez créé. Et à l'intérieur de ce coffre, nous architecturons, nous structurons
00:19:30simplement avec des fichiers. Nous avons le dossier parent appelé le coffre, et dedans, nous créons plusieurs
00:19:36sous-dossiers. Dans le cas d'Andrej Karpathy, il parle de trois sous-dossiers différents ; en réalité,
00:19:41cela pourrait être n'importe lesquels, il faut juste que cela corresponde au thème que nous allons aborder.
00:19:47Dans un dossier, nous avons les données brutes. C'est tout ce que nous ingérons et voulons structurer
00:19:52pour que Claude Code puisse s'y référer plus tard. Imaginez que vous demandiez à Claude Code de faire
00:19:58une analyse concurrentielle de 50 de vos concurrents et qu'il extrait 50 sites pour chacun, d'accord ?
00:20:03On parle d'une grande quantité d'informations, probablement 2500 éléments différents. Tout cela sera
00:20:08déversé dans un dossier "raw" (brut). C'est la zone de transit des données. Ensuite, nous avons le dossier wiki.
00:20:14C'est là que vont les données structurées. Nous demandons alors à Claude Code de prendre ces données
00:20:20brutes et de les structurer en articles de type Wikipédia dans le dossier wiki. Chaque article a son propre dossier.
00:20:28L'idée est que, lorsque vous demandez ensuite à Claude Code des informations sur, disons,
00:20:33les agents IA, après l'avoir fait chercher des trucs sur le sujet, si je lui dis : "Claude Code, parle-moi
00:20:38des agents IA", comme vous interrogeriez un système de RAG, et bien Claude Code va aller dans le coffre,
00:20:45puis dans le wiki. Le wiki possède un fichier Markdown d'index principal. Pensez à ce que nous
00:20:50avions évoqué avec le fichier claude.md auparavant, vous voyez comment ces thèmes se transmettent
00:20:56à travers les différents niveaux. Il consulte cet index principal, lequel lui indique ce qui
00:21:00existe dans ce système de RAG Obsidian. "Ah, les agents IA existent, super !" Et devinez quoi ?
00:21:08Il y a aussi un fichier d'index qui liste les articles individuels présents. Ce que je veux dire,
00:21:14c'est qu'il y a une hiérarchie claire pour que Claude Code puisse s'y référer quand il cherche des informations
00:21:21dans les fichiers : coffre, wiki, index, article, etc. Parce que le chemin pour trouver l'information est si clair,
00:21:31et parce qu'il est si simple de trouver d'abord l'info pour la transformer en wiki, nous pouvons créer
00:21:37un système contenant énormément de documents sans RAG. Des centaines, des milliers, si c'est bien fait.
00:21:44Car si le système est clair : "Je vérifie le coffre, puis l'index, qui délimite précisément où se trouve chaque chose",
00:21:50alors il n'est pas trop difficile pour Claude Code de savoir où chercher. Vous pouvez donc vous en sortir avec
00:21:54une structure sans RAG pour des milliers de documents, ce qui était très difficile auparavant.
00:21:58C'est parce que la plupart des gens ne structurent rien du tout ; ils ont juste un milliard de documents
00:22:02pêle-mêle dans un dossier. C'est l'équivalent de 10 millions de fichiers éparpillés sur le sol d'une usine.
00:22:08Est-ce que Claude Code va les trouver ? Non. En fait, il vous faut juste un classeur. Car Claude Code
00:22:13est assez intelligent, et vous pouvez voir cette architecture en action juste ici. Nous regardons
00:22:17actuellement un fichier claude.md situé dans un coffre Obsidian, et que dit-il ? Il détaille
00:22:24la structure du coffre, le système de wiki, la structure globale des sous-dossiers et comment
00:22:30l'utiliser concrètement. Donc là encore, on utilise claude.md comme fichier de conventions. Sur la gauche,
00:22:36vous voyez le dossier wiki. À l'intérieur du dossier wiki se trouve un index principal qui liste ce qu'il contient.
00:22:43Dans ce cas, il n'y a qu'un article sur les agents gérés par Claude. Dans ce dossier, nous voyons
00:22:49cet article avec son propre dossier wiki détaillant les sous-articles, jusqu'à l'article final.
00:22:55C'est très clair sur les étapes à suivre. Ainsi, quand je demande à Claude Code de me parler
00:23:01des agents gérés, comme nous avons un wiki dessus, il lui est très facile de le chercher via
00:23:06son outil grep intégré. Il me lie le fichier Markdown et détaille tout ce qui s'y passe.
00:23:12La question au niveau 4 devient vraiment une question d'échelle : avec combien de documents peut-on
00:23:16faire fonctionner ce genre de système ? Y a-t-il un point où le système d'Andrej Karpathy
00:23:22commence à s'effondrer ? On comprend que c'est un chemin très clair que Claude Code doit suivre :
00:23:26il va aux index, et cetera. Mais est-ce que cela tient la route avec 2000 documents ? 2500 ? 3000 ?
00:23:31Y a-t-il un chiffre précis ? La réponse est qu'on ne le sait pas vraiment, et c'est probablement moins,
00:23:37car tous vos documents sont différents. Et quand on parle de heurter un mur, ce n'est pas seulement
00:23:43que Claude Code donne de mauvaises réponses parce qu'il y a trop de fichiers dans le système Obsidian.
00:23:47C'est : combien cela vous coûte-t-il en jetons (tokens) maintenant qu'il y a tant de fichiers, et à quelle
00:23:52vitesse ? Parce que le RAG peut être infiniment plus rapide et moins cher dans certaines situations.
00:23:59Ce que nous voyons ici est une comparaison entre les LLM textuels (les grandes barres) et le RAG
00:24:06textuel, en termes de jetons consommés pour obtenir la bonne réponse et de temps nécessaire
00:24:11pour l'obtenir. Que voit-on ? On constate qu'entre le RAG textuel et les LLM textuels, il y a une
00:24:18différence massive, de l'ordre de 1200 fois. Je dis bien que le RAG est 1200 fois moins cher et 1200 fois
00:24:25plus rapide que le LLM textuel dans ces études. Précisons : cela a été fait en 2025, pas avec
00:24:33Claude Code. Les modèles ont beaucoup changé depuis ; ce ne sont ici que des LLM bruts,
00:24:37pas des outils spécialisés codage, etc. Cependant, on parle d'une différence de 1200x. Donc quand on évalue
00:24:48si l'on doit utiliser Obsidian ou un système de RAG, ce n'est pas juste une question de savoir
00:24:54si la réponse est correcte ou non, car vous pourriez être dans un scénario
00:24:59où Obsidian donne la bonne réponse, mais où le RAG serait mille fois moins cher
00:25:04et plus rapide. La limite est donc très floue entre le moment où Obsidian et ces structures
00:25:10de fichiers Markdown suffisent, et celui où il faut passer au RAG.
00:25:15Il n'y a pas de réponse parfaite, je n'en ai pas pour vous. Vous devez expérimenter par vous-même,
00:25:18essayer les deux et voir ce qui marche, car tout ceci est déjà un peu daté, c'est du 2025, de vieux
00:25:25modèles. L'écart entre le RAG et les LLM textuels n'est plus de 1200 fois, mais à quel point s'est-il réduit ?
00:25:32Car 1200x, c'est un écart démentiel. Ce n'est pas 10x, c'est 1200x. Il y a donc beaucoup à savoir et,
00:25:39encore une fois, vous ne connaîtrez pas la réponse à l'avance. Vous ne la connaîtrez pas.
00:25:45Personne ne vous dira où se trouve précisément la limite. Vous devez littéralement expérimenter
00:25:49pour voir ce qui fonctionne pour vous à mesure que vous augmentez le nombre de documents sur lesquels
00:25:54vous interrogez Claude Code. Sur ce, passons au niveau 5, où nous commençons enfin
00:25:59à parler des vrais systèmes de RAG et de certains fondamentaux comme les plongements (embeddings),
00:26:04les bases de données vectorielles et la manière dont les données circulent dans un système lorsqu'elles
00:26:10intègrent notre base de connaissances RAG. Commençons par le RAG naïf, qui est le type le plus basique,
00:26:16mais qui fournit les fondations de tout ce que nous faisons ensuite. On peut diviser
00:26:21les systèmes de RAG en trois parties. Sur la gauche, nous avons l'étape de plongement (embedding),
00:26:27puis la base de données vectorielle, et enfin la récupération (retrieval) réelle effectuée
00:26:33avec le grand modèle de langage. Un, deux et trois. Pour mieux illustrer ce modèle, suivons
00:26:40le parcours d'un document qui va intégrer notre base de connaissances. Rappelez-vous, dans un grand
00:26:45système de RAG, on peut parler de milliers de documents, et chaque document peut faire des milliers de pages.
00:26:50Mais dans cet exemple, nous parlons d'un document d'une seule page.
00:26:56Si nous voulons ajouter ce document à notre base de données, il ne sera pas ingéré comme un bloc entier.
00:27:03À la place, nous allons prendre ce document et le découper en morceaux (chunking). Ce document
00:27:08devient alors trois morceaux différents. Ces trois morceaux sont envoyés à un modèle de plongement,
00:27:15dont le rôle est de prendre ces trois morceaux et de les transformer en vecteurs
00:27:21dans une base de données vectorielle. Une base de données vectorielle est juste une variante de base de données classique.
00:27:27Dans une base de données standard, comme un fichier Excel, vous avez des colonnes
00:27:32et des lignes. Dans une base vectorielle, ce n'est pas en deux dimensions, c'est en
00:27:37des centaines, voire des milliers de dimensions. Mais pour aujourd'hui, imaginez simplement
00:27:43un graphique en trois dimensions comme celui-ci. Les vecteurs sont des points dans ce graphique,
00:27:50et chaque point est représenté par une série de nombres. Vous voyez ici l'élément "bananes",
00:27:57représenté par 0.52, 5.12, puis 9.31. On le voit ici en haut. Et cela continue sur des centaines de chiffres.
00:28:06L'emplacement de chaque vecteur dans ce graphique géant multidimensionnel dépend de son sens
00:28:13sémantique : que signifient réellement les mots ? On peut voir ici une section "fruits",
00:28:19avec bananes, pommes et poires. Et là-bas, nous avons les navires et les bateaux.
00:28:24Revenons à notre document. Imaginons qu'il traite des navires de la Seconde Guerre mondiale.
00:28:31Chacun de ces morceaux sera transformé en une série de nombres, et cette série de nombres
00:28:37sera représentée par un point dans ce graphique. Où va-t-il atterrir selon vous ? Probablement
00:28:42dans cette zone, n'est-ce pas ? Ça ferait un, deux et trois. Voilà comment les documents sont placés.
00:28:49Chaque document est découpé, chaque morceau passe par le modèle de plongement, et le modèle
00:28:54les insère dans la base de données vectorielle. On répète l'opération pour chaque document et, au final,
00:28:58après avoir fait cela des milliers de fois, on obtient une base vectorielle qui représente notre graphe de
00:29:04connaissances, pour ainsi dire notre base de savoir. Et cela nous mène à l'étape 3 : la récupération.
00:29:09Alors, quel est votre rôle là-dedans ? Normalement... voyons, on va vous représenter
00:29:16avec une autre couleur, disons en rose. Ça, c'est vous. D'habitude, vous parlez simplement
00:29:23à Claude Code et vous lui posez des questions sur les cuirassés de la Seconde Guerre mondiale. Dans une
00:29:29configuration standard sans RAG, que se passe-t-il ? Le grand modèle de langage, disons Opus 4.6, va
00:29:34consulter ses données d'entraînement et vous donner une réponse basée sur ce qu'il a appris
00:29:39sur les cuirassés de la Seconde Guerre mondiale. Mais avec un système de RAG, il va faire plus : il va
00:29:44récupérer les vecteurs appropriés et les utiliser pour augmenter (enrichir) la réponse qu'il génère
00:29:51pour vous. D'où le nom : Génération Augmentée par Récupération (RAG). C'est la force du RAG : permettre
00:29:56à nos modèles de langage d'intégrer des informations qui ne font pas partie de leurs données d'entraînement
00:30:02pour enrichir leur réponse. Dans cet exemple, ce sont les cuirassés de la Seconde Guerre mondiale ;
00:30:06certes, le modèle connaît déjà ça, mais remplacez-le par n'importe quelle donnée d'entreprise propriétaire
00:30:15non disponible sur le web, et faites-le à grande échelle. C'est tout l'intérêt du RAG. Dans notre exemple,
00:30:21quand on interroge Claude Code sur les cuirassés de la Seconde Guerre mondiale dans une config RAG,
00:30:25ce qu'il va faire, c'est prendre notre question et la transformer en une série de nombres, tout comme
00:30:32les vecteurs d'ici. Il va ensuite comparer le nombre correspondant à notre question avec les nombres
00:30:39des vecteurs pour voir lesquels correspondent le plus au vecteur de la question. En gros,
00:30:46à quel point les vecteurs sont-ils similaires à la question ? Puis il va extraire un certain nombre de
00:30:51vecteurs (disons 1, 2, 3, 4, 5, 10 ou 20) et il va injecter ces vecteurs et leurs informations
00:30:56dans le grand modèle de langage. Désormais, le grand modèle de langage dispose de sa réponse
00:31:02issue de l'entraînement plus, disons, l'équivalent de 10 vecteurs d'informations. C'était la partie récupération.
00:31:09Ensuite, il augmente et génère une réponse avec ces informations additionnelles. C'est ainsi que le RAG
00:31:13fonctionne, c'est le RAG naïf. Ce n'est pas particulièrement efficace pour plusieurs raisons ; cette
00:31:19structure très basique s'effondre vite quand on commence à réfléchir à la façon dont nous
00:31:25découpons ces documents. Est-ce aléatoire ? Est-ce juste basé sur un nombre de jetons ? Y a-t-il un
00:31:31chevauchement ? Les documents eux-mêmes sont-ils organisés de façon à ce que le découpage
00:31:36ait du sens ? Car si le morceau n°3 fait référence à quelque chose situé dans le morceau n°1,
00:31:42et que notre système récupère des morceaux isolés, que se passe-t-il s'il n'extrait pas le bon ?
00:31:47S'il ne récupère pas l'autre morceau nécessaire au contexte ? Est-ce que le n°3 a encore du sens ?
00:31:53Vous voyez ce que je veux dire. Très souvent, le document entier est nécessaire pour répondre
00:31:59aux questions sur ce même document. Cette idée d'obtenir des réponses fragmentaires ne fonctionne
00:32:05pas vraiment en pratique. Pourtant, c'est ainsi que le RAG a été configuré pendant très longtemps.
00:32:10D'autres problèmes peuvent surgir, comme : que se passe-t-il si j'ai des questions sur les relations
00:32:17entre différents vecteurs ? Pour l'instant, j'extrais des vecteurs de manière isolée. Mais si je voulais
00:32:22savoir quel est le lien entre les bateaux et les bananes ? Ça semble aléatoire, mais imaginons.
00:32:31Avec cette approche classique de RAG naïf sur base vectorielle, tout est un peu cloisonné.
00:32:36Il est difficile de relier les informations, et beaucoup dépend de la structure initiale des documents.
00:32:41Sont-ils structurés d'une manière qui soit pertinente pour le RAG ? Au fil des ans, on a trouvé
00:32:46des moyens d'atténuer ces problèmes, comme les "re-rankers" (systèmes de reclassement) qui analysent
00:32:51tous les vecteurs saisis et effectuent une seconde passe avec un LLM pour les classer par pertinence.
00:32:56Mais globalement, ce système de RAG naïf est un peu tombé en désuétude. Pourtant, il reste important
00:33:03de comprendre son fonctionnement de base afin d'éclairer vos choix si vous optez pour une approche
00:33:07de RAG plus robuste. Car si vous ne comprenez pas comment fonctionnent le découpage ou les plongements,
00:33:13comment décider de la structure de vos documents ? Quand on parle de systèmes comme le GraphRAG
00:33:17ou de systèmes de plongement plus complexes, comme le tout nouveau de chez Google qui peut ingérer
00:33:22non seulement du texte mais aussi des vidéos. Si vous ne comprenez pas ces fondations, il est difficile
00:33:27de percevoir le piège. Et le piège, c'est que nous avons un peu créé un moteur de recherche médiocre.
00:33:31Car avec ces systèmes de RAG naïf où l'on se contente de saisir des morceaux sans comprendre
00:33:36les relations entre eux, quelle est la différence avec un système de "Ctrl+F" sur-compliqué ?
00:33:42La réponse est : il n'y a pas vraiment de différence. C'est pourquoi, dans ces structures de RAG
00:33:48simplistes et démodées (que l'on trouve pourtant encore partout)... Si vous voyez quelqu'un dire :
00:33:54"Voici mon système RAG Pinecone" ou "Voici mon RAG Supabase" et qu'il ne mentionne rien sur le GraphRAG
00:33:58ou sur un système sophistiqué de reclassement, et bien ça va être nul. L'efficacité réelle
00:34:03sera de l'ordre de 25 %. Vous n'aurez la bonne réponse qu'une fois sur quatre ; autant deviner.
00:34:07Si vous ne le savez pas d'avance, vous pouvez vous faire avoir, être confus ou, dans certains cas,
00:34:12carrément vous faire arnaquer en achetant des systèmes de RAG qui n'ont aucun sens. Le niveau 5 n'est
00:34:18donc pas axé sur l'implémentation de ces systèmes naïfs, mais sur la compréhension de leur
00:34:23mécanique pour que, le moment venu d'implémenter quelque chose de plus sophistiqué, vous compreniez
00:34:28réellement ce qui se passe. Car cette explication de cinq minutes sur le RAG n'est malheureusement
00:34:34pas comprise par la plupart des gens qui disent : "Il me faut un système de RAG". En avez-vous vraiment besoin ?
00:34:38Vous devez aussi vous demander quel genre de questions vous posez à votre système. Si vous traitez
00:34:43essentiellement votre base de connaissances comme un livre de règles géant et que vous avez juste
00:34:48besoin d'en extraire des points spécifiques, alors Obsidian suffit probablement, ou un système
00:34:54de RAG naïf fera l'affaire. Mais si nous devons comprendre des relations, savoir comment X interagit
00:34:59avec Y alors qu'ils sont dans deux documents séparés qui ne se mentionnent jamais, et que je ne peux pas
00:35:02juste les mettre dans le contexte car j'ai des milliers de documents de ce type... Et bien c'est là
00:35:09que vous aurez besoin du RAG, et d'un RAG plus sophistiqué que le simple RAG vectoriel.
00:35:13C'est là qu'il faut commencer à parler de GraphRAG. Ainsi, quand on aborde le niveau 6
00:35:19de Claude Code et du RAG, on parle de GraphRAG. À mon sens, si vous allez utiliser le RAG,
00:35:23c'est le niveau minimal d'infrastructure que vous devez créer. Ici, on utilise LightRAG, qui est un
00:35:29outil totalement open source. Je mettrai un lien au-dessus où j'explique exactement comment l'utiliser
00:35:34et le bâtir. L'idée du GraphRAG est évidente : c'est l'idée que tout est connecté. Ce n'est pas
00:35:39une base de données avec des vecteurs isolés, mais un ensemble d'éléments reliés les uns aux autres.
00:35:44Je clique sur ce document, je peux voir ici sur la droite (je vais déplacer ça) la description du vecteur,
00:35:50le nom, le type, le fichier, le morceau et, plus important encore, les différentes relations. Cette approche
00:35:55basée sur les relations donne des résultats plus efficaces. Voici un graphique issu du GitHub de LightRAG.
00:36:00Il date d'environ six à huit mois. À noter aussi que LightRAG est le système de GraphRAG le plus léger
00:36:05que je connaisse. Il existe des versions très robustes, dont GraphRAG lui-même de Microsoft.
00:36:10C'est littéralement nommé GraphRAG. Mais quand on compare le RAG naïf à LightRAG, on constate
00:36:15partout des bonds de performance dépassant souvent les 100 %. 31,6 contre 68,4 ;
00:36:2324 contre 76 ; 24 contre 75, et ainsi de suite. Cela dit, selon LightRAG, il arrive
00:36:30à tenir tête et même à battre GraphRAG lui-même. Mais bon, ce sont les chiffres de LightRAG,
00:36:35donc à prendre avec précaution. En voyant ce système de graphe de connaissances, votre esprit
00:36:4324 contre 76, 24 contre 75, et ainsi de suite. Et cela étant dit, selon Light RAG, il
00:36:49tient tête et bat même GraphRAG lui-même ; mais bon, ce sont les chiffres de Light RAG, donc
00:36:54à prendre avec des pincettes. Maintenant, quand on regarde ce système de graphe de connaissances,
00:36:58votre esprit pense probablement à Obsidian car cela y ressemble beaucoup. Cependant,
00:37:04ce que nous voyons ici dans Obsidian est bien plus rudimentaire que ce qui se passe dans Light RAG
00:37:10ou tout système GraphRAG, car cette série de connexions que nous voyons ici est manuelle
00:37:16et quelque peu arbitraire. C'est connecté seulement parce que nous avons défini des documents liés,
00:37:22ou Claude Code l'a fait lors de la génération de ce document. On ajoute juste des crochets et
00:37:27boum, le document est connecté. En théorie, je pourrais connecter des documents aléatoires
00:37:30qui n'ont rien à voir entre eux. Claude Code n'est pas stupide, donc il ne le fera pas, mais c'est
00:37:35très différent de ce qui se passe ici. Là, c'est passé par un véritable système d'embedding,
00:37:41le contenu réel a été analysé, une relation a été établie, une entité a été envoyée.
00:37:46Il y a beaucoup plus de travail dans Light RAG pour définir les relations que dans Obsidian.
00:37:52Cette différence se traduit-elle par un écart énorme en termes de performance à bas niveau ?
00:38:02À grande échelle peut-être. Encore une fois, nous sommes dans une sorte de zone grise,
00:38:07cela dépend de votre échelle et du sujet. Personne ne peut répondre à part vous et votre expérience,
00:38:13mais comprenez que ces deux choses ne sont pas identiques. Ce sont deux systèmes totalement différents.
00:38:20L'un est assez sophistiqué, l'autre est rudimentaire. Comprenez bien cela. Et pour conclure,
00:38:26le niveau 6 avec GraphRAG, c'est quand on décide qu'Obsidian ne suffit plus,
00:38:31que le RAG naïf ne fonctionne pas, et qu'on a besoin d'extraire des entités et des relations
00:38:36pour vraiment exploiter ce design de système de requête hybride vecteur + graphe.
00:38:43Mais il y a des pièges et des obstacles sérieux, même ici au niveau 6. Quand on parle de
00:38:48Light RAG, ce n'est que du texte. Et si j'ai des PDF scannés ? Des vidéos ? Des images ?
00:38:55Nous ne vivons pas dans un monde où tous vos documents seront juste des Google Docs.
00:39:01Que faire dans ces cas-là ? La récupération multimodale est cruciale. Et que dire de
00:39:06l'ajout de qualités agentiques à ces systèmes ? Leur donner un peu plus de puissance IA ?
00:39:11Si nous parlons de choses multimodales, nous pouvons enfin passer à la pointe du RAG
00:39:17actuel, en avril 2026. C'est l'objet du niveau 7. Au niveau 7, avec le RAG agentique,
00:39:24le point sur lequel nous voulons nous concentrer ici, c'est l'ingestion multimodale.
00:39:31Nous avons déjà fait des vidéos sur ces outils, comme RAG Anything, qui nous permettent
00:39:36d'importer des images et des documents non textuels — encore une fois, pensez aux PDF scannés —
00:39:44dans des structures comme le graphe de connaissances Light RAG. Il y a aussi des nouveautés
00:39:49comme Gemini Embedding 2, sorti en mars, qui permet d'intégrer des vidéos directement
00:39:56dans notre base de données vectorielle. C'est franchement là que va le secteur.
00:40:01Le texte ne suffit plus. Combien d'informations et de connaissances sont piégées sur internet,
00:40:06surtout sur des sites comme YouTube, où tout est vidéo ? Et on veut plus qu'une simple transcription.
00:40:10Une transcription ne suffit pas. Ce problème multimodal est réel, et encore une fois,
00:40:16ce sont des choses sorties il y a quelques semaines. Le niveau 7 est aussi le moment
00:40:20où il faut prêter attention à l'architecture et aux pipelines de données entrant et sortant
00:40:25de notre système RAG. Faire entrer les données ne suffit pas. C'est bien d'avoir des connexions,
00:40:30mais comment les données arrivent-elles là ? Comment arrivent-elles dans le contexte d'une équipe ?
00:40:35Comment en sortent-elles ? Et si certaines informations changent dans un document ?
00:40:40Si quelqu'un le modifie, comment est-il mis à jour ? Que faire des doublons ? Qui peut ajouter
00:40:46ces éléments ? En production, ce sont des questions que vous devez commencer à vous poser.
00:40:50Quand on regarde un système de RAG agentique comme celui-ci de n8n, vous voyez que
00:40:54la vaste majorité de l'infrastructure est dédiée à l'ingestion et à la synchronisation des données.
00:41:01Seule une petite partie concerne le RAG lui-même, juste là. Car nous avons besoin de systèmes
00:41:06qui nettoient les données et vérifient : "D'accord, nous venons d'ingérer ce document, c'est
00:41:11la version 2 de la version 1, pouvons-nous maintenant nettoyer ces données ?"
00:41:17Voici un exemple de pipeline d'ingestion où les documents ne sont pas mis directement
00:41:21dans le système ; au lieu de cela, on les place dans un Google Drive, et de là ils sont ingérés
00:41:27dans le système GraphRAG et enregistrés. Ce sont ces détails qui feront ou non le succès
00:41:31de votre système RAG en usage réel. Et quand on parle de RAG agentique, comme vous voyez ici,
00:41:37même si c'est flou : si un agent IA gère tout le programme, imaginons un chatbot pour votre équipe,
00:41:42doit-il toujours interroger cette base de données ? La réponse est probablement non.
00:41:49Dans un cadre professionnel, vous aurez des informations textuelles dans une base comme celle-ci,
00:41:54mais vous aurez probablement aussi d'autres bases de données, comme des bases Postgres standard,
00:41:58avec une foule d'informations que vous voulez interroger via SQL également.
00:42:03Donc, pour un système RAG agentique, il faut cette capacité à décider intelligemment :
00:42:08"Vais-je interroger la base GraphRAG représentée ici, ou vais-je simplement effectuer
00:42:15des requêtes SQL dans Postgres ?" Cela peut devenir complexe, n'est-ce pas ?
00:42:20Et tout cela dépend du cas d'usage, c'est pourquoi il est parfois difficile de couvrir chaque
00:42:23cas particulier. Le point essentiel du niveau 7 n'est pas qu'il existe un système RAG miracle
00:42:30inconnu, mais que le diable se cache dans les détails, principalement dans l'ingestion
00:42:34et la mise à jour des données. Mais aussi : comment y accède-t-on réellement ? C'est facile
00:42:39en démo : je vais sur Light RAG, je vais dans "récupération" et je pose des questions.
00:42:46C'est un scénario différent avec une équipe où tout le monde l'aborde sous des angles variés,
00:42:50et vous ne voulez probablement pas que tout le monde puisse charger des fichiers directement.
00:42:55Cela dit, pour l'entrepreneur solo qui essaie de créer un système RAG sophistiqué capable
00:43:01de gérer du multimodal, je suggère la combinaison RAG Anything + Light RAG.
00:43:07J'ai fait une vidéo là-dessus. Si elle n'est pas déjà liée, je la mettrai en haut. Je la recommande
00:43:14pour plusieurs raisons : d'abord, c'est open source et léger, donc vous ne dépensez pas
00:43:19une fortune ou un temps fou à mettre cela en place pour vérifier si c'est pertinent.
00:43:26Ce qu'on veut, c'est ne pas s'enfermer dans des systèmes sans issue après avoir dépensé
00:43:31beaucoup d'argent, c'est pourquoi j'adore Obsidian et je recommande Light RAG et RAG Anything.
00:43:37Si vous essayez et que ça ne marche pas pour vous, ce n'est pas grave ; vous avez perdu
00:43:42quelques heures, mais vous n'avez pas dépensé une fortune sur le GraphRAG de Microsoft,
00:43:45qui est loin d'être bon marché. Alors, quand savez-vous que vous êtes au niveau 7 ?
00:43:50C'est pour le multimodal : indexer des images, des tableaux, des vidéos, et intégrer
00:43:56un système d'agent capable de décider intelligemment quel chemin emprunter pour répondre.
00:44:02Au niveau 7, vous intégrez probablement tout cela : des fichiers Markdown pour les infos permanentes,
00:44:06peut-être aussi une base de code, sans doute aussi Obsidian via un coffre (vault),
00:44:12plus une section de documents dans une base GraphRAG, et un système IA en haut de l'entonnoir
00:44:16qui décide : "On pose cette question, je prends cette route."
00:44:20C'est une architecture de mémoire mature que je suggère. Mais quel est le piège ?
00:44:25Le piège est de vouloir s'imposer ce niveau de sophistication quand ce n'est pas nécessaire.
00:44:33Pour être honnête, la plupart d'entre vous se contenteront très bien d'Obsidian.
00:44:40Vous n'avez pas besoin de GraphRAG, ni même de RAG en général la plupart du temps.
00:44:47Si le besoin du niveau 7 n'est pas évident, et surtout si vous n'avez pas testé Obsidian,
00:44:52ne venez pas ici, ce serait probablement une perte de temps. Le but de cette vidéo était
00:44:57de vous exposer ce que je vois comme les différents niveaux de RAG, de mémoire et de Claude Code,
00:45:01et de montrer les tensions et les compromis pour vous aider à choisir selon votre cas.
00:45:07Encore une fois, le plus important est d'expérimenter. Vous n'avez pas besoin de tout savoir
00:45:12avant de commencer, essayez-les simplement. Je conseille l'ordre croissant si possible.
00:45:18Si vous pouvez vous en sortir avec juste des fichiers Markdown dans un système Claude,
00:45:24c'est parfait, allez-y. Ensuite essayez Obsidian. Si Obsidian ne suffit pas, essayez Light RAG,
00:45:28et ainsi de suite. C'est là que je vais vous laisser pour aujourd'hui. Si vous voulez en
00:45:34savoir plus, surtout sur la partie production du RAG — comment le déployer pour une équipe
00:45:39ou un client — nous avons un module complet là-dessus dans Chase AI Plus ; allez voir.
00:45:43Sinon, dites-moi ce que vous en avez pensé, je sais que c'était une longue vidéo,
00:45:47et je vous dis à bientôt.
00:45:52Prenez soin de vous.