首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >聊天机器人平台

聊天机器人平台
EN

Stack Overflow用户
提问于 2016-09-28 15:58:42
回答 4查看 955关注 0票数 2

我的老板给我的任务是创建一个聊天机器人,而不是用Telegram或Slack制作的,其中使用Watson会话服务。

此外,聊天机器人必须被插入到网页中,然后它必须作为javascript嵌入到html中。

有没有人知道其他好的平台来完成这些任务?

谢谢你的帮助。

EN

回答 4

Stack Overflow用户

发布于 2016-10-11 09:21:46

在回复评论后,我又看了一眼,意识到微软机器人框架可以用最小的开发投资来工作(在一开始)。

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

票数 1
EN

Stack Overflow用户

发布于 2016-10-17 21:51:30

这个小家伙很有趣。你应该试一试他。

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

票数 1
EN

Stack Overflow用户

发布于 2016-10-18 06:16:39

我强烈建议您使用语言理解服务工具,如微软LUIS,构建更多的助手,而不是简单的机器人,这是微软认知服务的一部分。

然后,您可以将此自然语言处理工具与bot开发工具包(如上面提到的MicroSoft Botframework )相结合,这样您就可以轻松地以自然语言运行查询,以entitiesintents解析对话框中的响应,并以自然语言提供响应。

例如,解析后的对话框响应将具有类似以下json的内容

代码语言:javascript
复制
{
        "intent": "MusicIntent",
        "score": 0.0006564476,
        "actions": [
            {
                "triggered": false,
                "name": "MusicIntent",
                "parameters": [
                    {
                        "name": "ArtistName",
                        "required": false,
                        "value": [
                            {
                                "entity": "queen",
                                "type": "ArtistName",
                                "score": 0.9402311
                            }
                        ]
                    }
                ]
            }
        ]
      }

其中,您可以看到此MusicIntent有一个ArtistName类型的实体queen,该实体已被语言理解系统识别。

也就是说,像这样使用BotFramework

代码语言:javascript
复制
var artistName=BotBuilder.EntityRecognizer.findEntity(args.entities, Entity.Type.ArtistName);

一个好的现代机器人助手框架至少应该支持一个对话框( multi-turn dialog mode ),在这个对话框中,双方可以进行交互,比如

代码语言:javascript
复制
>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!

一些机器人框架使用WaterFall model来处理这种语言模型交互:

代码语言:javascript
复制
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)
      {
      }
   ]);

需要考虑的其他特性包括:

支持多语言和自动translations;

  • 3rd party服务集成(松弛、信使、电报、Skype等);支持

  • 富媒体(图像、音频、视频播放、translations;

  • 3rd软件开发工具包;

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39741391

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档