Quando si lavora con modelli di linguaggio di grandi dimensioni (LLM), una delle principali sfide è la gestione dello stato della conversazione e l'invocazione delle funzioni esterne in modo efficace. Senza un framework adeguato, bisogna manualmente gestire la cronologia dei messaggi, analizzare le risposte del modello per individuare eventuali richieste di strumenti e quindi eseguire le chiamate alle API necessarie. Questo processo non solo introduce complessità nello sviluppo, ma può anche comportare errori difficili da diagnosticare e risolvere.
Azure AI Agent Service affronta proprio queste problematiche offrendo una soluzione gestita che semplifica la creazione e l'uso degli agenti AI. Questo servizio permette di costruire agenti intelligenti che possono gestire conversazioni, eseguire azioni e interagire con dati aziendali senza che lo sviluppatore debba preoccuparsi della gestione della cronologia o della chiamata degli strumenti. In pratica, è sufficiente definire un agente specificando il modello, le istruzioni e gli strumenti disponibili.
Ad esempio, per creare un agente con il modello GPT-4o-mini e un interprete di codice integrato, si può utilizzare il seguente codice in Python:
agent = project_client.agents.create_agent(model="gpt-4o-mini",
name="sales-agent",
instructions="Sei un assistente che fornisce i dati di vendita",
tools=code_interpreter.definitions,
tool_resources=code_interpreter.resources)Il codice è possibile scriverlo anche in altri linguaggi, grazie all'AI Foundry SDK, come C# e JavaScript. Dopo aver creato l'agente, è possibile interagire con esso avviando una conversazione e chiedendogli di eseguire compiti specifici. Il servizio gestirà automaticamente l'intero ciclo di chiamata degli strumenti e restituirà il risultato.
thread = project_client.agents.create_thread()
message = project_client.agents.create_message(
thread_id=thread.id,
role="user",
content="Fornisci i dati di vendita di luglio 2024"
)
run = project_client.agents.create_and_process_run(thread_id=thread.id, agent_id=agent.id)
messages = project_client.agents.list_messages(thread_id=thread.id)Gli agent creati e i thread instanziati sono poi visibili anche dal portale Azure di AI, come visibile nella figura.

Azure AI Agent Service offre anche vantaggi significativi rispetto all'utilizzo diretto di un'API di inferenza. Con questo servizio, non è necessario gestire manualmente lo stato della conversazione o interpretare le risposte per eseguire azioni esterne. Inoltre, fornisce una un'integrazione nativa con i servizi Microsoft come Azure AI Search, Bing e Azure Functions. A differenza di Azure OpenAI Assistants, questo servizio permette di utilizzare diversi modelli oltre a quelli di OpenAI, come Llama 3 e Mistral, offrendo maggiore flessibilità nella scelta dell'intelligenza artificiale più adatta alle proprie esigenze.
Per iniziare con Azure AI Agent Service, è necessario creare un hub AI Foundry e un progetto agente nella propria sottoscrizione Azure. Una volta configurato il progetto, si può distribuire un modello compatibile e iniziare a effettuare chiamate API utilizzando gli SDK disponibili.
Grazie alla sua architettura scalabile e alla gestione semplificata, Azure AI Agent Service rappresenta una soluzione ideale per chi desidera sviluppare agenti AI avanzati senza doversi occupare della complessità della gestione dell'infrastruttura sottostante. Inoltre, il servizio non comporta costi aggiuntivi oltre a quelli relativi all'uso degli strumenti, come ricerche e storage, e al modello stesso, garantendo un maggiore controllo sui costi complessivi del progetto.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Creare espressioni riutilizzabili nelle query LINQ per Entity Framework
Selettore CSS :has() e i suoi casi d'uso avanzati
Configurare lo startup di applicazioni server e client con .NET Aspire
Centralizzare gli endpoint AI Foundry con Azure API Management
Integrare modelli AI in un workflow di GitHub
Generare una User Delegation SAS in .NET per Azure Blob Storage
Ridurre il reflow ottimizzando il CSS
Creare un agente A2Acon Azure Logic Apps
Recuperare gli audit log in Azure DevOps
Eliminare record doppi in Sql Server
Ricevere notifiche sui test con Azure Load Testing
Proteggere l'endpoint dell'agente A2A delle Logic App
I più letti di oggi
- Effettuare il multi-checkout in linea nelle pipeline di Azure DevOps
- Sfruttare una CDN con i bundle di ASP.NET
- Esaminare documenti XML con namespace utilizzando LINQ to XML
- Alleggerire le applicazioni WPF sfruttando gli oggetti Freezable
- Inserire le news di Punto Informatico nel proprio sito
- Effetto turnstile su tutte le pagine con il Windows Phone Toolkit
- Le DirectInk API nella Universal Windows Platform
- Gli oggetti CallOut di Expression Blend 4.0


