GenAI : avec Amazon Q, AWS affiche ses ambitions face à ses concurrents

La semaine dernière, AWS a annoncé la disponibilité générale d’Amazon Q, son portfolio d’assistants propulsés à l’IA générative, concurrent des Copilot de Microsoft. Pour l’heure, cette gamme présente des limites inhérentes à l’offre pléthorique, mais autocentrée, du fournisseur.

Pour rappel, la marque « Q » est apparue il y a deux ans quand le fournisseur cloud a lancé QuickSight Q, un outil pour interroger des données en langage naturel à travers sa plateforme BI.

La vague de l’IA générative a poussé AWS, lors de son événement Re : Invent en décembre 2023, à utiliser la marque Q pour en faire la représentante de ces assistants d’IA.

Au total, AWS propose trois offres. Amazon Q Business et Q Developer sont accessibles en disponibilité générale depuis le 30 avril. Amazon Q Apps est encore en préversion.

Amazon Q Developer est sans doute là où AWS a pu développer davantage de fonctions. Il faut dire que cela fait bientôt trois ans qu’il développe Amazon CodeWhisperer, un outil de génération de code concurrent de GitHub Copilot. Mais Q Developer doit faire bien plus que de générer du code, selon Mai Lan Tomsen Bukovec, vice-présidente de la technologie chez AWS.

Amazon Q Developer : CodeWhisperer déguisé augmenté

« Si vous interrogez les développeurs, ils vous diront que moins de 30 % de leur activité est consacrée à l’écriture de code », affirme-t-elle. « Amazon Q developer est unique en matière d’intelligence artificielle, car il ne se contente pas de générer du code très précis, mais il prend en charge une plus grande partie du flux de travail du développeur que n’importe quel autre assistant de programmation ».

Ainsi, Amazon Q Developer doit aider les développeurs à « accomplir toutes leurs tâches, de la programmation en passant par les tests, les mises à jour applicatives, la résolution de problèmes, l’exécution de scans de sécurité et de bugs, jusqu’à l’optimisation de ressources AWS », décrit le fournisseur dans un communiqué.

En réalité, la plupart des fonctionnalités d’Amazon Q Developer sont extraites de CodeWhisperer qui est amené à disparaître au profit du nouvel assistant.

Tout comme son ancêtre, Q Developer peut être intégré à un IDE du marché, peut être géré depuis AWS IAM et est accessible depuis des applications mobiles, Teams, Slack, et le site Web d’AWS.

Fonctionnalité inédite, Q Developer permet de diagnostiquer des messages d’erreur répertoriés dans la console d’AWS pour les services EC2, Elastic Container Service, S3 et Lambda dans les régions US West et US East du fournisseur cloud. Des boutons contextuels permettent d’obtenir des informations sur les erreurs les plus communes et d’obtenir des suggestions de correction. En revanche, Amazon Q ne conserve pas d’historiques des sessions de débogage.

Cette capacité mémorielle est toutefois disponible depuis les IDE compatibles quand il s’agit d’interroger le service de Chat lié à Q Developer afin de transformer, implémenter, ou générer du code. Selon la documentation d’AWS, l’outil serait « particulièrement utile » quand il est question de répondre à des questions sur l’utilisation des services AWS, sur des concepts de développement généralistes, dont la syntaxe de certains langages de programmation et le développement d’application, en sus de pouvoir assister les développeurs dans l’écriture, l’explication, le débogage de code, ainsi que la rédaction de tests unitaires.

Du fait de l’historique de CodeWhisperer, Q Developer peut automatiquement suggérer du code dans les IDE compatibles pour Java, Python, JavaScript, C#, Go, PHP, Rust, Kotlin et SQL. Les langages Ruby, C++, C, Shell et Scala sont pris en charge, mais dans une moindre mesure. Les fichiers JSON et YAML liés à CloudFormation sont bien compris par le modèle sous-jacent, tout comme le DSL de Terraform (HCL) ainsi que les éléments Typescript et Python associés à AWS CDK.

En outre, Amazon Q Developer est appairé avec les outils de détections SAST, de secrets et de posture de sécurité IaC en provenance d’Amazon CodeGuru et de CodeWhisperer pour Java, JavaScript, Python, TypeScript, Ruby 2.7 et 3.2, Go, AWS CloudFormation, Terraform jusqu’à la version 1.6.2 et pour les librairies TypeScript et Python AWS CDK. L’assistant serait aussi capable de détecter les problèmes de qualité dans le code, mais AWS ne précise pas comment, hormis que les algorithmes ont été entraînés avec de bonnes pratiques.

Un assistant de programmation… pour AWS

Il y a toutefois des limites. La transformation de code n’est pour l’instant valable que pour passer de Java 8 et 11 à Java 17. Certaines des fonctionnalités les plus intéressantes sont encore en préversion, notamment la description des ressources AWS déployés et l’aide à la compréhension des coûts d’infrastructure à partir d’AWS Cost Explorer.

Amazon Q Developer est décliné en deux offres, l’une gratuite, l’autre – Developer Pro - facturée 19 dollars par utilisateur par mois.

Il est disponible dans 17 régions cloud, dont Paris, Francfort, l’Irlande, et Stockholm.

