Defining how to interact with a skill in a conversation
Users interact with skill-based actions in the chat through AI assistants or with skills added directly to the AI chat. When a user triggers a skill, the request for inputs and the response can appear as a form or as a multi-turn conversation. In multi-turn conversations, each turn gathers information about a specific input parameter that the skill needs. Skills added directly to the AI chat validate inputs and outputs separately, allowing the skill to use multi-turn conversations for inputs while outputs return as forms or vice versa.
Criteria to fallback to forms over multi-turn conversations
Custom skills use forms instead of multi-turn conversations based on specific criteria. The criteria depend on how the system validates inputs and outputs and how users trigger the skill:
AI assistants
Skill-based actions evaluate inputs and outputs together and fallback to forms over multi-turn conversations when the following criteria apply:
- The skill is a skill flow.
- Input or output fields have UI annotations.
- Complex objects are used in input or output fields.
- The number of input fields exceeds the configured threshold.
AI chat
A skill might ask for inputs as a multi-turn conversation but return the output as form-based and vice-versa. Skills added directly to the chat evaluate inputs and outputs separately based on the following criteria:
-
For an input in a single skill
- Input fields with UI annotations default to forms.
- Complex annotations result in forms.
- Slot logic defaults to multi-turn conversations (ignored if the skill is part of a skill flow).
- Input fields that exceed the configured threshold default to forms.
-
For output in a single skill:
- Output fields with UI annotations default to forms.
- Complex outputs result in forms.
- Output fields that exceed the configured threshold default to forms.
For a skill flow, the respective child skill is also checked.
Details of the criteria applied:
-
Skill input or output has annotations
If any of the following properties are present in the Request or Response body of the OpenAPI specification that defines the skill:
x-ibm-ui-extension
x-ibm-operators
x-ibm-filter-format
x-ibm-pagination
-
Input or output fields use complex objects
If any of the following complex objects are present in the Request or Response body of the OpenAPI specification that defines the skill:
table
file
password
boolean
-
Number of inputs fields exceeds the configured value
If the number of input fields of the skill exceeds the maximum number of fields that are configured for multi-turn conversations, then the AI assistants use form-based interactions. Check the procedure at the Configuring the number of input fields for multi-turn conversations section to learn how to configure this value.
Configuring the number of input fields for multi-turn conversations
Specify the maximum number of input fields (including optional fields) for a skill to be considered for multi-turn conversations. Skills with more than the specified number of input fields are displayed in the form format.
To specify the maximum number of fields for multi-turn conversations:
- Click your profile icon on the right side.
- Select Settings.
- Click Skill configurations.
- Specify the maximum number of input fields.
In the following image, you can see a preview of the Transfer bluepoints skill with two input fields and that receives values as a multi-turn conversation, while the Create an issue skill with seven input fields receives values in a form.
The previous scenario happens because the tenant sets the maximum number of fields to consider the skills' inputs as multi-turn conversations to two. In this case, the Create an issue skill fallback to a form because it receives more than two inputs.
Parent topic: