Présentation
L'IA générative est une technologie d'intelligence artificielle (IA) qui s'appuie sur des modèles d'apprentissage profond pour créer des contenus.
Les applications d'IA générative sont notamment utilisées pour produire des textes, des images et du code. Ces productions sont obtenues lors de l'inférence d'IA, la phase d'exploitation durant laquelle le modèle est capable d'appliquer ce qu'il a appris au cours de son entraînement à des situations réelles. Les dialogueurs (ou chatbots), la création et la retouche d'images, l'assistance au développement des logiciels et la recherche scientifique comptent parmi les cas d'utilisation les plus courants de cette technologie.
Dans un cadre professionnel, l'IA générative permet de visualiser rapidement des idées créatives et de gérer efficacement des tâches fastidieuses et chronophages. Dans des domaines tels que la recherche médicale et la conception de produits, elle améliore la rapidité et l'efficacité des équipes. Toutefois, elle introduit également de nouveaux risques qu'il est important de comprendre et de limiter autant que possible.
Fonctionnement
Les utilisateurs qui ont pu avoir une conversation étonnamment cohérente avec ChatGPT ou voir Midjourney créer une image réaliste à partir d'un texte descriptif inventé savent à quel point l'IA générative peut sembler magique. Sur quoi se fondent ces exploits ?
Les applications d'IA reposent sur des modèles d'apprentissage profond qui récréent des schémas issus d'une énorme quantité de données d'entraînement. Dans un cadre défini par l'homme, ces modèles adaptent ensuite ce qu'ils ont appris pour créer des contenus.
Les modèles d'apprentissage profond stockent leurs données d'entraînement sous une forme encodée, en rapprochant les points de données semblables les uns des autres. Cette représentation est ensuite décodée pour produire de nouvelles données originales aux caractéristiques similaires.
Pour créer une application d'IA générative personnalisée, il faut un modèle auquel doivent être apportés des ajustements (par exemple, un réglage fin supervisé par un humain ou l'ajout d'une couche de données propre au cas d'utilisation visé).
Aujourd'hui, la plupart des applications d'IA générative fréquemment utilisées répondent à des instructions génératives de l'utilisateur. Il lui suffit de décrire le résultat voulu dans un langage naturel : l'application le génère, comme par magie.
Ressources Red Hat
Cas d'utilisation
Les avancées de l'IA générative dans les domaines de la rédaction et de la génération d'images ont fasciné la presse et l'imagination de chacun. Voici quelques cas d'utilisation déjà connus pour cette technologie aux progrès phénoménaux.
Rédaction : avant même que des articles mentionnent ChatGPT (et que l'application commence à les rédiger elle-même), les systèmes d'IA générative fournissaient déjà des textes de qualité satisfaisante. Ces modèles ont d'abord été utilisés dans les outils de traduction. Aujourd'hui, les outils d'IA générative parviennent à créer des contenus de haute qualité en répondant à des instructions sur presque n'importe quel sujet. Et ils savent s'adapter à différentes longueurs de texte et différents styles d'écriture.
Génération d'images : les outils d'édition d'images basés sur l'IA générative produisent des images de haute qualité à partir d'instructions en lien avec de nombreux sujets et aux styles variés. Certains peuvent même ajouter des éléments à des œuvres existantes, comme Generative Fill dans Adobe Photoshop.
Génération audio (discours et musique) : à partir d'un texte écrit et de l'enregistrement audio de la voix d'une personne, les outils vocaux basés sur l'IA sont capables de créer un discours ou un chant reproduisant les sons émis par l'homme. D'autres outils peuvent créer de la musique à partir d'instructions génératives ou d'extraits.
Génération vidéo : de nouveaux services testent diverses techniques d'IA générative pour créer des images animées, par exemple en associant un enregistrement audio à une image fixe pour reproduire les mouvements de la bouche et l'expression faciale du sujet comme s'il était en train de parler.
Génération et achèvement de code : à partir d'une instruction écrite, certains outils d'IA générative peuvent produire du code informatique à la demande pour aider les équipes de développement de logiciels.
Augmentation des données : l'IA générative permet de créer une grande quantité de données synthétiques lorsqu'il est impossible ou déconseillé d'utiliser les données réelles. Par exemple, les données synthétiques peuvent s'avérer utiles pour entraîner un modèle à comprendre des informations médicales, sans inclure de données à caractère personnel. De plus, ces outils peuvent étendre ou compléter un ensemble de données afin d'obtenir un plus grand ensemble de données synthétiques à des fins d'entraînement ou de test.
IA agentique : l'IA agentique et l'IA générative se complètent. Les systèmes agentiques peuvent utiliser l'IA générative afin de dialoguer avec un utilisateur, de créer des contenus de manière indépendante pour atteindre un objectif plus large ou de communiquer avec des outils externes. L'IA générative joue donc un rôle essentiel dans le processus « cognitif » de l'IA agentique.
Apprentissage profond
L'apprentissage profond, à la base de l'IA générative, est une technique d'apprentissage automatique (AA) utilisée pour l'analyse et l'interprétation de grandes quantités de données. Également connu sous le nom d'apprentissage neuronal profond ou de réseau neuronal profond, ce processus permet aux ordinateurs d'apprendre par l'observation, en imitant la manière dont les humains acquièrent des connaissances. L'apprentissage profond représente un concept essentiel dans la compréhension du langage humain par l'ordinateur, ce que l'on appelle le traitement du langage naturel (NLP).
Pour mieux comprendre, on pourrait comparer l'apprentissage profond à une sorte d'organigramme qui commence par une couche d'entrée et se termine par une couche de sortie. Entre ces deux couches se trouvent les « couches cachées » qui traitent les informations à différents niveaux. Elles ajustent et adaptent leur comportement à mesure qu'elles reçoivent de nouvelles données. Les modèles d'apprentissage profond peuvent comporter des centaines de couches cachées. Chacune d'entre elles joue un rôle dans la découverte de relations et de schémas au sein de l'ensemble de données.
Les données sont introduites dans le modèle à partir de la couche d'entrée, composée de plusieurs nœuds, puis classées en conséquence avant de passer à la couche suivante. Le chemin que les données empruntent à travers chaque couche est basé sur les calculs mis en place pour chaque nœud. Les données se déplacent à travers chaque couche, recueillent des observations en cours de route qui façonneront le résultat, ou l'analyse finale, des données.
Les GPU, ou processeurs graphiques, ont considérablement accéléré les progrès dans le domaine de l'apprentissage profond. À l'origine, les GPU ont été conçus pour accélérer le rendu des images de jeux vidéo. Leurs excellentes capacités de calcul en parallèle en ont fait un outil parfaitement adapté aux charges de travail d'apprentissage profond.
Les applications d'IA générative révolutionnaires que nous connaissons aujourd'hui sont directement issues des avancées liées à la taille et à la rapidité des modèles d'apprentissage profond.
Réseau neuronal
Le terme « réseau neuronal » renvoie à une méthode de traitement des informations calquée sur des systèmes neuronaux biologiques, à l'image des connexions du cerveau humain. L'IA s'appuie sur cette méthode pour connecter des informations apparemment sans aucun rapport. Le concept de réseau neuronal est étroitement lié à la technique d'apprentissage profond.
Pour comprendre le rôle du réseau neuronal dans la connexion des points de données d'un modèle d'apprentissage profond, il faut d'abord étudier le fonctionnement du cerveau humain. Notre cerveau comporte de nombreux neurones interconnectés qui agissent comme des messagers lorsqu'il traite des données entrantes. Ces neurones utilisent des impulsions électriques et des signaux chimiques pour communiquer entre eux et transmettre les informations entre les différentes zones du cerveau.
Les réseaux de neurones artificiels reposent sur ce phénomène biologique. Cependant, comme leur nom l'indique, leurs neurones sont artificiels et constitués de modules logiciels que l'on appelle des nœuds. Ces nœuds utilisent des calculs mathématiques (plutôt que des signaux chimiques) pour communiquer et transmettre des informations. Ce réseau neuronal simulé traite les données par groupe de points de données et à l'aide de prédictions.
Différentes techniques de réseaux de neurones peuvent être utilisées selon le type de données. Le modèle du réseau neuronal récurrent utilise des données séquentielles (il apprend par exemple des mots dans l'ordre afin de traiter une langue).
Il existe une architecture spécifique de réseau neuronal, capable de traiter les langues plus rapidement. Il s'agit des transformateurs. Par rapport aux réseaux neuronaux récurrents qui ingèrent un mot après l'autre, les transformateurs apprennent la relation des mots dans une phrase, ce qui produit de meilleurs résultats.
Un grand modèle de langage (LLM) est un modèle d'apprentissage profond qui a été entraîné en appliquant des transformateurs à un énorme ensemble de données généralisées. La plupart des principaux dialogueurs et outils de texte reposent sur un grand modèle de langage.
Le modèle de diffusion est une autre technique d'apprentissage profond qui est efficace dans le domaine de la génération d'images. Ce type de modèle apprend à transformer une image naturelle en bruit visuel avec flou. Les outils d'édition d'images génératifs se chargent ensuite d'inverser le processus en ajustant un modèle de bruit aléatoire jusqu'à obtenir une image réaliste.
Il est possible de décrire les modèles d'apprentissage profond avec des paramètres. Un modèle prédictif simple entraîné avec 10 entrées issues d'un formulaire de demande de crédit comptera 10 paramètres, alors qu'un LLM peut en inclure plusieurs milliards. GPT-4 (Generative Pre-trained Transformer 4) d'OpenAI, l'un des modèles de fondation de ChatGPT, compterait 1 000 milliards de paramètres.
Modèle de fondation
Un modèle de fondation est un modèle d'apprentissage profond entraîné avec un gros volume de données génériques. Le modèle ainsi entraîné peut ensuite être adapté pour des cas d'utilisation spécifiques. Comme son nom l'indique, il peut constituer la base de plusieurs applications différentes.
Aujourd'hui, la création d'un modèle de fondation représente un projet d'envergure qui nécessite d'énormes quantités de données d'entraînement, généralement extraites via la méthode du « scraping » sur Internet, dans les bibliothèques de livres numériques, les bases de données d'articles de recherche, les collections d'images libres de droits, ou d'autres grands ensembles de données. Seule une vaste infrastructure, couplée à un cloud de GPU propriétaire ou en location, peut prendre en charge l'entraînement d'un modèle avec autant de données. Les modèles de fondation les plus volumineux ont coûté plusieurs centaines de millions de dollars.
Puisque l'entraînement de bout en bout d'un modèle de fondation demande beaucoup d'efforts, le plus souvent, les entreprises personnalisent des modèles déjà entraînés par des tiers. Pour cela, elles ont le choix entre plusieurs techniques de personnalisation, comme le réglage fin, le réglage d'instructions génératives, ou encore l'ajout de données spécifiques du client ou du domaine. Par exemple, les modèles de fondation de la famille Granite d'IBM sont entraînés avec des données sélectionnées et utilisées de manière transparente.
Réglage fin
Ce processus consiste à entraîner davantage un modèle préentraîné à l'aide d'un ensemble de données plus adapté, afin qu'il réalise efficacement des tâches précises. Ces données d'entraînement complémentaires modifient les paramètres du modèle et créent une nouvelle version qui remplace le modèle d'origine.
En général, le réglage fin nécessite beaucoup moins de données que l'entraînement initial et prend aussi moins de temps. Toutefois, le processus de réglage fin traditionnel nécessite de très nombreuses ressources de calcul.
Le PEFT, ou réglage fin efficace des paramètres, est un ensemble de techniques qui servent à régler une partie seulement des paramètres d'un LLM afin d'économiser des ressources. Il s'agit d'une évolution du réglage fin traditionnel.
Les méthodes LoRA (Low-Rank adaptation) et QLoRA (Quantized Low-Rank adaptation) sont toutes deux des techniques de PEFT pour l'entraînement de modèles d'IA. Si les deux techniques aident au réglage fin efficace des LLM, elles présentent des différences au niveau de la manipulation du modèle et de l'utilisation du stockage pour atteindre les résultats escomptés.
Génération augmentée de récupération
La génération augmentée de récupération ou RAG (Retrieval-Augmented Generation) est une méthode qui permet d'obtenir de meilleures réponses de la part d'une application d'IA générative grâce à l'association de ressources externes à un LLM.
La mise en œuvre d'une architecture RAG dans un système de questions-réponses (comme un dialogueur) reposant sur un LLM permet d'établir un moyen de communication entre un LLM et la sélection de sources de connaissances supplémentaires. Cette approche permet au LLM de croiser les références et de compléter ses connaissances internes de manière à générer un résultat plus fiable et précis pour l'utilisateur à l'origine de la requête.
Rapidité, évolutivité et réduction des coûts
À mesure que les modèles d'IA générative gagnent en sophistication, leur taille augmente. Certains LLM peuvent contenir des centaines de milliards de paramètres. Ces paramètres déterminent la compréhension du langage par le LLM. Plus il y en a, plus le modèle est capable de réaliser des tâches complexes avec précision. Cependant, plus le nombre de paramètres est élevé, plus la puissance de traitement requise l'est aussi.
Au lieu d'ajouter des GPU supplémentaires (ce qui peut s'avérer coûteux), il est possible d'utiliser des outils tels que vLLM et llm-d pour améliorer l'efficacité du traitement sur le matériel existant.
- vLLM est un serveur d'inférence qui accélère les résultats des applications d'IA générative en optimisant l'utilisation de la mémoire GPU.
- llm-d est un framework Open Source natif pour Kubernetes qui accélère l'inférence distribuée à grande échelle. Ces deux frameworks sont conçus pour faciliter la mise à disposition de grands modèles d'IA générative en mettant l'accent sur l'optimisation des performances.
Risques liés à l'IA générative
Avec tant de progrès réalisés en si peu de temps, l'IA générative a suscité beaucoup d'intérêt, pour le meilleur comme pour le pire. Nous découvrons à peine les avantages et inconvénients de cette technologie. Voici quelques-unes des préoccupations majeures en matière d'IA générative.
Préjudices envers autrui : des acteurs malveillants peuvent utiliser l'IA générative pour accomplir leurs mauvais desseins, par exemple pour diffuser à grande échelle des campagnes de désinformation sur les réseaux sociaux ou des images truquées qui visent de vraies personnes sans leur consentement. C'est là le risque le plus évident et immédiat.
Renforcement de biais sociétaux dangereux : il a déjà été démontré que les outils d'IA générative propagent les biais humains qui se trouvent dans leurs données d'entraînement, notamment des stéréotypes dangereux et des discours haineux.
Diffusion d'informations erronées : les outils d'IA générative peuvent produire des informations et scènes inventées et totalement fausses, que l'on appelle parfois des « hallucinations ». Si certaines erreurs de l'IA sont sans conséquence, comme une réponse incohérente à une question ou quelques doigts en trop sur une image, d'autres résultats ont déjà posé de graves problèmes. C'est le cas d'un dialogueur qui a donné des conseils dangereux à des personnes s'interrogeant sur les troubles alimentaires.
Risques juridiques et pour la sécurité : les systèmes d'IA générative peuvent menacer la sécurité, notamment lorsque des utilisateurs saisissent des informations sensibles dans des applications n'intégrant aucun mécanisme de protection. Les réponses générées peuvent introduire des risques de nature juridique en reproduisant du contenu protégé par des droits d'auteur ou en s'appropriant la voix ou l'identité d'une personne réelle sans son consentement. De plus, certains outils imposent parfois des restrictions d'utilisation.
Résultats inexplicables : parfois, un modèle d'IA est trop complexe à comprendre ou interpréter pour un humain. C'est ce que l'on appelle un modèle de type « boîte noire ». Ces modèles peuvent avoir des conséquences néfastes lorsqu'ils sont utilisés pour prendre des décisions sensibles, en particulier dans des secteurs à haut risque tels que la santé, les transports, la sécurité, la défense, l'aéronautique, la finance ou encore la justice civile et pénale. Afin de rendre les résultats plus transparents et compréhensibles pour l'utilisateur, des techniques d'IA explicable peuvent être appliquées tout au long du cycle de vie de l'apprentissage automatique.
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 vLLM, ce serveur d'inférence optimise l'utilisation des GPU et diminue les délais de réponse.
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.
Le blog officiel de Red Hat
Découvrez les dernières informations concernant notre écosystème de clients, partenaires et communautés.