AWS fait d’Amazon Bedrock un couteau suisse de l’IA générative
Recherche sémantique, automatisation des flux de travail, nouveaux modèles, outil d’évaluation, filtrage des contenus indésirables, fine-tuning… Lors de re:Invent 2023 à Las Vegas, le géant du cloud a posé une feuille de route pour prendre en charge l’ensemble des cas d’usage connus de l’IA générative. Au passage, il rattrape ses concurrents Microsoft Azure et Google Cloud.
La solution concurrente d’AWS à Google Vertex AI et Azure OpenAI Service gagne de l’ampleur.
Pour rappel, après son annonce en avril 2023, la plateforme consacrée au déploiement et à l’entraînement de modèles d’IA générative, Amazon Bedrock, est entrée en disponibilité générale à la fin du mois de septembre. Comme ses concurrents, AWS a fait le choix de proposer un maximum de modèles tiers et les siens.
Pour l’heure, le géant du cloud propose 20 modèles (en contenant les variantes) en provenance de six fournisseurs : Amazon, Anthropic, Cohere, Meta, Stability.ai et AI21 Labs.
Un catalogue d’une vingtaine de modèles
Sur scène, Adam Selipsky, PDG d’AWS, a présenté en présence de Dario Amodei, PDG et cofondateur d’Anthropic, la prise en charge de Claude 2.1, la dernière version en date du modèle de la startup dans laquelle Amazon a investi 4 milliards de dollars. Anthropic assure qu’elle a réduit les risques d’hallucination de Claude, ce qui reste à prouver. En revanche, Anthropic dispose du modèle ayant la plus grande fenêtre de contexte du marché. Avec la capacité de gérer jusqu’à 200 000 tokens en entrée (environ 150 000 mots, 500 pages de texte en anglais), Claude 2.1, non seulement double les capacités de Claude 2, mais surpasse largement GPT-4-Turbo (128 000 tokens), présenté au début du mois de novembre.
Cette Rolls-Royce de l’IA générative ne convient pas à tous les cas d’usage. De son côté, AWS mise sur de plus petits modèles, Text Lite (dont la fenêtre de contexte est de 4 096 tokens) et Text Express (8192 tokens). Selon le géant du cloud, Text Lite permet de générer en langue anglaise des mails ou du contenu marketing (entre autres) à un rapport prix-performance avantageux. Text Express, lui, serait adapté pour animer un agent conversationnel et être intégré dans une architecture de type Retrieval Augmented Generation (RAG). Bedrock prend également en charge les modèles Llama 2-13B, 70B et ses variantes Llama 2-Chat-13B et 70B.
En sus des modèles de diffusion Stable Diffusion XL v0.9 et v1, AWS propose en préversion son propre LLM consacré à la génération d’images, Amazon Titan Image Generator. Ce modèle de fondation multimodale permet de générer des visuels composés de plusieurs couches, par exemple un objet central, et un arrière-plan. Un autre « checkpoint » permet de générer des embeddings de 1 024 dimensions en fournissant en entrée des images et du texte. Selon AWS, cela permet de développer des capacités de recherche sémantique. Il s’agit, par exemple, d’améliorer la recommandation de produits complémentaires dans le monde du retail (ex. proposer des meubles et des objets dont les couleurs ou le design sont proches).
La comparaison entre la stratégie d’AWS et celle d’Amazon, avec sa place de marché e-commerce, semble évidente.
Swami SivasubramanianVice-président, base de données, analytique et machine learning, AWS.
« Aucun modèle ne les dominera tous. Cet espace technologique est très précoce et [avoir] le choix est primordial », défend Swami Sivasubramanian, vice-président, base de données, analytique et machine learning chez AWS.
Du choix, AWS en offre, parfois autant que sa maison mère, Amazon. Cependant, la profusion de produits provoque des confusions et ne facilite pas la prise de décision d’entreprises qui, pour le moment, testent ou préparent leurs tests de l’IA générative.
Un mécanisme d’évaluation pour ne pas se tromper de LLM
Bien conscient du problème, AWS a présenté en préversion Model Evaluation, une fonctionnalité pour « évaluer, comparer et sélectionner les meilleurs modèles de fondation pour vos cas d’usage ». Pour l’heure, cette fonction est limitée aux LLM disponibles dans Amazon Bedrock.
L’outil proposera trois modes d’évaluation. Le premier est effectué automatiquement suivant des métriques prédéfinies pour des tâches de production de résumés, de génération de texte, de question-réponse et de classification de texte. Pour ce faire, les utilisateurs peuvent s’appuyer sur des jeux de données open source fournis par AWS, dont Gigaword et BoolQ.
Les métriques en question ne sont autres que la précision, la robustesse et la toxicité. AWS a choisi le score RWK (Real Knowledge Score) pour statuer de la précision des modèles. Les ingénieurs du fournisseur ont choisi pour la robustesse sémantique, et le Word Error Rate (WER), un indicateur habituellement utilisé pour identifier la qualité d’un algorithme de speech to text.
« La robustesse sémantique mesure dans quelle proportion les résultats du modèle changent en fonction de perturbations appliquées en entrée », expliquent les ingénieurs dans la documentation d’Amazon Bedrock.
Ces perturbations peuvent être liées à la typographie, la conversion de nombre en lettres, des changements aléatoires dans l’utilisation de majuscules, l’ajout ou la suppression d’espaces. Ces modifications des prompts du jeu de données en entrée sont appliquées pendant cinq minutes.
« La robustesse à de telles perturbations est une propriété désirable. Un score de robustesse sémantique faible indique que le modèle est performant », ajoutent-ils.
Pour la toxicité, AWS exploite l’algorithme detoxify, un projet open source mené par la startup Unitary. Là encore, plus le score est faible, moins le LLM étudié produit de contenus toxiques.
Quant aux évaluations des modèles par les humains, la technique consiste pour les utilisateurs à créer leurs propres jeux de données, à définir des critères d’évaluation personnalisés « tels que la pertinence, le style ou l’alignement sur la voix de la marque ». Les data sets doivent correspondre soit à des jeux de question-réponse (de type Dolly v2, par exemple), soit à des textes à trou (Bobigny est le chef-lieu du département de… et la réponse : la Seine-Saint Denis, illustre AWS).
L’offre Human : AWS Managed team consiste à appliquer la même méthode, mais cette fois-ci elle est confiée aux ingénieurs d’AWS qui définissent les critères d’évaluation en fonction des attentes du client, de ses prompts ou encore du niveau d’expertise de son équipe interne.
Les modèles ne sont qu’une partie de l’équation.
AWS infuse massivement la vectorisation dans ses services DBaaS
En ce sens, une grande partie du travail de « mise à la terre » des modèles repose sur la contextualisation de leurs réponses. Dans la pile technologique que le fournisseur propose, la prise en charge des embeddings, de la recherche vectorielle et du pattern applicatif RAG tient une place primordiale. Là encore, AWS mise sur le choix. Dynamodb, Documentdb, Opensearch serverless, Aurora for PostgreSQL, Memorydb for redis, MongoDB, mais aussi la base de données orientée graphes Amazon Neptune prennent ou prendront en charge les vecteurs en lien avec Amazon Bedrock. D’ailleurs, la plateforme accueille Knowledge Base for Bedrock, des templates préétablis pour simplifier la connexion et la configuration des architectures RAG au sein du cloud AWS.
Des agents capables d’orchestrer des API et des fonctions Lambda
En complément de cette base de connaissances, AWS met à disposition Agents for Amazon Bedrock. Il s’agit de donner accès aux modèles à des groupes d’actions accessibles par API ou dans des fonctions Lambda pour automatiser le déclenchement de « tâches commerciales complexes, telles que la réservation de voyages, le traitement des demandes d’assurance, la création de campagnes publicitaires, la préparation des déclarations fiscales et la gestion de votre inventaire ». Le concepteur de l’agent commence par indiquer ses instructions en langage naturel. Les différentes étapes de ces tâches sont définies par le modèle, dont le rôle est de trouver une séquence d’exécution logique, mais chacune des étapes peut être éditée par un développeur. Salesforce propose une capacité similaire dans Einstein Copilot Studio.
Pré-entraînement continu et fine-tuning
Le géant du cloud considère par ailleurs que le fine tuning, bien que plus cher à orchestrer, est une technique complémentaire nécessaire au succès de certains projets. Il s’agit pour les clients de labéliser les données qu’ils souhaitent soumettre aux modèles, afin d’apporter des informations plus précises. Bedrock prend en compte jusqu’à 10 000 lignes dans un fichier JSON. Ce fine tuning peut être appliqué aux modèles Amazon Titan Text, Llama 2 et Cohere Command Light. Plus tard, AWS proposera ce fine tuning pour les modèles d’Anthropic.
En amont de cette phase de fine-tuning, le fournisseur propose en préversion Continuous pretraining pour ses modèles Titan Text Lite et Express. Il s’agit d’un moyen de soumettre des données non labélisées spécifiques à un domaine à un LLM préentraîné. Ici, le système prend en compte jusqu’à 100 000 lignes dans un fichier JSON et cette phase de pré-entaînement porte ses fruits à partir d’un milliard de tokens en anglais, selon AWS. Cette valeur peut représenter l’ingestion de l’équivalent de 500 000 à 1 million de pages en anglais. Plus probablement, les entreprises réaliseront plusieurs passes (époques) sur un jeu de données plus petit pour atteindre ce volume optimal d’un milliard de tokens. À raison des 0,000 4 dollar les 1 000 tokens, pré-entraîner Text Lite avec ce volume de tokens coûterait environ 400 dollars. Pour Text Express, l’on atteint a minima 8 000 dollars dans les mêmes conditions, à raison de 0,008 dollar les 1 000 tokens. Il faut ajouter à cela un petit coût de stockage par modèle personnalisé (1,95 dollar par mois).
L’inférence de ces modèles personnalisés coûte 7,10 dollars l’heure pour Text Lite et 20,50 dollars l’heure pour Text Express. Ces LLM personnalisés peuvent d’ailleurs être placés derrière un VPC (AWS PrivateLink) à des fins d’isolation et de sécurité.
Des garde-fous pour tous les modèles hébergés à l’aide de Bedrock
Une fois le modèle déployé, il faut bien le superviser et éviter autant que faire se peut les hallucinations. En ce sens, à l’instar de Nvidia, AWS a dévoilé la préversion de Guardrails for Amazon Bedrock. Cette fonctionnalité, compatible avec les 20 modèles de la plateforme, doit permettre d’appliquer des règles et des filtres aux réponses des LLM. Il est par exemple possible d’empêcher des sujets de conversation contraire aux politiques d’une organisation, de filtrer les prompts et les résultats haineux, sexuels, violents et insultants par niveau (aucun, faible, moyen, haut). Plus tard, Guardrails disposera d’un moyen de détecter des données personnelles dans un prompt ou dans un résultat, et de les bloquer si nécessaire.
Mike GualtieriAnalyste, Forrester Research
« La série d’annonces, y compris celle de Bedrock, est un grand pas en avant pour AWS », considère Mike Gualtieri, analyste chez Forrester auprès de SearchEnterpriseAI, une publication sœur du MagIT. « Beaucoup de gens ont dit qu’ils [AWS] étaient en retard. Ce n’est plus le cas aujourd’hui ».
Selon les propos de Swami Sivasubramanian, plus de 10 000 clients AWS ont déployé la plateforme d’IA générative Amazon Bedrock. L’éditeur Intuit, SAP Concur, Kone, Philips, Ryan Air Booking.com ou encore Stellantis en font partie. Reste qu’il est encore trop tôt pour évoquer des déploiements massifs : les acteurs les plus avancés, dont Intuit, ont lancé leurs agents conversationnels cette année.