GenerateVoiceAgentRequest Class

The inputs for generating a voice agent. Only kind and name are always required. The authoring service expands these inputs into a full, editable VoiceAgentDefinition, which is then created through POST /agents. The generated instructions and audio/voice settings are stored as separate fields on the resulting agent definition, so the caller can edit or override any of them afterward via standard agent versioning.

Constructor

GenerateVoiceAgentRequest(*args: Any, **kwargs: Any)

Variables

Name Description
kind
str or <xref:azure.ai.projects.models.VOICE>

The agent kind. Always voice. Required. VOICE.

name
str

The unique name for the agent to create. Must be a non-empty DNS-like agent name. Required.

model_type

Optional inference mode. When omitted, the authoring service uses managed. When supplied, use managed or self_deployed. Known values are: "managed" and "self_deployed".

model
str

Optional model identifier. Required when model_type is self_deployed; optional when model_type is managed or omitted. The service never invents a customer deployment name.

use_case
str

An optional authoring use case. An empty string is accepted.

goal
str

An optional natural-language description of what the agent should do. When supplied, it seeds the generated instructions.

description
str

An optional agent description. The authoring service resolves its fallback when omitted.

tools

Optional tools carried through verbatim onto the generated agent (see VoiceAgentTool).

draft

(Preview) When true, the generated voice agent is created as a draft — an editable, unpublished version the caller can review and refine before publishing it via the standard create/version path. The service defaults to false if a value is not specified by the caller, in which case the agent is created and published normally.

Methods

as_dict

Return a dict that can be turned into json using json.dump.

clear

Remove all items from the dictionary.

copy
get

Get the value for key if key is in the dictionary, else default. :param str key: The key to look up. :param any default: The value to return if key is not in the dictionary. Defaults to None :returns: The value for key if key is in the dictionary, else default. :rtype: any

items
keys
pop

Removes specified key and return the corresponding value. :param str key: The key to pop. :param any default: The value to return if key is not in the dictionary :returns: The value corresponding to the key. :rtype: any :raises KeyError: If key is not found and default is not given.

popitem

Removes and returns some (key, value) pair :returns: The (key, value) pair. :rtype: tuple :raises KeyError: if the dictionary is empty.

setdefault

Return the value for key if key is in the dictionary; otherwise set the key to default and return default. :param str key: The key to look up. :param any default: The value to set if key is not in the dictionary :returns: The value for key if key is in the dictionary, else default. :rtype: any

update

Update the dictionary from a mapping or an iterable of key-value pairs. :param any args: Either a mapping object or an iterable of key-value pairs.

values

as_dict

Return a dict that can be turned into json using json.dump.

as_dict(*, exclude_readonly: bool = False) -> dict[str, Any]

Keyword-Only Parameters

Name Description
exclude_readonly

Whether to remove the readonly properties.

Default value: False

Returns

Type Description

A dict JSON compatible object

clear

Remove all items from the dictionary.

clear() -> None

copy

copy() -> Model

get

Get the value for key if key is in the dictionary, else default. :param str key: The key to look up. :param any default: The value to return if key is not in the dictionary. Defaults to None :returns: The value for key if key is in the dictionary, else default. :rtype: any

get(key: str, default: Any = None) -> Any

Parameters

Name Description
key
Required
default
Default value: None

items

items() -> ItemsView[str, Any]

Returns

Type Description

a set-like object providing a view on the mapping's items

keys

keys() -> KeysView[str]

Returns

Type Description

a set-like object providing a view on the mapping's keys

pop

Removes specified key and return the corresponding value. :param str key: The key to pop. :param any default: The value to return if key is not in the dictionary :returns: The value corresponding to the key. :rtype: any :raises KeyError: If key is not found and default is not given.

pop(key: str, default: ~typing.Any = <object object>) -> Any

Parameters

Name Description
key
Required
default

popitem

Removes and returns some (key, value) pair :returns: The (key, value) pair. :rtype: tuple :raises KeyError: if the dictionary is empty.

popitem() -> tuple[str, Any]

setdefault

Return the value for key if key is in the dictionary; otherwise set the key to default and return default. :param str key: The key to look up. :param any default: The value to set if key is not in the dictionary :returns: The value for key if key is in the dictionary, else default. :rtype: any

setdefault(key: str, default: ~typing.Any = <object object>) -> Any

Parameters

Name Description
key
Required
default

update

Update the dictionary from a mapping or an iterable of key-value pairs. :param any args: Either a mapping object or an iterable of key-value pairs.

update(*args: Any, **kwargs: Any) -> None

values

values() -> ValuesView[Any]

Returns

Type Description

an object providing a view on the mapping's values

Attributes

description

An optional agent description. The authoring service resolves its fallback when omitted.

description: str | None

draft

(Preview) When true, the generated voice agent is created as a draft — an editable, unpublished version the caller can review and refine before publishing it via the standard create/version path. The service defaults to false if a value is not specified by the caller, in which case the agent is created and published normally.

draft: bool | None

goal

An optional natural-language description of what the agent should do. When supplied, it seeds the generated instructions.

goal: str | None

kind

The agent kind. Always voice. Required. VOICE.

kind: VOICE: 'voice'>]

model

Optional model identifier. Required when model_type is self_deployed; optional when model_type is managed or omitted. The service never invents a customer deployment name.

model: str | None

model_type

Optional inference mode. When omitted, the authoring service uses managed. When supplied, use managed or self_deployed. Known values are: "managed" and "self_deployed".

model_type: str | _models.VoiceModelType | None

name

The unique name for the agent to create. Must be a non-empty DNS-like agent name. Required.

name: str

tools

Optional tools carried through verbatim onto the generated agent (see VoiceAgentTool).

tools: list['_models.VoiceAgentTool'] | None

use_case

An optional authoring use case. An empty string is accepted.

use_case: str | None