Guide du directeur technique pour la recherche e-commerce IA de bout en bout
La simplicité est essentielle pour les moteurs de recherche, mais concevoir un moteur qui permette cette simplicité est complexe. Depuis plus de 20 ans, la plupart des solutions de recherche intégrées permettent de faire correspondre la requête d'un utilisateur à un index de recherche. Commence alors le travail d'optimisation du moteur. En effet, les moteurs de recherche ne peuvent pas comprendre pleinement les intentions des internautes.
Une personne qui recherche « qu'est-ce que la rouille » s'intéresse-t-elle au processus de corrosion, à un langage de programmation informatique, ou à autre chose ? Pendant des années, quiconque a dû optimiser un moteur de recherche a utilisé des règles manuelles, des synonymes, le bourrage de mots-clés ou une autre forme d'IA rudimentaire pour « corriger » les correspondances et parvenir à une compréhension.
La mise en place d'une IA de bout en bout était possible, mais son exploitation à grande échelle s'avérait impraticable en raison des problèmes de coût et de performance.
Cela vient de changer avec Algolia NeuralSearch , qui intègre un traitement IA natif de bout en bout.
Il s'agit probablement d'un sujet à part entière, mais commençons par nous concentrer sur l'importance réelle de l'IA de bout en bout avant d'aborder plus en détail sa définition. Les données suggèrent que 50 à 70 % du chiffre d'affaires est perdu en raison d'une optimisation insuffisante des processus non optimisés. Théoriquement, avec un temps et des ressources illimités, il serait possible d'optimiser manuellement l'ensemble du processus, mais cela dépasse les capacités humaines.

Prenons par exemple le profil de recherche de deux grands détaillants, l'un au Royaume-Uni et l'autre aux États-Unis, qui représentent bien la majorité des entreprises en ligne. Est-il possible de gérer manuellement une telle longue traîne ? Peut-on l'optimiser en intégrant de l'IA au moteur de recherche principal ? Non, c'est tout simplement irréalisable.

C’est là que le recours à l’intelligence artificielle devient nécessaire. Les algorithmes d’apprentissage automatique peuvent optimiser l’intégralité des catalogues de recherche. Jusqu’à présent, cela était difficilement réalisable, mais grâce à la maturité des algorithmes d’IA, à la richesse des données et à la puissance accrue du cloud computing, nous pouvons désormais appliquer l’IA à des catalogues de toute taille. Déployer l’IA de bout en bout, depuis la saisie de la requête par l’utilisateur jusqu’à l’affichage des résultats, constitue la solution à ce défi.
Alors, pourquoi une IA de bout en bout est-elle nécessaire ? Jusqu’à présent, la plupart des solutions d’IA se sont concentrées sur la résolution de parties isolées de la requête de recherche. Par exemple, le traitement de la requête (la première étape de l’affichage des résultats) ou le classement, qui intervient généralement en dernier.
Le chaînon manquant était l'utilisation de l'IA pour la recherche. La recherche consiste pour le moteur de recherche à trouver les informations les plus pertinentes. On peut affirmer que l'IA a l'impact le plus important sur la qualité des résultats lors de cette recherche. Grâce à la maturité actuelle de l'apprentissage automatique, ce problème peut enfin être résolu. Nous expliquerons plus en détail le fonctionnement de chaque étape de l'IA pour obtenir de meilleurs résultats.
Compréhension des requêtes :
Récupération
Classement
Algolia NeuralSearch soumet chaque requête à trois phases afin de fournir les meilleurs résultats. Nous la qualifions de recherche IA de bout en bout pour la différencier des solutions concurrentes qui n'intègrent l'IA qu'à certaines étapes du traitement (c'est-à-dire une « IA de fortune »).
Ces phases comprennent : la compréhension de la requête, la récupération et le classement. Chacune de ces capacités distinctes contribue à la qualité des résultats finaux.
La compréhension des requêtes repose sur le traitement automatique du langage naturel (TALN) et la compréhension du langage naturel (CLN). Le TALN analyse et traite le langage saisi dans la barre de recherche afin de préparer la requête à son exécution. Ce processus peut se limiter à comparer la requête telle qu'elle est écrite au contenu de l'index. La recherche par mots-clés classique est en réalité plus complexe, car elle inclut la tokenisation et la normalisation de la requête en éléments plus petits : mots et mots-clés. Ce processus peut être simple (lorsque les mots sont séparés par des espaces) ou plus complexe (comme pour certaines langues asiatiques qui n'utilisent pas d'espaces, obligeant ainsi la machine à reconnaître les mots).
Le traitement automatique du langage naturel (TALN) se concentre davantage sur la détermination de l'intention de l'utilisateur.
Il utilise l'apprentissage automatique pour la classification des intentions, la sémantique, les synonymes et l'expansion de l'ontologie afin de comprendre les mots et les expressions. Cette étape améliore l'interprétation et la compréhension de la requête.
Par exemple, deux requêtes peuvent utiliser les mêmes termes pour désigner des choses très différentes : « Bouteille en métal compatible lave-vaisselle » et « Boîte en métal ignifugée ».

