VoiceAgentDefinition interface

La définition de l’agent vocal. Sa configuration (modèle, instructions, audio, outils et avatar optionnel) permet une expérience de reconnaissance vocale gérée. Établissez des sessions vocales en temps réel via GET /agents/{agent_name}/endpoint/protocols/voice. Chaque création ou mise à jour produit une nouvelle version immuable.

Extends

Propriétés

audio

La configuration audio, incluant les formats d’entrée et de sortie, la voix, la détection de rotation, la réduction du bruit et la transcription. Ces valeurs sont des valeurs par défaut de la session ; un client peut écraser les champs pris en charge lors de la connexion.

avatar

Configuration optionnelle de l’avatar. Ces valeurs sont des valeurs par défaut de session et peuvent être écrasées lors de la connexion.

conversation_engine

Le moteur qui gère la conversation pour cet agent vocal. Exactement une de ces propriétés et la configuration adossée au modèle (model_type avec model) doivent être fournies. Lorsque cette propriété est fournie, model_type, model, instructions, tools, et tool_choice doivent être omis , et greeting.tool_choice ne peuvent pas être required, car le moteur possède la logique de conversation. L’implémentation initiale prend en compte un moteur à agent hébergé.

greeting

Salutation optionnelle pour commencer la session. Le mode modèle exprime un texte rendu exact ; le mode généré par LLM demande au modèle de session d’autoriser la réponse d’ouverture et peut utiliser des outils configurés.

include

Champs supplémentaires à inclure dans les sorties de service.

instructions

Message système (ou développeur) inséré dans le contexte du modèle. Prend en charge la substitution de modèles via structured_inputs, rendu par session avant le début de la session en direct.

interim_response

Paramètres de réponse intermédiaire pour la latence et l’exécution de l’outil.

kind

Le genre de discrimination pour une définition d’agent vocal. A toujours la valeur voice.

max_output_tokens

Le nombre maximal de jetons de sortie pour une réponse.

model

Le modèle à utiliser pour cet agent. Requise avec model_type pour un agent vocal soutenu par le modèle et omise lorsqu’elle conversation_engine est fournie. Le modèle doit prendre en charge la voix en temps réel ou en cascade.

model_type

Comment le modèle qui soutient cet agent vocal est servi. Requise avec model pour un agent vocal soutenu par le modèle et omise lorsqu’elle conversation_engine est fournie. Cela est indépendant de l’architecture (temps réel ou en cascade), que le service dérive du modèle sélectionné.

output_modalities

Les modalités de sortie produites par l’agent. La valeur par défaut est ["audio"]. animation et avatar sont disponibles lorsqu’un avatar est configuré.

parallel_tool_calls

Si le modèle peut appeler plusieurs outils en parallèle.

store

Si les conversations avec cet agent se poursuivent ou non. Un seul interrupteur de persistance tout ou rien qui se met par défaut sur false (confidentialité : désactivé par défaut). Lorsque true, Foundry poursuit toute la conversation — la transcription/chronologie de l’événement et l’audio brut. Quand false, rien n’est persisté et aucune conversation n’est relancée. Il n’y a pas de contrôle distinct de journalisation audio ; l’audio n’est maintenu que dans le cadre de ce basculement. La télémétrie de latence/performance (par exemple temps jusqu’au premier audio, latence inter-jeton, interruption) est uniquement observable (trace client / App Insights) et ne fait pas partie du contenu de la conversation persistante.

structured_inputs

Ensemble d’entrées structurées qui participent à la substitution de modèles de prompts, rendues par session avant le début de la session en direct.

subagent_config

Configuration optionnelle pour les agents textuels frères Foundry que cet agent vocal peut consulter en tant que spécialistes en arrière-plan.

tools

Les outils que l’agent vocal peut utiliser. Les types d’outils pris en charge sont function (exécutés par le client), mcp, system (contrôles de session gérés par le service), et toolbox. Les outils côté serveur tels que web_search, azure_ai_search, et openapi sont fournis via une boîte à outils plutôt que déclarés directement.

tool_choice

Comment le modèle choisit les outils pour les réponses générées. none empêche les appels d’outils, auto laisse le modèle décider, required nécessite au moins un appel d’outil, et une fonction spécifique ou un outil MCP peut être sélectionné avec un objet. La valeur par défaut est auto.

Propriétés héritées

rai_config

Configuration pour les fonctions de filtrage de contenu et de sécurité RAI (Responsible AI).

Détails de la propriété

audio

La configuration audio, incluant les formats d’entrée et de sortie, la voix, la détection de rotation, la réduction du bruit et la transcription. Ces valeurs sont des valeurs par défaut de la session ; un client peut écraser les champs pris en charge lors de la connexion.

audio?: VoiceAgentAudioConfig

Valeur de propriété

avatar

Configuration optionnelle de l’avatar. Ces valeurs sont des valeurs par défaut de session et peuvent être écrasées lors de la connexion.

avatar?: VoiceAgentAvatarConfig

