想搞一套AI问答游戏系统?简单,Google又开源了

2017 年 7 月 22 日 MOOC

| 全文共2023字,建议阅读时长3分钟 |


转载公众号:量子位

微信号:QbitAI

 编译整理:若朴


刚刚,Google开源了一套问答游戏App系统。


通过一套模板工具可以,你只要给出问题和答案,就能搞出一套功能齐备的AI问答游戏。这套问答系统基于Google Assistant虚拟助手,所以(理论上)适用于Google Home智能音箱、Android手机和iPhone手机等平台。


这次开源之后,可以进一步的看到这套系统的设计和逻辑。




资源包


这个开源的问答游戏系统,包括了开发者所需的全部功能,而且可以自定义相关特性:

  • API.AI,借助这个智能体(agent),开发者可以导入自己的账户,来处理游戏的自然语言理解

  • 完整的游戏过程实现逻辑

  • 三个游戏角色:老师、女王、机器人。Google的VUI团队设计了750种台词,以便让三个角色更有趣也更有个性。

  • 这些台词分为44个类别,包括欢迎、答对响应、帮助提示等。

  • 每个角色的音轨:开场音乐、回答正确或不正确的音效、计算音效、最终回合音效等。音效师总共设计了43种不同的音效,以OGG和WAV格式存储。

基本原理


问答游戏的实现逻辑,使用了Cloud Functions for Firebase(https://firebase.google.com/docs/functions/),这是部署游戏逻辑最简单的方法。(Google官方说法)

Cloud Functions for Firebase提供了免费套餐,开发者可以快速和简单的创建自己的问答游戏。



当用户开始使用问答系统时,Google Assistant会加载程序,然后使用API.AI来处理用户的intents,接着进一步激活部署在Cloud Functions for Firebase上的实现逻辑。



上面的“game.choice.answer”intent,用于处理相关的答案。intent使用一个“answer”实体来处理所有可能的答案。


游戏的问题和答案,存储在Firebase Realtime Database中。这个数据库可以简单的使用JSON数据,特别是实现逻辑在Node.js中实现, Actions on Google客户端库也支持Node.js。



实现逻辑为所有API.AI智能体定义的intents提供处理。


这个应用程序使用 Firebase Hosting托管音频资源。


创建个性化游戏


使用Node.js脚本可以把问题和答案加载到数据库中。只需要为你的游戏编辑questions.json文件,然后运行脚本把数据上传到Firebase数据库中。开发者也可以只是上传默认的问题,然后直接使用Firebase的网页GUI直接编辑数据库。



然后,选择一个角色。我们以女王为例吧。


在实现代码中配置选定的角色后,相应的角色台词也就确定下来。女王会说:“看啊!一位胜利者”或者“一次勇敢的尝试,但没有什么用”。


在Actions Console(https://console.actions.google.com/)中创建一个项目,然后将其与API.AI关联。现在可以导入TriviaGame.zip文件,这样就能获得游戏进程的所有intents。

开发者可以使用Firebase CLI工具部署实现逻辑,然后可以得到功能托管的URL地址。


把API.AI智能体实现URL指向Cloud Function for Firebase。使用API.AI中集成的Actions on Google在Web模拟器中进行测试。


当开发者觉得OK了之后,就能通过Actions Console提交审核。


开始游戏吧


总而言之,现在为Google Assistant创建一个问答游戏已经变得超级简单。官方还提供了一些已经发布的实例游戏,例如:《一个和美国总统对谈的测试》、《猜猜创始人》、《Chatting with Seven of Nine Trivia》等。



即便你不想开发一个问答游戏,也可以从这套开源系统中借鉴设计和资源。


相关地址

GitHub上的开源地址:https://github.com/actions-on-google/apiai-trivia-game-nodejs

问答游戏模板在此:https://triviatemplate.com/



有缘的人终会相聚,慕客君想了想,要是不分享出来,怕我们会擦肩而过~

预约、体验——新维空间站

《【会员招募】“新维空间站”1年100场活动等你来加入》

有缘的人总会相聚——MOOC公号招募长期合作者

《【调查问卷】“屏幕时代,视觉面积与学习效率的关系“——你看对了吗?》


本文编辑:慕编组成员(小端午)


产权及免责声明 本文系“MOOC”公号转载、编辑的文章,编辑后增加的插图均来自于互联网,对文中观点保持中立,对所包含内容的准确性、可靠性或者完整性不提供任何明示或暗示的保证,不对文章观点负责,仅作分享之用,文章版权及插图属于原作者。如果分享内容侵犯您的版权或者非授权发布,请及时与我们联系,我们会及时内审核处理。


了解在线教育,
把握MOOC国际发展前沿,请关注:
微信公号:openonline
公号昵称:MOOC

 

登录查看更多
2

相关内容

Api.ai是Speaktoit公司的第二款产品,是允许开发者们自行为智能互联设备开发语音交互能力的一个平台。
一份简明有趣的Python学习教程,42页pdf
专知会员服务
76+阅读 · 2020年6月22日
【Google】利用AUTOML实现加速感知神经网络设计
专知会员服务
28+阅读 · 2020年3月5日
【干货】谷歌Joshua Gordon 《TensorFlow 2.0讲解》,63页PPT
专知会员服务
24+阅读 · 2019年11月2日
Keras作者François Chollet推荐的开源图像搜索引擎项目Sis
专知会员服务
29+阅读 · 2019年10月17日
Pupy – 全平台远程控制工具
黑白之道
43+阅读 · 2019年4月26日
Facebook PyText 在 Github 上开源了
AINLP
7+阅读 · 2018年12月14日
10月机器学习开源项目Top10
机器学习算法与Python学习
3+阅读 · 2018年10月30日
教程 | 如何使用TensorFlow实现音频分类任务
机器之心
5+阅读 · 2017年12月16日
开源神经网络框架Caffe2全介绍
人工智能学家
3+阅读 · 2017年12月11日
开源巨献:阿里巴巴最热门29款开源项目
算法与数据结构
5+阅读 · 2017年7月14日
Arxiv
3+阅读 · 2019年10月31日
Arxiv
8+阅读 · 2019年3月21日
Arxiv
6+阅读 · 2018年4月21日
VIP会员
相关资讯
Pupy – 全平台远程控制工具
黑白之道
43+阅读 · 2019年4月26日
Facebook PyText 在 Github 上开源了
AINLP
7+阅读 · 2018年12月14日
10月机器学习开源项目Top10
机器学习算法与Python学习
3+阅读 · 2018年10月30日
教程 | 如何使用TensorFlow实现音频分类任务
机器之心
5+阅读 · 2017年12月16日
开源神经网络框架Caffe2全介绍
人工智能学家
3+阅读 · 2017年12月11日
开源巨献:阿里巴巴最热门29款开源项目
算法与数据结构
5+阅读 · 2017年7月14日
Top
微信扫码咨询专知VIP会员