AI-102 Question 319
Single answerYou are designing a multi-turn conversation bot using Azure Bot Framework. The bot needs to collect a user's shipping address in a structured format (street, city, state, and zip code) and allow the user to correct any part of the address during the conversation. Which component or approach should you use to achieve this functionality?
- A
Use a waterfall dialog and implement input validation for each step.
- B
Use a QnA Maker knowledge base with pre-defined question and answer pairs.
- C
Use a form flow to automatically collect and validate user inputs.
- D
Use LUIS (Language Understanding) to extract entities and directly pass them to Azure Form Recognizer.
Show answer and explanation
Correct answer: A
Explanation
Waterfall dialogs in Azure Bot Framework allow for guided, multi-turn conversations where you can collect sequential inputs (e.g., street, city, state, and zip code) and validate each step. This makes them an excellent choice for scenarios requiring structured data collection and user input correction.
- A. Correct.
Correct. A waterfall dialog allows you to collect user input in multiple steps. You can include logic to validate and prompt for corrections at each step, making it suitable for multi-turn conversations like collecting an address.
- B. Incorrect.
Incorrect. QnA Maker is used for static question-and-answer scenarios and does not support multi-turn conversations or input correction.
- C. Incorrect.
Incorrect. Form flow is no longer supported in the Azure Bot Framework. Waterfall dialogs are the recommended approach for guided input collection.
- D. Incorrect.
Incorrect. While LUIS can extract entities, it does not handle multi-turn conversations or provide structured input correction functionality. Form Recognizer, meanwhile, is unnecessary for this use case.