约在一年前,王亮建议我多了解一下当时热门的 ChatGPT ,因为他觉得好玩,且较多人有这方面的需求。我不以为然,因为当时我觉得用谷歌搜索就够了,不必额外打开另一个页面或软件来做同一件事。
过年时,有个客户要求在阿里云的虚拟机上安装 FreeBSD 9.3 系统。FreeBSD 9.3 系统版本较老,是约在十年前发布的,阿里云官方提供的 FreeBSD 9.3 系统模板中,最低版本是 FreeBSD 11。我在年初一,尝试用常规的方法来安装 FreeBSD 9.3,但遇到了“拦路虎”—— FreeBSD 9.3 里自带的 VirtIO 驱动无法识别到阿里云新版本的虚拟机硬盘。经翻查资料,知道阿里云官方是提供了适合 FreeBSD 11 和 12 系统使用的 VirtIO 补丁,但没有旧版本 FreeBSD 9.3 的。
我要解决的问题,是如何修改阿里云的补丁,让它能在 FreeBSD 9.3 系统里使用。会读,会改程序代码,这是程序员必备的技能,但我仅是个“民工”,如同在电脑城里组装电脑的“师傅”,是装装 Windows 系统的菜鸟而已。哪怕是只有几行,几十个英文单词的代码,我都看不懂,不知道那是干什么用的。因为不知道怎么入手,很难用谷歌搜索关键字来查找到解决方法。我迫切地希望有个“老师”来给我讲解程序的代码。我想起 Poe 的“助手” ,抱着试试看的心态,一个问题接一个地向它提问,它解答了,且效果令我惊奇。我以前买过如《计算机C语音入门》之类的书,但根本没看懂,没学到一点儿的C语言编程知识,更没有实践紡程过,但现在“助手”它能即时讲解,内容简要并有指引性,我觉得它很实用,且3.5版本的 GPT 现在是免费的。
在这两个月的时间里,我先后两次通过工单请求阿里云客服让工程师花点时间为 FreeBSD 9.3 写个补丁,但他们拒绝了,说那是个很老的系统,新的虚拟化环境不支持,要用就得用老的虚拟机。阿里云官方不愿意写补丁,我又不好意思去 FreeBSD 官方社区里问,因为那儿写了,“结束支持的系统版本最好不要提问”。我只好每天,或隔几天,或在睡觉前,又或者在五、六点早醒时,断续着,在“助手”的帮助下,不断地尝试办法,推进测试的进度。例如,先从 FreeBSD 9.3 内核中的重编译过程中,剥离掉 VirtIO 模块,这样可以减少测试时编译所花的时间,仅重点测试 VirtIO 模块的编译和加载结果。然后又在不同的 FreeBSD 版本和不同的主机商虚拟环境中,测试 VirtIO 官方补丁的结果。最后,不断地在 VirtIO 补丁的程序代码中添加上 printf 的打印输出信息,看看驱动程序在加载过程中的逻辑和结果。得益于“助手”和谷歌搜索,滚泥水般反复测试,在约两个月后,我在阿里云实机测试,终于能成功运行 FreeBSD 9.3 系统。
在这件事情里,我没有写出程序代码,但在 GPT 助手的讲解和引导下,经过很多次的实机测试,再以测试结果中的关键词不断地在谷歌里搜索,最后查找到网友的解决方案。我对 GPT 助手的“博学多才”很惊讶,更难得的是,它“诲人不倦”啊,能一步步地为我讲解程序代码里的逻辑和函数(作用)。我是个“小白”,我对计算机编程是零基础的,但“助手”它能在我的普通提问中,让我了解了“中断”、“向量”等名词。如果这是在现实中,估计老师会对我的提问感到厌烦甚至是动怒,因为有时我是傻瓜般来回地提问。
GPT “助手”能给普通人在学习和了解知识上带来明显的效果。我希望以后能使用到它的场合越来越多,希望它能给社会带来普遍性的好处。