Cet article fait partie de notre guide: GTC 2024 : le guide du nouveau leadership de Nvidia

Stockage : NetApp et Pure Storage misent sur l’IA simple et peu chère

Les deux fabricants ont annoncé des connecteurs qui permettent de nourrir les IA génératives vendues par Nvidia avec les données stockées sur leurs NAS. Une technique connue sous le nom de RAG.

Ils n’étaient pas présents parmi les stands géants réservés aux fournisseurs de baies de stockage lors du dernier événement GTC 2024 de Nvidia. Pourtant, NetApp et Pure Storage sont les deux fabricants qui ont le plus communiqué sur leur association avec la nouvelle star de l’informatique. L’explication de ce paradoxe ? NetApp et Pure Storage n’ont pas – contrairement aux autres – annoncé de nouvelles baies de disques mieux adaptées aux serveurs DGX de Nvidia. Ils sont juste les premiers à avoir arraché au fabricant de GPUs un certificat qui valide leurs solutions pour le RAG.

Le RAG, ou Retrieval Augmented Generation, est une technique qui permet à une IA générative de baser ses réponses sur des jeux de données fournis au dernier moment, c’est-à-dire sans avoir eu besoin de les ajouter au préalable à l’entraînement d’un grand modèle de langage (LLM). Il s’agit en ce sens d’une solution qui fait gagner beaucoup de temps, puisque les informations peuvent être injectées dans l’IA dès leur création. Et qui fait aussi économiser beaucoup d’argent, car l’injection de données a posteriori nécessite nettement moins de puissance de calcul que l’entraînement.

Dans le détail, les clients de NetApp et de Pure Storage peuvent désormais soumettre leurs propres données aux moteurs d’IA générative que Nvidia commercialise depuis son portail Nvidia AI Enterprise. Cela permettra aux chatbots de générer des réponses qui prennent en compte les toutes dernières informations stockées sur les NAS des deux marques, alors que les modèles de langages utilisés ont été entraînés sans en avoir connaissance.

Cette possibilité d’injection d’informations fraîches dans le calcul des réponses – le RAG – tient au nouveau module NeMo Retriever que Nvidia livre désormais avec les moteurs d’IA générative qu’il commercialise. NeMo Retriever repose sur des connecteurs pour récupérer les données. Et NetApp comme Pure Storage ont développé des connecteurs pour leurs NAS respectifs, à savoir les baies OnTap et FlashBlade.

« Ces dispositifs vont être d’une grande aide pour les clients de NetApp et Pure Storage. Mais, même si j’ignore dans quelle mesure ils ont été difficiles à implémenter, je ne serai pas surpris que les autres fournisseurs de stockage proposent bientôt des connecteurs similaires pour leurs solutions », observe l’analyste indépendant Dave Raffo, spécialiste des infrastructures de stockage.

Une approche moins chère et plus rapide

Nemo Retriever fonctionne, que le moteur d’IA générative soit exécuté en cloud (ce que Nvidia propose par défaut) ou qu’il fonctionne depuis un serveur de calcul local, après avoir été téléchargé dessus. À ce titre, les NAS de NetApp et de Pure Storage ont dans la foulée été validés par Nvidia comme des solutions de stockage « adaptées » aux serveurs de calcul OVX. Ils l’étaient déjà depuis un an sur les serveurs de calcul DGX.

Les serveurs OVX, basés sur quatre cartes GPUs Nvidia L40S en PCIe, sont bien moins chers (et bien moins puissants) que les serveurs DGX basés sur huit GPUs Nvidia H100. Mais ils sont bien plus rentables quand on se contente d’exécuter des modèles d’IA prêts à l’emploi, sans les entraîner soi-même au préalable. Une utilisation « light » de l’IA que favorise justement le RAG.

« Le RAG réduit non seulement le risque de retards coûteux dans les projets, mais il garantit également un retour sur investissement élevé sur les dépenses liées à l’IA, principalement le coût des GPUs. »
Mike LeoneAnalyste, ESG

