L'inférence d'IA, qu'est-ce que c'est ?
L'inférence d'intelligence artificielle est l'opération par laquelle un modèle d'IA fournit une réponse à partir de données. Ce que l'on qualifie couramment d'intelligence artificielle (IA) correspond en réalité à l'étape finale d'un processus long et complexe d'apprentissage automatique (AA).
L'entraînement de modèles d'IA à l'aide de gros volumes de données contribue à améliorer la précision et la rapidité des opérations d'inférence.
Par exemple, lorsqu'un modèle d'IA est entraîné avec des données sur les animaux (différences et similitudes, caractéristiques de santé, comportements), il a besoin d'un vaste ensemble de données pour établir des connexions et identifier des schémas.
Une fois l'entraînement terminé, le modèle peut réaliser des opérations d'inférence, comme identifier une race de chien, reconnaître le miaulement d'un chat ou encore formuler un avertissement sur les comportements qui effraient les chevaux. Même s'il n'a jamais observé ces animaux en dehors d'un ensemble de données abstrait, le modèle est capable de réaliser des inférences dans un nouvel environnement et en temps réel grâce aux nombreuses données avec lesquelles il a été entraîné.
Notre propre cerveau établit également ce type de connexions. Nous enregistrons des informations sur différents animaux issues de livres, de films et de ressources en ligne. Nous pouvons observer des images, regarder des vidéos et écouter les sons ou les bruits qu'ils produisent. Lorsque nous allons au zoo, nous sommes capables de faire des inférences, c'est-à-dire de reconnaître des animaux d'après nos connaissances. Et même sans jamais aller au zoo, nous pouvons identifier des animaux grâce aux recherches effectuées. Les modèles d'IA suivent le même cheminement lors de l'étape d'inférence.
Découvrez l'actualité et les nouveautés de Red Hat AI à l'occasion de notre prochain événement en direct. Consultez le calendrier des sessions.
Importance des inférences d'IA
L'inférence d'IA est la phase d'exploitation de l'IA. C'est à cette étape que le modèle est capable d'appliquer à des situations réelles ce qu'il a appris au cours de son entraînement. La capacité de l'IA à identifier des schémas et à aboutir à des conclusions la distingue des autres technologies. Parce qu'elle peut réaliser ces inférences, elle facilite la réalisation de tâches pratiques au quotidien ou la programmation informatique complexe.
Cependant, la croissance incessante des modèles affecte la performance de l'inférence. Plus les modèles se complexifient, plus le processus d'inférence ralentit.
L'inférence exige des modèles d'IA qu'ils effectuent une grande quantité de calculs en un court laps de temps. Par conséquent, des facteurs tels que la taille du modèle, le nombre d'utilisateurs et la latence peuvent limiter les performances. Face à des modèles qui nécessitent davantage de données et de mémoire, le matériel et les accélérateurs peinent à suivre le rythme.
La réussite d'une stratégie d'IA dépend donc du matériel et des logiciels sur lesquels reposent les fonctionnalités d'inférence.
Red Hat AI
Cas d'utilisation de l'inférence d'IA
Aujourd'hui, les entreprises peuvent utiliser l'inférence d'IA dans de multiples situations courantes. Voici quelques exemples :
Santé : l'inférence d'IA peut aider les professionnels de santé à comparer l'historique de patients à des données actuelles, et à identifier des schémas et des anomalies plus rapidement que des humains. L'IA peut, par exemple, déceler les anomalies lors de scanners cérébraux ou signaler les fréquences cardiaques trop élevées. Cette approche accélère la détection des symptômes inquiétants pour la santé des patients.
Finance : après un entraînement basé sur de vastes ensembles de données bancaires et de crédit, l'inférence d'IA peut identifier les erreurs ou les données inhabituelles en temps réel afin de détecter rapidement les fraudes de manière préventive. Cette approche permet d'optimiser les ressources du service clientèle, de protéger la confidentialité des données sur les clients et d'améliorer la réputation de la marque.
Automobile : avec l'entrée de l'IA dans le monde de l'automobile, les véhicules autonomes transforment notre manière de conduire. L'inférence d'IA peut aider les véhicules à se rendre d'un point A à un point B via l'itinéraire le plus efficace ou à freiner à l'approche d'un panneau Stop, dans le but d'améliorer le confort et la sécurité des passagers.
De nombreux autres secteurs utilisent l'inférence d'IA de manière créative, par exemple dans le cadre d'un drive de restauration rapide, d'une clinique vétérinaire ou du service de réception d'un hôtel. Les entreprises trouvent différentes manières de tirer parti de cette technologie pour améliorer leur précision, gagner du temps, réduire les coûts et préserver leur avantage concurrentiel.
Définition de l'entraînement de l'IA
L'entraînement de l'IA est le processus qui consiste à utiliser des données pour permettre à un modèle d'apprendre à réaliser des connexions et à identifier des schémas. Lors de l'entraînement, le modèle d'IA apprend, tandis que dans le cadre de l'inférence, il exploite ce qu'il a appris.
La majeure partie de l'entraînement s'effectue lors des premières étapes de la création du modèle. Une fois entraîné, le modèle peut réaliser des connexions avec des données qui ne lui ont jamais été présentées auparavant. L'utilisation d'un ensemble de données plus vaste pour entraîner un modèle lui permet d'apprendre davantage de connexions et de réaliser des inférences plus précises. Si le modèle ne parvient pas à réaliser des inférences précises après l'entraînement, il est possible de procéder à un réglage fin pour l'aider à intégrer des connaissances et améliorer sa précision.
L'entraînement et l'inférence permettent à l'IA d'imiter les capacités humaines, par exemple pour tirer des conclusions sur la base d'un raisonnement et de preuves.
Des facteurs tels que la taille du modèle peuvent influer sur la quantité de ressources nécessaires pour manipuler le modèle.
Les différents types d'opérations d'inférence
Les opérations d'inférence d'IA peuvent prendre différentes formes selon les cas d'utilisation.
- Inférence par lot : ce type d'inférence tient son nom de la manière dont les données sont reçues et traitées, à savoir sous forme de vastes ensembles. Au lieu de réaliser les opérations d'inférence en temps réel, cette méthode traite les données par vagues, parfois toutes les heures, voire une fois par jour en fonction du volume de données et de l'efficacité du modèle d'IA. Ce type d'inférence est également appelé « inférence hors ligne » ou « inférence statique ».
Inférence en ligne : aussi appelées « inférence dynamique », ces opérations sont capables de formuler une réponse en temps réel. Elles nécessitent du matériel et des logiciels capables de réduire la latence et d'accélérer les prédictions. À la périphérie du réseau, ce type d'opération permet à l'IA de travailler au plus près des sources de données : sur un téléphone, dans une voiture ou dans un bureau distant à la connectivité limitée.
Développé par OpenAI, l'outil ChatGPT est un bon exemple d'inférence en ligne : il nécessite de nombreuses ressources d'exploitation en amont pour formuler des réponses rapides et précises.
- Inférence en diffusion en continu : ce type d'inférence correspond à un système d'IA qui n'est pas nécessairement utilisé pour communiquer avec des humains. Au lieu de recevoir des instructions génératives et des requêtes, le modèle reçoit un flux de données constant pour réaliser des prédictions et mettre à jour sa base de données interne. Ces opérations en flux continu permettent de suivre des modifications, de préserver la régularité ou de prédire un problème avant qu'il survienne.
Définition d'un serveur d'inférence d'IA
Un serveur d'inférence d'IA est un logiciel qui permet à un modèle d'IA de passer de l'entraînement à la production. Il utilise l'apprentissage automatique pour aider le modèle à appliquer ce qu'il a appris et à le mettre en pratique pour générer des inférences.
Pour une efficacité optimale, le serveur d'inférence et le modèle d'IA doivent être compatibles. Voici quelques exemples de serveurs d'inférence et les modèles avec lesquels ils fonctionnent le mieux.
- Serveur d'inférence multimodale : ce type de serveur est capable de prendre en charge plusieurs modèles simultanément. Il peut donc recevoir des données sous forme de code, d'images ou de texte, puis traiter tous ces types d'opérations d'inférence au même endroit. Un serveur d'inférences multimodal utilise plus efficacement la mémoire du GPU et du processeur pour prendre en charge plusieurs modèles. Son déploiement permet de rationaliser le matériel, de simplifier la mise à l'échelle et d'optimiser les coûts.
- Serveur d'inférence à modèle unique : ce type de serveur ne prend en charge qu'un seul modèle. Le processus d'inférence d'IA est préparé spécialement pour communiquer avec un modèle entraîné pour un cas d'utilisation précis. Ce serveur peut être capable de traiter les données uniquement sous forme de texte ou de code. Cette spécificité lui permet d'offrir de bonnes performances, ce qui peut faciliter la prise de décisions en temps réel ou la gestion des contraintes en matière de ressources.
Défis liés à l'inférence d'IA
Les principaux défis liés à l'inférence d'IA concernent la mise à l'échelle, les ressources et les coûts.
- Complexité : il est relativement facile d'apprendre à un modèle à exécuter des tâches simples telles que générer une image ou présenter une politique de retour. Pour que les modèles ingèrent des données toujours plus complexes, par exemple pour détecter une fraude financière ou identifier des anomalies médicales, il leur faut davantage de données lors de l'entraînement et davantage de ressources pour prendre en charge ces données.
- Ressources : les modèles plus complexes nécessitent du matériel et des logiciels spécialisés pour prendre en charge le traitement de la vaste quantité de données qui intervient lors de l'inférence. L'un des composants clés de ces ressources est la mémoire du processeur. Le processeur est souvent qualifié de centre de contrôle d'un ordinateur. Lorsqu'un modèle se prépare à utiliser ce qu'il a appris (les données d'entraînement) pour générer une réponse, il doit s'appuyer sur les données contenues dans la mémoire du processeur.
- Coûts : tous les composants sur lesquels repose l'inférence d'IA coûtent cher. Que ce soit pour mettre à l'échelle l'environnement ou migrer vers du matériel récent capable de prendre en charge l'IA, les ressources nécessaires pour obtenir un système complet peuvent être considérables. À mesure que les modèles se complexifient et que le matériel évolue, les coûts augmentent, parfois si fortement que les entreprises ne parviennent plus à suivre le rythme de l'innovation dans le domaine de l'IA.
Grâce au moteur d'inférence spécifique connu sous le nom de vLLM, il est possible de relever ces défis. vLLM est une bibliothèque de code Open Source gérée par la communauté vLLM qui accélère les résultats des applications d'IA générative en optimisant l'utilisation de la mémoire GPU. Il améliore l'efficacité des calculs des grands modèles de langage (LLM) à grande échelle. Il utilise également des outils tels que LLM Compressor pour accélérer l'inférence, allégeant ainsi la charge de travail de l'équipe et des ressources.
Accélération de l'inférence des LLM avec vLLM
Les entreprises exécutent l'inférence d'IA dans le cadre de cas d'utilisation étendus impliquant un grand nombre de variables. Cependant, le déploiement cohérent de LLM à grande échelle nécessite beaucoup de puissance de calcul, de ressources et de compétences spécialisées. Le framework vLLM permet de relever ces défis en utilisant plus efficacement le matériel utilisé pour les inférences d'IA de l'entreprise. Il convient donc particulièrement aux entreprises des secteurs dans lesquels la flexibilité et le contrôle comptent autant que la rapidité.
vLLM est une solution Open Source qui offre les possibilités suivantes :
- Possession et gestion des GPU
- Contrôler les données
- Faire des essais avec des modèles de pointe dès leur lancement
Il est possible de déployer vLLM sur plusieurs équipements matériels : GPU NVIDIA et AMD, unités de traitement de tenseur Google, Intel Gaudi, AWS Neuron, etc. Au-delà du matériel, ce framework fonctionne également dans le cloud, dans le datacenter ou à la périphérie du réseau.
Découvrez comment des entreprises connues utilisent vLLM pour évoluer efficacement dans ces trois cas d'utilisation concrets.
Définition de l'inférence distribuée
L'inférence distribuée est une approche qui permet aux modèles d'IA de traiter les charges de travail plus efficacement en répartissant les tâches liées à l'inférence entre plusieurs équipements interconnectés. Les tâches d'inférence sont ainsi allégées.
L'inférence distribuée repose sur un système capable de répartir les demandes entre les serveurs disponibles, dans le cloud ou sur site. Chaque serveur d'inférence traite ensuite en parallèle les requêtes qui lui sont attribuées pour créer un résultat final. L'ensemble forme un système résilient et observable, conçu pour fournir des services d'IA cohérents et évolutifs.
L'inférence distribuée est prise en charge par le framework vLLM, à l'aide de techniques telles que le parallélisme des tenseurs et les architectures MoE (Mixture of Experts).
Nos solutions
Red Hat AI est une plateforme de produits et de services qui permettent aux entreprises d'avancer dans le déploiement de l'IA, qu'elles soient tout au début du processus ou déjà prêtes à évoluer. Cette offre répond aux besoins en matière d'IA prédictive et générative et convient aux cas d'utilisation propres à chaque entreprise.
Red Hat AI donne accès à la solution Red Hat® AI Inference Server pour optimiser l'inférence des modèles dans le cloud hybride et effectuer des déploiements plus rapides et plus rentables. Basé sur un vLLM, ce serveur d'inférence optimise l'utilisation du GPU et raccourcit les délais de réponse.
En savoir plus sur Red Hat AI Inference Server
Red Hat AI Inference Server comprend le référentiel Red Hat AI, une collection de modèles tiers validés et optimisés, qui favorise la flexibilité des modèles et la cohérence entre les équipes. Grâce à ce référentiel de modèles tiers, les entreprises peuvent réduire le délai de mise sur le marché et éliminer les obstacles financiers qui freinent l'adoption de l'IA.
Votre stratégie est-elle réellement souveraine ? Présentation de l’outil Red Hat Sovereignty Readiness Assessment
L’outil Red Hat Sovereignty Readiness Assessment est un service d’évaluation en libre-service basé sur le Web qui fournit une base de référence claire et objective du contrôle numérique de votre organisation dans sept domaines essentiels.