Le LLMOps, qu'est-ce que c'est ?

Copier l'URL

Les grands modèles de langage (LLM, pour Large Language Models) sont des modèles d'apprentissage automatique (AA) qui exécutent des tâches linguistiques : traduction, réponse aux questions, résumé de contenus et de discussions, génération de contenus ou de code, etc. Les LLM tels que GPT-3, LLaMA et Falcon sont des outils novateurs capables de répondre à des questions et qu'il est possible d'entraîner avec des ensembles de données. Mais parce que ces outils ne cessent de se développer, les entreprises ont besoin de meilleures pratiques pour en encadrer l'exploitation. C'est là que le LLMOps intervient.

Le LLMOps (Large Language Model Operations) regroupe les pratiques, techniques et outils utilisés pour gérer l'exploitation de grands modèles de langage dans les environnements de production. Ce concept intervient dans la gestion et l'automatisation du cycle de vie des LLM via des outils et méthodes qui vont du réglage fin à la maintenance. En encadrant l'exploitation des modèles, les équipes de science des données, d'ingénierie et informatique peuvent déployer, surveiller et entretenir les grands modèles de langage plus efficacement.

Parce que les LLM sont un sous-ensemble des modèles d'AA, on peut considérer que le LLMOps est un équivalent du MLOps (Machine Learning Operations) pour les grands modèles de langage. Le MLOps désigne un ensemble de pratiques de gestion des workflows qui vise à rationaliser le déploiement et la maintenance des modèles d'AA. Cette approche a pour but d'établir une évolution continue pour l'intégration des modèles d'AA au développement logiciel. Pareillement, dans le cadre du LLMOps, le cycle de développement et de déploiement des LLM fait continuellement l'objet d'essais, d'itérations, de redéploiements et d'améliorations.

Même s'ils sont assez similaires, le LLMOps et le MLOps présentent des différences, notamment au niveau des points suivants :

Apprentissage : tandis que les modèles d'AA sont souvent créés ou entraînés à partir de rien, les LLM s'appuient sur un modèle de fondation et sont soumis à un réglage fin avec de nouvelles données pour en améliorer les performances dans un domaine précis.

Réglage : le réglage fin des LLM permet d'améliorer les performances pour certaines applications et d'augmenter la précision, en ajoutant davantage de connaissances sur un sujet en particulier. Efficace et rationalisé, le processus de réglage des requêtes améliore les performances des LLM sur des tâches spécifiques. Le réglage des hyperparamètres est également différent. Le réglage des modèles d'AA vise à renforcer leur précision ou d'autres indicateurs de mesure, tandis que le réglage des LLM doit également permettre de réduire les coûts et les exigences de puissance de calcul liés à l'entraînement et à l'inférence. Les modèles d'AA classiques et les LLM bénéficient tous du suivi et de l'optimisation du réglage, mais les priorités diffèrent. Enfin, un autre processus joue un rôle important en plus du réglage, pour améliorer la précision des réponses : la génération augmentée de récupération (RAG). Cette technique s'appuie sur une base de connaissances externe pour garantir l'actualité et la précision des faits qui alimentent les LLM, dont les réponses seront alors de meilleure qualité.

Commentaires : l'apprentissage par renforcement basé sur les commentaires humains est un entraînement avancé des LLM. Parce que chaque tâche peut donner lieu à différents scénarios, les commentaires des utilisateurs finaux s'avèrent essentiels pour évaluer les performances des LLM. Ces modèles utilisent les commentaires humains pour évaluer la précision et la cohérence des réponses aux requêtes, à la différence des modèles d'AA traditionnels qui déterminent la précision à partir d'indicateurs de mesure spécifiques et automatisés.

Indicateurs de mesure de performances : les modèles d'AA disposent d'indicateurs de mesure de performances clairement définis, comme la précision, la surface sous la courbe ou le score F1. Les LLM utilisent d'autres indicateurs et systèmes d'évaluation, notamment les algorithmes BLEU (Bilingual Evaluation Understudy) et ROUGE (Recall-Oriented Understudy for Gisting Evaluation).

Le LLMOps s'impose comme le moyen idéal de surveiller et d'améliorer les performances des LLM au fil du temps. Trois avantages majeurs se dégagent de cette approche.

Efficacité : le LLMOps permet aux équipes de développer plus rapidement des modèles et des pipelines, de produire des modèles de meilleure qualité et d'accélérer le déploiement en production. Grâce à des efforts rationalisés et à une plateforme unifiée pour la communication et le partage d'informations, la collaboration est facilitée.

