若朴 编译整理 量子位 出品 | 公家号 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/
【完】
欢送各人存眷我们的专栏:量子位 - 知乎专栏
交换沟通
量子位读者5群开放申请,对人工智能感兴趣的伴侣,欢送加量子位小助手的微信qbitbot2,申请入群,一路切磋AI。
想要更深一步的交换?
量子位还有大咖云集的主动驾驶手艺群和NLP群,仅采取响应范畴的在校学生或一线工程师。申请体例:加qbitbot2为老友,备注“主动驾驶”或“NLP”申请参加~
(审核较严,敬请谅解)