AI篇——自制翻译积木
AI功能使用教程:https://www.shenxinduo.com/turbowarp/index.html
【疑惑篇】
如何自制一个类似Scratch中的翻译积木,将用户给定的内容,翻译为给定的语言?
【线索篇】
案例分析
它们发生的场景是什么?
无
每个场景中有哪些角色?
无
每个场景中的每个角色在做什么?
- 利用AI模型对文字进行翻译。
积木提示
【解决篇】
在scratch中有一个翻译积木,作用是帮助你将一种文字翻译为另一种文字。它做翻译的过程,实际上是调用了谷歌的翻译接口。由于在国内无法访问这个接口,所以在国内翻译积木也无法正常使用。
这个案例,我们就让AI模型来充当翻译官,自制一个翻译积木。
在开始制作翻译积木之前,我们可以利用问[AI接口名称] (你好)积木进行一下测试。
例如,让AI模型将“你好”翻译为英文。
可以看见它的回复中除了有“你好”的英文“hello”,还有其他多余的内容。这时候你需要做的是,尝试着去修改参数中的内容,让AI模型只返回你想要的结果。这个不断修改参数的过程,在AI应用中有一个专门的名称,叫做“提示词工程”。其中的提示词,就是指我们通过参数发给AI的内容。
你可以尝试着这样来修改提示词。
请将内容后面的文字翻译为英文,不要回复与翻译无关的文字。
内容:你好。
翻译:
2
3
4
5
如果你在多次修改参数内容后还是没能获得你想要的结果,你还可以尝试着使用不同的AI模型。
接下来,我们就可以来自制翻译积木了。可以看见,Scratch自带的翻译积木中有两个参数,第一个参数是需要被翻译的内容。第二个参数是需要翻译成的语言类型。
同样的,我们也可以新建一个自制积木,有两个参数:内容和语言类型。因为使用该积木时我们不需要刷新屏幕,所以还可以勾选上运行时不刷新屏幕。
我们自制的翻译积木是将用户输入的内容翻译为另外一个语言,并将结果返回给用户。为了将结果返回给用户,你可以再新建一个变量,名字叫“翻译结果”,用来存储问[AI接口名称] (你好)积木翻译后的结果。
接下来,你需要修改之前测试好的提示词。将之前固定写死的语言类型“英语”,改为自制积木的“语言类型”参数。将之前固定写死的内容“你好”,改为自制积木的“内容”参数。
如何替换呢?很简单,是不是利用连接(苹果 )和(香蕉)积木将不用替换的文字和参数变量拼接起来就可以了。
为了方便排查可能出现的问题,你可以将拼接后的内容保存在变量中方便查看。
在TurboWarp中,除了手动建立一个变量将自制积木的结果返回给用户使用之外,还有另一种更方便的形式,使用自定义返回值功能。
没有返回值的普通自制积木是长方形积木,可以上下拼接。一旦你在自制积木中使用了返回值积木,这个自制积木就会变成椭圆形积木,它返回的内容就是返回值积木的参数内容。
现在你就可以修改上面的代码,不再需要翻译结果变量,而是使用返回值积木。这样一来,你自制的翻译积木就能直接放入说话积木中使用。
接下来,你可以考虑如何像Scratch中的翻译积木一样,让用户只能填写你规定好的几种语言。或者还可以参照前面两个案例的内容,将毛线AI机器人改为翻译机器人。
想看更多学习案例,欢迎点击查看《Scratch 3学习手册》
想要获取所有案例源码和素材,以及获得我对你在学习中所遇问题的一对一解答,欢迎加入石头解忧杂货店。