AWS re:Invent 2023 - Résumé des 2 derniers jours

Les 2 derniers jours du re:Invent ont eu leur lot d’annonces, notamment lors de la keynote présentée par Dr Swami Sivasubramanian, Vice President of Databases, Analytics, and Machine Learning at AWS. La keynote de Dr. Werner Vogels, Amazon.com VP and CTO of Amazon.com, était plutôt centrée sur de l’architecture en général (coûts, gestion de dette, évolutivité…) et pas tant sur des nouvelles annonces.

Le re:Invent 2023 aura été marqué, et on pouvait s’y attendre, par de nombreuses annonces autour du Generative AI et du Machine Learning (ML).

Generative AI

Adam Selipsky avait annoncé un certain nombre de nouveautés durant sa keynote autour de Bedrock, le service de GenAI d’AWS. Swami Sivasubramanian a enchainé avec de nouvelles annonces.

Plusieurs nouveaux modèles sont désormais disponibles dans Bedrock. Tout d’abord, le modèle Anthropic Claude 2.1. La fenêtre de contexte de tokens est 2 fois plus grande que pour Claude 2.0 (200 000 tokens maintenant) et les taux d’hallucinations sont grandement réduits. En sus, le modèle de Meta Llama 2 70B est également prêt à l’emploi dans Bedrock. Ce dernier modèle est utile pour des cas d’usage de chat.

Amazon Titan arrive avec comme nouveautés :

  • Multimodal Embeddings permet de créer des expériences de recherche et de recommandation multimodales pour les utilisateurs. Le multimodal fait référence à la capacité d'un système à traiter et à générer des informations à l'aide de types de données distincts (du texte, des images ou les deux ici) ;
  • 2 nouveaux Large Language Models (LLM)  sont également GA : Amazon Titan Text Lite et Amazon Titan Text Express. Ils prennent en charge un large éventail de tâches liées au texte, notamment des systèmes de résumé, de traduction et de chatbot conversationnel ;
  • Amazon Titan Image Generator est disponible en preview et permet de créer et d’affiner des images à l’aide de prompts en langage naturel en anglais. Ce générateur inclut la possibilité d’éditer des images avec un prompt de texte. On peut également affiner le modèle avec ses propres données pour générer des images en adéquation avec son business.
  • On peut désormais évaluer et comparer des Foundation Models (FM) pour sélectionner le plus adéquat pour notre cas d’usage. Il propose à la fois des évaluations automatiques des modèles ainsi que des revues humaines manuelles pour s’assurer de la qualité.

Plusieurs nouveautés dans SageMaker :

Amazon Q s’intégrera bientôt à AWS Glue pour ingérer plus rapidement des données en utilisant le langage naturel. On devrait également pouvoir faire du troubleshoot via une interface de chat.

Base de données

AWS OpenSearch continue de nous gâter de nouveautés lors ces deux dernières journées :

  • Il intègre le nouveau type d’instance OR1. Ces instances vont permettre de bénéficier d'une amélioration prix/performance de 30 % par rapport aux types d'instances existants. Le gain est conséquent, n’hésitez pas à les essayer 💸. Des volumes EBS gp3 sont utilisés pour le stockage principal et les données sont ensuite copiées de manière synchrone sur S3. Les données sur S3 peuvent être utilisées pour réhydrater des volumes EBS après que des shards aient été déplacés entre les instances à la suite d’un incident ou une opération de rééquilibrage ;
  • Une intégration zero-ETL avec S3 est disponible en preview. OpenSearch peut donc requêter directement S3 pour ingérer des données et les rendre exploitables dans son moteur de recherche. Une chose intéressante est qu’il propose des templates de logs avec des dashboards prédéfinis pour par exemple ingérer les logs d’ALB ou encore les VPC Flow Logs. C’est plutôt intéressant sachant que les logs de ces deux services ont une syntaxe complexe qui les rend difficile à lire en texte brut.

Amazon Redshift évolue :

  • Amazon Redshift Serverless devient plus malin sur la mise à l’échelle en se basant sur de nouvelles dimensions comme la complexité des requêtes, leur fréquence ou encore la taille du jeu de données. Espérons que cela aidera aussi notre porte monnaie 🤞;
  • Amazon Q arrive également dans Amazon Redshift pour générer des requêtes SQL depuis des prompts de langage naturel.

La recherche vectorielle arrive en masse sur de nombreux services AWS. La recherche vectorielle est une technique émergente utilisée en Machine Learning pour trouver des points de données similaires dans un ensemble de données. Ceci est réalisé en comparant leurs représentations vectorielles à l'aide de mesures de distance ou de similarité. Les vecteurs sont une représentation numérique de la donnée non structurée créées depuis des LLM hébergés sur Bedrock ou SageMaker par exemple.