Le premier exemple illustre l'utilisation du terme « safe » comme adjectif pour une bouteille d'eau, tandis que le second désigne un coffre-fort métallique, un nom servant à ranger des objets de valeur. Dans ces deux cas précis, la tokenisation NLP est utilisée pour décomposer chaque expression, et la compréhension du langage naturel (NLU) permet d'interpréter le sens de chaque requête. Ceci est valable pour la recherche textuelle et vocale, mais la recherche vocale peut se révéler plus complexe avec des homophones comme « pear », « pair » et « pare », par exemple.
La recherche sémantique requiert une approche différente. Elle s'appuie généralement sur de grands modèles de langage (LLM) pour créer des représentations vectorielles. Les vecteurs sont des représentations mathématiques de mots, d'images, de vidéos, ou de pratiquement tout type d'objet que l'on souhaite comparer. Les modèles d'apprentissage automatique déterminent les relations sémantiques entre les objets d'un index. Les vecteurs peuvent avoir des centaines, voire des milliers de dimensions, permettant ainsi de déterminer la similarité. Il est difficile de visualiser autant de dimensions ; c'est pourquoi on utilise le plus souvent des représentations tridimensionnelles, comme l'image ci-contre.
La recherche vectorielle permet d'établir des liens entre les mots, et les vecteurs similaires sont regroupés.
Les vecteurs peuvent être combinés (ou soustraits) pour créer une nouvelle signification et comprendre les relations ; l'exemple classique est « Roi-homme = reine ».
Une meilleure recherche d'informations peut améliorer à la fois la précision (exactitude des résultats) et le rappel (exhaustivité des résultats dans l'ensemble de l'index). Il est difficile de trouver un juste milieu entre précision et rappel ; améliorer l'une peut avoir l'effet inverse sur l'autre.
Les moteurs de recherche par mots clés ont tendance à fournir de meilleurs résultats pour les termes principaux.
Alors que la recherche vectorielle par IA fonctionne bien pour les requêtes de longue traîne moins courantes, il est nécessaire de résoudre les deux problèmes, ce que l'on appelle parfois la recherche hybride.
La recherche par mots-clés repose généralement sur la correspondance statistique à l'aide de BM25 ou TF-IDF et de techniques apparentées pour classer les résultats en fonction des termes de la requête présents dans chaque document. Par exemple, TF-IDF compare la fréquence inverse d'un mot dans un document (IDF) à sa fréquence d'apparition (TF) afin d'en déterminer l'importance. Les mots vides comme « le », « et », « ou » apparaissent fréquemment, tandis que des mots comme « brosse à dents » ou « eau », moins fréquents, sont généralement plus informatifs. La fréquence d'apparition d'un terme peut servir d'indicateur de l'importance ou de la pertinence du document. La plupart des modèles nécessaires à la recherche par mots-clés sont disponibles. De nombreuses entreprises utilisent encore Lucene, le projet Apache historique à l'origine d'Elasticsearch et de Solr.
Les vecteurs sont volumineux, nécessitent généralement des bases de données spécialisées optimisées par GPU et leur mise à l'échelle, tout en garantissant des performances élevées, s'avère coûteuse. Parmi les méthodes d'approximation des plus proches voisins (ANN) les plus populaires pour la recherche de similarités entre vecteurs, on trouve des techniques telles que HNSW (Hierarchical Navigable Small World), IVF (Inverted File) et PQ (Product Quantization, une technique permettant de réduire le nombre de dimensions d'un vecteur). Chaque technique vise à améliorer une propriété de performance particulière, comme la réduction de la mémoire avec PQ ou des temps de recherche rapides et précis avec HNSW et IVF. Il est courant de combiner plusieurs composantes pour produire un index composite et obtenir des performances optimales pour un cas d'utilisation donné.
Même avec la plupart des techniques d'approximation du plus proche voisin (ANN), il n'existe pas de méthode simple pour concevoir un algorithme de recherche vectorielle qui soit pratique pour la plupart des applications de production. Par exemple :
Chez Algolia, nous avons mis au point une technique novatrice : le hachage neuronal. Concrètement, nous utilisons des réseaux neuronaux pour compresser des vecteurs en de minuscules fichiers binaires qui conservent l’essentiel de l’information. Le vecteur binaire est beaucoup plus petit et plus rapide à calculer que les vecteurs classiques, ce qui nous permet d’effectuer simultanément et à grande échelle des recherches vectorielles et par mots-clés sur des processeurs standard. Nous normalisons et combinons ensuite les résultats afin de fournir une mesure unique de pertinence pour une même requête.
Ces compromis, auxquels s'ajoutent les coûts liés à la mise à l'échelle de la recherche vectorielle, rendent la mise en œuvre pertinente de l'IA hors de portée pour de nombreuses organisations.
La recherche sur les sites et les applications n'est qu'une application parmi d'autres des vecteurs. Il convient de mentionner que les vecteurs peuvent également servir à comparer différents types d'objets, tels que des images, des vidéos, des symboles, voire des documents entiers, et trouvent de nombreuses applications concrètes, comme les systèmes de recommandation de films, la reconnaissance faciale, la détection de fraudes, etc.
Le positionnement d'un produit peut avoir un impact considérable sur son succès en référencement. Il existe un biais de position dans le classement des résultats : les trois premiers résultats reçoivent beaucoup plus de clics que les autres. Il est également nécessaire de réévaluer constamment le classement ; les résultats bien positionnés aujourd'hui pourraient devoir être relégués au second plan demain si un produit plus pertinent ou plus populaire apparaît sur le marché.
Si votre méthode de recherche est performante (voir ci-dessus), le classement initial est plus avantageux. L'apprentissage du classement (LTR), parfois appelé classement par apprentissage automatique (MLR), est une technique d'apprentissage automatique qui améliore le classement et sa précision. Elle comprend l'apprentissage supervisé, non supervisé et par renforcement. Il existe également des variantes comme l'apprentissage semi-supervisé. Chacune de ces solutions offre des capacités de classement par IA permettant d'obtenir de meilleurs résultats que les méthodes statistiques plus simples.

