2025 年我是怎么使用 AI 的¶
前言¶
经常看我博客的读者应该能看出来,我研究的主要是计算机系统结构方向,特别是处理器的微架构,几乎没有涉及到 AI 的内容,我也确实不喜欢 AI 研究,仅关注但不参与。但今年,因为各种 AI 技术尤其是 LLM 的发展,我确实成为了很多 AI 技术的用户,可以说 2025 年是我正经大规模用 AI 的元年,所以在年末做一个简单的总结。
我不想在这里给大模型厂商打广告,所以相关的名字我都会按照某 PDF 的方法进行打码,有需要的朋友可以自行查看实际的内容。
Vibe Coding¶
首先的一个冲击来自于 Vibe Coding。我写代码也有大概十五年了,一直都是坚持自己写代码,但今年从一些朋友那里了解到一些 Vibe Coding 的效果以后,也自己尝试了一下,确实能够感受到 Vibe Coding 对写代码的巨大冲击,我的心态也出现了一定的变化。Vibe Coding 并不复杂,其实就是用一些 Coding 客户端,配上 LLM 加一些 Tool Call,使得 LLM 可以自己编写、测试和运行代码。目前随着 LLM 能力的变强,Vibe Coding 逐渐成为了一个可以负担得起且效果不错的东西。结合实际的使用,以及受朋友们的一些启发,我目前已经用它进行了一些 Vibe Coding 尝试,例如:
- 写一些简单的 MCP 服务器,例如把 devdocs.io 的文档通过 MCP 暴露给 LLM,让它可以精确读取标准库的文档,避免幻觉;
- 写一个 API 路由器,可以在多个 API 提供商之间自动 Fallback,类似于本地版的 OpenRouter,但在这里主要是为了解决 Rate Limit 问题;
- 对已有代码的一些改进,比如实现 TODO,修复代码 BUG 等等;
- 给定提示词,让 LLM 用 Typst 或者 SVG 绘图,相比直接 AI 绘图,我更希望是可编辑的矢量图;
- 给定一张图,让 LLM 用 Typst 或者 SVG 复刻出来,然后再用 Vision LLM 识别绘制出来的图,观察内容是否和输入足够相似;
- 对于闭源的软件,让 LLM 自动逆向工程,得到一份关于内部实现的代码,甚至让它实现一份开源的等价实现。
目前给我的感觉是,LLM 借助各种 MCP Tooling,在很多事情上可以做的很好,但也有一些前提条件。第一是 LLM 需要有针对这个事情的知识,但如果它的知识停留在几年前,又做一些比较新的东西(例如 Typst 语法很多 LLM 就不会写),它就比较难写对;第二是,一定要给 LLM 反馈的路径,能够让它自产自纠自查,不然幻觉是很难避免的,一次写对的情况很少,有反馈和无反馈完全是两个表现;第三是,目前 LLM 做复杂事情需要大量的 Token,这就意味着 API 调用时间和开销都是不可忽略的因素,即使我用了比较便宜的 DeepSeek 模型,让 LLM 在后台跑几个小时,价格一样受不了。
举一个数据,我这个月在 DeepSeek 上已经花费了 200 多元,而这个月之前的所有时间加起来,也就不过 10 元。如果相同的 Token 数用在 Claude 上,这个价格不可想象。所以我也终于能理解,那些几百美刀一个月的订阅服务为啥有市场了。也是因为这个原因,我才会降本增效,通过订阅 GLM Coding Plan 去解决一些低频的 Vibe Coding 需求,但它的用量限制和并发限制都比较容易触发,所以才去 Vibe Coding 了一个 API 路由器,对于 GLM Coding Plan 用量以外的需求,再 Fallback 到 DeepSeek 上。
在使用 Vibe Coding 的过程中,我也有一些感受,就感觉我并不是在 Vibe Coding,而是在指挥一个水平飘忽不定的人在写代码。它有时候能精准地找到问题并写出正确的代码,有时候又注意力涣散,必须要我及时地打断它,让它按照我指定的方法去做。对于一些简单的代码,可能可以让它在后台跑,我去做一些别的事情,然后隔一段时间再看看它做得怎么样,有问题了,再提供及时的纠正。然后我就在想,这其实就是当领导吧,给钱让手下的人干活,不一定干的对,所以还得时不时地去纠正一下。某种意义来说,LLM 让每个人都有了成为领导,领导一群 LLM 干活的能力。我目前的工作流就是在 tmux 里挂几个 Qwen Code,连上几个配好的 MCP 服务器以及 API 路由器,然后时不时地看看它做的咋样,做得好就验收,让它 Git Commit,做得不好就让它改,时不时还得翻翻代码看看怎么帮它修。某种意义上,这和课后布置作业,给学生答疑也没啥本质上的区别,甚至 LLM 还更爱说话一点。
既然提到了答疑,也来谈谈教学。这种 Vibe Coding 的能力对于计算机教育的冲击无疑是巨大的,本来很多上课教的内容,AI 可以比较容易地完成,那学生可能就更倾向于让 AI 去完成了,换位思考一下,如果让我在 2025 年成为大一不会编程的新生,我也很难抵御这个诱惑。但是,锻炼代码和工程能力就欠缺了。这就对应一个很重要的问题,就是 AI 它到底是不是一种类似编译器、调试器或者编程语言的工具?我们说学生可以从编程语言而不是汇编学起,是因为它是一个很成熟很可靠的工具,你学会了高层次的工具就是会了,就可以用它做很多事情。AI 就很奇怪,它确实可以做很多事情,但又不总是可以完成,它好像是概率性的图灵完全,全看是否出现幻觉,所以它不是一个可靠的工具,但又是一个好用的工具。那么紧接的问题是,计算机教育,是要教出来真的会写代码的人,还是会用 AI 写代码就行?我目前没有答案,也不知道未来会怎么发展,只能慢慢走一步看一步了。但抛开计算机专业的教育,如果是对于计算机的通识教育,我觉得用 AI 写代码完全没有问题,毕竟对于更多人来说,能解决问题就可以,可不可靠,其实很多时候并不在考虑范围内。
我知道上面这段话可能会让读者有一些焦虑,但我觉得,它都这样了,就共存吧,反正焦虑也没有用,不如拥抱它。至于是否担心自己会被替代,我确实是不担心,目前它还不够专业,就算它再专业,它也没有身份证是吧。希望早日实现生产力极大富足,实现共同富裕,那就不用思考人是不是会被 AI 替代了。另外,高级编程语言出现了,那些写汇编的人去写高级语言,现在 Vibe Coding 来了,只是同一拨人又跑去做 Vibe Coding 罢了。持续学习才是最重要的。今年开始尝试 Vibe Coding 也是让我意识到,随着年龄增大,确实是没有当年对新事物接受得那么快了,这也让我有了一些反思,以后还是要多多接触新技术,一些过去的思维可能也要重新审视。
目前我对 Vibe Coding 的态度是,它不能替代我的思考,相反,我可以更多地思考一些更高层次的东西,而可以适当地把一些细节交给 AI。我也持续在自己写代码,特别是一些关键的部分,我还是无法信任完全由 AI 编写,毕竟它比人还懂得偷懒,经常写出来一些没有测试效果的测例,一看测例都过,一测全是 BUG。
我还会继续尝试和 LLM 协作,尽量保持高质量的代码产出,我认为这是用 Vibe Coding 的底线:用 AI 并不是写出烂代码的理由。以前我们有所谓的中文羞耻,觉得写了很多中文的项目的代码可能不靠谱,现在是所谓的 AI 羞耻,看到 README 里一堆 AI 生成的辞藻就觉得不靠谱一样。我们作为业内人士,还是要把事情做得漂亮,而不是让 AI 生成一个勉强能用的组装拖拉机就完事。
写作和语音输入¶
另一方面 AI 影响比较大的,其实是写作,包括日常的各种文字,比较正式的文档、论文甚至教材,不得不承认,AI 在写作方面确实是比我这种语文是考试弱项的偏科生要做得更好。我通常会自己编写一遍,然后交给 DeepSeek 来润色一遍,再在润色的基础上修改,保证我要表达的意思能够完全地被保留下来。一些小的人情世故,比如微信上和各种人打交道的措辞,网络上发送的邮件或者是 GitHub Issue 等等场合的客套话,AI 确实也是做得比自己好。但是,更完整的内容,或者整体架构上的把握,还是不会让 AI 完全去完成,因为能感觉到 AI 训练所使用的语料和自己的思维方式或者写作的习惯还是不一样的,我还是希望我写的东西能更加得有我的思考和劳动在里面,AI 只是一个让文字看起来更加通顺的工具,帮我纠正一些语法错误之类的。例如,我平时可能更习惯一些口语化的表达,能够让我很快地通过打字或者语音输入把我的脑子里的想法变成文字,然后再让 AI 改写成更加严肃的文字,像教材或者论文,这时 AI 就沦为了纯粹的文字风格改写或者语言翻译器。
既然提到了语音输入法,就不得不提,今年我用语音输入的比例大大提升了。其实语音输入法历史已经很久了,但是以前每次体验,都觉得效果不行,每次输入的有错误还得改,自己改正的时间,还不如自己打字来得快。所以一直以来我都是坚持在所有设备上都是 26 键打字用拼音输入的,当然包括手机,经过多年的练习,确实速度还不错,包括我也不喜欢麻烦别人在微信上听语音,所以我尽量都是用文字的。但今年感受下来,确实是不一样,感觉语音输入的准确率有了质的飞跃,能看到它先识别出一个音对字不对的状态,再纠正成正确的表达,还会提示你,这里可能是另一个词,如果你要修改的话,就直接点一下就行。有这个功能以后,我在手机上真的很多时候就直接用语音输入了,尤其是在一些不太正式的场合,对方也能够对那些少数的识别错误脑补的时候,语音输入确确实实替代了手机上打字。在电脑上,还是打字通常更快一些,但最近也尝试了一下 智谱 AutoGLM 的输入法,感觉这种语音输入和 LLM 结合还挺有意思的,就是它们家的语音输入准确率还比不上 鸿蒙 6 上的小艺输入法,要是二者的优点能够结合在一起就更好了,相信这一天并不遥远。
小结¶
目前想到的就这么多,其实 AI 还有很多场景可以用到,比如生成图片、视频和音乐等等,目前还没有太多的尝试,相信明年开始会逐渐接触,到时候再在年底写一个 AI 使用总结。总的下来,就是感叹自己也到了感慨科技进步的年纪了,十几年前学技术,虽然也能感觉到科技进步,但因为自己是从零开始,学的就是最新的科技,所以没有啥感觉。但这几年,不断地把新的输入和已有的积累进行对比,就能感觉明显到技术潮流和技术栈的移动,也能感觉到自己对新技术的接受度开始有了略微的下降,这值得让我警醒。以前,我们总是嘲笑大人不追求潮流,不去学习手机等新技术,我们在这个时代长大的人,可也不能犯这样的错误呀。