【发布时间】:2020-05-02 06:41:54
【问题描述】:
我现在有一个基于 Microsoft 框架的认知 BOT,带有 LUIS 和 QnA 认知服务,由于某种原因,我必须切换到亚马逊云服务,因此,我最终会从头开始进行新的开发。
所以我正在寻找一个框架/模式,通过它我可以在未来进行开发并能够在任何云平台(如 Google、IBM 等)之间切换?
【问题讨论】:
标签: botframework bots chatbot amazon-lex
我现在有一个基于 Microsoft 框架的认知 BOT,带有 LUIS 和 QnA 认知服务,由于某种原因,我必须切换到亚马逊云服务,因此,我最终会从头开始进行新的开发。
所以我正在寻找一个框架/模式,通过它我可以在未来进行开发并能够在任何云平台(如 Google、IBM 等)之间切换?
【问题讨论】:
标签: botframework bots chatbot amazon-lex
如果您自己实现会话方面(即不依赖平台),那么一个选择是开发一个通用聊天机器人,它接受传入的请求(文本、事件)并提供您可以在设计中抽象的响应。
interface Response
interface TextResponse extends Response
interface MultiOptionsResponse extends Response
然后,您可以提供不同的 Channel 适配器(MS Bot、Facebook、Telegram 等),将上述模型序列化为特定的 Channel json 格式。
例如,您可以在后端 NLP 功能中集成并仍然保持相同的抽象。
更务实的方式
我的经验是,在特定平台上构建聊天机器人的优势大于其他任何劣势。您通常可以依赖能够更快交付的功能(NLP、多渠道、指标)。
真正的交易是确保您可以解耦任何不能严格嵌入聊天机器人的逻辑/组件/功能,例如为业务逻辑创建库(或服务)(预订旅行、执行搜索)、持久性(保存会话,检索用户上次访问)甚至助手(翻译,实体识别)。
希望这是有道理的。
【讨论】: