VoiceAgentDefinition interface

La definizione dell'agente vocale. La sua configurazione (modello, istruzioni, audio, strumenti e avatar opzionale) genera un'esperienza di voce vocale gestita. Stabilisci sessioni vocali in tempo reale tramite GET /agents/{agent_name}/endpoint/protocols/voice. Ogni creazione o aggiornamento produce una nuova versione immutabile.

Extends

Proprietà

audio

La configurazione audio, inclusi formati di input e output, voce, rilevamento delle curve, riduzione del rumore e trascrizione. Questi valori sono valori predefiniti della sessione; un client può sovrascrivere i campi supportati durante la connessione.

avatar

Configurazione opzionale dell'avatar. Questi valori sono valori predefiniti della sessione e possono essere sovrascritti durante la connessione.

conversation_engine

Il motore che gestisce le conversazioni per questo agente vocale. Deve essere fornita esattamente una di queste proprietà e la configurazione supportata dal modello (model_type con model). Quando questa proprietà è fornita, model_type, model, instructions, tools, e tool_choice devono essere omessi, e greeting.tool_choice non possono essere required, perché il motore possiede la logica della conversazione. L'implementazione iniziale supporta un motore hosted-agent.

greeting

Saluto opzionale all'inizio della sessione. La modalità template parla di testo renderizzato esattamente; la modalità generata da LLM chiede al modello di sessione di redigere la risposta all'apertura e può utilizzare strumenti configurati.

include

Campi aggiuntivi da includere nelle uscite del servizio.

instructions

Messaggio di sistema (o sviluppatore) inserito nel contesto del modello. Supporta la sostituzione di template tramite structured_inputs, renderizzato per sessione prima che inizi la sessione live.

interim_response

Impostazioni di risposta intermedia per latenza ed esecuzione degli strumenti.

kind

Il tipo di discriminatore per la definizione di agente vocale. Sempre voice.

max_output_tokens

Il conteggio massimo dei token di output per una risposta.

model

Il modello da usare per questo agente. Richiesto con model_type per un agente vocale supportato dal modello e omesso quando conversation_engine viene fornito. Il modello deve supportare la voce in tempo reale o a cascata.

model_type

Come viene servito il modello che sostiene questo agente vocale. Richiesto con model per un agente vocale supportato dal modello e omesso quando conversation_engine viene fornito. Questo è indipendente dall'architettura (in tempo reale o a cascata), che il servizio deriva dal modello selezionato.

output_modalities

Le modalità di output prodotte dall'agente. Di default è ["audio"]. animation e avatar sono disponibili quando un avatar è configurato.

parallel_tool_calls

Se il modello può chiamare più strumenti in parallelo.

store

Se le conversazioni con questo agente vengono mantenute. Un unico interruttore di persistenza tutto o niente che di default è false (privacy-safe: disattivato di default). Quando true, Foundry prosegue l'intera conversazione — la trascrizione/cronologia dell'evento e l'audio grezzo. Quando false, nulla viene ripetuto e non emerge alcuna conversazione. Non esiste un controllo separato per la registrazione audio; l'audio viene mantenuto solo come parte di questo switch. La telemetria di latenza/prestazioni (ad esempio time-to-first-audio, latenza inter-token, interruzione) è solo osservabile (tracciamento cliente / App Insights) e non fa parte del contenuto della conversazione persistente.

structured_inputs

Insieme di input strutturati che partecipano alla sostituzione dei template prompt, renderizzati per sessione prima che inizi la sessione live.

subagent_config

Configurazione opzionale per gli agenti di testo Foundry fratelli che questo agente vocale può consultare come specialisti in background.

tools

Gli strumenti che l'agente vocale può usare. I tipi di strumenti supportati sono function (eseguiti dal client), mcp, system (controlli di sessione gestiti dal servizio) e toolbox. Gli strumenti lato server come web_search, azure_ai_search, e openapi sono forniti tramite una cassetta degli attrezzi invece che dichiarati direttamente.

tool_choice

Come il modello sceglie gli strumenti per le risposte generate. none previene le chiamate agli strumenti, auto lascia decidere al modello, required richiede almeno una chiamata allo strumento, e una funzione specifica o uno strumento MCP può essere selezionata con un oggetto. Di default è auto.

Proprietà ereditate

rai_config

Configurazione per il filtraggio dei contenuti e le funzioni di sicurezza RAI (Responsible AI).

Dettagli proprietà

audio

La configurazione audio, inclusi formati di input e output, voce, rilevamento delle curve, riduzione del rumore e trascrizione. Questi valori sono valori predefiniti della sessione; un client può sovrascrivere i campi supportati durante la connessione.

audio?: VoiceAgentAudioConfig

Valore della proprietà

avatar

Configurazione opzionale dell'avatar. Questi valori sono valori predefiniti della sessione e possono essere sovrascritti durante la connessione.

avatar?: VoiceAgentAvatarConfig