Évolutivité : le LLMOps améliore l'évolutivité et la gestion dans un contexte d'intégration et de distribution/déploiement continus (CI/CD) dans lequel plusieurs modèles peuvent être supervisés, contrôlés, gérés et surveillés. Les pipelines LLM peuvent faciliter la collaboration, réduire les conflits et accélérer les cycles de lancement, tandis que le LLMOps diminue la latence pour une expérience utilisateur plus fluide.

Réduction des risques : source de transparence, le LLMOps accélère également la réponse aux requêtes et garantit la conformité avec les politiques de l'entreprise ou du secteur. Les pratiques LLMOps avancées peuvent améliorer la sécurité et la confidentialité en accordant la priorité à la protection des données sensibles, avec à la clé moins de vulnérabilités et d'accès non autorisés.

Le LLMOps peut s'appliquer à différents cas d'utilisation.

Intégration et distribution continues (CI/CD) : les pratiques CI/CD ont pour but de rationaliser, d'accélérer et d'automatiser le cycle de développement des modèles. Avec des outils tels que Jenkins, il est possible de créer et tester des projets en continu, ce qui permet d'y apporter facilement des modifications tout en mettant à la disposition des utilisateurs une version à jour. Les mises à jour et redéploiements de modèles s'effectuent rapidement, sans trop gêner les utilisateurs.

Collecte de données, étiquetage et stockage : il est possible de recueillir des données de sources, domaines et langues variés. Basé sur une intervention humaine, leur étiquetage fournit un jugement complexe propre à chaque domaine. Et avec un système de stockage de données qui s'appuie sur une base de données et une solution de stockage adaptées, les données numériques peuvent être recueillies et conservées tout au long du cycle de vie des LLM.

Réglage fin, inférence et surveillance des modèles : le processus de réglage fin optimise les modèles pour qu'ils effectuent des tâches spécifiques d'un domaine. L'inférence permet de gérer la production en fonction des connaissances existantes et de déclencher des actions à partir des informations déduites. Le processus de surveillance des modèles (commentaires humains compris) recueille et stocke des données sur le comportement des modèles afin de connaître la réaction de ces derniers en présence de vraies données de production.

Le LLMOps se compose de plusieurs étapes, chacune ayant ses propres meilleures pratiques.

Analyse des données d'exploitation : analyse des données pour découvrir et partager des éléments, et préparer le cycle de vie d'apprentissage automatique en créant des ensembles de données, des tableaux et des graphiques.

  • Collecte de données : première étape d'entraînement des LLM issus de diverses sources, comme des référentiels de code ou des réseaux sociaux.
  • Nettoyage des données : étape indispensable après la collecte, pour nettoyer et préparer les données en vue de l'entraînement, notamment en éliminant les erreurs, en corrigeant les incohérences et en supprimant les doublons.
  • Exploration des données : étape qui permet de mieux comprendre les caractéristiques des données, notamment en identifiant leurs singularités et leurs schémas.

Préparation des données et ingénierie de prompt : processus dont le but est de rendre les données visibles et partageables entre les équipes, et de développer des prompts qui assurent des requêtes structurées et fiables.

  • Préparation des données : préparation spécifique des données d'entraînement des LLM, avec notamment la suppression des mots vides et la normalisation du texte.
  • Ingénierie de prompt : création de prompts pour générer du texte qui doit orienter les LLM vers le résultat souhaité.

Réglage fin des modèles : utilisation de bibliothèques Open Source courantes telles que PyTorch pour régler et améliorer les performances des modèles.

  • Entraînement des modèles : entraînement ou réglage fin des LLM après la préparation des données, à l'aide d'un algorithme d'apprentissage automatique qui permet aux LLM d'apprendre les schémas présents dans les données.
  • Évaluation des modèles : évaluation des performances des LLM avec un ensemble de données test différent de ceux utilisés pour l'entraînement.
  • Réglage fin des modèles : en cas de mauvaises performances, les LLM doivent être réglés en modifiant les paramètres pour obtenir de meilleurs résultats.

Examen et gouvernance des modèles : découverte, partage et collaboration autour des modèles d'AA via des plateformes MLOps Open Source comme MLflow ou Kubeflow.

  • Examen des modèles : examen post-réglage fin des LLM qui doivent être sûrs et fiables, c'est-à-dire exempts de biais et de risques pour la sécurité.
  • Gouvernance des modèles : gestion des LLM tout au long de leur cycle de vie, notamment en suivant leurs performances, en y apportant les modifications nécessaires et en les retirant lorsqu'ils ne sont plus utiles.