En la matière, le positionnement d’AWS n’a rien d’original. Il suit la même politique que GitHub avec Copilot et de Gitlab avec Duo qui propose peu ou prou les mêmes fonctionnalités. À la différence près que les assistants des plateformes Git sont moins spécialisés dans l’implémentation des ressources AWS, tout comme ils seront moins experts des environnements Google que Gemini Code Assist.

Mis en perspective, la prolifération des assistants de développement réclame aux entreprises d’en adopter plusieurs suivant la plateforme cible de déploiement et l’expertise de ses équipes de développement. L’heure est également aux tests d’envergure, qui consiste pour certains grands groupes à se procurer des centaines de licences de chaque assistant afin de déterminer lequel ou lesquels seront utilisés en production.

Amazon Q Business : une architecture RAG managée

Cette limitation, AWS veut s’en passer pour Amazon Q Business.

« Amazon Q Business vous aide à devenir une entreprise axée sur les données », assure Mai Lan Tomsen Bukovec. « Nous avons plus de 40 connecteurs pour des choses comme Microsoft Exchange, Sharepoint, Amazon S3, Salesforce, etc. Amazon Q Business vous aider à trouver les bonnes informations à travers toutes ces sources de données ». Amazon Q Business est non seulement compatible avec AWS IAM, mais aussi Azure Active Directory. « L’idée est que, quel que soit l’endroit où se trouvent vos données, Amazon Q Business vous aidera à les trouver et à les utiliser de manière automatisée et vous permettra de faire fonctionner toutes vos sources d’identité existantes avec la même solution », avance la vice-présidente.

En clair, il s’agit d’une architecture RAG managée facturée comme telle en fonction du type d’indexation et du nombre d’utilisateurs. L’index Starter est facturé 0,140 dollar par heure par unité (100 heures d’utilisation de connecteurs, 20 000 documents ou 200 Mo de textes extraits), l’index Enterprise coûte 0,264 dollar par heure par unité. Il faut ajouter à cela les 3 dollars par utilisateur par mois avec le forfait Amazon Q Business Lite et les 20 dollars par utilisateur par mois pour Amazon Q Business Pro. À noter qu’Amazon Q Business donne également accès à Amazon Q dans QuickSight, qui doit permettre de créer plus ou moins automatiquement des tableaux de bord. Là encore, Amazon Q Business n’est disponible que dans les régions cloud US East et US West.

Pour l’heure, les connecteurs permettent surtout d’extraire des documents depuis des services de bases de données d’AWS (Aurora, RDS) et des produits Microsoft (SharePoint, OneDrive,Echange, Teams, Yammer, SQL Server). La présence de Slack, Zendesk, Dropbox, Google Drive, Gmail, Box ou de ServiceNow Online promet néanmoins de tirer d’un éventail de sources de données populaires en entreprise. Il est également possible de bâtir des connecteurs « maison ».

Amazon Q Apps doit encore faire ses preuves

Ce n’est pas non plus une solution miraculeuse. Si AWS fournit des interfaces conversationnelles pour Amazon Q Business, l’architecture RAG nécessite d’être configurée, notamment pour gérer les autorisations et les garde-fous évitant de fournir des informations fausses, confidentielles ou sensibles à des personnes qui n’aurait pas les autorisations nécessaires. AWS a évoqué les cas d’usage de quatre clients, mais aucun n’évoque le nombre de documents traités. L’un d’entre eux, SmartSheet, un concurrent de Monday.com, a toutefois mis l’application dans les mains de ses 3300 employés. Aussi, il est possible que les entreprises veuillent exploiter les capacités de ce RAG managé pour les infuser dans des applications.

Quant à Amazon Q Apps, en préversion, il doit faciliter la conception de ces applications dans une logique no-code et à travers des commandes en langage naturel. Ces applications doivent accomplir des tâches spécifiques par exemple l’édition de documents, la génération de question pour des entretiens RH, d’analyse de règles d’achat, résumé de documents légaux, etc. Ces « apps » sont accessibles depuis un catalogue spécifique, mais il n’est pas dit que les entreprises choisissent ce mode de déploiement finalement peu infusé, à moins qu’il soit possible de les embarquer directement dans des applications métier.

Concernant les fondations de ce service, AWS précise que sa gamme de services Amazon Q est bâtie sur sa plateforme Bedrock, accessible depuis peu sur la région cloud française du fournisseur. Celle-ci permet d’exploiter de grands modèles de langage (Large Language Model) de son cru (ceux de la collection Titan) et des LLM tiers, dont ceux d’Anthropic, Cohere, Meta ou encore Mistral AI. S’il indique qu’il utilise des capacités de son moteur de recherche Kendra, le fournisseur ne précise cependant pas quels modèles sont utilisés pour propulser les services Amazon Q. « Nous testons constamment la précision et utilisons différents modèles en fonction de leur efficacité. Ce n’est pas seulement le modèle qui compte, c’est aussi la technique que vous utilisez avec le modèle. Et nous avons optimisé nos accès aux sources multiples, des techniques de recherche et d’implémentation RAG », assure Mai Lan Tomsen Bukovec.

Reste à savoir si les entreprises sont prêtes à laisser un acteur tiers s’occuper d’indexer des données pour elles (AWS présente tout de même un moyen de chiffrer les documents avec son KMS) puis de générer des réponses avec ses modèles ou si elles préférons avoir la maîtrise de ces architectures derrière leur VPC.

Pour approfondir sur IA appliquée, GenAI, IA infusée