ChatCompletionSkill Class

A skill that calls a language model via Azure AI Foundry's Chat Completions endpoint.

Constructor

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

Variables

Name Description
name
str

The name of the skill which uniquely identifies it within the skillset. A skill with no name defined will be given a default name of its 1-based index in the skills array, prefixed with the character '#'.

description
str

The description of the skill which describes the inputs, outputs, and usage of the skill.

context
str

Represents the level at which operations take place, such as the document root or document content (for example, /document or /document/content). The default is /document.

inputs

Inputs of the skills could be a column in the source data set, or the output of an upstream skill. Required.

outputs

The output of a skill is either a field in a search index, or a value that can be consumed as an input by another skill. Required.

uri
str

The url for the Web API. Required.

auth_identity

The user-assigned managed identity used for outbound connections. If an authResourceId is provided and it's not specified, the system-assigned managed identity is used. On updates to the indexer, if the identity is unspecified, the value remains unchanged. If set to "none", the value of this property is cleared.

api_key
str

API key for authenticating to the model. Both apiKey and authIdentity cannot be specified at the same time.

common_model_parameters

Common language model parameters that customers can tweak. If omitted, reasonable defaults will be applied.

extra_parameters

Open-type dictionary for model-specific parameters that should be appended to the chat completions call. Follows Azure AI Foundry's extensibility pattern.

extra_parameters_behavior

How extra parameters are handled by Azure AI Foundry. Default is 'error'. Known values are: "passThrough", "drop", and "error".

response_format

Determines how the LLM should format its response. Defaults to 'text' response type.

odata_type
str

A URI fragment specifying the type of skill. Required. Default value is "#Microsoft.Skills.Custom.ChatCompletionSkill".

Methods

as_dict

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

clear

Remove all items from D.

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: D[k] if k in D, else d. :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 D is empty.

setdefault

Same as calling D.get(k, d), and setting D[k]=d if k not found :param str key: The key to look up. :param any default: The value to set if key is not in the dictionary :returns: D[k] if k in D, else d. :rtype: any

update

Updates D from mapping/iterable E and F. :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 D.

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: D[k] if k in D, else d. :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

set-like object providing a view on D's items

keys

keys() -> KeysView[str]

Returns

Type Description

a set-like object providing a view on D'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 D is empty.

popitem() -> tuple[str, Any]

setdefault

Same as calling D.get(k, d), and setting D[k]=d if k not found :param str key: The key to look up. :param any default: The value to set if key is not in the dictionary :returns: D[k] if k in D, else d. :rtype: any

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

Parameters

Name Description
key
Required
default

update

Updates D from mapping/iterable E and F. :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 D's values

Attributes

api_key

API key for authenticating to the model. Both apiKey and authIdentity cannot be specified at the same time.

api_key: str | None

auth_identity

The user-assigned managed identity used for outbound connections. If an authResourceId is provided and it's not specified, the system-assigned managed identity is used. On updates to the indexer, if the identity is unspecified, the value remains unchanged. If set to "none", the value of this property is cleared.

auth_identity: _models.SearchIndexerDataIdentity | None

common_model_parameters

Common language model parameters that customers can tweak. If omitted, reasonable defaults will be applied.

common_model_parameters: _models.ChatCompletionCommonModelParameters | None

context

Represents the level at which operations take place, such as the document root or document content (for example, /document or /document/content). The default is /document.

context: str | None

description

The description of the skill which describes the inputs, outputs, and usage of the skill.

description: str | None

extra_parameters

Open-type dictionary for model-specific parameters that should be appended to the chat completions call. Follows Azure AI Foundry's extensibility pattern.

extra_parameters: dict[str, Any] | None

extra_parameters_behavior

How extra parameters are handled by Azure AI Foundry. Default is 'error'. Known values are: "passThrough", "drop", and "error".

extra_parameters_behavior: str | _models.ChatCompletionExtraParametersBehavior | None

inputs

Inputs of the skills could be a column in the source data set, or the output of an upstream skill. Required.

inputs: list['_models.InputFieldMappingEntry']

name

The name of the skill which uniquely identifies it within the skillset. A skill with no name defined will be given a default name of its 1-based index in the skills array, prefixed with the character '#'.

name: str | None

odata_type

A URI fragment specifying the type of skill. Required. Default value is "#Microsoft.Skills.Custom.ChatCompletionSkill".

odata_type: Literal['#Microsoft.Skills.Custom.ChatCompletionSkill']

outputs

The output of a skill is either a field in a search index, or a value that can be consumed as an input by another skill. Required.

outputs: list['_models.OutputFieldMappingEntry']

response_format

Determines how the LLM should format its response. Defaults to 'text' response type.

response_format: _models.ChatCompletionResponseFormat | None

uri

The url for the Web API. Required.

uri: str