Inférence et distribution des modèles : à l'étape de test, gestion de la fréquence d'actualisation des modèles, du délai des requêtes d'inférence et d'autres particularités de production.

  • Distribution des modèles : déploiement en production des LLM examinés et approuvés, qui sont mis à disposition via une interface de programmation d'application (API).
  • Inférence des modèles : possibilité pour une application de demander à l'API de générer du texte ou de répondre à une question. Différentes méthodes existent, comme l'utilisation d'une API REST (Representational State Transfer) ou d'une application web.

Surveillance des modèles avec commentaires humains : création de pipelines de surveillance des modèles et des données avec des alertes en cas de dérive de modèle ou de comportement malveillant d'un utilisateur.

  • Surveillance des modèles : contrôle des performances après le déploiement des LLM, impliquant de suivre les performances, d'identifier les problèmes éventuels et d'apporter les modifications nécessaires.
  • Commentaires humains : amélioration des performances des LLM en commentant le texte généré ou en identifiant les problèmes éventuels liés aux performances.

Une plateforme LLMOps offre aux équipes de science des données et d'ingénierie logicielle un environnement collaboratif qui facilite l'exploration des données, avec des capacités partagées pour le suivi des essais, l'ingénierie de prompt et la gestion des modèles et des pipelines. Ce type de plateforme permet aussi de contrôler la transition des modèles, le déploiement et la surveillance des LLM.

Grâce à une plateforme LLMOps, la gestion des bibliothèques devient plus efficace, ce qui réduit les coûts d'exploitation et la complexité des tâches habituellement réservées au personnel technique. Ces tâches comprennent notamment le prétraitement des données ainsi que l'entraînement, la surveillance, le réglage fin et le déploiement des modèles de langage. Le LLMOps automatise le cycle de vie de l'apprentissage automatique au niveau de l'exploitation, de la synchronisation et de la surveillance.

Plateforme de cloud hybride basée sur Kubernetes, Red Hat® OpenShift® accélère le déploiement des applications basées sur l'IA dans les environnements de cloud hybride, aussi bien dans les datacenters qu'en périphérie du réseau ou dans les environnements multicloud.

Avec Red Hat OpenShift, les entreprises peuvent automatiser et simplifier l'intégration répétée des modèles aux processus de développement logiciel, de déploiement en production, de surveillance, de réentraînement et de redéploiement pour assurer la précision des prévisions.

Plateforme MLOps flexible et évolutive, la solution Red Hat OpenShift AI inclut des outils de création, de déploiement et de gestion d'applications basées sur l'IA. Cette solution permet aux équipes de science des données et de développement d'applications de simplifier l'intégration de l'IA aux applications à grande échelle, de manière sécurisée et cohérente. Les outils d'OpenShift AI prennent en charge l'intégralité du cycle de vie des essais et des modèles d'IA/AA, sur site et dans le cloud public.

Avec une plateforme d'applications d'entreprise unique qui associe les capacités de Red Hat OpenShift AI et de Red Hat OpenShift, les équipes peuvent collaborer dans un seul environnement qui favorise la cohérence, la sécurité et l'évolutivité.

En savoir plus sur l'IA/AA

Produits

Nouveau

Une plateforme de modèle de fondation conçue pour développer, tester et exécuter facilement des grands modèles de langage (LLM) de la famille Granite pour les applications d'entreprise.

Gamme de produits pour l'IA qui fournit des outils pour entraîner, ajuster, distribuer, surveiller et gérer des expériences et des modèles d'intelligence artificielle/apprentissage automatique (IA/AA) sur Red Hat OpenShift.

Plateforme d'applications d'entreprise qui inclut un ensemble unifié de services testés conçus pour distribuer des applications sur l'infrastructure de votre choix. 

Red Hat Ansible Lightspeed with IBM watsonx Code Assistant est un service d'IA générative conçu par et pour les professionnels de l'automatisation, les équipes d'exploitation et les développeurs qui travaillent avec Ansible. 

Ressources

Livre numérique

Éléments importants pour la création d'un environnement d'IA/AA prêt pour la production

Rapport d'analyste

The Total Economic Impact™ of Red Hat Hybrid Cloud Platform for MLOps

Webinar

Getting the most out of AI with open source and Kubernetes