Valore della proprietà

conversation_engine

Il motore che gestisce le conversazioni per questo agente vocale. Deve essere fornita esattamente una di queste proprietà e la configurazione supportata dal modello (model_type con model). Quando questa proprietà è fornita, model_type, model, instructions, tools, e tool_choice devono essere omessi, e greeting.tool_choice non possono essere required, perché il motore possiede la logica della conversazione. L'implementazione iniziale supporta un motore hosted-agent.

conversation_engine?: VoiceConversationEngineUnion

Valore della proprietà

greeting

Saluto opzionale all'inizio della sessione. La modalità template parla di testo renderizzato esattamente; la modalità generata da LLM chiede al modello di sessione di redigere la risposta all'apertura e può utilizzare strumenti configurati.

greeting?: VoiceAgentGreetingConfigUnion

Valore della proprietà

include

Campi aggiuntivi da includere nelle uscite del servizio.

include?: VoiceAgentSessionIncludeOption[]

Valore della proprietà

instructions

Messaggio di sistema (o sviluppatore) inserito nel contesto del modello. Supporta la sostituzione di template tramite structured_inputs, renderizzato per sessione prima che inizi la sessione live.

instructions?: string

Valore della proprietà

string

interim_response

Impostazioni di risposta intermedia per latenza ed esecuzione degli strumenti.

interim_response?: VoiceAgentInterimResponseConfigUnion

Valore della proprietà

kind

Il tipo di discriminatore per la definizione di agente vocale. Sempre voice.

kind: "voice"

Valore della proprietà

"voice"

max_output_tokens

Il conteggio massimo dei token di output per una risposta.

max_output_tokens?: VoiceAgentMaxOutputTokens

Valore della proprietà

model

Il modello da usare per questo agente. Richiesto con model_type per un agente vocale supportato dal modello e omesso quando conversation_engine viene fornito. Il modello deve supportare la voce in tempo reale o a cascata.

model?: string

Valore della proprietà

string

model_type

Come viene servito il modello che sostiene questo agente vocale. Richiesto con model per un agente vocale supportato dal modello e omesso quando conversation_engine viene fornito. Questo è indipendente dall'architettura (in tempo reale o a cascata), che il servizio deriva dal modello selezionato.

model_type?: VoiceModelType

Valore della proprietà

output_modalities

Le modalità di output prodotte dall'agente. Di default è ["audio"]. animation e avatar sono disponibili quando un avatar è configurato.

output_modalities?: VoiceOutputModality[]

Valore della proprietà

parallel_tool_calls

Se il modello può chiamare più strumenti in parallelo.

parallel_tool_calls?: boolean

Valore della proprietà

boolean

store

Se le conversazioni con questo agente vengono mantenute. Un unico interruttore di persistenza tutto o niente che di default è false (privacy-safe: disattivato di default). Quando true, Foundry prosegue l'intera conversazione — la trascrizione/cronologia dell'evento e l'audio grezzo. Quando false, nulla viene ripetuto e non emerge alcuna conversazione. Non esiste un controllo separato per la registrazione audio; l'audio viene mantenuto solo come parte di questo switch. La telemetria di latenza/prestazioni (ad esempio time-to-first-audio, latenza inter-token, interruzione) è solo osservabile (tracciamento cliente / App Insights) e non fa parte del contenuto della conversazione persistente.

store?: boolean

Valore della proprietà

boolean

structured_inputs

Insieme di input strutturati che partecipano alla sostituzione dei template prompt, renderizzati per sessione prima che inizi la sessione live.

structured_inputs?: Record<string, StructuredInputDefinition>

Valore della proprietà

Record<string, StructuredInputDefinition>

subagent_config

Configurazione opzionale per gli agenti di testo Foundry fratelli che questo agente vocale può consultare come specialisti in background.

subagent_config?: VoiceAgentSubagentConfig

Valore della proprietà

tools

Gli strumenti che l'agente vocale può usare. I tipi di strumenti supportati sono function (eseguiti dal client), mcp, system (controlli di sessione gestiti dal servizio) e toolbox. Gli strumenti lato server come web_search, azure_ai_search, e openapi sono forniti tramite una cassetta degli attrezzi invece che dichiarati direttamente.

tools?: VoiceAgentToolUnion[]

Valore della proprietà

tool_choice

Come il modello sceglie gli strumenti per le risposte generate. none previene le chiamate agli strumenti, auto lascia decidere al modello, required richiede almeno una chiamata allo strumento, e una funzione specifica o uno strumento MCP può essere selezionata con un oggetto. Di default è auto.

tool_choice?: VoiceAgentToolChoice

Valore della proprietà

Dettagli proprietà ereditate

rai_config

Configurazione per il filtraggio dei contenuti e le funzioni di sicurezza RAI (Responsible AI).

rai_config?: RaiConfig

Valore della proprietà

ereditato daAgentDefinition.rai_config