Elizen

There is only one thing in the world worse than being talked about, and that is not being talked about.

我差一点就发布了一款 Chrome 插件

Elizen / 2025-01-23


最终还是失败了。

故事从哪儿说起呢?我也算是混迹在 AI(人工智能)领域的边角料人员。确实是边角料,不是谦虚,也不是自嘲。参与过一些奇奇怪怪的项目,大能到国家级,小到企业内部。但我一不懂代码,二不懂算法,却总是在比较前沿的地方给别人提意见或者被人提意见,这大概就是我工作的内容。

当 ChatGPT 出现以后,我的职业生涯也就跟着变化了,好像突然上了一个快车道,这几年就围在 LLM(大规模预训练语言模型)的周围做各种项目,写各种标准,用各种工具,听各种故事。直到 2024 年,嘟嘟开始和豆包聊天,我用上了 ChatGPT 和 Gemini 等各种工具做一些研究,鼓捣一些小玩意儿,甚至水了一篇期刊论文。这种看不见摸不着的东西,以一种很奇怪的方式,进入了我的生活,它很自然地融入进一些环节,不动声色,有时候却傻得出奇。

直到 AI Agent(AI 智能体)出现,好像一切迷雾中,有一条小小的模糊的看不清的路,让人觉得是对的,貌似是有希望的。没有人猜得到传说中的 AGI(通用人工智能)甚至是 ASI(超级人工智能)到底什么时候出现,但辅助驾驶的车越来越多,路上被接管的次数越来越少,这是 AI 的功劳,我的工作方式越来越灵活,我可以越来越快的交出满意的作业,这是 AI 的能力在帮我。

我一直是一个很古板的浏览器 OS 信奉者,我不喜欢在手机上过多操作些什么,但是很喜欢装满各种插件的浏览器,在浏览器里浏览大千世界,对我来说,一台电脑有一个浏览器,能够链接到互联网,就够了。然后,我听说了 AI 编程软件,从 Cursor 到 Windsurf 到字节刚推出的 Trae,他们能让小白从零开始开发系统级的工具或应用。

我心动了,我在 ChatGPT 上尝到过甜头,我用了 20 分钟,做了一个还说得过去小 Web 应用,功能简单到就一句话,把输入的文字生成一张我觉得还算好看的图片。

比如下面这张,当然,它还把不完善,比如对英文字体的支持不够好看,所以我把原文中的 「AI」 替换成了「人工智能」。但这些看起来不重要,重要的是,我只是打开了一个对话框,和它说我想要个什么东西,而且我什么都不懂,它就很有耐心的帮我做好了一切,三五次对话,做出了这个小工具。

所以我对 AI Agent 流行起来之后的 AI 编程软件有很大期待,也许我可以靠它实现一些更重量级的工具创作。于是,我找到了一个最简单的教程,下载 Windsurf,注册,缴费,开始操作,我搜了一些让工具可以更高效工作的套路,同时我也准备了足够的耐心,来对待它可能出现的问题。

就这样,我尝试开发我自己的第一个 Chrome 插件,一款可以切换阅读模式,并且高亮笔记的插件。这是我一直很头疼的问题,我喜欢在浏览各种网页,阅读奇奇怪怪的新闻,但好多网站的样式要么古板,要么超前,很不符合我的审美,对我来说,我喜欢简单到像 Safari 阅读模式一样纯洁的界面,并且可以让我在上面写写画画,添加一些笔记,导出一些笔记,就足够了。我的要求并不高,至少在我开始时,我觉得不高。

我还很聪明的找到其他 AI 对话体,帮我生成了一个专业产品经理级别的产品需求文档,我觉得它写得比我好。然后,奇迹出现了。软件开始自己在代码框里新建项目,罗列架构,向我解释每个文件夹,每个文件夹里的每个文件,都是干什么的。风风火火几分钟之后,它教我如何打开 Chrome 的插件管理平台,如何加载刚刚生成在本地的插件,如何查看插件的效果。

