我一直都对我儿子的数学满怀信心,因为我小时候觉得小学数学简直太简单了,不学都会,想着自己的儿子怎么也都会遗传自己一点嘛,而且儿子从小就对数字感兴趣,围棋也下的好,所以我根本就没想到有一天我会为他的数学发愁!就算之前偶尔做错一两道题,我都以为他是粗心造成的。然而这一切美好的想象,都因为疫情期间的网上授课破灭了!
首先是我发现他计算速度实在是太慢了,只要是牵扯进位的加减法,计算最起码要5秒钟以上,甚至超过10秒,最初我以为是他不专心,结果发现是真算的慢。
第二是不熟练,不牢固,例如“18-9”、“19-8”等这种他经常错算,会把“18-9”算成11,“19-8”算成9,让我瞠目结舌。
第三是不会找规律,连续问他18-5、18-6、18-7、18-8、18-9等这种有规律的连续题时,他每次都是重新计算,照样每个题都要花好久时间。
不知道大家家里的孩子是不是一样的问题,我仔细回想自己小学时候数学的学习过程,除了把口诀表和各种公式定理熟背于心外好像再没什么技巧可言。要说技巧就只要一个:练!
好的,说练就练,自己出题考了他一会就差点气吐血,强忍着默念“亲生的”才勉强忍住,最后让老婆上阵,自己回客厅缓缓神。
突然看到了天猫精灵,想到为什么不让它来担负起给儿子练习数学加减法的重任呢?
说干就干,因为我之前还用它来给儿子做过朗读的应用,所以我有现成的开发账号,登录天猫精灵开发平台:
进入到控制台,添加新技能,填写技能的基本信息,创建了“一年级数学加减法练习”的自定义技能:
进入刚刚创建的“一年级数学加减法练习”,看到技能的服务配置下面有这些设置,去查看了一下开发文档,大概了解了是怎么一回事,因为我要实现的是天猫精灵出题,孩子来回答答案,天猫精灵判断对错并继续出题,所以只需要上面的“意图”、“回复逻辑”、“实体”需要设置:
梳理一下思路,“意图”说白了就是对话情景,也就是功能,我们这次就是一个功能:答题,所以新建一个答题的意图,并设为默认:
“回答逻辑”是功能的实现,是需要和我自己的服务器通信的,天猫精灵把识别到的答案传给我的服务器,服务器做出计算和判断,同时出新的题目,并返回天猫精灵指令,看了下文档,并不难,这个后面再说。
“实体”是用来限制回答的答案的,这个答案回作为参数,开始我用了公用的数字实体,但是发现不好用,最后自己自定义了0-100的汉字实体:
虽然一年级暂时只用20,做到100为后面准备嘛,反正也是我写代码自动生成的:
然后回到第一步新建的答题意图进行详细的设置,因为对话情景很简单,不需要设置对话表达例句,直接将实体作为参数绑定,因为第一次进入的时候没有回答,设置默认参数为-9999,并且将参数名命名一下,我这里随便写了各“G1”,后面自己要调用。
最后一步就是最关键的“回答逻辑”了,点开“默认逻辑WEBHOOK”前面的+号,可以看到意图对应的设置:
点开详情,再点右上角的编辑,配置与我服务器通信的接口地址,同时还要下载个文件放到服务器上进行服务器认证:
这里就需要专业的开发人员来搞了,因为很多专业术语你可能都听不懂:
https://www.aligenie.com/doc/357834/yg967o
因为我是.NET开发,官方提供的java SDK对我无用,只能自己写了。
首先是接收天猫精灵的json,这里遇到了困难,天猫精灵的数据是POST的,但是它没有放在参数里,而是放再了BODY里,要用Request.InputStream来获取,编码是UTF-8。
就这样获取到天猫精灵的json进行解析,并且拿到了G1参数的数值。
然后是出题的逻辑:
判断对错并继续出题:
完善并且调试一下,发布到服务器上,进行一下测试。
然后真机测试:
然后,就可以和天猫精灵对话啦:
视频加载中...
后面考虑增加计时和判断正确率等进阶功能,等有时间在搞吧。
搞完一看,晚上2点多了,睡觉!明天让儿子用。
第二天闲来无事的我果然增加了计时和记录对错的功能,同时还增加了排行榜。详见第二篇:
第二弹硬核老爸为一年级儿子打造数学加减法速算练习语音交互工具
很多粉丝也想要这个功能,所以我申请了技能发布,如果能发布成功的话大家就都可以在天猫精灵上使用我这个技能了,不过审核期要10天,而且也不晓得会不会成功,因为我之前从来没发布过。需要的请关注我,后面会后续跟进,如果发布成功我会再通知并制作详细的说明。
页面更新:2024-04-17
本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828
© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号