Search code examples
node.jswit.aiwit-ai

Wit.ai differences between Trait - Free Text - Keyword and Intent/entities


It's a mess in my head right now. I've seen this video tutorial to understand Wit.ai logic : https://www.youtube.com/watch?v=yLAHVPaHWFA

It's a really good video for basic training. But I can't still understand the logic.
I want to create a story like that Human(H) / Robot(R):
(H) Hello
(R) Hello human, you can choose A action or B action
(H) A action
(R) Ok human, this is A action

It's really simple but I don't know what to declare in "understanding" section.
1 - Do I have to create a "Say Hello" intent
2 - If yes, Do I have to create an "hello" entity and feed it with other salutations like "Hi", "yo", "What's up?", ...
3 - Do I have to create a "choose action" intent or it's just one intent for one story ? This is exactly what I don't understand.
4 - If yes, A&B action are free-text like ("An hotel", "a restaurant"). How can I teach the bot to recognized them ?

I just need some enlightening about those points ! It's really hard for me to translate and understand correctly. Thank you for you help !


Solution

  • You may declare a "greeting" intent(Intents are just user-created entities). After that, you can validate(feed) it with many other words like "Hey buddy, Sup bud, Hellloooo, Hi bot, etc". Also, you can give values to that intent such as Negative or Positive values.

    For instance:

    " Hey dumb f* " >> "greeting" Intent + Negative value

    " Hi brother! " >> "greeting" Intent + Positive value

    So that you can decide between:

    "Language, please... Anyway. Hey {user_name}"

    or

    "Hey {user_name} ! :) Really nice to see you here ! "

    to respond to the user's simple hi text.

    Other than that:

    (R) Hello human, you can choose A action or B action

    (H) A action

    (R) Ok human, this is A action

    This type of interaction needs the usage of /converse API

    https://wit.ai/docs/recipes#converse-link

    In this above link go down to the "Handle yes/no answers" section.

    Also, you can use Quick Replies for letting the user choose between the A Action or B Action. Quick Replies are really useful for this type of interactions.

    https://developers.facebook.com/docs/messenger-platform/send-api-reference/quick-replies