Bluemarz est un nouveau framework d'IA écrit en python ; c'est également une plate-forme open source spécialement conçue pour gérer et orchestrer plusieurs agents d'IA. Il apporte une mesure d’évolutivité et de flexibilité qui faisait défaut dans l’industrie open source de l’IA.
De son architecture sans état à sa prise en charge de plusieurs modèles de langage (tels que OpenAI, Anthropic Claude et Google Gemini), Bluemarz offre une solution robuste pour répondre aux besoins des entreprises en matière d'évolutivité, de sécurité et de confidentialité, tous cruciaux pour les projets/organisations. gérer des données sensibles et des flux de travail complexes. Examinons brièvement ce qui fait de Bluemarz un outil unique et puissant pour les développeurs cherchant à déployer des agents IA à grande échelle.
Installation : Vous pouvez faire fonctionner Bluemarz en l'installant depuis GitHub en utilisant pip :
pip install git https://github.com/StartADAM/bluemarz.git
Workflow de base : Bluemarz introduit trois concepts principaux : agent, session et affectation. Ceux-ci permettent aux développeurs de mettre en place un flux de travail flexible dans lequel plusieurs agents peuvent interagir au sein de la même session, en s'appuyant sur différents LLM selon les besoins. Voici un exemple de session simple à partir de son dépôt : https://github.com/StartADAM/bluemarz) :
import bluemarz as bm import asyncio async def procedural_example(): # Initialize an agent using OpenAI agent = bm.openai.OpenAiAssistant.from_id(api_key, assistant_id) # Start a session session = bm.openai.OpenAiAssistantNativeSession.new_session(api_key) # Assign the agent to the session task = bm.Assignment(agent, session) task.add_message(bm.SessionMessage(role=bm.MessageRole.USER, text="What can you do?")) # Run the task and display the result res = await task.run_until_breakpoint() print(res) asyncio.run(procedural_example())
Bluemarz résout des limitations importantes que d'autres plates-formes comme LangChain, LangGraph et Chainlit n'ont pas entièrement résolues, en particulier en ce qui concerne la prise en charge multi-agents, multi-LLM et l'évolutivité des sessions.
Sans état et évolutif : L'exécution de Bluemarz dans un cluster Kubernetes ou sur n'importe quelle plate-forme cloud est simple grâce à sa conception sans état, qui ne nécessite pas de conservation de session, améliorant ainsi l'évolutivité.
Flexibilité multi-agents : Vous pouvez attribuer plusieurs agents en une seule session et ajouter ou supprimer des agents de manière dynamique. Cela signifie que si un agent IA pour la traduction est nécessaire en cours de session, il peut être ajouté à la volée sans interrompre les conversations en cours.
Sécurité adaptée à l'entreprise : Bluemarz est conçu pour s'adapter aux environnements d'entreprise, avec des contrôles de conformité et de confidentialité déjà pris en compte.
Sélection dynamique des agents : Que ce soit via du code ou avec un sélecteur basé sur l'IA (à venir), les développeurs peuvent gérer facilement les flux de travail des agents, en ajoutant une couche de contrôle sur l'attribution des tâches et les performances.
Fournisseurs : Il s'agit des LLM pris en charge par Bluemarz, notamment OpenAI, Anthropic Claude et Google Gemini, avec la flexibilité de travailler avec des modèles sur site.
Sessions : Les sessions représentent des interactions entièrement apatrides dans Bluemarz, exécutant et stockant des sessions au sein de l'infrastructure de votre fournisseur LLM.
Agents et affectations : Les agents peuvent être définis et attribués aux sessions de manière dynamique. Bluemarz prend en charge les affectations d'agents manuelles et programmatiques, permettant des modifications en temps réel pendant les sessions actives.
L'une des fonctionnalités les plus puissantes de Bluemarz est la possibilité de définir des outils réutilisables. Les outils étendent les capacités des LLM en les connectant à des systèmes, sources de données ou services externes. Voici un exemple d'outil qui convertit Celsius en Kelvin :
import bluemarz as bm import asyncio async def procedural_example(): # Initialize an agent using OpenAI agent = bm.openai.OpenAiAssistant.from_id(api_key, assistant_id) # Start a session session = bm.openai.OpenAiAssistantNativeSession.new_session(api_key) # Assign the agent to the session task = bm.Assignment(agent, session) task.add_message(bm.SessionMessage(role=bm.MessageRole.USER, text="What can you do?")) # Run the task and display the result res = await task.run_until_breakpoint() print(res) asyncio.run(procedural_example())
Une fois défini, cet outil peut être utilisé sur différents agents et sessions, fournissant un point de configuration unique pour tout agent ayant besoin de conversions de température.
Automatisation du support client : Le support multi-agents de Bluemarz permet aux agents spécialisés dans différents domaines de collaborer en temps réel au sein d'une seule session, améliorant ainsi les temps de réponse et la pertinence.
R&D : Les développeurs peuvent utiliser Bluemarz pour configurer des sessions de recherche au cours desquelles les agents accèdent dynamiquement à des documents ou à des ensembles de données.
Contrôle et optimisation des coûts : La flexibilité des agents de Bluemarz signifie que seuls les agents nécessaires sont déployés, réduisant ainsi les coûts de calcul pour les organisations.
Si vous souhaitez contribuer à une nouvelle solution open source puissante et flexible, consultez-la : https://github.com/StartADAM/bluemarz. Étant donné qu’il est apatride, adaptable et prêt pour des déploiements d’entreprise, il devrait s’agir d’un excellent projet sur un portefeuille et d’une victoire facile pour contribuer au train en marche de l’Ai. Que vous orchestrez une tâche unique et complexe entre plusieurs agents ou que vous ayez besoin de garantir l'évolutivité et la sécurité, Bluemarz peut fournir l'infrastructure nécessaire pour prendre en charge et développer l'écosystème d'agents IA.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!