I copilot personali stanno emergendo come veri game changer. Hanno il potenziale per trasformare il modo in cui gestiamo i nostri compiti e responsabilità quotidiani. A differenza dei semplici chatbot, questi assistenti intelligenti sono sistemi sofisticati che comprendono le sfumature della nostra vita personale, rendendo le nostre attività quotidiane molto più fluide ed efficienti.
Costruire un tale copilota AI può essere complesso senza un’infrastruttura adeguata. AWS Multi-Agent Orchestrator è un framework flessibile e potente per la gestione di agenti AI multipli. Il classificatore dell’orchestratore seleziona l’agente appropriato in base all’input dell’utente, alle caratteristiche dell’agente e alla storia della conversazione. L’orchestratore facilita anche l’archiviazione della storia della conversazione per agente.
Costruzione di un Copilota AI per Vari Compiti
Costruiamo un copilota AI che può controllare il calendario, suggerire routine di fitness e leggere le notizie contemporaneamente. Si tratta di compiti completamente separati che possono avere contesti diversi durante le interazioni dell’utente con essi. Il codice sorgente completo per questo assistente personale può essere trovato qui.
Agente Calendario
Si tratta di un agente a catena che utilizza internamente ApiAgent per recuperare inviti dal calendario utilizzando le API di Calendly. La risposta da ApiAgent viene trasmessa a BedrockLLMAgent per riassumere gli inviti.
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()
))
Agente Lettore di Notizie
L’agente lettore di notizie utilizza anche il agente a catena, che utilizza internamente ApiAgent per recuperare le notizie utilizzando le API di Gnews. La risposta da ApiAgent viene trasmessa a BedrockLLMAgent per riassumere le notizie.
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()
))
Agente Fitness
L’agente fitness è un agente autonomo che utilizza il modello LLM per suggerire routine di fitness, piani alimentari e consigli sulla salute.
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()
))
Eseguire l’applicazione
Seguire queste istruzioni per i requisiti preliminari.
1. Clonare il repository:
git clone https://github.com/ravilaudya/task-copilot.git
cd task-copilot
2. Creare un ambiente virtuale:
conda create -p venv python=3.12
conda activate ./venv
3. Installare le dipendenze richieste:
pip install -r requirements.txt
4. Eseguire l’applicazione:
chainlit run app.py --port 8888
Interagire con il Copilota
Una volta avviata l’applicazione, si aprirà una finestra del browser dove è possibile interagire con il copilota AI. Alcuni esempi di domande che è possibile fare includono:
- “Quali sono le ultime notizie?”
- “Come è il mio calendario questa settimana?”
- “Come posso perdere peso?”
Conclusione
Il copilota AI ottimizza le attività quotidiane e aumenta la produttività fornendo informazioni rapide e pertinenti personalizzate alle preferenze individuali. Con l’infrastruttura adeguata, la creazione di un tale copilota AI diventa un progetto gestibile e gratificante. Avere un tale copilota è come avere un partner affidabile al proprio fianco, rendendo la vita un po’ più facile.
Source:
https://dzone.com/articles/ai-copilot-using-multi-agent-orchestrator