The topic of Agent Development Kit 2.0, ADK-java 1,1 et Go 1.0 đ is currently the subject of lively debate â readers and analysts are keeping a close eye on developments.
This is taking place in a dynamic environment: companiesâ decisions and competitorsâ reactions can quickly change the picture.
La grosse nouvelle de la fin mars dans le monde du dĂ©veloppement dâagent IA vient de Google avec les releases de la version 2.0 Alpha dâADK Python et la 1.0 des versions java et Go !
Agent development Kit est un framework créé par Google permettant de facilement crĂ©er et dĂ©ployer des agents IA. Lâinterface fournie permet de les dĂ©bugger et de suivre lâorchestration des applications multi agents.
ADK a Ă©tĂ© conçu au dĂ©part pour les applications Python, câest pour cela que la version 2.0 est uniquement prĂ©sente pour ce langage.
La version 2.0 arrive pour le moment en mode âAlphaâ, il est donc (fortement) recommandĂ© de ne pas utiliser cette version en production. Cette version est compatible avec les agents créés avec ADK 1.0 mais attention, il est impĂ©ratif de ne pas partager les stockages entre vos projets ADK 1.0 et 2.0.
Les Graph-based workflows permettent de chainer des actions ou requĂȘtes Le root_agent est un agent qui exĂ©cute le workflow qui est dĂ©fini par un nom, et un tableau de noeuds avec la possibilitĂ© de diriger des traitement en fonction dâun rĂ©sultat prĂ©cĂ©dent.
Cela permet par exemple de chaĂźner un ensemble de traitements ou bien de dĂ©finir un ensemble dâactions exĂ©cutĂ©es en parallĂšle. Et quand je dis traitement, ce sont des appels Ă des LLM ou bien du code.
La seconde nouveautĂ© intervient au niveau des agents et de leur mode d’interaction. Des sous-agents peuvent dĂ©sormais ĂȘtre créés et orchestrĂ©s par un agent âcoordinateurâ. Ces sous agents disposent de trois modes de fonctionnement :
Les workflow dynamiques dâADK sont la derniĂšre nouveautĂ© de cette release et permettent de sâaffranchir de la structure rigide du graph-based vu prĂ©cĂ©demment. Avec lâannotation @node **ou le wrapper **FunctionNode, les workflow dynamiques permettent de supporter les exĂ©cutions parallĂšles, les boucles itĂ©ratives et les complĂ©ments dâinformation de la part des utilisateurs (Human-in-the-loop) Ă lâaide de lignes de code.

Dans le mĂȘme temps que la nouvelle version majeure dâADK Python, les SDK Java et Go voient arriver leur premiĂšre version majeure, le signe dâune maturitĂ© et stabilitĂ© validĂ©e.
La version 1.0 du SDK Go inclut lâarrivĂ©e native dâOpenTelemetry via le TraceProvider. De plus, un nouveau systĂšme de plugin va permettre dâinclure des fonctionnalitĂ©s transverses (logs, sĂ©curitĂ©, etc.). Un plugin intĂ©ressant, âRetry and Reflectâ, permet dâintercepter les erreurs et de les renvoyer au modĂšle pour les corriger et les prendre en compte.
Cette version supporte aussi la dĂ©finition dâagent directement via des fichiers YAML.
Du cĂŽtĂ© de Java, les releases 1.0 et 1.1 créées quelques jours plus tard incluent lâarrivĂ©e de nouveaux outils comme :
App est la nouvelle classe de plus haut niveau pour crĂ©er une application agentique. Elle va pouvoir recevoir une liste de plugins qui sont appliquĂ©s Ă tous les sous-agents. Pratique pour harmoniser les logs par exemple avec LoggingPlugin ou bien donner des instructions globales Ă lâapplication avec le plugin GlobalInstructionPlugin.
Une stratégie de compression est également applicable sur la classe App et réduit notamment la taille de votre contexte et donc la taille de vos tokens.
Lâoutil ToolConfirmation permet de mettre en pause le traitement le temps dâavoir un complĂ©ment dâinformation pour lâutilisateur·trice.
De nouveaux services permettent de sauvegarder le cycle de vie dâune conversation, en fonction de votre besoin, vos donnĂ©es en mĂ©moire, dans VertexAI ou bien dans une collection Firestore (avec InMemorySessionService, VertexAiSessionService et FirestoreSessionService).
Pour conserver vos informations Ă travers plusieurs sessions, cela peut se faire localement ou bien dans Firestore (avec InMemoryMemoryService et FirestoreMemoryService).
đ https://developers.googleblog.com/announcing-adk-for-java-100-building-the-future-of-ai-agents-in-java/
Je me suis prĂȘtĂ© lâexercice de migrer ce projet me servant de dĂ©mo avec les nouvelles fonctionnalitĂ©s :
L’effet “Wow đ€©, une version majeure arrive” est bien lĂ , et je me rends compte que les Ă©volutions apportĂ©es sont importantes et vont permettre d’accroĂźtre les possibilitĂ©s de nos agents.
Jâavais mis Ă jour quelques uns de mes projets utilisant la version d’ADK 1.1 sans avoir d’impact dans le code. En lisant les release notes, il y a bien des ajustements Ă faire dans la conception des agents pour notamment se poser des questions sur la gestion de la mĂ©moire, la compression des informations et lâutilisation des plugins amĂšne un gros plus pour optimiser les traitements et le code.
Are you sure you want to hide this comment? It will become hidden in your post, but will still be visible via the comment’s permalink.
For further actions, you may consider blocking this person and/or reporting abuse
DEV Community â A space to discuss and keep up software development and manage your software career
Built on Forem â the open source software that powers DEV and other inclusive communities.
Why it matters
News like this often changes audience expectations and competitorsâ plans.
When one player makes a move, others usually react â it is worth reading the event in context.
What to look out for next
The full picture will become clear in time, but the headline already shows the dynamics of the industry.
Further statements and user reactions will add to the story.
