我用Google AI做了个好用的App
去年冬天,我们学区一所学校的中文老师请我们帮忙制作某教材的活页练习(worksheet),需要用空心字呈现出生字的笔画顺序,大致是这个样子的:

我觉得人工制作这种Worksheet太费功夫:先要做出空心字,然后在空心字里用虚线箭头标出笔顺,在笔画起始处标上数字,放到手工绘制的米字格中。于是,我请教了一位编程高手,问他能否通过编程实现。不几天,在AI辅助下,目的完美达成,他帮我设计了一款在线工具,只需输入汉字,经过几个设置,就能得到可以下载的pdf版Worksheet。

不仅如此,在空心字右边,还加上了笔顺渐变图。这个小工具帮了大忙,节省了我们至少三分之二的制作时间,得到了老师们一致好评。

前几天我看了个视频,展示的是谷歌推出的一个叫做Google AI Studio的服务。用它提供的工具,使用自然语言就可生成基于网络的应用,可以分享,也可以部署到云端,生成独立网站(一定程度上可以做到全程免费)。对我这种年轻时曾有过无数次想学编程的冲动,却一直没有诉诸行动,又心有不甘的中老年人来说,太有诱惑力了。看介绍,只要会说人话,就可以整出个网络app来,岂不诱人?
使用Google AI Studio,前提是你有个谷歌账号,在国内需要想办法,用ai.dev这个简短的网址就可以登录。打开的这个界面默认的就是创建应用程序的Build页面,红圈处可以选择模型,我是小白,用的是默认的Gemini 3 Flash Preview,如果需要调整模型,点击红圈这里就好,模型之间的区别请自行科普。

上面Describe your idea的地方就是你用自然语言描述你要干嘛的地方。真要填写思路的时候,发现说人话并不容易。经过几番思索,我填入了如下内容:
制作一个汉字呈现笔划顺序的工具,要有一个输入框让用户输入汉字,然后将这个汉字的笔划按照正确写法一一呈现出来,在每个笔划起始处标上代表笔划顺序的数字,空心字里要有代表笔划走向的虚线箭头。最后将结果在米字格背景中输出。
经过了不到一分钟的思考和一些花哨的动画提示,它给我生成了这样一个工具。

很显然,AI比我考虑得要更缜密一些,除了笔画演练之外,还加了右边这些需要调用AI的东西,尽管有趣且有用,但有插入小广告之嫌,后来被我统统去掉了。(此图是后来为了写这个文章重新生成的,并非第一次生成的样子。目前AI的一大缺陷是使用同样的提示词,每次生成的结果都不同。第一次生成一个丑八怪,也未可知。)
我需要调整一下,于是在左下方对话框中继续提出要求:
增加如下内容:空心字边缘要细一点,将虚线箭头凸显出来。生成的空心字可以以图片形式下载。
然后:
生成一张Letter尺寸的pdf格式的练字worksheet。之前生成的图片作为参考放在左上角,占两行空间。图右边的两行用米字格呈现这个字的笔顺图,每一格比上一格多一划,从第一划一直到最后一划,在右边两行呈现出来。下面的第三行以米字格形式给出这个字的完整形式,供用户摹写用。下面的几行呈现空白米字格,供用户练习用。
之后的提示词我就不一一赘述了,用自然语言描述即可。比方说:
生成的pdf格式的Worksheet上方的英文能否去掉?米字格缩小到正常写汉字的大小。米字格内部的参考线加重一下,不然打出来看不清。另外,在worksheet上方右侧,添加让用户填写姓名和班级的文字和划线。
到这一步,生成的Worksheet是这样的:

上面的姓名班级使用的应该是自动生成的图像,实在太丑,再修改一下:
上方的姓名: ________ 班级: ________改成英文Name和Class,横线改成原来2/3长即可。下方米字格中的参考线还可以再深一些,每行格子数量改成10个,大小不变。
然后,我跟AI进行了一次貌似很专业的对话:
我:上方的Name和Class字体太扁了。找一种Sans Serif的字体替代一下。
AI:(Thought for 76 seconds)
没问题,字体“太扁”主要是因为图片生成的宽高比和 PDF 中放置的区域比例不一致,导致被强行拉伸了。
我做了两处调整:
修复字体变形
:调整了生成标题图片的画布宽度,使其与 PDF 顶部区域的宽高比(约 12.4:1)保持一致,这样文字就不会被横向拉伸变扁了。
更换字体
:将字体修改为标准的Sans Serif (Arial/Helvetica),看起来更现代、整洁。
产生的效果是这样的:

我看了一下打印输出的Worksheet,感觉有点大,就要求缩小格子尺寸,有必要将左右边距加大,它照做了。之后,又发现没有笔划指向的箭头,又提醒它添加。最后,我又让它删除了右边有广告嫌疑,需要调用AI的部分。要将代码部署到网络上,就得调用谷歌的API Key,在不熟悉代码的情况下,容易产生安全漏洞,挂了信用卡,买了商业版谷歌AI模型的用户更需提防。
这一步结束之后,就可以在这个界面中使用了。

不过,想再折腾一下的朋友们可以试一下本地部署,或者更进一步,在独立网站上运行。
前者我参考了这个网站(网址请自行拷贝粘贴):人工智能:一分钟将Gemini生成应用部署到本地计算机的保姆级教程https://www.cnblogs.com/ChenAI-TGF/p/19301914
后者这个网站:把Gemini3生成的应用,免费部署成自己的网站 https://zhuanlan.zhihu.com/p/1977711962109538485
这是我照抄作业发布在网络的工具:汉字笔顺练习 https://chinesestroketool.netlify.app/
事后我把代码发给专家看,他给我解释了一番。我能看懂的是,这种工具的缺点是生成的垃圾代码特别多,比如说一个几千行代码就可以实现的,它可能也写到几万行,甚至是十几万行。但是,他说“能完成任务”。
用王小波的话说就是:能跑(run)。
他在小说《革命时代的爱情》中有一段搞笑描述:“我”去美国留学,学软件编程,才华无处施展之际,拿到一个“编软件的活儿”,激动万分:
虽然那是个大型软件,好几个人合编,但是我想这样更好,可以显出我比别人强。越是这样想,就越是心绪纷乱,一行源码也写不出来。所以我就对我老婆说,你出门时,把我锁在屋子里。我就是这样一个变态分子,但是我老婆一点没觉察出来。
锁在房子里时,精力能够集中。所以我编的第一批软件极有诗意,李后主有词云:
红豆啄残鹦鹉粒。我的软件就曲折和弹性而言,达到了此句的境界。后主又有残句云:
细雨流湿光。我的软件就有这么简约,别人编十行,我只用一行。等到交活时,教授看了吃一惊:这么短!能跑(run)吗?我说你试试嘛。试完了他和我握手道:谢谢!但是到了开支时,我的钱比别人都少。原来是按行算钱,真把我气死了。等到交第二批软件时,我就吃棉花屙线屎。古诗云:
一个和尚独自归,关门闭户掩柴扉。我的第二批软件到了这种境界。简言之,别人编一行,我就编了二十行。等到交活时,教授根本不问能不能run,只说:你这是捣蛋!就打回来让我改短。资本主义就是这么虚伪。等到拿了学位,我毫不犹豫就回国来。这是因为我从骨子里来说是个浪漫诗人,作画时是个颜色诗人,写程序时是个软件诗人。干瘪无味的资本主义社会哪里容得下浪漫诗人。
没准谷歌后台真是按行算钱的。 :)
夜雨聆风
