← 返回信息流
AI 资讯Hacker News·2 小时前

AI被指并非好工具

原标题:AI Is a Bad Tool

速览

本文指出,在当前应用场景中,AI经常产生错误信息、缺乏可靠性和可解释性,且使用成本不低。因此,作者认为AI并非理想工具,需谨慎使用并制定合理预期。

AI 深度解读

背景

本文源自 Hacker News 上的一篇投稿,作者是 ByteCode.News 的友人 Hideki Idoru。尽管并非所有观点都获得一致认同,但其中对 AI 在软件领域失败模式的观察,在当下行业中广泛存在,因此具有相当价值。文章直指 AI 作为软件开发工具的局限性,并引发了对工程师工作本质的深层反思。

核心内容

AI 是一个糟糕的工具——至少对软件领域而言是如此。

先讲好的方面。如果你将 AI 视为一种数据蒸馏器,它确实有用。过去,你需要将问题输入搜索引擎,点击最有可能的链接,扫描页面寻找信息,再以自己的方式理解并处理。而 AI(如果足够好且准确)将这些步骤压缩了。如今搜索引擎已经开始在结果顶部插入 AI 摘要,但真正的价值在于你能进一步跟进并精炼信息。过去手动做这件事很耗时,让机器代劳确实更轻松。所以,AI 并非一无是处。

但用途仅此而已。如果你用它做其他事情,特别是用来生成代码,那就是在浪费时间。

在深入解释之前,有必要退一步看看关于 AI 本身的争论。这场争论往往过于情绪化。许多批评者出于对失去生计、变得无关紧要的恐惧。我不认为情绪有帮助,但它们确实揭示了有趣的人性状态——因为正如我将要展示的,恐惧是真实的(但出于不同原因)。

换句话说:是的,你将会变得无关紧要,但不是因为机器比你还聪明,而是因为你生产的是垃圾代码,而机器能做得稍微好一点。

AI 成为糟糕工具的原因在于,它完全不透明。常听到的一个问题是:“谁来维护你让 AI 构建的应用?”如果你完全拥抱 AI,你会回答:机器。既然它构建了,它就应该能维护。这个说法没错。

但真正的问题是:谁能验证 AI 构建的东西是好的且正确的?最近有很多关于 AI 发现软件安全漏洞的说法,但这未经证实。因此,验证需要由非机器的人类进行,而且这个验证过程所需的工作量可能比一开始手动发现漏洞还要多。

同样的逻辑适用于你让 AI 构建的应用。谁来验证它是否按预期运行?它可能看起来是那样,但众所周知,“表象”和“实质”并不一样。而且,在编写现有实现的测试时,AI 臭名昭著地倾向于让测试去适应实现,而不是根据规格说明盲目地写。它没有解决问题,只是让问题看起来解决了。

AI 完全不透明也意味着“AI 工程”或“提示工程”完全是个骗局——就像当年的 SEO 一样,任何声称能用某种聪明方式操纵黑盒机器的说法都是虚假的。你无法建立相关性,你幻觉出的任何模式都是不稳定的。简而言之:你无法访问源代码,即使能,你也没有足够的脑力去理解它,即使你能,AI 变化太快,任何你推导出的模式都无法持续保真。你并不天生愚蠢,只是机器是由非常聪明的人构建的,聪明到他们自己可能都不完全理解它。

所以 AI 是一个你无法窥视的工具——一种机器实现的“信我没错”。既然如此,为什么当它暴露出人类对无关紧要、被抛弃的根深蒂固的恐惧时,会如此具有揭示性?为什么你如此抗拒它?

因为任何你现在让 AI 替你完成的编程任务,都是因为你没有恰当地抽象你的工作。如果你让 AI 重命名一个符号——这本来应该是你的 LSP(语言服务器协议)处理的事情。如果你让 AI 构建项目脚手架,这应该是你的框架所负责的。你让 AI 生成的每一行代码,很可能都在降低抽象程度、增加重复性。AI 所做的只是揭示了你技术栈中缺乏恰当抽象的问题。而这对你的问题在于:如果代码被恰当地抽象了,你可能就没有工作了。但现状是,机器在生成无抽象代码方面变得越来越比你好。

换句话说,如果 AI 只生成琐碎的代码,那么这些代码本该是琐碎可抽象的。如果它能生成非琐碎的代码(它并没有),那就会引出问题:它如何基于输入做到的?但即便如此,由于它的不透明性以及你需要亲自检查你不理解的复杂内容,你依然一无所获。AI 要么解决的是非问题,要么制造出非问题。

总体观点是:软件行业中的大多数工作,早在 AI 出现之前就已经是无用的。AI 只是撕掉了那层面具,而这正让人们抓狂。

那么,我们该何去何从?当 AI 加速了软件世界,让一切变成无人做任何事、只有少数天才在空无之上的死寂坟墓——因为这些无用、无抽象的工作都被 AI 做了——我们如何应对?

遗憾的是,我没有很好的答案。也许人们需要回归追随自己的激情,而不是追逐 AI 的幻影和虚假承诺。也许只有对你构建的东西充满热情、完全理解它、完全拥有它,并恰当地抽象它,使其永远不会沦为 AI 的威胁,才是唯一的前进道路。

关键要点

  • AI 作为数据蒸馏器有用,但仅限于辅助信息检索和精炼,其他用途(尤其是代码生成)是浪费时间。
  • AI 不透明,导致验证其输出正确性需要耗费等同于或超过手动实现的精力,测试时 AI 倾向于拟合实现而非规格。
  • “AI 工程”和“提示工程”是骗局,因为黑盒无法通过有限技巧可靠操控,模式不稳定且不可复制。
  • 当前 AI 生成代码的行为暴露了软件工程中缺乏恰当抽象的问题:本应由 LSP、框架等工具自动化的工作,却被当作 AI 任务。
  • 大多数软件开发工作本身已是无用的重复性劳动,AI 只是撕掉了伪装,使人意识到自身价值危机。
  • 应对之道是回归对构建物的热情、完全理解和恰当抽象,避免依赖 AI 生成的无抽象代码。

意义与影响

这篇文章的核心价值不在于否定 AI,而在于揭示 AI 在软件工程中的真实角色和人类工程师的深层困境。它提醒我们:AI 不是聪明的替代者,而是放大现有问题(缺乏抽象、重复劳动)的镜子。如果工程师只追求用 AI 快速产出代码,而不理解底层逻辑,那么他们正在加速自身价值的消亡。反之,如果 AI 能倒逼行业重新重视抽象、架构和全栈理解,那么它反而可能成为推动软件工程进化的催化剂。对于个人开发者而言,与其恐惧被取代,不如确保自己从事的工作是“非琐碎”且“可验证”的——这正是 AI 最不擅长的领域。

查看原文 →bytecode.news