📖

Qu'est-ce que Recherche sémantique ?

La recherche sémantique trouve des résultats par le sens, et non par correspondance exacte de mots-clés. Découvrez son fonctionnement, son importance et ses usages.

La recherche sémantique est une façon de trouver de l'information qui se concentre sur le sens d'une requête plutôt que sur les mots exacts saisis par l'utilisateur. Au lieu d'exiger une correspondance exacte de mots-clés, elle interprète l'intention, les synonymes et le contexte pour renvoyer des résultats conceptuellement pertinents. C'est ce qui permet à un moteur de recherche de reconnaître qu'une personne qui recherche « comment réparer un robinet qui fuit » pose en réalité une question sur la plomberie, même lorsqu'aucun document ne contient littéralement les deux expressions.

Comment fonctionne la recherche sémantique

Au cœur de la recherche sémantique se trouvent les embeddings — des représentations numériques de texte produites par un modèle de langage. Chaque morceau de texte, qu'il s'agisse d'une requête ou d'un document, est converti en un vecteur de haute dimension qui capture son contenu sémantique. Lorsqu'un utilisateur effectue une recherche, sa requête est intégrée dans le même espace vectoriel, et le système récupère les documents dont les vecteurs sont les plus proches du vecteur de requête, généralement mesurés par similarité cosinus ou distance euclidienne.

Par exemple, une requête comme « conseils pour travailler depuis la maison » peut correspondre à un document intitulé « conseils de productivité en télétravail » parce que les deux phrases produisent des vecteurs similaires, même si elles ne partagent presque aucun mot. Les systèmes modernes combinent souvent des vecteurs sémantiques avec des signaux de mots-clés classiques (une approche hybride) pour équilibrer précision et rappel.

Pourquoi c'est important

La recherche sémantique améliore considérablement l'expérience utilisateur dans les applications où les utilisateurs ne connaissent pas le vocabulaire approprié, où le contenu pertinent est formulé de nombreuses façons différentes, ou où l'intention compte plus que la formulation. Elle alimente les bases de connaissances d'entreprise, les portails d'assistance client, la découverte de documents juridiques et médicaux, la découverte de produits e-commerce, et l'étape de récupération dans les systèmes de génération augmentée par récupération (RAG). En faisant remonter du contenu conceptuellement lié, elle réduit l'écart entre la façon dont les gens posent naturellement leurs questions et la façon dont l'information est stockée.

Composants clés

  • Modèle d'embedding : un réseau de neurones (souvent un transformer) qui projette le texte dans des vecteurs denses, comme les sentence-transformers, les embeddings d'OpenAI ou les modèles d'embedding de Cohere.
  • Base de données vectorielle : un magasin spécialisé pour la recherche rapide de plus proches voisins à grande échelle — par exemple Pinecone, Weaviate, Milvus et pgvector.
  • Métrique de similarité : une mesure de distance (cosinus, produit scalaire ou euclidienne) utilisée pour classer les candidats.
  • Reranker : un modèle cross-encoder facultatif qui recalcule les scores des meilleurs candidats pour une meilleure précision.
  • Recherche hybride : combinaison de la recherche vectorielle avec BM25 ou des filtres par mots-clés pour gérer les termes rares, les noms propres et les identifiants exacts.

La recherche sémantique est devenue une brique fondamentale des applications d'IA modernes, d'autant plus que les grands modèles de langage s'appuient sur elle pour ancrer leurs réponses dans des informations à jour ou propriétaires.

Questions fréquemment posées

What is the difference between semantic search and keyword search?
Keyword search matches the literal words in a query against documents, while semantic search matches meaning using vector embeddings. As a result, semantic search can return relevant documents that use different wording, synonyms, or paraphrases from the query, which keyword search would miss.
What are embeddings in semantic search?
Embeddings are numerical vector representations of text produced by a language model. Semantically similar sentences end up close together in the vector space, which is what allows a system to measure relevance through distance rather than word overlap.
Is semantic search the same as vector search?
Vector search is the technical mechanism that powers most semantic search systems, but the two are not identical. Semantic search is the goal of retrieving by meaning, while vector search is one common implementation of it using nearest-neighbor lookup over embeddings.
How does semantic search relate to RAG?
Retrieval-augmented generation (RAG) uses semantic search as its retrieval step. When a user asks a question, the RAG pipeline semantically searches a knowledge base, retrieves the most relevant passages, and feeds them to a language model so its answer is grounded in that context.