Sans RAG, les entreprises sont forcées d’entraîner (Machine learning) ou de réentrainer (fine tuning) des modèles de langage pour qu’ils aient connaissance de leurs données, ce qui les oblige à investir plus dans la puissance de calcul. Accessoirement, l’entraînement comme le fine tuning nécessitent des étapes préalables, complexes et longues afin de trier et formater les données sources, plus des réglages minutieux pour ajuster les paramètres. Ces étapes excluent de l’IA générative des informations récentes.

« Plutôt qu’investir du temps et des ressources précieuses dans la création d’une architecture d’IA à partir de zéro, le RAG réduit non seulement le risque de retards coûteux dans les projets, mais il garantit également un retour sur investissement élevé sur les dépenses liées à l’IA, principalement le coût des GPUs », commente l’analyste Mike Leone, du cabinet d’études ESG.

Les stratégies commerciales de NetApp, Pure Storage et Nvidia

Concernant NetApp, le module NeMo Retriever est également compatible avec les NAS OnTap virtuels, ceux qui fonctionnent en cloud chez les hyperscalers AWS, Azure, GCP. Ce sont dans ces mêmes clouds que s’exécutent aussi par défaut les moteurs d’IA générative et les grands modèles de langage préentrainés (LLM) commercialisés au travers du portail Nvidia AI Enterprise. Dès lors, NetApp argumente que ses clients peuvent bénéficier d’un fonctionnement 100 % en cloud, 100 % sur site, ou hybride.

De son côté, Pure Storage mise plus sur le RAG lui-même que sur Nvidia en particulier. Le fournisseur vient en effet d’annoncer un partenariat avec SambaNova, une startup qui fabrique un GPU concurrent du L40S de Nvidia, le SN40L. Cet accord prévoit la mise sur le marché d’une solution clés en main comprenant des serveurs équipés de cartes SN40L, exécutant des LLMs préentraînés par SambaNova et accompagnés d’un NAS FlashBlade pour faire du RAG. Les prix, non communiqués, sont censés être plus compétitifs que ceux des serveurs OVX.

Outre la vente de GPUs et de serveurs, Nvidia compte sur la facilité d’accès de son RAG pour promouvoir la vente de ses modules NeMo qui servent à assembler des applications d’IA.

Parmi ces modules, on trouve les NIMs (NeMo Inference Microservices), à savoir des containers prêts à être exécutés sur un cluster Kubernetes et qui donnent à accès à plus d’une vingtaine de modèles préentraînés. S’y trouvent les LLMs ouverts de Google (gemma-7B), Hugging Face, Meta (Llama 2 7B, Llama 2 70B, Code-Llama 70B), Microsoft (kosmos -2), Mistral AI (Mistral 7B, Mixtral 8x7B Instruct) et Stability AI (Stablediffusion XL-Turbo), ainsi que les modèles propriétaires de Nvidia, AI21 Labs, Getty Images et Shutterstock.

Ces NIMs sont complétés par d’autres containers fonctionnels du catalogue NeMo de Nvidia pour aller au-delà de la simple inférence (utilisation) des modèles. Outre NeMo Retriever, on trouve NeMo Curator (pour formater en amont les données à utiliser), NeMo Customizer (fine-tuning d’un modèle préentraîné) ou encore NeMo Guardrails (pour empêcher une IA de générer du contenu sensible).

Tous les containers NeMo ont vocation à être utilisés via une API par les développeurs d’une entreprise pour bâtir un chatbot original. Cela dit, Nvidia propose déjà des squelettes prêts à l’emploi qu’il suffit de personnaliser pour une utilisation interne.

Le RAG, ou comment faire passer des documents entiers dans les prompts

L’inférence seule ne permet de générer un résultat qu’à partir des données sur lesquelles les modèles ont été entraînés. Si on interroge un LLM sur une information qu’il ne connaît pas, l’IA générative hallucine, c’est-à-dire qu’elle produit une réponse plausible, mais majoritairement fausse. L’idée du RAG est donc d’ajouter les informations manquantes dans le prompt que l’utilisateur a saisi au clavier.

Par exemple. Le client d’une compagnie aérienne demande au chatbot de celle-ci des renseignements sur son prochain vol en indiquant son numéro dans le prompt. NeMo Retriever charge dans le prompt l’intégralité de la feuille Excel des vols en cours, puis demande à l’IA de retrouver dans cette feuille les renseignements liés à ce numéro de vol. Cette opération est transparente pour l’utilisateur qui, in fine, a l’impression que l’IA connaissait déjà tous les vols.