Bien que l'apprentissage automatique puisse sembler plus facile à maîtriser que la pertinence, ce n'est pas forcément le cas. Airbnb a mis deux ans, avec une équipe de data scientists et d'ingénieurs très talentueux, à développer une solution de classement par IA !
Ces dernières années, les techniques d'apprentissage du classement, telles que l'apprentissage par renforcement, sont devenues plus populaires car elles réduisent la maintenance et l'itération.

L'apprentissage par renforcement utilise des événements tels que les clics, les conversions, les achats, etc., pour reclasser les résultats du plus populaire au moins populaire. Il peut également faire l'inverse : reléguer au second plan les résultats les moins performants. Le principal défi du classement réside dans les données. L'apprentissage par renforcement nécessite généralement une grande quantité de données pour fonctionner, mais de nouveaux modèles permettent d'obtenir de meilleures prédictions avec moins de données.
À chaque fois que vous avez dû choisir entre acheter ou développer une solution, votre équipe d'ingénieurs talentueux vous a dit : « Ne vous inquiétez pas, on gère. » Ils argumentent : « Pourquoi dépenser des centaines de milliers d'euros pour un fournisseur SaaS alors que notre équipe peut déployer une alternative open source sur AWS et la gérer nous-mêmes ? » Et généralement, ça a fonctionné, permettant à l'entreprise d'économiser de l'argent qui peut être réinvesti dans le recrutement de nouveaux ingénieurs.
L'IA est en train de tout changer.
Recruter une équipe de data scientists talentueux est extrêmement difficile. La course aux talents en IA a fait exploser les coûts de recrutement et de fidélisation, notamment pour les doctorants des meilleures universités. Votre entreprise a-t-elle les mêmes moyens financiers que les géants de la tech ? Et sa marque peut-elle rivaliser avec celles de Google et d’OpenAI ?
Vous risquez de vous retrouver avec une équipe de data scientists en dessous de la moyenne si vous ne parvenez pas à attirer les talents.
Constituer une équipe à partir de zéro prend beaucoup de temps, les délais de recrutement dépassant six mois. L'intégration des data scientists est particulièrement longue, car la complexité de leur travail et des données exige une phase d'expérimentation pour acquérir de l'expérience.
Développer une nouvelle compétence comme la science des données au sein de votre organisation prend encore plus de temps : il faut créer des outils, des processus et des capacités qui n’existaient pas auparavant. Prévoyez au moins deux ans entre la décision d’embaucher et la mise en service des premiers produits. Votre entreprise peut-elle se permettre d’attendre aussi longtemps ?
Pour réussir dans le développement de l'IA, il est indispensable d'instaurer une culture qui valorise l'expérimentation scientifique. L'apprentissage en production est le seul moyen de construire et d'optimiser les modèles. Cette culture est très différente du développement logiciel, où la solution (et les délais de livraison) peuvent souvent être expliqués en détail avant même qu'une seule ligne de code ne soit écrite.
L'IA, en revanche, implique des échecs (répétés) en production et l'incertitude quant au succès ou non de la prochaine tentative. Nombre d'entreprises peinent tout simplement à développer et à cultiver cette culture.
Il faut une quantité considérable de données pour entraîner des modèles d'IA à partir de zéro . Il est fort probable que vous ne disposiez pas d'autant de données qu'un fournisseur capable d'exploiter les données de milliers de clients pour créer un modèle nettement plus performant que le vôtre.
Sans un volume de données suffisant, tester de nouvelles expériences prend beaucoup de temps et vos algorithmes progresseront lentement. Les données sont essentielles à une équipe d'IA, et la plupart des entreprises n'ont tout simplement pas la capacité de les exploiter à grande échelle.
Le secteur de l'IA évolue à une vitesse fulgurante. Si vous choisissez de développer vos propres compétences, votre capacité d'adaptation dépendra de celle de votre équipe. Celle-ci sera-t-elle capable de suivre les dernières publications scientifiques, d'assister aux conférences et de rester à la pointe de l'innovation ?
En choisissant d'acheter plutôt que de développer, vous pouvez vous adapter grâce à la sélection des fournisseurs et tirer parti des connaissances de pointe des équipes d'IA de vos fournisseurs.
L'exploitation de systèmes d'IA en production est extrêmement complexe. Elle exige des flux de données en temps réel à haut débit et d'importantes ressources de calcul. En cas de pic de demande, êtes-vous capable d'augmenter rapidement la capacité, puis de la réduire avant que les coûts ne s'envolent ? Disposez-vous d'ingénieurs spécialisés en fiabilité, capables d'exploiter et de contrôler la qualité des modèles d'IA ?
Les fournisseurs peuvent regrouper la demande de divers clients et répartir la charge en fonction des pics de consommation. Ils ont également les moyens d'embaucher des ingénieurs spécialisés en fiabilité pour gérer des systèmes d'IA à grande échelle.
Même Microsoft — une entreprise disposant des ressources et des talents nécessaires pour développer l'IA — a choisi d'acheter une partie de sa solution d'IA pour Bing.
Les raisons d'opter pour une solution d'IA externe plutôt que pour une solution développée en interne sont les mêmes que celles qui permettent d'obtenir un avantage concurrentiel. Vous pouvez ainsi rivaliser avec les plus grands acteurs du secteur technologique en termes de talent et de rapidité, tout en bénéficiant des connaissances et de la fiabilité du système nécessaires pour que votre organisation puisse maintenir le rythme des affaires à l'ère de l'IA.
Depuis l'annonce de ChatGPT par OpenAI et le début des tests, les déclarations enthousiastes sur son impact révolutionnaire se sont multipliées. La recherche figure parmi les domaines bénéficiant de ces avancées.
Mais vraiment ? Non. Voici pourquoi.
En résumé : ChatGPT est excellent, notamment pour les cas d’utilisation du commerce conversationnel, mais pour une expérience prévisible et rapide, les clients privilégieront toujours la recherche.