Voilà les nouveaux services qui supportent désormais la recherche vectorielle :

Amazon Neptune se dote d’une fonctionnalité appelée Analytics afin d’analyser de grosses quantités de données de type graphe pour identifier des tendances. On peut charger des données depuis Neptune ou depuis S3.Neptune Analytics est complètement managé. Il alloue automatiquement le compute nécessaire selon la taille du graphe et charge toute la donnée en mémoire pour qu’elle soit requêtable. Le benchmark initial montre que Neptune Analytics charge les données d'Amazon S3 jusqu'à 80 fois plus rapidement que les autres solutions AWS existantes.

Sécurité

3 nouveautés arrivent dans Amazon Inspector :

  • On peut désormais utiliser l’API d’Inspector pour scanner les vulnérabilités logicielles dans les images de conteneurs au moment du build depuis un pipeline de Continuous Integration and Continuous Delivery (CI/CD) ;
  • Il peut également monitorer de façon continue des instances EC2 sans installer un agent ou un logiciel sur les instances (cette fonctionnalité est en preview). Pour cela, Inspector découvre les instances et fait des snapshots des volumes EBS de ces instances pour les analyser. Quand il a terminé, il supprime les snapshots. Pour rappel, auparavant, Inspector passait par l’agent SSM pour récolter des informations sur les instances. Cette nouvelle méthode va permettre de ne plus consommer de CPU ou de RAM sur nos instances : plutôt une bonne nouvelle 🙂 ;
  • Il utilise de la GenAI pour fournir une correction de code assistée dans Lambda.

En ce qui concerne les coûts, Inspector facture au scan d’une entité (conteneur, EC2 ou Lambda). Je suis plutôt emballé par l’annonce de ces nouveautés sur Inspector, la sécurité étant l’une de nos priorités chez Ippon quand on déploie des architectures sur AWS 🔐.

Monitoring

  • Le service CloudWatch s’enrichit avec Application Signals qui va nous aider à monitorer des systèmes distribués et plus précisément à suivre leurs performances. Il va permettre d’instrumenter des applications pour collecter des métriques et des traces sans code custom. En plus, il sera possible de définir des Service Level Objectives (SLO) pour suivre des opérations spécifiques. Application Signals propose également une carte des services automatiquement découverts pour avoir une représentation visuelle de nos applications avec leurs interdépendances. Cette nouveauté est supportée sur EKS, ECS et EC2 ;
  • myApplications est une nouvelle fonctionnalité qui est introduite dans la console AWS et qui permet de gérer et surveiller les coûts, la santé, la sécurité et la performance d’un ensemble de ressources AWS. Grâce à Resource Explorer, on peut chercher et trouver des ressources sur notre compte AWS (en mode multi-régions) et les ajouter dans une “Application”.  Une fois l’application créée, on a accès à un dashboard avec des widgets qui contiennent des graphes et pas mal d’informations : les coûts (avec des données provenant de Cost Explorer), le compute (avec les métriques classiques provenant de CloudWatch), le monitoring et les opérations (alarmes, alertes ainsi que les performances avec CloudWatch Application Signals), la sécurité (avec des informations de Security Hub) et enfin un widget DevOps (avec des informations provenant de Systems Manager). Je suis plutôt emballé par cette nouvelle fonctionnalité dans la Console qui permet d’avoir une vue unifiée d’un ensemble de ressources provenant de N services AWS différents. Cela devrait nous aider pour faire du troubleshooting et éviter de naviguer entre les différentes UI des multiples services  👍. Et en plus, elle est disponible sans coût additionnel 💰.

Autres

Conclusion

Les annonces faîtes au re:Invent 2023 surfent sur la hype autour du Generative AI. Il faudra tester et prendre du recul sur tout ce qui a été annoncé pour mesurer la pertinence des différentes nouveautés notamment sur SageMaker et Bedrock. En tous cas, ces nouveautés semblent prometteuses, notamment le service Amazon Q et les améliorations autour de l'entraînement et l’enrichissement de modèles 👍.

Je suis plutôt emballé sur les annonces autour du serverless (Elasticache Serverless 😍) et des nombreuses intégrations zero-ETL (OpenSearch/S3, OpenSearch/DynamoDB, RedShift/Aurora…) qui vont nous (ingénieurs Cloud/DevOps) simplifier la gestion et la maintenance d’infrastructures.

Dans les nouveautés autour de la sécurité, je retiendrai la simplification de IRSA dans EKS (il était temps !), le scan de containers au build ainsi que le scan d’instances EC2 en mode agentless avec Inspector.

Enfin, sur le monitoring, j’apprécie que AWS continue de faire évoluer CloudWatch, cela nous sera utile chez nos clients qui n’ont pas de solution de monitoring externe comme Datadog ou Splunk.