2

Can aws-lex be used to build a conversation flow bot?

For example:

enter image description here

Thank you very much!


Reason for all this: So we have our own "dialogue builder" and "bot-service". Our own "Dialogue Builder": is maybe similar to Amazon Connect dialogue builder, and our own "Bot-service" is similar to Microsoft bot framework. Before we were using microsoft-luis to get "intention" of a sentence while using our own dialogue builder and our own bot-service to build a conversation/dialogues flow like if a user says "yes" then go to another flow and if a user says "no" then go to different flow (can this be done in slots?) === Binary tree :)

So now we are switching from luis to aws-lex and trying to think if it is possible to just use aws-lex UI and not our (dialogue builder/bot-service) anymore. But what I am understanding is that to use aws-lex without some kind of dialogue builder we would need to write alot of if/case statements if it contains large data, right? what is your suggestion? One way would be to just use "Amazon Connect" to utilize their dialogue builder so we don't have to write alot of if statements but then if we are using dialogue builder we can just use our own (old one) dialogue builder? what do you think?

Questions:

1)Is there a way to do something like this in aws-lex or not? I tried using slots/prompts/lambda but I am not able to go to 2nd or 3rd level depth in diagram. can be done somehow?

2) Do I have to use lambda and use "switch/if conditions each time it has to change the flow (ex: if answer is yes then reply this, and if no then reply this)?

3) If #2 is true, then is it possible for it to be used by non-developer. Even if I write if/conditions ~1k - 2k if conditions, then if a person (non-developer) tries to edit a dialogue/or-something through UI won't able to do it, right? (So does this mean that we are't really using UI of aws-lex, we are just writing "if conditions" in programming + using aws-lex "intention" to get intention, right?

4) Would it be possible to give example and show how making a flow is possible? So far using slots replies/responses don't change based on user's input. It doesn't matter if users says "no" or says "yes" it is going to reply with same path/answer. Is there a way to change reply based on user's input.

5) If #3 is not possible (non-developer) can't use aws-lex UI to make something like this, should we use custom dialogue builder which does this?

Thank you very very much!

John Rotenstein
  • 241,921
  • 22
  • 380
  • 470
Muhammad Usman
  • 458
  • 3
  • 9

1 Answers1

1

It sounds like you're switching from the Microsoft Bot Framework to find a simpler solution to structured flows without entity recognition.

You may want research Microsoft's QnAMaker multi-turn ability. It's supported in the QnA Maker online editor, but not in the bot framework SDK (yet). They do have an example bot that uses it through the Web API.

https://learn.microsoft.com/en-us/azure/cognitive-services/qnamaker/how-to/multiturn-conversation

I realize this doesn't answer you Lex question, but might address your concern.

Mike Kinney
  • 200
  • 11
  • Thank you very much for answering!!! - I did look at it before but I thought it was QnA but did Not know it has multi-turn ability. -- so thank you very much for telling that. - The reason for switching to aws was b/c customer (where I work) was favoring more aws services (I think it is b/c they have been using aws for other things, so they wanted everything in one [aws]) But your answer is useful + informative!! -- so thank you very much! – Muhammad Usman Jun 25 '19 at 15:07