2017-02-21 55 views
2

我正在开发一个使用api.ai的聊天机器人。 Api ai没有内置的版本控制解决方案,是否有人知道用于版本化聊天机器人和管理多个环境(开发,测试,舞台,产品)的解决方案?带版本控制的Api.ai(git)

感谢

编辑: 我正在寻找实际的机器人的版本控制(意图,实体等)。

+1

没有任何方法可以通过编程来完成,但您可以手动导出代理并保存在git存储库或其他地方。 –

+0

谢谢,这种方法的问题是从不同的环境中合并所有训练数据变得非常混乱,你有什么解决方案吗? –

+0

不幸的是,他们没有任何API可以给我们代理作为zip文件,我们可以将它保存在git中,所以我想只有手动保存。 –

回答

1

由于api.ai没有用于git进行版本控制的IDE,因此您无法直接版本化chatbot,因此需要使用api.ai SDK的IDE来进行版本控制。

如果您使用C#作为api.ai SDK,您可以将viusal studio与git结合起来进行版本控制。如果你使用ios SDK,你可以将xcode和git结合起来进行版本控制。

对于意图,实体,日志等,因为它们存储在api.ai本身,没有IDE支持版本控制。所以他们不能通过git来控制版本。

+0

让我换句话说,我的api后端是在nodejs上,它是完全版本化的。 我想对实际的bot进行版本化,这意味着api ai的意图和实体。 –

+0

好的,对于api.ai的意图,实体,日志等不能由git控制版本。 –

0

这是前一段时间提出的,所以你们现在可能都已经组织过了,但最近也在API.ai论坛上询问了这个问题,并且仍然没有GIT的方式。

然而,有YouTube视频(请参阅api论坛的帖子,没有它手)显示正在建立的大型项目,其中开发人员设置了一系列代理并通过使用导出功能将其链接到将意图和实体沿着流程移动到生产版本中。他们坚持代理商很快就会进行培训,以免在此次转移中丢失任何东西。

所以我有一些基于bot个性创建User Says和Text Responses的对话者。每个人都有自己的经纪人可以玩,并有意向完成。

然后将这些数据导入到Dev Bot中,其中事务与后端进行了测试,添加了其他媒体响应和集成响应。 Dev Bot将它自己作为版本导出,并且也将其导入到每个人都可以玩的Test Bot中。测试机器人是相同的,出口到版本和

然后当大家都很高兴测试机器人得到出口到Prod机器人。

它并不理想。它不像你想象的那样是由谷歌所拥有的产品来强迫我们工作,它是一个手动过程,但它确实有一些工作。