Valeur de propriété

conversation_engine

Le moteur qui gère la conversation pour cet agent vocal. Exactement une de ces propriétés et la configuration adossée au modèle (model_type avec model) doivent être fournies. Lorsque cette propriété est fournie, model_type, model, instructions, tools, et tool_choice doivent être omis , et greeting.tool_choice ne peuvent pas être required, car le moteur possède la logique de conversation. L’implémentation initiale prend en compte un moteur à agent hébergé.

conversation_engine?: VoiceConversationEngineUnion

Valeur de propriété

greeting

Salutation optionnelle pour commencer la session. Le mode modèle exprime un texte rendu exact ; le mode généré par LLM demande au modèle de session d’autoriser la réponse d’ouverture et peut utiliser des outils configurés.

greeting?: VoiceAgentGreetingConfigUnion

Valeur de propriété

include

Champs supplémentaires à inclure dans les sorties de service.

include?: VoiceAgentSessionIncludeOption[]

Valeur de propriété

instructions

Message système (ou développeur) inséré dans le contexte du modèle. Prend en charge la substitution de modèles via structured_inputs, rendu par session avant le début de la session en direct.

instructions?: string

Valeur de propriété

string

interim_response

Paramètres de réponse intermédiaire pour la latence et l’exécution de l’outil.

interim_response?: VoiceAgentInterimResponseConfigUnion

Valeur de propriété

kind

Le genre de discrimination pour une définition d’agent vocal. A toujours la valeur voice.

kind: "voice"

Valeur de propriété

"voice"

max_output_tokens

Le nombre maximal de jetons de sortie pour une réponse.

max_output_tokens?: VoiceAgentMaxOutputTokens

Valeur de propriété

model

Le modèle à utiliser pour cet agent. Requise avec model_type pour un agent vocal soutenu par le modèle et omise lorsqu’elle conversation_engine est fournie. Le modèle doit prendre en charge la voix en temps réel ou en cascade.

model?: string

Valeur de propriété

string

model_type

Comment le modèle qui soutient cet agent vocal est servi. Requise avec model pour un agent vocal soutenu par le modèle et omise lorsqu’elle conversation_engine est fournie. Cela est indépendant de l’architecture (temps réel ou en cascade), que le service dérive du modèle sélectionné.

model_type?: VoiceModelType

Valeur de propriété

output_modalities

Les modalités de sortie produites par l’agent. La valeur par défaut est ["audio"]. animation et avatar sont disponibles lorsqu’un avatar est configuré.

output_modalities?: VoiceOutputModality[]

Valeur de propriété

parallel_tool_calls

Si le modèle peut appeler plusieurs outils en parallèle.

parallel_tool_calls?: boolean

Valeur de propriété

boolean

store

Si les conversations avec cet agent se poursuivent ou non. Un seul interrupteur de persistance tout ou rien qui se met par défaut sur false (confidentialité : désactivé par défaut). Lorsque true, Foundry poursuit toute la conversation — la transcription/chronologie de l’événement et l’audio brut. Quand false, rien n’est persisté et aucune conversation n’est relancée. Il n’y a pas de contrôle distinct de journalisation audio ; l’audio n’est maintenu que dans le cadre de ce basculement. La télémétrie de latence/performance (par exemple temps jusqu’au premier audio, latence inter-jeton, interruption) est uniquement observable (trace client / App Insights) et ne fait pas partie du contenu de la conversation persistante.

store?: boolean

Valeur de propriété

boolean

structured_inputs

Ensemble d’entrées structurées qui participent à la substitution de modèles de prompts, rendues par session avant le début de la session en direct.

structured_inputs?: Record<string, StructuredInputDefinition>

Valeur de propriété

Record<string, StructuredInputDefinition>

subagent_config

Configuration optionnelle pour les agents textuels frères Foundry que cet agent vocal peut consulter en tant que spécialistes en arrière-plan.

subagent_config?: VoiceAgentSubagentConfig

Valeur de propriété

tools

Les outils que l’agent vocal peut utiliser. Les types d’outils pris en charge sont function (exécutés par le client), mcp, system (contrôles de session gérés par le service), et toolbox. Les outils côté serveur tels que web_search, azure_ai_search, et openapi sont fournis via une boîte à outils plutôt que déclarés directement.

tools?: VoiceAgentToolUnion[]

Valeur de propriété

tool_choice

Comment le modèle choisit les outils pour les réponses générées. none empêche les appels d’outils, auto laisse le modèle décider, required nécessite au moins un appel d’outil, et une fonction spécifique ou un outil MCP peut être sélectionné avec un objet. La valeur par défaut est auto.

tool_choice?: VoiceAgentToolChoice

Valeur de propriété

Détails de la propriété héritée

rai_config

Configuration pour les fonctions de filtrage de contenu et de sécurité RAI (Responsible AI).

rai_config?: RaiConfig

Valeur de propriété

Hérité deAgentDefinition.rai_config