随着 Vibe Coding 项目的持续深入,你会在与 AI 一轮又一轮的沟通、探讨与推敲中,在反复测试与验证的循环里,在逐步提升的思考过程中,悄然获得成长。因为不断出现的关键决策,会越来越依赖你给出清晰、具体且可验证的方向。否则,AI 很可能会陷入一种看似忙碌、实则原地打转的状态:代码不断生成,问题不断修补,目标却始终若即若离,仿佛深陷泥潭。
言泉输入法今天完成了 v0.4.1。这个版本除了在长句输入方面持续改进之外,最重要的变化,是彻底区分了字词输入与长句输入这两种模式及其状态。最初,言泉输入法是基于我个人按字词输入的习惯而开发的;后来了解到很多人更偏好长句输入,于是从 v0.2.0 开始支持长句输入模式。然而,随着长句模式被不断改进,我逐渐发现:当我自己使用按字词模式输入时,候选中时常会因为受到“污染”而冒出一些生造词。我渐渐意识到,污染源正是长句模式中的寻路算法,于是让 AI 设法解决。但 AI 的表现,却像玩跷跷板:顾此失彼,按下这头,那头便翘起;优化了字词输入,长句效果就受损;强化了长句路径,字词候选又被干扰。最终,在与 AI 经过数轮沟通、修改与验证之后,我自己终于形成了一套更清晰的算法思路。我把这个明确、清晰的结论交给 AI,由它据此重构代码,才终于得到了现在这个还算不错的阶段性结果。当然,它距离理想状态仍然很远,后续还需要继续打磨和优化。
Vibe Coding 并不是你轻描淡写地说一句“要有光”,AI 便立刻为你捧出光来。真正的 Vibe Coding,需要你与 AI 共同进步。AI 模型会持续升级,能力也必然越来越强,但它并不是——至少在短期内还不会是——全知全能的神。倘若把一个需要长期迭代、不断权衡、持续验证的复杂任务完全交给它独自完成,最终你很可能得不到真正可用的结果。你自己的思考,才是校正航向、修正偏差、推动 AI 向目标逼近的关键力量。
之前提过,最初萌生 Vibe Coding 一个输入法的想法,是希望尝试让输入法结合 AI 的能力。但经过实际接入本地大模型的尝试后,我认为当下尚不具备实用性,于是便让 Codex 将项目中的 AI 相关代码全部移除。所以,现在实际 release 的版本完全不包含任何 AI 特性。对我而言,她就是一个用来取代十多年前停止更新的谷歌拼音 2.0 的替代品。就连输入风格也是——适合按词输入,而非长句/整句输入。
启动这个项目的另一个原因,是想探索纯 Vibe Coding、完全依赖 AI 写代码究竟能做到什么程度,同时摸索如何驾驭 AI 写出更高质量的生产级代码。与 AI 沟通的过程,会让自己对项目本身产生更深入的理解。我对 Windows 系统的输入法开发框架完全不了解,但在 Vibe Coding 的过程中,随着项目推进,虽然我一行代码都没写,却也逐渐熟悉了整套框架。这和传统开发流程——先研究、熟悉相关框架再动手写代码——有着非常大的差别。
关于 Vibe Coding 当下的心得:
首先你自己需要清楚知道要做什么(才能检验结果);
要有极强的耐心(可能会遇到与 AI 反复拉扯的情况);
用最好的模型(不要在低质量的廉价模型上浪费时间);
言泉输入法还会继续迭代。虽然现在开始流行 AI 加持的语音输入(究其原因,我认为是当下语音模型的效率与性能已达到实用级别),但我个人无法接受对着电脑说话作为输入方式——我爱键盘!Vibe Coding 不就是为了能做市面上找不到满意的而首要服务于自己的东西么?