Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
I componenti di runtime dell'agente sono gli oggetti principali, ovvero agenti, conversazioni e risposte, che supportano interazioni con stato e a più turni nel servizio Microsoft Foundry Agent. Insieme, questi componenti consentono di generare output, rendere persistente lo stato tra turni e compilare applicazioni conversazionali.
Questo articolo illustra i ruoli di un agente, una conversazione e una risposta e spiega come interagiscono durante la generazione della risposta.
Prerequisiti
- Progetto Microsoft Foundry.
- Familiarità con il ciclo di vita di sviluppo dell'agente (facoltativo).
Come interagiscono i componenti di runtime
Quando si lavora con un agente, si segue un modello coerente:
- Creare un agente: definire un agente per iniziare a inviare messaggi e ricevere risposte.
- Creare una conversazione (facoltativa): usare una conversazione per mantenere la cronologia tra turni. Se non si usa una conversazione, portare avanti il contesto usando l'output di una risposta precedente.
- Generare una risposta: l'agente elabora gli elementi di input nella conversazione ed eventuali istruzioni fornite nella richiesta. L'agente potrebbe aggiungere elementi alla conversazione.
- Controllare lo stato della risposta: monitorare la risposta fino al termine(in particolare in modalità streaming o in background).
- Recuperare la risposta: visualizzare la risposta generata all'utente.
Il diagramma seguente illustra come questi componenti interagiscono in un ciclo tipico dell'agente.
Si specifica l'input dell'utente (e facoltativamente la cronologia delle conversazioni), il servizio genera una risposta (incluse le chiamate degli strumenti quando configurate) e gli elementi risultanti possono essere riutilizzati come contesto per il turno successivo.
Che cos'è un agente?
Un agente è una definizione di orchestrazione persistente che combina modelli di intelligenza artificiale, istruzioni, codice, strumenti, parametri e controlli facoltativi di sicurezza o governance.
Archiviare gli agenti come asset nominati e versionati in Microsoft Foundry. Durante la generazione della risposta, la definizione dell'agente funziona con la cronologia di interazione (conversazione o risposta precedente) per elaborare e rispondere all'input dell'utente.
Che cos'è una conversazione?
Una conversazione gestisce automaticamente lo stato, quindi non è necessario passare manualmente gli input per ogni turno.
Le conversazioni sono oggetti durevoli con identificatori univoci. Dopo la creazione, è possibile riutilizzarli tra le sessioni.
Gli elementi delle conversazioni archiviate possono includere messaggi, chiamate agli strumenti, output degli strumenti e altri dati.
Quando usare una conversazione
Utilizza una conversazione quando vuoi:
- Continuità a più turni: mantenere una cronologia stabile tra turni senza ricompilare manualmente il contesto.
- Continuità tra sessioni: riutilizzare la stessa conversazione per un utente che torna in un secondo momento.
- Debug più semplice: controllare cosa è successo nel tempo (ad esempio, chiamate e output degli strumenti).
Se non si crea una conversazione, è comunque possibile creare flussi a più turni usando l'output di una risposta precedente come punto di partenza per la richiesta successiva. Questo approccio offre maggiore flessibilità rispetto al modello basato su thread precedente, in cui lo stato è strettamente associato agli oggetti thread. Per indicazioni sulla migrazione, vedere Eseguire la migrazione ad Agents SDK.
Elementi della conversazione
Conversazioni archivia elementi anziché solo messaggi di chat. Gli elementi acquisiscono ciò che è successo durante la generazione della risposta, in modo che il turno successivo possa riutilizzare tale contesto.
I tipi di elementi comuni includono:
- Elementi del messaggio: messaggi utente o assistente.
- Elementi di chiamata dello strumento: record di chiamate dello strumento tentate dall'agente.
- Elementi di output dello strumento: output restituiti dagli strumenti (ad esempio, risultati di recupero).
- Elementi di output: il contenuto della risposta visualizzato all'utente.
Per esempi che illustrano il funzionamento delle conversazioni e delle risposte nel codice, vedere Creare e usare la memoria nel servizio foundry Agent.
Funzionamento delle risposte
La generazione della risposta richiama l'agente. L'agente usa la configurazione e la cronologia fornita (conversazione o risposta precedente) per eseguire attività chiamando modelli e strumenti. Nell'ambito della generazione della risposta, l'agente aggiunge elementi alla conversazione.
È anche possibile generare una risposta senza definire un agente. In questo caso, è possibile specificare tutte le configurazioni direttamente nella richiesta e usarle solo per tale risposta. Questo approccio è utile per scenari semplici con strumenti minimi.
Streaming e risposte in background
Alcune modalità di generazione della risposta restituiscono risultati in modo incrementale (streaming) o completano in modo asincrono (in background). In questi casi, in genere si monitora la risposta fino al termine e quindi si utilizzano gli elementi di output finali.
Per informazioni dettagliate sulle modalità di risposta e su come usare gli output, vedere API delle risposte.
Sicurezza e gestione dei dati
Poiché le conversazioni e le risposte possono rendere persistenti i contenuti e gli output degli strumenti forniti dall'utente, trattare i dati di runtime come i dati dell'applicazione:
- Evitare di archiviare i segreti nelle richieste o nella cronologia delle conversazioni. Usare invece connessioni e archivi segreti gestiti, ad esempio Configurare una connessione key vault.
- Usare privilegi minimi per l'accesso agli strumenti. Quando uno strumento accede a sistemi esterni, l'agente può potenzialmente leggere o inviare dati tramite tale strumento.
- Prestare attenzione ai servizi non Microsoft. Se l'agente chiama strumenti supportati da servizi non Microsoft, alcuni dati potrebbero essere trasmessi a tali servizi. Per considerazioni correlate, vedere Scoprire gli strumenti nei Foundry Tools.
Limiti e vincoli
I limiti possono dipendere dal modello, dall'area geografica e dagli strumenti collegati( ad esempio, la disponibilità di streaming e il supporto degli strumenti). Per la disponibilità e i vincoli correnti per le risposte, vedere API Risposte.