然后,奇迹真的出现了,我点击这个我取名为 ReadBetter 的插件图标,它切换了一个大概还不错的阅读样式,还带了一个我觉得很棒的边栏,似乎,我只需要再让它少提取一些网页里的内容,这事儿就成了。我接着告诉它,我只要标题、时间、正文,它开始修改;然后我发现,高亮好像没有效果,继续让它改;跨行高亮看起来是个难题,它来改;添加笔记无法保存,它继续改;似乎它提取文章的逻辑和高亮文本的逻辑有冲突,一些我看不懂的问题出现了,它说它来改。

然后,奇迹一直没有出现,我一个 Bug 一个 Bug 反馈给它,它一次一次修改,解决一个问题,出现一堆新问题,我说,你要不整体审查一遍你的代码。它照做了,一切都消失了,我不知道应该回退到哪一步,我开始接着重复上面的操作,一个问题接着一个问题解决,它很和善,从来不发脾气,但好像也没有真正解决问题。最后,我做出了下面的效果:

这是距离我成功最近的一次。我甚至不敢操作笔记框了,因为我不知道下一步,会不会又出现什么问题。我兴奋起来了,我开始打开朋友的博客,想展示我的成果,它突然报错,原来获取不同网站的内容,是有不同的规则。这个世界太混乱了。我只能让它继续修改,它不停地改,我不停地提意见。

最终,它又在一次功能逻辑的重构中,回到了最开始的样子,似乎那个插件的图标都在跟我说,我们可能要重新开始了。

一直到今天,我大概花了 8 个小时,经历了 2 次从 0 开始的「崩溃」,用光了 Pro 版会员的提问数,把最好的效果停留在了上面那张图里。然后,我决定放弃了。

但我还是想做个总结,或者说一个失败项目的复盘。

首先,这 8 个小时里,我自己没有敲过一个代码,甚至是一个代码块的一个字符,AI 生成的代码总量超过 6000 行,它能在大部分时间里准确定位我的问题在哪里,但它的解决往往不会考虑其他关联的部分。这是它的能力限制,但我觉得这是它很快就能解决的问题。

第二,我通过这个项目,在 30 分钟内了解到制作一个 Chrome 插件的全部流程,以及一个标准的 Chrome 插件应该有的基本架构。

第三,这种复杂一些的应用开发,如果不会代码的工程师,一定会和 AI 死循环在项目里面,就像我一样;如果已经是一个专业的工程师,那我相信,开发一个我说的小插件,要不了 3 个小时。AI 会无限放大我们已有的能力,或者无限拉大与不会用 AI 的人之间的职业差距。

最后,我想说,这 8 小时,让我摸到了 AI 编程的门,也走进了 AI 编程的死胡同。但 AI 给我的最大乐趣,反而是 「AI+ 什么」,我就有兴趣去学什么。因为我还听过一个道理,人和动物的很大区别,就是人会用工具。

有人说,AI 可以翻译了,还要不要学英文,我的答案在现阶段是,一定要学,它可以让一个人无障碍地在第一时间阅读世界上各种语言的书籍,但它给你的是一个工整的答案,而不是优雅的答案。如果你的英文足够好,你可以在它的帮助下翻译世界上任何一本你喜欢的书,用你修改后的更优美的文字传播它的思想。


嘟嘟学了一年钢琴,可以弹一些在我看来天书一样的曲子,我不知道他是怎么看老师弹一遍,就可以自己上手弹的。但最近一段时间,他的钢琴老师总对他说,你弹得很好,也弹得都对,所以我要提一些更高的要求给你,我希望你可以演奏这首曲子。

我不太懂,我觉得他弹得足够好了,为什么还不能称之为演奏。我就陪他一起去上课,我听到了什么是强弱,什么是表达曲线,什么是音乐的呼吸,如何在琴键上表达出艺术形态。我看得出来,他还不懂这些,但他也听得出来,他一遍比一遍弹得要好,那种好,不是 AI 可以给你的标准的工整的答案,而是细腻的蕴藏在琴键与手指之间的韵味。

就是这种韵味,让我觉得,AI 最强大的地方,不是做人的替代,而是带我们找到另一个发现韵味的角度,帮我们体察到被我们忽略很久的东西。

2025年1月22日 记。