
En 2019, Microsoft a rendu Dapr open source, un nouveau runtime pour rendre la construction d'applications basées sur des microservices distribués plus facile. À l'époque, personne ne parlait encore des agents IA, mais il s'est avéré que Dapr avait certains des blocs de construction fondamentaux pour prendre en charge les agents IA intégrés dès le départ. Cela s'explique par le fait qu'une des fonctionnalités clés de Dapr est un concept d'acteurs virtuels, qui peuvent recevoir et traiter des messages, indépendamment de tous les autres acteurs dans le système.
Aujourd'hui, l'équipe Dapr lance Dapr Agents, sa solution pour aider les développeurs à construire des agents IA en leur fournissant de nombreux éléments de base pour le faire.
"Les agents sont un très bon cas d'utilisation pour Dapr", a expliqué Yaron Schneider, co-créateur et mainteneur de Dapr. "D'un point de vue technique, vous pourriez utiliser des acteurs comme un moyen très léger d'exécuter ces agents et vraiment être capable de les exécuter à grande échelle avec un état -- et être efficace en ressources. Tout cela est génial, mais il y a encore beaucoup de logique métier que vous devez écrire. La caractère étatique et l'orchestration en sont juste une partie. Et beaucoup de gens, ils pourraient choisir un moteur de flux de travail ou un framework d'acteurs, mais il reste encore beaucoup de travail à faire pour écrire réellement la logique de l'agent de l'autre côté. Il existe de nombreux frameworks d'agent, mais ils n'ont pas le même niveau d'orchestration et de caractère étatique que Dapr a."

Les Dapr Agents ont été issus de Floki, un projet open source populaire qui a étendu Dapr pour ce cas d'utilisation d'agent IA. En discutant avec les mainteneurs du projet, notamment le chercheur en IA de Microsoft Roberto Rodriguez, les deux équipes ont décidé d'intégrer le projet sous l'ombrelle de Dapr pour assurer la continuité du nouveau framework d'agent.
"À bien des égards, nous considérons les systèmes agentic et toute la terminologie qui les entoure comme un autre terme pour les 'systèmes distribués', a déclaré Mark Fussell, co-créateur et mainteneur de Dapr. "Plutôt que de les appeler des microservices, vous pouvez maintenant les appeler des agents, principalement parce que vous pouvez placer de grands modèles de langage parmi eux."
Pour coordonner efficacement ces agents, vous avez besoin d'un moteur d'orchestration et d'un caractère étatique, soutient l'équipe -- c'est exactement ce que Dapr offre. Cela s'explique en partie par le fait que les acteurs de Dapr sont censés être extrêmement efficaces et capables de démarrer en quelques millisecondes lorsqu'un message arrive (et de s'arrêter, leur état étant préservé, une fois leur tâche terminée).
Actuellement, les Dapr Agents peuvent interagir avec la plupart des fournisseurs de modèles populaires prêts à l'emploi. Il s'agit notamment de AWS Bedrock, OpenAI, Anthropic, Mistral et Hugging Face. Le support pour les LLM locaux arrivera très bientôt.
En plus d'interagir avec ces modèles, étant donné que les Dapr Agents étendent le framework Dapr existant, les développeurs bénéficient également de la possibilité de définir une liste d'outils que l'agent peut ensuite utiliser pour accomplir une tâche donnée.
Actuellement, les Dapr Agents prennent en charge Python, avec le support .NET arriver prochainement. Java, JavaScript et Go suivront bientôt.