我正在寻找创建一个机器人并且遇到了 Microsoft Bot Framework(带有 LUIS 或可以使用 API.AI 提供的 C# SDK)和 Howdy.ai Botkit(带有对 LUIS 和 API.AI 的中间件支持)。
有人可以帮我比较这两者吗?
我正在我的机器人中寻找以下内容 -
支持多种 channel ,包括电子邮件。 让机器人在被动(回复一些用户消息)和主动(每天向用户发送一次关于对他们重要的事情或跟进的消息)
礼仪。 保存并稍后检索用户提供的数据(管理状态)。 丰富的消息支持。 延迟响应。 管理对话历史记录。 是否有一些东西在一个中可用但在另一个中不可用?
我尝试在 Botkit 和 MS Bot 框架中开发机器人。最终我选择了 MS bot 框架。我的一些原因可以帮助进行比较:
MSBotFramework 支持 Skype、Slack、电报、Facebook 和许多其他 channel 。 BotKit,我最后一次检查,仅支持 Facebook 和 slack。我的目标是Skype和电报,这是一个交易破坏者。 Botkit 目前仅支持 node.js。另一方面,MSBotFramework 具有 .Net、Node.js 甚至 REST API(这基本上意味着您可以从任何您想要的语言中使用它)。此外,还有可用的 Python 包装器,它们在内部使用 REST API。 作为 Microsoft 产品,MSBotFramework 与 Skype、azure、azure 分析、LUIS 和其他 Microsoft 服务的集成非常容易。这可能是开发、部署或集成自然语言支持所必需的。 Botkit 支持 LUIS 集成,这相当简单(可能和 MSBotFramework 一样简单)。分析(通过 botkit 工作室)(曾经)非常基础,MSBotFramework 在这里赢得了胜利。 我发现 MSBotFramework 的文档比 Botkit 更全面,但它们都有相同数量的资源和文档。 您询问的其他一些要点:
主动消息取决于您正在开发的 channel 。例如。 Facebook 允许从用户的最后一条消息起 24 小时内回复您。而Skype和电报等其他平台允许您随时发送消息。 您需要处理状态管理。 Bot Framework 提供了一些机制,但它不够健壮,无法用于生产。 msdoc 富消息是平台相关的,但机器人框架在满足其中的大多数方面做得很好。因此,它的工作方式是,您以自己的丰富消息格式将消息发送回机器人框架。它转换为特定于平台的格式。如果您只考虑一两个平台,则可以相应地进行开发。 延迟响应 - 你必须自己实现它,尽管机器人框架有很多这样做的例子。 github 如果您通常使用 C# 和 .Net 平台,则可以轻松管理对话。文档和示例数量非常令人印象深刻。 github repo for samples 总而言之,我会推荐 MS bot 框架。