Skip to content

2025

Le RAG ne se limite pas aux embeddings : l'importance de la recherche hybride

Le RAG (Retrieval Augmented Generation) est devenu le standard pour connecter des LLMs à des bases de connaissances privées. Dans la plupart des tutoriels, on vous explique qu'il suffit de découper vos documents en morceaux (chunks), de les transformer en vecteurs (embeddings) et de faire une recherche de similitude.

Cependant, dans des secteurs exigeants comme la banque ou le droit, j'ai constaté que cette approche "tout-vecteur" est souvent insuffisante. Aujourd'hui, je partage avec vous pourquoi la combinaison de la recherche vectorielle et de la recherche plein texte (Full-Text Search) est le véritable pilier d'un RAG de production fiable.

Du PDF au Markdown : choisir le bon pipeline d'ingestion pour son RAG

On dit souvent que la qualité d'un système RAG dépend de son modèle d'embedding ou de son LLM. Mais mon expérience m'a montré qu'en réalité, la bataille se gagne bien plus tôt : au moment du parsing des documents. Un agent IA ne peut pas naviguer intelligemment dans un document s'il reçoit un bloc de texte brut sans structure.

Aujourd'hui, je partage avec vous mon approche pour transformer des PDF complexes en Markdown structuré, et surtout comment choisir entre les deux outils phares du moment.

Concevoir un système agentique : de la théorie à la réalité terrain

On a souvent tendance à se concentrer sur la création d’APIs, de modèles ou encore de packages Python bien structurés. Dans des équipes très spécialisées — avec des backend engineers, des data engineers et des équipes plateforme — l’intégration de bout en bout est généralement fluide.

Mais mon expérience dans des organisations moins technologiques, ou au sein de petites équipes, m'a appris une réalité différente : le défi ne réside pas seulement dans le modèle lui-même, mais dans la manière dont ces composants s’intègrent réellement avec les systèmes existants. Voici comment j'ai conçu mon architecture pour qu'elle soit non seulement performante, mais surtout intégrable.

Automatiser la génération de documents complexes : mon approche agentique

La génération de documents professionnels, tels que les rapports techniques ou les notes de cadrage, est une tâche qui demande souvent des heures de recherche, de synthèse et de mise en forme. Si les LLMs classiques excellent dans la rédaction de courts textes, j'ai souvent remarqué qu'ils peinent à produire des documents longs et structurés tout en respectant un template strict.

Pour relever ce défi, j'ai exploré une approche agentique basée sur le pattern ReAct (Reasoning + Acting). Dans cet article, je partage avec vous ma façon de transformer un processus de rédaction manuel en un système capable de rechercher des données, de rédiger des sections et de compiler un document final. C'est une méthode parmi d'autres, mais elle s'est révélée particulièrement efficace.

Agentic IA (2/3): From Router to React Agent

Dans le premier article de cette série, nous avons construit un Router Agent avec une logique if/else rigide. Aujourd'hui, nous passons au React Agent : un agent autonome qui décide lui-même de ses actions.

Contrairement aux Router Agents qui suivent un chemin fixe, les React Agents s'adaptent dynamiquement à chaque situation. Cette flexibilité résout un problème majeur : les orchestrateurs complexes deviennent rapidement ingérables car ils nécessitent de maintenir des prompts avec exemples de plus en plus lourds.

Agentic IA (1/3): Exemple d'un agent de type Router

Dans cet article, je partage avec vous comment construire des agents IA sans recourir à des frameworks complexes comme LangChain ou SmolAgent. Si vous êtes nouveau sur ce blog, je vous invite à lire d'abord cet article :

Qu'est-ce qu'un agent ? Pour comprendre les concepts de base, je vous invite à lire d'abord l'article précédent sur les agents

Cette première partie de la série "How to build an Agent" se concentre sur la création d'un Router Agent - un agent capable de router intelligemment les requêtes utilisateur vers différentes actions selon leur nature.

Agentic IA ne veut pas forcément dire Agent ReAct

Introduction

Dans le monde de l'intelligence artificielle générative, le terme "agent" est de plus en plus utilisé, notamment avec l'émergence des architectures basées sur le protocole MCP. Pourtant, une question se pose : s'agit-il d'une réelle innovation ou simplement d'un rebranding de concepts déjà existants ?

Lors d'une discussion avec un collègue, on s’est vite rendu compte qu’on n’avait pas la même définition d’un agent. D’un côté, on pensait que les agents ne sont rien de plus qu’une nouvelle manière d’organiser des abstractions classiques. De l’autre, on défendait l’idée que les agents représentent une avancée réelle, un changement de paradigme dans la façon de concevoir des systèmes intelligents.

AWS pour Data Scientists et pas que !

Bon on en fin du mois, parlons de Cloud computing avec un focus sur AWS, le géant du secteur. Tu es data scientist, tu veux te lancer dans le machine learning, mais tu ne sais pas par où commencer ? Tu as entendu parler d’AWS, mais tu trouves ça trop complexe ? Pas de panique, cet article est fait pour toi ! Si tu débarques dans l’univers AWS, tu as sûrement ressenti cette sensation : tu ouvres la console AWS pour la première fois, et c’est comme si tu étais dans le cockpit d’un vaisseau spatial… avec 200 boutons et aucun manuel d’utilisation ! Pas de panique, on va y aller du bas vers le haut : d’abord les fondations, puis la magie ML. Prêt·e ? C’est parti !

Trop de SDK pour les LLMs ? Passe à une LLMFactory ou Adapters avec LiteLLM

Dans l’univers des LLMs, chaque provider a son propre dialecte. Tu veux utiliser OpenAI** ? Tu installes openai. Tu veux Claude (Anthropic) ? C’est anthropic. Et pour tester Groq, Mistral, Fireworks, ou même AWS Bedrock ? Chacun vient avec son propre SDK, ses headers custom, sa manière de formuler les prompts, et son format de sortie.

C’est vite le chaos. 😤

Traitement des audios pour la création de datasets audio

Ça fait un moment que je n’ai pas publié, et c’est surtout parce que j’ai été absorbé par mon projet open source de création de datasets en Moore et l’entraînement de modèles locaux. Beaucoup de choses ont été réalisées en coulisses, et j’ai décidé de publier un article par mois pour vous tenir au courant. Pour plus de détails, n’hésitez pas à faire un tour sur mon GitHub ici ou à consulter mon profil Hugging Face ici.

Aujourd’hui, je vais vous raconter comment j’ai abordé le traitement de fichiers audio, depuis leur chargement jusqu’à leur agrégation dans un dataset, en passant par la segmentation des audios. On va voir ensemble comment un simple fichier audio se transforme en un tas d’array, prêt à être exploité pour du machine learning. C’est parti !