AG2 v1.0 : le paquet ag2 n'est plus AutoGen
AG2 (formerly AutoGen): The Open-Source AgentOS.Join us at: https://discord.gg/sNGSwQME3x
En bref
- De quoi s’agit-il ?
- AG2 se présente comme un AgentOS open source en Python. Depuis la v1.0, le paquet ag2 ne contient plus l'espace de noms autogen : le framework historique vit désormais dans ag2-classic, et la migration n'a rien d'automatique.
- À qui s’adresse-t-il ?
- AG2 v1.0 s'adresse aux équipes qui démarrent un projet multi-agents en Python 3.10 ou plus récent et acceptent de concevoir autour du modèle Agent et du Network. Restez sur ag2-classic si votre code importe autogen, ConversableAgent ou GroupChat : la v1.0 n'est pas une mise à niveau transparente.
- Puis-je l’utiliser commercialement ?
- Oui. Apache-2.0 est une licence permissive : vous pouvez utiliser, modifier et vendre un logiciel qui en dépend, à condition de conserver les mentions de droit d’auteur et de licence.
- Est-il encore maintenu ?
- Oui. Les derniers commits datent d’il y a 1 jour.
- En quel langage est-il écrit ?
- Principalement Python, d’après les statistiques de langage de GitHub.
Ces réponses reposent sur les données GitHub du projet (dernière synchronisation le 15 septembre 2026) et sur notre analyse. Elles ne constituent pas un avis juridique.
ANALYSE OPEN SOURCE APPROFONDIE
Le paquet ag2 ne contient plus l'espace de noms autogen
C'est le fait à retenir avant toute autre chose. Le README indique que depuis AG2 v1.0, le framework piloté par protocoles occupe le paquet de premier niveau, importé sous le nom ag2, et que le framework classique a été déplacé vers un dépôt séparé, ag2ai/ag2-classic, documenté sur classic.docs.ag2.ai. La conséquence est explicite dans le README : ce dépôt, celui que l'on installe avec pip install ag2, ne fournit plus le nom d'import autogen ni les classes d'agents classiques. Les correspondances données par le README sont nettes : ConversableAgent devient Agent, et GroupChat, les swarms et les conversations imbriquées cèdent la place à Network, décrit comme un concentrateur avec des canaux. La note du README précise aussi que la v1.0 n'est pas une mise à niveau directe depuis Classic : le modèle d'agent, l'orchestration et les imports ont tous changé. Pour les projets existants, la consigne est de rester sur Classic et d'épingler la distribution correspondante avec pip install ag2-classic. Le projet affirme que rien de ce qui a été construit ne cesse de fonctionner, à condition de ne pas basculer sur ag2>=1.0. C'est une scission assumée, pas une dépréciation progressive.
Ce que la version 1.0 apporte réellement
Le README décrit AG2 comme un framework de programmation open source pour construire des agents et organiser leur coopération sur des tâches. La liste des capacités annoncées couvre l'interaction entre agents, l'usage de différents grands modèles de langage, le support des outils, les flux autonomes et ceux avec intervention humaine, ainsi que des motifs de conversation multi-agents. Deux éléments du sommaire méritent l'attention parce qu'ils signalent où se situe l'effort d'ingénierie : une section sur le harnais de l'agent, avec la connaissance et la compaction, et une section sur les motifs de conception agentiques avancés. Le README ne détaille pas ces mécanismes, et je ne peux pas les décrire au-delà de leurs intitulés. Ce que l'on peut dire, c'est que la compaction et la gestion de connaissance sont traitées comme des composants du harnais, pas comme des détails d'implémentation laissés à l'appelant. Le positionnement en AgentOS plutôt qu'en simple bibliothèque d'agents se lit là : le projet revendique la couche d'exécution, pas seulement les primitives d'appel de modèle.
Installation : des extras par fournisseur et des clés en variables d'environnement
L'installation exige Python 3.10 ou plus récent. Le paquet est publié sur PyPI sous le nom ag2, et le README donne deux formes de commande selon la plateforme, la différence tenant aux guillemets nécessaires à l'interpréteur de commandes : pip install ag2[openai] sous Windows et Linux, pip install 'ag2[openai]' sous Mac. Les dépendances minimales sont installées par défaut, et il faut ajouter l'extra correspondant à son fournisseur de modèle : ag2[openai], ag2[anthropic], ag2[gemini], ag2[ollama], la liste n'étant pas close dans le README. Côté secrets, chaque configuration de fournisseur lit sa variable d'environnement standard, ce qui évite de coder les clés en dur ou de les versionner : export OPENAI_API_KEY pour OpenAI, ANTHROPIC_API_KEY, GEMINI_API_KEY pour les autres. Le README mentionne une seconde voie, passer la clé explicitement via OpenAIConfig(model="gpt-4o-mini", api_key=...), en la justifiant par le cas où chaque requête arrive avec sa propre clé. Le README précise enfin qu'AG2 est asynchrone de bout en bout, la phrase étant tronquée dans l'extrait disponible, donc je m'en tiens à cette affirmation sans en déduire l'API exacte.
Network remplace GroupChat, et la migration se prépare
Le changement d'orchestration est le point qui coûtera le plus de temps à une équipe venant de Classic. Là où le modèle historique reposait sur GroupChat et GroupChatManager pour faire dialoguer plusieurs agents, la v1.0 expose Network, décrit dans le README comme un concentrateur avec des canaux. Le README renvoie à une page dédiée, docs.ag2.ai/docs/user-guide/network/overview/, pour l'aperçu, et à un guide de migration depuis GroupChat à l'adresse docs.ag2.ai/docs/user-guide/network/migration_from_group_chat/. Je n'ai pas lu ces pages et je ne peux donc pas décrire la correspondance entre un GroupChat existant et une topologie Network. Ce que la structure du dépôt permet de dire, c'est que l'équipe traite la migration comme un sujet documenté à part, ce qui suggère que la traduction n'est pas mécanique. Si votre système repose sur des conversations imbriquées ou sur des swarms, prévoyez de relire le guide avant d'estimer la charge, parce que ces motifs appartiennent à la colonne Classic du tableau comparatif du README.
La limite à connaître : deux projets, deux documentations, une seule marque
Le risque principal n'est pas technique, il est documentaire. Une recherche sur AG2 ou AutoGen ramène aujourd'hui deux sites, docs.ag2.ai et classic.docs.ag2.ai, deux dépôts, et deux noms d'import qui ne se mélangent pas. Un exemple de code trouvé en ligne peut donc cibler l'un ou l'autre sans le signaler, et la seule façon de trancher est de regarder les premières lignes : import autogen signifie Classic, import ag2 signifie v1.0. Le README fournit d'ailleurs une liste de signaux pour s'auto-diagnostiquer, incluant ConversableAgent, GroupChat, AssistantAgent, UserProxyAgent, register_function, LLMConfig et OAI_CONFIG_LIST. Cette dernière clé est révélatrice : la configuration par fichier OAI_CONFIG_LIST appartient à Classic, et rien dans le README ne dit comment la v1.0 gère une configuration multi-fournisseurs au-delà des objets de configuration par fournisseur comme OpenAIConfig. Autre point non tranché par le matériel fourni : AG2 v1.0 est le mauvais outil si vous cherchez une bibliothèque stable dont l'API ne bougera plus. Trois versions publiées en un peu plus d'un mois, v1.0.2 le 15 août, v1.0.3 le 28 août, v1.0.4 le 7 septembre, indiquent un rythme de correction serré sur une base récente. Ce n'est pas un défaut en soi, mais cela déplace le coût vers la surveillance des versions.
Face à LangGraph et aux frameworks à graphes
L'alternative la plus directement comparable est un framework où l'orchestration se décrit comme un graphe d'états explicite, LangGraph étant l'exemple le plus courant. La différence d'approche est structurelle. Dans un graphe, vous déclarez les noeuds et les transitions, et le déroulement est lisible dans la définition. AG2 v1.0 place au centre un concentrateur et des canaux, donc un modèle de communication entre agents plutôt qu'un graphe de contrôle. Le choix se joue sur ce que vous devez auditer : si votre contrainte est de prouver qu'un chemin donné ne peut pas être emprunté, un graphe explicite se relit plus facilement. Si votre contrainte est de faire coopérer des agents avec des outils et une intervention humaine à des points définis, le modèle par canaux correspond mieux à la description qu'en donne le README. Aucun des deux n'est meilleur dans l'absolu, et je n'ai pas exécuté AG2, donc je ne peux pas comparer leurs comportements en charge. Une seconde alternative consiste simplement à rester sur ag2-classic, qui reste maintenu et installable : c'est le choix par défaut pour tout code déjà en production.
Maintenance, licence et coût de mise à jour
Le projet est distribué sous Apache-2.0, une licence permissive qui autorise l'usage commercial et la modification, avec les obligations habituelles de conservation des mentions et de l'avis de licence, et une clause de brevets. Je ne donne pas de conseil juridique : faites relire le texte de la licence et le fichier NOTICE du dépôt par qui de droit avant une mise en production. Sur la maintenance, le README indique que le projet est maintenu par un groupe de volontaires issus de plusieurs organisations, et que les personnes intéressées pour devenir mainteneur peuvent écrire à support@ag2.ai. C'est une information à intégrer dans votre évaluation : un projet porté par des bénévoles peut avancer vite, comme le montrent les trois versions rapprochées, mais la continuité ne repose pas sur un engagement contractuel. Le coût de mise à jour se concentre à deux endroits. D'abord la séparation des paquets : une équipe qui veut passer de Classic à la v1.0 doit traiter la migration Network, pas seulement changer une ligne d'import. Ensuite les extras : chaque fournisseur de modèle est un extra distinct, donc ajouter un fournisseur, c'est modifier la ligne d'installation et la configuration associée. Le dépôt n'étant pas archivé et la dernière poussée datant du 8 septembre 2026, l'activité est récente au moment où ces lignes sont écrites.
Conclusion éditoriale
AG2 v1.0 s'adresse aux équipes qui démarrent un projet multi-agents en Python 3.10 ou plus récent et acceptent de concevoir autour du modèle Agent et du Network. Restez sur ag2-classic si votre code importe autogen, ConversableAgent ou GroupChat : la v1.0 n'est pas une mise à niveau transparente. Avant d'adopter, vérifiez trois points précis : que votre version de Python est bien 3.10 minimum, que l'extra installé correspond à votre fournisseur (ag2[openai], ag2[anthropic], ag2[gemini], ag2[ollama]) et que la variable d'environnement attendue par ce fournisseur est bien exportée dans votre environnement d'exécution.
Notes de la communauté