Best practices to build a dialog in Watson Assistant

There are a lot of ways of doing something in Watson, so I have some questions about what is the best way of doing some things.

  • Entities with similar characteristics

Say, for example, I have the entities @ice_cream_flavors and @popsicle_flavors. Both entities have strawberry, chocolate and grape as values (in reality, let’s say there are a lot more equal values between the two). Is it best to keep them as separate entities? Or create @flavors and keep all flavors there? If so, how would the input validation look like if someone wanted to order an ice cream with a flavor only available to popsicles?

  • Reset dialog whenever the user wants to

If you want to have an option so the user can, at any time, stop the dialog, which in turn clear all context variables, what is the best way of doing so?

  • When to create a new node when using slots

Say, for example, you sell colored shirts and shirts with a picture stamped at the front. Everything about the shirts is the same, except that, with the colored shirts, you ask for the color, and for the other you ask for the picture they want stamped. Is it better to create a node for each type of shirt or create conditional slots that check which type of shirt it is and ask the appropriate question?

submitted by /u/KleberPF
[link] [comments]