Semaine du 10 mai 2025 au 16 mai 2025
Bref résumé des news 📰 de la semaine
Comme à son habitude, Google Cloud a mis le paquet sur la Data et l'IA. 🧠 BigQuery s'ouvre à Snowflake et améliore ses index vectoriels, et Spanner qui affine aussi ses capacités vectorielles. Looker et Looker Studio ne sont pas en reste avec des améliorations et l'intégration de Gemini. Côté calcul, AI Hypercomputer propose plus de flexibilité. Et pour les développeurs, Gemini Code Assist se dote de commandes personnalisées. Pas mal de mouvement aussi du côté des bases de données Cloud SQL et des outils de transfert de données. Mais avant ça, un petit feedback 👇.
Le coin de l'architecte 📐
Le retour de cette rubrique pour vous partager mes feedbacks, et cette fois ça sera sur l'Agent Development Kit (ADK) de Google. De plus, j'ai déjà utilisé LangChain et LangGraph pour tester des architectures multi-agents (version locale, c'est à dire tous les agents tournent sur une même instance, pas d'échange réseau entre eux). Je peux donc vous donner mon analyse ici 👇 :
Le choix entre ADK et LangGraph ne se limite pas à une simple sélection de framework de développement. Il implique également un engagement potentiel envers un écosystème de plateforme plus large. ADK est optimisé pour Gemini et Vertex AI (même s'il est "vendu" comme tech-agnostic), et son option de déploiement managé de prédilection est Vertex AI Agent Engine. De son côté, LangGraph s'intègre nativement avec LangSmith pour l'observabilité et s'appuie sur la LangGraph Platform pour le déploiement en production. Ces plateformes associées offrent des services managés, des outils d'observabilité avancés, et des fonctionnalités de niveau entreprise qui transcendent les capacités du framework de développement lui-même. Par conséquent, les entreprises doivent évaluer non seulement les caractéristiques de développement du framework, mais aussi l'adéquation de la plateforme de support avec leur stratégie IT globale et leurs besoins opérationnels, car le coût d'un changement de plateforme peut s'avérer significatif à long terme.
L'heuristique souvent citée "ADK pour le simple, LangGraph pour le complexe" est une simplification utile mais qui peut s'avérer trompeuse si elle est appliquée sans discernement. Un workflow qui est "simple" en termes de nombre d'étapes pourrait devenir complexe à implémenter dans ADK si sa logique d'orchestration ne correspond pas bien aux agents et tools pre-built. Inversement, un workflow "complexe" impliquant de nombreux agents mais avec des interactions claires et une structure hiérarchique pourrait être tout à fait gérable avec ADK. La complexité d'un SMA ne se résume pas uniquement au nombre d'agents ou d'étapes : elle dépend aussi de la nature de leurs interactions, de la dynamique du flux de contrôle, et des exigences en matière de gestion de l'état.
- ADK propose des structures pour des hiérarchies et des flux séquentiels/parallèles bien définis. Si le SMA envisagé s'aligne sur ces patrons, son développement dans ADK peut s'avérer relativement "simple".
- LangGraph, quant à lui, permet de modéliser n'importe quel type d'interaction, mais la définition de cette interaction (le graphe lui-même) peut être simple ou complexe en fonction de la nature du problème à résoudre.
Il est donc crucial de bien cartographier l'architecture souhaitée du SMA avant de choisir un framework. La notion de "complexité" doit être évaluée par rapport aux patrons de conception que chaque framework facilite et encourage.
Ceci étant dit, j'ai récemment déployé de l'agent en production via ADK, et même si la lib est encore en construction et possède certaines limitations, la manière dont les events sont gérés et l'architecture globale simplifient grandement la prise en main, dans le cas où le use-case que vous prévoyez bénéficie des briques pré-construites d'ADK, comme expliqué plus haut. La vidéo tuto ci-dessous vous montre comment coupler ADK à l'API Gemini Live, et obtenir un agent multi-modal :
Comme d'habitude, c'est une démo "donne moi la météo" qui n'est pas vraiment un vrai usecase pertinent pourrait-on dire 😅. Certes, mais cela vous donne un bon aperçu technique.
Pour aller plus loin, vous pouvez lire les excellents articles de Sascha Heyer (GDE) qui en a écrit une série sur ADK, l'API Gemini Live, mais aussi la gestion des sessions, des websockets, etc.
Mon takeway 🥡:
- Avec ADK, j'ai pu développer un "vrai" SMA pour un client avec 3 agents assez facilement (1 orchestrateur + 1 agent spécialisé appels API d'une plateforme de ticketing + 1 agent accédant à une base de produits interne)
- Le tool pre-construit OpenAPIToolset m'a bien servi pour la définition des outils utilisables pour l'agent spécialisé appels API...
- ...mais la gestion de l'authentification des APIs n'est pas complète dans ADK, j'ai dû ruser 😒
- Le petit serveur web qu'on peut lancer en local avec la commande adk web est très pratique mais n'est pas suffisant pour être déployé en production
- L'intégration d'un agent ADK dans une app autre (comme Streamlit par ex) est possible mais pas triviale : on s'en sort néanmoins en interceptant les events que l'agent génère. Les devs front devraient s'en sortir également en JS/TS.
- Je n'ai testé que Gemini : prévoyez d'utiliser à minima la version 2.5 Flash. Pour l'agent qui appelle l'API, seul la version 2.5 Pro fait bien le travail dans mon cas (et attention à la facture qui peut piquer car ça consomme du token).
- Le déploiement dans Vertex AI Agent Engine est simple mais coûteux quand on regarde le pricing CPU/mémoire. J'ai pour ma part opté pour Cloud Run, avec un déploiement custom (pas via la commande adk qui le permet car on contrôle moins la configuration) et un min scaling à 0.
Ce fût dense ! Maintenant, place aux infos des release notes. 👍
Data et IA 🧠
Vertex AI
Côté Vertex AI, on a du nouveau sur les accélérateurs ! Le custom training supporte maintenant les A3 Ultra et A4, tandis que l'online prediction accueille les A3 Mega et A4. Pour savoir où ces petites merveilles sont disponibles, jetez un œil à la doc sur les accélérateurs. 🚀
Spanner
Spanner continue de s'enrichir. Vous pouvez maintenant créer un index vectoriel pré-filtré, ce qui est super pratique pour améliorer la performance et la pertinence des recherches de voisins approchées (ANN) en se concentrant uniquement sur les lignes qui matchent une condition spécifique. Côté SQL, Spanner supporte la fonction GoogleSQL SPLIT_SUBSTR() pour découper des chaînes de caractères, ainsi que de nouveaux alias pour des fonctions de date et de chaîne ADDDATE() , SUBDATE() , LCASE() , UCASE() . Et ce n'est pas tout, le type de données INTERVAL est désormais disponible en GoogleSQL et PostgreSQL pour représenter des durées.
Looker & Looker Studio
Chez Looker, ça bouge pas mal ! La permission gemini_in_looker peut maintenant être appliquée à des modèles spécifiques, offrant plus de granularité. Vous pouvez aussi sélectionner la version du driver JDBC lors de la création ou modification d'une connexion, et créer des connexions avec les dialectes SQL Amazon Redshift 2.1+ ou Amazon Redshift Serverless 2.1+. L'endpoint API sync_lookml_dashboard accepte un nouveau paramètre optionnel dashboard_ids pour synchroniser un sous-ensemble de dashboards. Le driver JDBC Presto a été mis à jour vers la version 0.291. Pour les instances Looker (Google Cloud core), il est maintenant possible de les créer en utilisant Private Service Connect avec une configuration réseau hybride. Et préparez-vous pour Looker 25.8, dont le déploiement commence le 19 mai 2025 pour Looker (original) et Looker (Google Cloud core).
Looker Studio permet maintenant de configurer les liens dans les tableaux croisés dynamiques et les graphiques de table pour qu'ils s'ouvrent dans un nouvel onglet. Cette option "Open links in new tab" est disponible pour les rapports avec les graphiques modernes activés. Le connecteur Looker bénéficie d'améliorations sur les filtres, supportant la condition "Matches (advanced)" pour les types de filtres texte et nombre.
Il y aussi des features qui ne sont pas nouvelles, mais plutôt qui ressortent d'outre-tombe, notamment la Linking API. Sortie initialement en 2022 quand Looker Studio s'appelait encore Data Studio, celle-ci permet de créer des dashboards de manière programmatique, avec une URL partageable aux utilisateurs finaux. J'étais complètement passé à côté et j'ai eu un "kind reminder" grâce à une vidéo récente sortie sur la chaîne YT "Google Cloud Tech" :
En résumé, cela est utile aux développeurs qui souhaitent offrir une expérience d'accès aux données et de reporting simplifiée et intégrée à leurs utilisateurs, en automatisant la création et la configuration de rapports Looker Studio.
Même chose pour les connecteurs communautaires et visualisations communautaires personnalisées qui sont revenus dans l'actualité de la chaîne.
BigQuery
BigQuery est en pleine forme cette semaine ! 🏋️
- Vous pouvez maintenant planifier des transferts de données automatisés depuis Snowflake vers BigQuery (en preview).
- Les index vectoriels supportent le type d'index TreeAH (basé sur ScaNN de Google) en GA, optimisé pour le traitement par lots.
- Les transferts cross-region pour le chargement et l'export de données sont maintenant en GA.
- Côté SQL, plusieurs fonctionnalités passent en GA :
GROUP BY STRUCT , GROUP BY ARRAY (avec SELECT DISTINCT ), et la clause GROUP BY ALL .
- Les graphiques d'utilisation des ressources BigQuery (en Preview) ont été améliorés, avec une timeline par défaut étendue à six heures et une nouvelle vue d'utilisation des slots de réservation.
- Pour mieux comprendre vos requêtes, la section "Query text" dans le graphe d'exécution est disponible en preview.
- Enfin, BigQuery et BigQuery DataFrames ouvrent la voie à l'analyse multimodale ! Vous pouvez intégrer des données non structurées avec les valeurs
ObjectRef , utiliser l'IA générative pour analyser ces données et générer des embeddings avec les fonctions SQL BigQuery ML ou les méthodes BigQuery DataFrames (Gemini, modèles d'embedding multimodaux), créer des DataFrames multimodaux, et utiliser des UDFs Python pour transformer des images et segmenter des PDF. Tout cela est en Preview. ✨
Gemini Code Assist Standard and Enterprise
Pour les développeurs utilisant Gemini Code Assist (Standard et Enterprise) avec IntelliJ (version 1.15.0), les réponses de chat avec des messages d'erreur ont maintenant des boutons d'action. Plus intéressant encore, vous pouvez créer et utiliser des commandes personnalisées ! Fini les prompts répétitifs, sauvegardez vos propres commandes pour aller plus vite. ⚡
Mainframe Assessment Tool
Le Mainframe Assessment Tool passe en version 2.3.0. Au menu : Gemini 2.0 Flash-Lite et Gemini 2.0 Flash deviennent les modèles par défaut pour les insights IA. Le support RPG pour les suggestions de spécification et de code est en Preview. L'interface utilisateur a aussi été améliorée pour une meilleure navigation.
AI Hypercomputer
Sur AI Hypercomputer, une option de consommation "Flex-start" est disponible en Preview. Elle permet d'obtenir des ressources (comme des GPUs très demandés) pour une durée allant jusqu'à sept jours, en puisant dans un pool de ressources sécurisé.
Produits Data en vrac... 📦
Autres produits ☁️
- Virtual Private Cloud : Vous pouvez exclure des plages d'adresses IP de l'allocation automatique pour les plages internes. Plus d'infos sur la réservation de plages internes. Cette fonctionnalité est en GA.
- Security Command Center : Lorsque vous activez Security Command Center pour la première fois dans une organisation et que vous activez la résidence des données dans l'UE ou aux États-Unis, les contrôles de résidence des données sont appliqués au repos, en utilisation et en transit. Cette fonctionnalité est en Disponibilité Générale. Voir la planification de la résidence des données et les endpoints régionaux.
- Route Optimization API : Quatre nouvelles fonctionnalités expérimentales sont disponibles : U-turn Avoidance, Objectives, Single Non-Blocking Optimizations et Load Costs. Accessibles via les endpoints REST et gRPC.
- Resource Manager : Vous pouvez utiliser des contraintes personnalisées avec Organization Policy pour un contrôle plus granulaire sur des champs spécifiques pour certaines ressources Cloud Quotas. Voir Utiliser les politiques d'organisation personnalisées. En Preview.
- Google SecOps SOAR : Un nouveau tableau de bord de statut est disponible. La release 6.3.45 est en cours de déploiement et la release 6.3.44 est disponible pour toutes les régions.
- Google SecOps SIEM : De nouvelles versions premium de parseurs Zscaler sont disponibles (WEBPROXY, FIREWALL, DNS, etc.). Voir la topologie documentée. Une nouvelle API introduite le 8 mai 2025 pourrait nécessiter des permissions mises à jour pour les rôles personnalisés afin d'accéder à la page UI de détection.
- Google SecOps : Similaire à SIEM, de nouvelles versions premium de parseurs Zscaler sont disponibles. Voir la topologie documentée. Une nouvelle API introduite le 8 mai 2025 pourrait nécessiter des permissions mises à jour pour les rôles personnalisés afin d'accéder à la page UI de détection.
- Google Kubernetes Engine : GKE fournit maintenant des insights et recommandations pour identifier et dépanner les clusters avec des Custom Resource Definitions (CRD) ayant un bundle CA invalide. Dans GKE 1.33+, le driver CSI pour disque persistant Compute Engine supporte le provisionnement de volumes Hyperdisk Balanced High Availability dans divers modes d'accès.
- Google Distributed Cloud (software only) for VMware : En Preview, vous pouvez utiliser la console Google Cloud pour créer des clusters d'administration et voir leurs détails.
- Google Cloud Contact Center as a Service : Plein de nouveautés ! Inclusion d'images dans les emails sortants, intégration QM incluant les événements de session de chat, configuration d'une adresse email d'expéditeur "no-reply" pour les auto-réponses, suppression des sujets d'email lors de la suppression des données d'interaction. Le Mobile SDK 2.12 est sorti avec le support de nouvelles langues et la possibilité de recevoir/télécharger des pièces jointes. La vérification orthographique et grammaticale est dispo pour les sessions SMS et WhatsApp. "Co-browse" est renommé "Screen Share". Le wrap-up manuel est automatiquement assigné au dernier chat complété. Transferts de chat de virtual agent à virtual agent possibles. La version 3.34 est sortie, et l'annonce de la pré-release 3.35 est faite.
- Eventarc : Le support pour la création de contraintes de politique d'organisation personnalisées dans Eventarc Advanced et Eventarc Standard est en GA pour certaines ressources Eventarc.
- Compute Engine : En Public Preview, le modèle de provisionnement flex-start permet d'augmenter les chances d'obtenir des GPUs pour des workloads de courte durée, utilisable avec les requêtes de redimensionnement dans les MIGs. Également en Public Preview, dans un MIG, vous pouvez utiliser un health check pour surveiller la santé de votre application sans déclencher de réparation de VM.
- Cloud Run functions (et Cloud Run) : Les labels que vous aviez définis pour vos Cloud Run functions via `gcloud functions` ou l'API Cloud Functions v2 se propagent à Cloud Run lorsque vous déployez vos fonctions dans Cloud Run. Voir comment configurer les labels pour les services.
- Cloud Quotas : Vous pouvez utiliser des contraintes personnalisées avec Organization Policy pour un contrôle plus granulaire sur des champs spécifiques pour certaines ressources Cloud Quotas. Voir Utiliser les politiques d'organisation personnalisées. En Preview. (Note: Répétition de l'info de Resource Manager car pertinent pour les deux).
- Cloud Load Balancing : Les load balancers globaux et cross-region supportent maintenant l'activation de l'isolation du trafic sur la politique de load balancing de service (en Preview).
- Apigee X : La politique PublishMessage supporte deux nouveaux éléments : et . Améliorations de la fonctionnalité AppGroups : les scopes et attributs peuvent être ajoutés à la clé d'application AppGroup via une opération POST (voir l'API updateAppGroupAppKey). Apigee supporte maintenant des charges utiles de message jusqu'à 30MB. Une version mise à jour d'Apigee (1-15-0-apigee-4) a été releasée le 14 mai 2025.
Au-delà de GCP 🔭
Cette nouvelle rubrique (encore !) sera parfois présente pour mentionner des nouveautés sur des produits Google hors-GCP "pur" mais qui sont complémentaires, en fonction des cas d'usage bien entendu.
Solar API
La Google Maps Platform Solar API se refait une beauté avec le "2025 Solar API Data Refresh" ! ☀️ Celle-ci est un service conçu pour accélérer l'installation de systèmes solaires et énergétiques. L'API génère des données détaillées sur les toits, basées sur les vastes données géospatiales, afin d'en évaluer leur potentiel énergétique.
Attendez-vous à des DSMs, segments de toit et empreintes de bâtiments de meilleure qualité grâce à un nouveau modèle en collaboration avec Google DeepMind. La couverture des bâtiments est augmentée avec des données plus fraîches, notamment hors US. L'amélioration du modèle énergétique permet de déterminer plus précisément l'usage énergétique des bâtiments, étendant la fonctionnalité NEM 3.0 à tous les US.
Geocoding API
La Geocoding API fait partie de la Google Maps Platform et est un service qui accepte un lieu comme adresse, coordonnées de latitude et de longitude, ou identifiant de lieu. Elle convertit l'adresse en coordonnées de latitude et de longitude et identifiant de lieu, ou convertit ces coordonnées ou cet identifiant de lieu en adresse.
Celle-ci lance en expérimental le champ `grounds`, qui donne des infos contextuelles sur le territoire immédiat du résultat de géocodage. Les contours de bâtiments et entrées (expérimental aussi) s'améliorent avec une couverture accrue des entrées et un nouveau champ `entrance_tags[]` pour distinguer les entrées.
A savoir... 🧐
Quelques petites choses à noter cette semaine :
- reCAPTCHA a une mise à jour de son SDK mobile v18.7.1 pour Android.
- Sensitive Data Protection inclut maintenant par défaut les découvertes
MAC_ADDRESS_LOCAL dans les scans pour MAC_ADDRESS ; l'ancienne version peut être utilisée en spécifiant legacy ou en utilisant MAC_ADDRESS_UNIVERSAL . Le support amélioré de la résidence des données pour Security Command Center en UE et US est temporairement retardé.
- Des mises à jour de librairies clientes sont disponibles pour Pub/Sub (Java 1.139.3), Dataflow (Go 0.11.0), Cloud Logging (Java 3.22.3), Bigtable (Java 2.58.2), et BigQuery (Java 2.50.0).
- Mainframe Assessment Tool a corrigé des soucis avec les modèles Gemini (version 2.3.1) et des problèmes de performance de base de données (version 2.3.0).
- Plein de corrections pour Looker, notamment sur les liens dans les tables de données, les données Elite System Activity, la duplication de tuiles de dashboard, et bien d'autres – y compris un changement important : la validation SSL de l'hôte est maintenant activée par défaut, ce qui pourrait casser certains workflows si vos certificats SSL sont invalides.
- La documentation IAM a été réorganisée pour une meilleure performance et recherche via l'index des rôles et permissions IAM.
- Pour les add-ons Google Workspace étendant Google Chat, le champ
invoked_function est déprécié dans l'objet événement commun ; utilisez plutôt le champ parameters (voir la documentation).
- Google SecOps SIEM (et donc Google SecOps) voit ses tables de données accessibles depuis le menu "Investigation" et supporte le RBAC pour leur accès.
- Google Kubernetes Engine a reçu de nombreuses mises à jour de versions pour les canaux Extended (ex: 1.32.3-gke.1785003 par défaut) et Rapid (ex: 1.32.4-gke.1106000 par défaut), et un problème avec la mise à jour du champ
cgroup_mode sur les clusters Autopilot (voir Migrer les nœuds vers Linux cgroupv2) est en cours de correction.
- Google Cloud Contact Center as a Service a corrigé une longue liste de bugs dans ses releases du 13 et 15 mai.
- ⚠️ Mauvaise nouvelle pour les utilisateurs de MedLM sur Generative AI on Vertex AI : le service est déprécié et ne sera plus accessible après le 29 septembre 2025.
- Container Optimized OS a publié de nombreuses mises à jour de sécurité (AppArmor CVE-2016-1585, Kernel Linux KCTF-342debc, pilotes NVIDIA v535.247.01 etc., Containerd CVE-2024-40635), des corrections de bugs (modinfo, kdump), et des changements non bloquants (support TPU v7, sysctl, mises à jour de paquets et du kernel comme COS-6.6.89).
- Compute Engine a appliqué des correctifs pour des vulnérabilités Intel (CVE-2024-45332 et CVE-2024-28956).
- Cloud Run change sa région par défaut pour la création de services/jobs via la console Google Cloud en `europe-west1`.
- Apigee X a corrigé des problèmes de scaling (ID 391140293) et de requêtes bloquées (ID 391862684), et mis à jour son infrastructure de sécurité.
- Enfin, AlloyDB a maintenant PostgreSQL 16 comme version majeure par défaut pour les nouveaux clusters, et une modification dans le reporting du
replay_lsn pourrait montrer une latence de réplication légèrement plus élevée.
Et voilà pour le tour d'horizon des nouveautés GCP de la semaine ! On se croisera peut-être au Google Cloud Summit France la semaine prochaine pour ceux qui y participent. Pour les autres, à bientôt pour d'autres updates. 👋
|