Le problème ici est qu’il faut savoir dans quel document aller chercher les informations pertinentes. Si toutes les informations sont du texte dans une base de données structurée (SQL, par exemple), à charge au développeur du chatbot d’insérer dans son code des requêtes SQL qui parcourent la base en quête des mots clés correspondant au prompt.

Mais, dans la plupart des cas, les informations se trouvent quelque part dans une quantité gigantesque de fichiers de différentes natures (documents bureautiques, PDF, codes Python, images, vidéos, enregistrements audio, etc.). Pour qu’un moteur de recherche fonctionne, il faut au préalable indexer tous les contenus de ces fichiers dans une base de données vectorielle. Cette opération est potentiellement longue.

C’est là qu’interviennent NetApp et PureStorage. Ils ont chacun développé un module pour NeMo Retriever qui, selon les mots clés du prompt, dresse la liste des fichiers concernés sur leurs NAS respectifs, et cela très rapidement via leurs systèmes de métadonnées propriétaires, puis indexe automatiquement les contenus de ces fichiers dans une base vectorielle, interrogeable en mode texte.

Dans ses documentations, NetApp cite une compatibilité avec ses baies StorageGRID. Cela laisse supposer que son connecteur est aussi capable de récupérer des informations stockées en mode objet, via le protocole S3.

Des contraintes dans les traitements, des défis dans la sécurité

Pour autant, le RAG est loin d’être aussi efficace qu’un véritable entraînement, car l’IA ne prend pas en compte dans sa réflexion le sens nouveau des informations qu’il insère. En recherche scientifique comme en analytique commerciale, les nouvelles informations seront citées, mais ne serviront pas à améliorer le diagnostic d’une situation.

Une autre contrainte du RAG est qu’elle fait circuler des données potentiellement sensibles dans la cuisine interne d’un chatbot. Un utilisateur malveillant pourrait dès lors manipuler son prompt initial pour forcer l’IA générative à montrer des informations auquel il ne devrait pas avoir accès. Et, dans le cas où cette IA générative est associée à des mécanismes automatiques, il deviendrait même possible de déclencher des opérations que l’on n’a pas le droit de faire.

« Le talon d’Achille de tels systèmes réside dans les choix techniques qui sont faits au moment de la création de la base vectorielle qui indexe les contenus. »
Marc StaimerAnalyste, Dragon Slayer Computing

Le service NeMo Guardrails de Nvidia n’est pas conçu pour contrer de tels risques. Il sert plutôt à limiter les réponses à une certaine éthique, par exemple pour empêcher un chatbot de parler politique. Sans que l’on sache véritablement dans quelle mesure, NetApp précise que son connecteur pour NeMo Retriever est chapeauté par les fonctions de sécurité et de gouvernance qu’il vend avec ses solutions OnTap. Dans sa communication officielle, Pure Storage, lui, n’aborde pas la question.

« Vous n’avez pas à vous inquiéter de la sécurité ou d’une divulgation des données, parce que vous ne poussez pas vos données dans le modèle. Nous appliquons toute une série de contrôles de sécurité et d’accès aux données et ces contrôles sont maintenus quand les données sont injectées dans l’IA », argumente Andy Sayare, directeur des alliances stratégiques chez NetApp.

Oui, mais le Chatbot doit d’abord avoir accès à tout pour chercher des informations. Selon Cisco, qui planche sur la sécurisation des systèmes de RAG au travers de son projet Motific, il faudrait changer à la volée les droits d’accès du chatbot pour s’assurer qu’il ne génère pas d’informations normalement inaccessibles à l’utilisateur qui le manipule. Mais on ignore si le système de NetApp applique à la lettre ces dispositions.

« Le talon d’Achille de tels systèmes réside dans les choix techniques qui sont faits au moment de la création de la base vectorielle qui indexe les contenus. La question est de savoir si la vitesse d’exécution est privilégiée au détriment de la précision des documents sélectionnés. Et même, on se demande si les entreprises auront la capacité de régler ce détail », estime l’analyste Marc Staimer du cabinet Dragon Slayer Computing.

Pour approfondir sur HPC

Close