Un embedding est une liste de nombres de longueur fixe — un vector — qui encode le sens d'un texte, d'un code ou de tout autre contenu, de sorte que des entrées sémantiquement proches se retrouvent proches dans l'espace vectoriel. Quand on demande à un outil piloté par un LLM « trouve les tests liés à cette fonction », il ne cherche pas de correspondances de chaînes ; il convertit la requête et les fichiers candidats en embeddings, puis récupère les voisins les plus proches.Les chiffres eux-mêmes n'ont aucun sens isolément. Ce qui compte, c'est la distance : deux embeddings dont les vectors sont proches (mesurés par cosine similarity ou produit scalaire) représentent des contenus qui signifient à peu près la même chose, même s'ils ne partagent aucun mot.
Pourquoi les embeddings comptent pour les agents de codage IA en 2026
Les agents de codage modernes — Claude, Copilot, Cursor et outils similaires — opèrent sous des contraintes serrées de context window. La récupération par embeddings est le mécanisme principal qui décide quels fragments de code sont chargés dans cette fenêtre avant même que le modèle les lise. Une mauvaise récupération = un contexte hors sujet = des tokens gaspillés et des réponses dégradées.Trois situations où les embeddings apparaissent directement dans votre workflow :Semantic search dans le code. Des outils comme la semantic code search indexent l'intégralité de votre codebase en embeddings. Au moment de la requête, l'agent transforme votre question en langage naturel en embedding et récupère les k morceaux les plus similaires — généralement quelques centaines de tokens chacun — dans le prompt. La qualité du modèle d'embedding plafonne directement la qualité du contexte récupéré.Pipelines RAG. Le RAG (Retrieval-Augmented Generation) entoure chaque appel LLM d'une étape de recherche par embeddings. Docs, runbooks, fils Stack Overflow — tout est pré-indexé, récupéré à la demande. Sans bons embeddings, le RAG se réduit à une recherche par mots-clés avec des étapes en plus.Signal de fine-tuning. Quand on fine-tune un modèle sur sa codebase, les embeddings du modèle de base initialisent le processus. Partir d'un espace sémantique solide signifie que le modèle a besoin de bien moins d'étapes de gradient — et donc de bien moins de tokens de données d'entraînement — pour se spécialiser.
L'angle coût en tokens
Chaque appel d'embedding a un coût en tokens. text-embedding-3-small facture par token d'entrée ; text-embedding-3-large coûte environ 5 fois plus mais produit des vectors de meilleure qualité. Pour une codebase de 500 k tokens, indexer chaque fichier représente un coût réel. La stratégie de découpage (comment on divise les fichiers avant l'indexation) est donc à la fois un choix de qualité et un choix de coût : des morceaux trop grands gaspillent des tokens sur du remplissage sans intérêt ; des morceaux trop petits perdent le contexte inter-lignes.La couche de compaction de Tokenade réduit le nombre brut de tokens transmis aux appels d'embedding en aval en supprimant les sorties bruitées et répétitives avant qu'elles n'atteignent le modèle — votre index vectoriel reste ainsi plus léger sans sacrifier le rappel. Voir réduire l'utilisation de tokens des agents de codage IA pour le panorama complet.
Quand les embeddings ne sont PAS le bon outil
Recherches par correspondance exacte. Si vous devez trouver tous les sites d'appel de getUserById, un grep ou une requête AST est plus rapide, moins cher et parfaitement précis. Les embeddings échangent la précision contre la largeur sémantique ; utilisez-les quand l'intention compte plus que l'orthographe.
Codebases petites et stables. Si votre dépôt tient dans la context window du modèle en une seule fois, vous n'avez pas besoin de récupération. Chargez tout et évitez le surcoût d'indexation.
Données en flux temps réel. Les embeddings sont calculés au moment de l'indexation. Si vos données changent plus vite que vous ne pouvez les ré-indexer, l'index vectoriel devient obsolète et la qualité de récupération se dégrade.
Tâches nécessitant un raisonnement ordonné. La récupération par embeddings est non ordonnée par nature. Pour des problèmes qui nécessitent de suivre une chaîne logique — « trace l'appel du endpoint X jusqu'à l'écriture en base Y » — un parcours de call hierarchy est plus fiable.
À lire aussi
Token — l'unité de coût des appels d'embedding comme de la génération
Context window — le budget que la récupération par embeddings est conçue à dépenser judicieusement