Manage topic inputs and outputs
Topics can have input and output parameters. When a topic redirects to another topic, you can use these parameters to pass information between topics.
If your agent uses generative orchestration, it can automatically fill inputs, before running the topic, by using conversation context or generate questions to ask the user for the values. This behavior is similar to how generative slot filling for actions works.
When using generative orchestration, an agent can use topic outputs to generate a contextual response. In such cases, you don't need to configure a verbatim message from within the topic itself.
Topic inputs and outputs can share values with other topics and actions in the same generated plan.
Add inputs and outputs
To add inputs or outputs for a topic, select the Details in the navigation bar at the top of the authoring canvas. Alternatively you can select Details from the context menu for a topic on the Topics list page.
Once the Details pane is shown, you can navigate to the Inputs or Outputs tabs, and then create new input or output variables by selecting Create a new variable.
For every input and output parameter, you must enter a name, select a data type, and enter a description for the corresponding variable.
If your agent uses generative AI to decide how to respond to users, more properties are available for input variables. Specifically How will the agent fill this input? determines how the agent fills this variable with a value before running the topic. By default, each input is set to Dynamically fill with the best option. The agent tries to populate the value from available context, such as extracting a value from the user's message, or previous conversation. If no appropriate value is found, it generates a question to ask the user for a value. You can choose to override an input with a value instead of asking the user. To override an input parameter, select Set as a value, under How will the agent fill this input?, and enter the desired value. This value can be a literal value, an existing variable, or a Power Fx formula.
To ensure your agent captures the correct type of value for the input, you must also specify an entity type under Identify as.
Additional settings can be configured for inputs to control the agent's behavior when asking for a value or validating an answer from the user.
One of these properties, Should prompt user, is only available for topic inputs. It determines if the agent should try to fill the variable with a value before executing the topic. This property is enabled by default.