Prise en charge multi-LoRA disponible dans RTX AI Toolkit

Note de l’éditeur : cet article fait partie du Série AI décodéequi démystifie l’IA en rendant la technologie plus accessible, et présente de nouveaux matériels, logiciels, outils et accélérations pour les utilisateurs de PC RTX.

Les grands modèles de langage sont à l’origine de certains des développements les plus passionnants de l’IA grâce à leur capacité à comprendre, résumer et générer rapidement du contenu textuel.

Ces fonctionnalités alimentent une variété de cas d’utilisation, notamment des outils de productivité, des assistants numériques, des personnages non jouables dans les jeux vidéo et bien plus encore. Mais il ne s’agit pas d’une solution universelle, et les développeurs doivent souvent affiner les LLM pour les adapter aux besoins de leurs applications.

Le NVIDIA RTX AI Toolkit facilite l’ajustement et le déploiement de modèles d’IA sur les PC et les postes de travail RTX AI grâce à une technique appelée adaptation de bas rang, ou LoRA. Une nouvelle mise à jour, disponible aujourd’hui, permet la prise en charge de l’utilisation simultanée de plusieurs adaptateurs LoRA au sein de la bibliothèque d’accélération NVIDIA TensorRT-LLM AI, améliorant ainsi les performances des modèles affinés jusqu’à 6x.

Affiné pour la performance

Les LLM doivent être soigneusement personnalisés pour obtenir des performances plus élevées et répondre aux demandes croissantes des utilisateurs.

Ces modèles fondamentaux sont formés sur d’énormes quantités de données, mais manquent souvent du contexte nécessaire au cas d’utilisation spécifique d’un développeur. Par exemple, un LLM générique peut générer des dialogues de jeu vidéo, mais il manquera probablement les nuances et la subtilité nécessaires pour écrire dans le style d’un elfe des bois avec un passé sombre et un dédain à peine dissimulé pour l’autorité.

Pour obtenir des résultats plus personnalisés, les développeurs peuvent affiner le modèle avec des informations liées au cas d’utilisation de l’application.

Prenons l’exemple du développement d’une application pour générer des dialogues dans le jeu à l’aide d’un LLM. Le processus de réglage fin commence par l’utilisation des poids d’un modèle pré-entraîné, comme les informations sur ce qu’un personnage peut dire dans le jeu. Pour obtenir le dialogue dans le bon style, un développeur peut ajuster le modèle sur un ensemble de données d’exemples plus petit, tel qu’un dialogue écrit sur un ton plus effrayant ou méchant.

Dans certains cas, les développeurs peuvent souhaiter exécuter simultanément tous ces différents processus de réglage fin. Par exemple, ils peuvent souhaiter générer des textes marketing rédigés avec différentes voix pour différents canaux de contenu. Dans le même temps, ils voudront peut-être résumer un document et faire des suggestions stylistiques, ainsi que rédiger une description de scène de jeu vidéo et une invite d’images pour un générateur de texte en image.

Il n’est pas pratique d’exécuter plusieurs modèles simultanément, car ils ne rentrent pas tous dans la mémoire GPU en même temps. Même s’ils le faisaient, leur temps d’inférence serait affecté par la bande passante mémoire, c’est-à-dire la vitesse à laquelle les données peuvent être lues de la mémoire vers les GPU.

Lo(RA) et voici

Une manière courante de résoudre ces problèmes consiste à utiliser des techniques de réglage fin telles que l’adaptation de bas rang. Une façon simple de le considérer est comme un fichier de correctif contenant les personnalisations du processus de réglage fin.

Une fois formés, les adaptateurs LoRA personnalisés peuvent s’intégrer de manière transparente au modèle de base pendant l’inférence, ajoutant ainsi une surcharge minimale. Les développeurs peuvent attacher les adaptateurs à un seul modèle pour répondre à plusieurs cas d’utilisation. Cela permet de réduire l’empreinte mémoire tout en fournissant les détails supplémentaires nécessaires pour chaque cas d’utilisation spécifique.

Présentation de l’architecture de prise en charge de plusieurs clients et cas d’utilisation avec un modèle de base unique utilisant des capacités multi-LoRA

En pratique, cela signifie qu’une application peut conserver en mémoire une seule copie du modèle de base, ainsi que de nombreuses personnalisations utilisant plusieurs adaptateurs LoRA.

Ce processus est appelé service multi-LoRA. Lorsque plusieurs appels sont effectués vers le modèle, le GPU peut traiter tous les appels en parallèle, maximisant l’utilisation de ses cœurs Tensor et minimisant les demandes de mémoire et de bande passante afin que les développeurs puissent utiliser efficacement les modèles d’IA dans leurs flux de travail. Les modèles affinés utilisant des adaptateurs multi-LoRA fonctionnent jusqu’à 6 fois plus rapidement.

Performances d’inférence LLM sur le GPU de bureau GeForce RTX 4090 pour Llama 3B int4 avec les adaptateurs LoRA appliqués au moment de l’exécution. La longueur de la séquence d’entrée est de 1 000 jetons et la longueur de la séquence de sortie est de 100 jetons. Le rang maximum de l’adaptateur LoRA est de 64.

Dans l’exemple de l’application de dialogue en jeu décrit précédemment, la portée de l’application pourrait être étendue, en utilisant le service multi-LoRA, pour générer à la fois des éléments d’histoire et des illustrations, pilotés par une seule invite.

L’utilisateur pourrait saisir une idée d’histoire de base, et le LLM étofferait le concept, en développant l’idée pour fournir une base détaillée. L’application pourrait alors utiliser le même modèle, amélioré avec deux adaptateurs LoRA distincts, pour affiner l’histoire et générer les images correspondantes. Un adaptateur LoRA génère une invite Stable Diffusion pour créer des visuels à l’aide d’un modèle Stable Diffusion XL déployé localement. Pendant ce temps, l’autre adaptateur LoRA, affiné pour l’écriture d’histoires, pourrait créer un récit bien structuré et engageant.

Dans ce cas, le même modèle est utilisé pour les deux passes d’inférence, garantissant ainsi que l’espace requis pour le processus n’augmente pas de manière significative. La deuxième passe, qui implique à la fois la génération de texte et d’images, est effectuée à l’aide d’une inférence par lots, ce qui rend le processus exceptionnellement rapide et efficace sur les GPU NVIDIA. Cela permet aux utilisateurs de parcourir rapidement différentes versions de leurs histoires, en affinant facilement le récit et les illustrations.

Ce processus est décrit plus en détail dans un récent blog technique.

Les LLM deviennent l’un des composants les plus importants de l’IA moderne. À mesure que l’adoption et l’intégration se développent, la demande de LLM puissants et rapides avec des personnalisations spécifiques aux applications ne fera qu’augmenter. La prise en charge multi-LoRA ajoutée aujourd’hui au RTX AI Toolkit offre aux développeurs un nouveau moyen puissant d’accélérer ces capacités.

More Info

Greatly hearted has who believe. Drift allow green son walls years for blush. Sir margaret drawings repeated recurred exercise.

You have been successfully Subscribed! Ops! Something went wrong, please try again.

Quick Links

Services

About Me

Projects

Contact

Address

+1-(360) 416-7563

Phone Number

FelicitymcDowell@mail.com

Email Address

© 2024 Created with Royal Elementor Addons