构建商业开源BOT开发平台的经验教训

2020-07-03 23:28:16

作为第二届软件工程机器人国际研讨会(BotSE 2020)的一部分,我做了主题演讲《从构建商业机器人开发平台中学到的教训》,我在会上讨论了我们在构建我们的开源和低码聊天机器人开发平台Xatkit时学到的一些关键方面(另见GitHub中的Xatkit组织)。

在对Xatkit做了一个介绍性的迷你教程并解释了为什么世界需要另一个机器人解决方案之后,我开始讨论我们在试图将Xatkit从一个研究原型转移到一个商业级工具时所面临的困难。其中一些挑战对于任何工业化工作都是共同的(当您同时是负责使工具成熟的研究团队和技术提供商时),并且与任何其他为其长期可持续性而奋斗的核心开源项目共享这些挑战(顺便说一句,bots在这个主题上也可以发挥关键作用)。

您可以查看下面我演讲的幻灯片,但也请允许我重点介绍我们在为您构建Chatbot平台过程中学到的一些关键经验教训,包括组织、技术和业务挑战:

组织挑战您需要是一名博学者才能创建BOT平台。大量核心BOT技术:NLU、情感分析、XTEXT、SLACK/GH/…。接口、…。..,但更多的非BOT技术:InfluxDB,NGINX,eCharts,Reaction,Web Sockets,Docker…。在构建BOT平台时需要掌握的内容。

商业级质量包括在“枯燥”的任务上花费越来越多的时间,因为您需要润色工具的各个方面(界面、文档、…)。在构建原型时可以很容易地跳过。

任何OSS项目都面临共同的挑战,比如吸引贡献者,为甚至不说谢谢的用户提供支持,或者维护外部贡献(例如连接器)的成本,特别是在核心仍在发展的情况下。

实事求是。确保你做的每一件事都有良好的投资回报。示例:我们从有官方版本,到核心版本,再到没有版本(从源代码编译)。此外,我们不支持旧版本,也不保持向后兼容性。这些都是很好的东西,但是我们买不起。

技术挑战吞噬你自己的聊天机器人食物,以获得更好的语言。发展您的DSL是昂贵的,请尝试设计各种机器人以确保您的语言具有足够的表现力来满足您的需求(例如,当我们转向当前的状态机语言语义时,我们必须重新实现编辑器、示例、文档、…

不要重新发明轮子。我们差一点就能重塑Java!(并移至XBASE)。

保安。是否通过机器人保护您免受DDoS攻击?如果您付钱给外部提供商(例如DialogFlow)来处理您的输入文本,这不仅是一个安全问题,而且也是一个经济问题。如果您保留会话数据以供BOT进一步监控和分析,也会存在隐私问题。

自然语言处理NLP引擎不会说加泰罗尼亚语。一旦你脱离了主流语言(英语、西班牙语、法语、…。)。您可能需要组合几个NLP引擎才能很好地覆盖您感兴趣的语言。

NLP引擎不是双语的。在一些国家,机器人应该能够在同一对话中组合不同的语言。

每个人似乎都对和机器人做爱感兴趣。巨魔也是机器人的一个大问题。作为一个品牌,你不想因为你的机器人对巨魔的问题做出了错误的回答而冒着病毒传播的风险。

可重用的意向库。你不会想再次定义问候,谢谢或巨魔意图。

测试聊天机器人在很大程度上是一个未开发的领域·我们使用Botium记录对话以用作测试用例,但需要更多内容(例如,自动生成测试用例)。

训练句子越多并不总是越好。如果它们开始与其他意图的句子重叠,整体质量可能会下降。

商业大多数终端用户不想定义聊天机器人。不管你的界面有多漂亮都无关紧要。他们只是想给你他们的数据,然后从你那里得到一个机器人。

找到你的利基市场。市面上有一百多种机器人解决方案。明智地选择您的域名(例如,我们的WordPress插件)和您的业务模式。例如,考虑销售服务(如我们的咨询和托管聊天机器人托管服务),而不是工具。

了解什么对你未来的客户真正重要。你会大吃一惊的。例如,确保你的聊天机器人小工具的颜色与他们网站的外观和感觉完美匹配,这对他们来说可能比你最新的基于AI的酷功能更重要。

帮助您的客户了解他们的访问者想要使用机器人做什么。你以为你知道访问者想要用机器人做什么,但实际上并非如此。因此,有一个仪表盘来监控机器人不知道如何回答的对话是至关重要的。

自学机器人。你的客户会想要的,但风险很大。你不会想让机器人学到错误的东西。

在演讲的最后,我还强调了为什么我们认为您应该考虑使用Xatkit。

作为BOT教学平台。如果您教授任何涉及机器人、聊天机器人、NLP或DSL/软件建模的课程,并且正在寻找用于实验的用例或现成的BOT平台,我们将很乐意为您提供材料和帮助,甚至(远程)研讨会。

作为BOT研究平台。在许多与机器人相关的研究中,研究人员花费了大量的时间来组装他们需要的机器人部件,以创建他们的机器人和/或运行他们的实验。我们要求您不要重新发明轮子,而是采用Xatkit作为基础平台。您将受益于所有Xatkit功能和连接器,以更少的努力拥有功能强大的机器人,并能够将更多时间花在核心研究方面

当然,我的只是研讨会上许多有趣的演讲中的一个。在BotSE网站上,您有完整的节目和所有演示的视频和幻灯片的链接(例如,不要错过Gregor Martynus的伟大的Probot演讲)。再次感谢Emad Shihab、Stefan Wagner和Marco A.Gerosa邀请我!

我们将一如既往地感谢您的反馈!如果您对如何构建机器人或机器人开发平台有问题或意见,请在下面分享!