Les copilotes IA personnels émergent comme de véritables game changers. Ils ont le potentiel de transformer la manière dont nous gérons nos tâches et responsabilités quotidiennes. Contrairement aux chatbots de base, ces assistants intelligents sont des systèmes sophistiqués qui comprennent les nuances de notre vie personnelle, rendant nos activités quotidiennes beaucoup plus fluides et efficaces.
Construire un tel copilote IA peut être complexe sans une infrastructure adéquate. AWS Multi-Agent Orchestrator est un cadre flexible et puissant pour gérer plusieurs agents IA. Le classificateur de l’orchestrateur sélectionne l’agent approprié en fonction de l’entrée utilisateur, des caractéristiques de l’agent et de l’historique de la conversation. L’orchestrateur facilite également le stockage de l’historique de la conversation par agent.
Construire un Copilote IA pour Diverses Tâches
Construisons un AI copilote capable de vérifier le calendrier, suggérer des routines de fitness et lire les actualités simultanément. Ce sont des tâches complètement distinctes qui peuvent avoir différents contextes tout au long des interactions de l’utilisateur avec elles. Le code source complet de cet assistant personnel peut être trouvé ici.
Agent de Calendrier
Ceci est un agent en chaîne qui utilise en interne ApiAgent pour récupérer les invitations de calendrier via les API Calendly. La réponse de l’ApiAgent est transmise à BedrockLLMAgent pour résumer les invitations.
agent1 = ApiAgent(ApiAgentOptions(
endpoint = f"https://api.calendly.com/user_busy_times?user={CALENDLY_USER_URI}&start_time={start_time}&end_time={end_time}",
method = "GET",
name = "Calendly Schedule Agent",
description = "Specializes in Calendar scheduling",
streaming=False,
headers_callback=custom_headers_callback,
))
agent2 = BedrockLLMAgent(BedrockLLMAgentOptions(
name="Calendar Summarization",
streaming=True,
description="You are an AI agent specialized in summarizing calendar events. Given a list of events, produce a concise summary"\
" highlighting key details such as event names, dates, times, and participants. Ensure the summary is clear, brief, and "\
"informative for quick understanding. Do not provide duplicate information or irrelevant details.",
model_id="anthropic.claude-3-5-sonnet-20240620-v1:0",
callbacks=ChainlitAgentCallbacks()
))
Agent de Lecture des Actualités
L’agent de lecture des actualités utilise également le agent en chaîne, qui utilise en interne ApiAgent pour récupérer les actualités via les API Gnews. La réponse de l’ApiAgent est transmise à BedrockLLMAgent pour résumer les actualités.
agent1 = ApiAgent(ApiAgentOptions(
endpoint = f"https://gnews.io/api/v4/search?q=example&apikey={GNEWS_API_KEY}",
method = "GET",
name = "News Reader Agent",
description = "Specializes in reading news from various sources",
streaming=False
))
agent2 = BedrockLLMAgent(BedrockLLMAgentOptions(
name="News Summarization Agent",
streaming=True,
description="You are a skilled journalist tasked with creating concise, engaging news summaries."\
"Given the following text, produce a clear and informative summary that captures the key points," \
"main actors, and significant details. Your summary should be objective, well-structured, "\
"and easily digestible for a general audience. Aim for clarity and brevity while maintaining the essence of the news story.",
model_id="anthropic.claude-3-5-sonnet-20240620-v1:0",
callbacks=ChainlitAgentCallbacks()
))
Agent de Fitness
L’agent de fitness est un agent autonome qui utilise le modèle LLM pour suggérer des routines de fitness, des plans de régime et des conseils de santé.
fitness_agent = BedrockLLMAgent(BedrockLLMAgentOptions(
name="Fitness Agent",
streaming=True,
description="Specializes in fitness, health, and wellness. It can provide workout routines, diet plans, and general health tips.",
model_id="anthropic.claude-3-5-sonnet-20240620-v1:0",
callbacks=ChainlitAgentCallbacks()
))
Lancer l’application
Suivez ces instructions pour les prérequis.
1. Cloner le dépôt :
git clone https://github.com/ravilaudya/task-copilot.git
cd task-copilot
2. Créer un environnement virtuel:
conda create -p venv python=3.12
conda activate ./venv
3. Installer les dépendances requises:
pip install -r requirements.txt
4. Lancer l’application :
chainlit run app.py --port 8888
Interagir avec le Copilote
Une fois l’application en cours d’exécution, une fenêtre de navigateur s’ouvrira où vous pourrez interagir avec le copilote IA. Voici quelques exemples de questions que vous pouvez poser :
- « Quelles sont les dernières nouvelles ? »
- « À quoi ressemble mon agenda cette semaine ? »
- « Comment puis-je perdre de la graisse ? »
Conclusion
Le copilote IA rationalise les tâches quotidiennes et améliore la productivité en fournissant des informations rapides et pertinentes adaptées aux préférences individuelles. Avec la bonne infrastructure en place, construire un tel copilote IA devient un projet gérable et gratifiant. Avoir un tel copilote, c’est comme avoir un partenaire fiable à vos côtés, rendant la vie un peu plus facile.
Source:
https://dzone.com/articles/ai-copilot-using-multi-agent-orchestrator