Filippo Leoncini
Filippo Leoncini

Reputation: 353

Chat bot platform

my boss give me the task to creata a chatbot, not made with Telegram or Slack, in which use Watson Conversation service.

More, the chat bot has to be inserted inside a web page, then it has to be embeddable in html as javascript.

Are there anyone who knows other good platforms to performe these tasks?

Upvotes: 0

Views: 1141

Answers (4)

Manthan Dave
Manthan Dave

Reputation: 153

I've started to do some work in this space using this open source project called Talkify: https://github.com/manthanhd/talkify

It is a bot framework intended to help orchestrate flow of information between bot providers like Microsoft (Skype), Facebook (Messenger) etc and your backend services.

I'd really like people's input to see if how it can be improved.

Upvotes: -1

loretoparisi
loretoparisi

Reputation: 16309

I strongly suggest you to build more an assistant than a simple bot, using a language understanding service tool like Microsoft LUIS, that is part of the Microsoft Cognitive Services.

You can then combine this natural language processing tool with bot SDK like MicroSoft Botframework mentioned above, so that you could easily run queries in natural language, parse the response in a dialog in entities and intents, and provide a response in natural language.

By an example, a parsed dialog response will have something like this json

{
        "intent": "MusicIntent",
        "score": 0.0006564476,
        "actions": [
            {
                "triggered": false,
                "name": "MusicIntent",
                "parameters": [
                    {
                        "name": "ArtistName",
                        "required": false,
                        "value": [
                            {
                                "entity": "queen",
                                "type": "ArtistName",
                                "score": 0.9402311
                            }
                        ]
                    }
                ]
            }
        ]
      }

where you can see that this MusicIntent has a entity queen of type ArtistName that has been recognized by the language understanding system.

that is, using the BotFramework like doing

var artistName=BotBuilder.EntityRecognizer.findEntity(args.entities, Entity.Type.ArtistName);

A good modern bot assistant framework should support at least a multi-turn dialog mode that is a dialog where there is an interaction between the two party like

>User:Which artist plays Stand By Me?
(intents=SongIntent, songEntity=`Stand By Me`)
>Assistant:The song `Stand by Me` was played by several artists. Do you mean the first recording?
>User:Yes, that one!
(intents=YesIntent)
>Assistant: The first recording was by `Ben E. King` in 1962. Do you want to play it?
>(User)Which is the first album composed by Ben E.King?
(intents=MusicIntent, entity:ArtistName) 
>(Assistant) The first album by Ben E.King was "Double Decker" in 1960.
>(User) Thank you!
(intents=Thankyou)
>(Assistant)
You are welcome!

Some bot frameworks use then a WaterFall model to handle this kind of language models interactions:

self.dialog.on(Intent.Type.MusicIntent,
    [
      // Waterfall step 1
      function (session, args, next)
      {
            // prompts something to the user...
            BotBuilder.Prompts.text(session, msg);
      },
      // waterfall step 2
      function (session, args, next)
      {
             // get the response
             var response=args.response;
             // do something...
             next();//trigger next interaction
      },
      // waterfall step 3 (last)
      function (session, args)
      {
      }
   ]);

Other features to consider are:

  • support for multi-languages and automatic translations;
  • 3rd party services integration (Slack, Messenger, Telegram, Skype, etc);
  • rich media (images, audio, video playback, etc);
  • security (cryptography);
  • cross-platforms sdk;

Upvotes: 0

SedJ601
SedJ601

Reputation: 13858

This little guy is fun. You should give him a try.

http://www.program-o.com/

Upvotes: 0

Cameron McGrane
Cameron McGrane

Reputation: 4943

After replying in comments and I had another look and realised Microsoft Bot Framework could work with minimal dev investment (in the beginning).

https://docs.botframework.com/en-us/support/embed-chat-control2/

Upvotes: 0

Related Questions