社会的技术债务与软件的古腾堡时刻

关于人工智能的最新进展,特别是像 ChatGPT 这样的大语言模型(Large Language Models,LLMs),市面上充斥着大量夸张的讨论。同时,人们也理所当然地担忧这些技术对就业市场的实质性影响。但观察者们忽略了两个非常重要的事实:

  1. 每一波技术创新浪潮的到来,都源于某种昂贵的东西变得足够便宜,便宜到可以随意"浪费"。
  2. 软件生产长期以来过于复杂且成本高昂,这导致我们几十年来一直在软件供给不足的状态中运行,形成了巨大的、全社会范围的技术债务。

这种技术债务即将以一种戏剧性的、覆盖整个经济体的方式被偿还,因为软件生产的成本和复杂度正在坍塌,一波创新浪潮即将释放。

软件的本质

软件常常被误解。它让人感觉像是一个独立的事物,一个我们可以与之交互的对象。但实际上,它是某种非常陌生的东西侵入我们世界的体现。它是电力、半导体和指令之间奇异的相互作用,所有这些以某种神奇的方式控制着从屏幕到机器人、从手机到医疗设备、笔记本电脑以及令人眼花缭乱的其他无数物品。它几乎是无限可塑的,能够滑动、扭曲和变形,正是在这种可塑性中,它撬开了尚未被看见的门扉。

这种软件作为"异质他者"的感觉,最近随着真正的对话式人工智能——基于大语言模型(如 ChatGPT)——从科幻小说变成人们可以像搜索互联网一样轻松把玩的东西,已经浮现到公众意识的表面。

为什么软件还没有吞噬世界?

这让人想起 Marc Andreessen 在上一个技术周期中的名言:"软件正在吞噬世界。" 虽然这句话是思考软件胃口的有用方式,但值得思考的是:为什么软件要花这么长时间才能吃完?进一步说,如果它真的要开始大快朵颐,催化剂会是什么?那个被软件吞噬的世界又会是什么样子?

要回答这些问题,我们必须先回顾过去,然后才能展望未来。在此过程中,我们将考虑一系列因素,包括复杂性、要素成本,以及软件供需的经济模型。

让我们从软件供需的经济模型开始。软件有成本,也有买卖双方的市场。其中一些市场是组织内部的,但大多数市场是外部的,人们以应用程序、云服务、游戏的形式购买软件,甚至软件被嵌入从 Ring 门铃到癌症检测内窥镜摄像头等各种物品中。所有这些都是软件的众多形式之一。

考虑到这些特征,你可以用入门经济学中的基本价格/数量图来思考软件。在某个价格下有一定的需求量,在某个价格和数量下,这两者处于粗略的均衡状态。当然,均衡点会因多种原因而移动,导致价格/数量交点处于更高或更低的总需求水平。如果价格过高,我们就会生产不足(留下技术债务);如果过低……我们稍后再说。

软件供需均衡图

这引出了一个经济学课堂上有时会被问到的基本问题:我们怎么知道这种价格和数量的组合是最优的?正统的答案是,如果供需曲线是正确的,那么它就一定是正确的——考虑到向下倾斜的需求(价格上涨时人们对大多数东西的需求减少)和向上倾斜的供给(价格上涨时制造商供应更多)。当我们超过这两条线的交点时,价格的每一次增量可能会让制造商想要生产更多,但买家却想要更少,于是你最终会遇到库存过剩或价格崩溃,或者两者兼而有之。反过来,当价格下降时,制造商想要生产更少,即使买家想要更多,这会导致稀缺性,进而往往推动价格再次上涨,直到供需达到平衡。

技术如何颠覆经济学

这都是直截了当的本科经济学。但技术有颠覆经济学的习惯。当涉及技术时,我们如何知道这些供需曲线是正确的?答案是我们不知道。这就是有趣的事情开始发生的地方。

例如,有时某种东西的供应增加会导致更多需求,使曲线发生移动。这在技术领域已经发生过很多次,因为技术的各种核心组件在成本递减和性能递增(或存储、或带宽等)的曲线上跌落。在 CPU 方面,这长期以来被称为摩尔定律,即 CPU 每 18 个月左右会变得更强大一些。虽然这些定律更像是启发式规则而非物理学的 F=ma 定律,但它们确实有助于指导我们理解未来可能与过去有何不同。

我们在技术领域一次又一次地看到这种情况,各种技术的价格暴跌,而性能却快速增长。这已经变得司空见惯,但它真的不是。经济的其他部分不是这样运作的,历史经济体也不是。事物不会仅仅在价格大幅改善的同时性能也大幅提升。虽然许多市场具有规模经济,但经济史上从未出现过像 CPU 成本那样的崩溃——性能增加了一百万倍或更多。

为了让这一点更加具体,考虑一下如果汽车以计算机的速度改进,现代汽车将会:

但它们没有。当然,特斯拉 Plaid 是一辆快速的汽车,但它远没有达到上述规格——没有任何汽车会达到。这种性能拐点不是我们的未来,但它相当准确地描述甚至低估了过去 40 年技术领域发生的事情。然而,大多数人甚至不再注意到这一点。这已经变得司空见惯,以至于我们的不注意本身就令人震惊。

技术中的崩溃动态

你可以在下图中看到这些动态。注意 Y 轴上的对数刻度,它防止了价格/性能线变成垂直的——这就是所有这些因素的单位性能价格下降的速度和急剧程度。这在经济史上是前所未有的。

技术价格性能崩溃趋势

每一次崩溃都带来了更广泛的后果。CPU 价格的崩溃直接将我们从大型机带入了个人计算机时代;存储价格(各种类型)的崩溃不可避免地导致了更多具有实用本地存储的个人计算机,这有助于催生数据库和电子表格,然后导致了 Web 服务,再然后是云服务。最近,网络传输成本的崩溃(随着带宽的爆炸式增长)直接导致了现代互联网、流媒体视频和移动应用。

在某种程度上,这是对 Paul Simon 老歌("The Boy in the Bubble")的一种逆转,每一代技术都将一个英雄推下流行榜(或者说,单位性能价格榜)。每一次崩溃,伴随着性能的提升,都会催生巨大的赢家和大规模的变化,从英特尔到苹果,到 Akamai,到谷歌和 Meta,再到当前的 AI 小繁荣。每一个崩溃的受益者都需要一个或多个核心技术的价格下降和性能飙升。这反过来又打开了新的机会,可以"浪费"它们来服务于那些以前似乎不可能、或者贵得离谱、或者两者兼而有之的事情。

AI 作为技术中的下一个崩溃动态

所有这些把我们带到了今天。突然间,AI 变得便宜了,便宜到人们通过"帮我写论文"的提示词"浪费"聊天机器人,或者获得微服务代码的帮助,等等。你可以争辩说,智能本身的价格/性能现在正在沿着一条曲线跌落,就像之前几代技术所发生的那样。

可以这样争辩,但这是一个过于狭隘和正统的观点,或者至少是不完整和过早的。先不谈通用人工智能(AGI)的伦理和对齐问题。它很可能还需要数年时间,即使它感觉比几十年来更近了。从这个角度来看,值得提醒自己,AI 热潮大约每十年或二十年就会冲击意识的海滩一次,只是随着炒作超过实际可以做到的事情而再次退去。我们在 1950 年代看到了 Minsky 的(失败的)工作,在 1970 年代看到了日本的(失败的)第五代计算机项目,在 2000 年代又看到了 IBM 的(失败的)Watson。如果你眯着眼睛看,你可能会看到一个模式。

尽管如此,LLM 的突然涌现式增长让一些人花费大量时间思考哪些服务职业可以被自动化消除,经济学家称之为"替代性"自动化。它并没有为社会价值的总存量增加太多,甚至可能是减损性的、不稳定的,一种针对白领工人的"将工厂工作外包到中国"时刻。也许我们应该少考虑替代性自动化的机会,多考虑增强性自动化的机会,那种能释放创造力、带来财富和人类繁荣的事物。

那么这将从何而来?我们认为这种增强性自动化热潮将来自与之前相同的地方:某种东西的价格崩溃,而相关的生产力和性能飙升。而那个东西就是软件本身。

我们并不是字面上说"软件"会看到价格下降,好像会出现 AI 引发的文字处理器(如 Microsoft Word)或 AWS 微服务的价格战。那是线性的、外推式的思维。话虽如此,我们确实认为当前向地球上销售的每个应用或服务中注入 AI 的狂热将会引发更多竞争,而不是更少。它将通过提高软件成本(每次 AI API 调用都是某人金库中的钱)来做到这一点,同时不提供真正的差异化,因为大多数供应商将依赖相同的 AI API 调用提供商。

Baumol 成本病与软件的困境

理解我们的真正意思需要简要回到一些基本经济学。我们大多数人都熟悉技术产品的价格如何崩溃,而教育和医疗保健的成本却在飙升。这似乎是一个令人抓狂的谜团,导致人们呼吁寻找新方法使这些行业更像科技行业,人们通常指的是更容易受到技术通缩力量的影响。

但这是一种误解。解释一下:在一个假设的双部门经济中,当一个部门的生产率、专业化和财富创造能力差异化地提高,而另一个部门没有时,后者部门会面临巨大的提高工资的压力,以免许多员工离开。随着时间的推移,生产率较低的部门开始变得越来越昂贵,尽管它的生产率不足以证明更高的工资是合理的,所以它开始"吃掉"越来越多的经济。

经济学家 William Baumol 通常被认为提出了这一洞察,因此被称为 Baumol 成本病。你可以在下图中看到成本病,其中各种产品和服务(剧透:主要在高接触、低生产率部门)在美国变得更加昂贵,而其他产品(非剧透:主要基于技术)变得更便宜。考虑到技术相比其他一切的爆炸性改进,这一切现在都应该说得通了。事实上,这几乎是一个数学必然。

Baumol 成本病示意图

如果没有重大的生产率改进——而这只能来自从这些服务中消除人类——很难想象这会如何改变。假设我们未来想要医疗保健和教育,情况更有可能继续恶化,因为这些服务中的大部分价值将继续由人类提供。

但还有另一个部门受到 Baumol 成本病变种的阻碍,那就是软件本身。这听起来可能自相矛盾,这是可以理解的。毕竟,生产率最高、财富生成、通缩性最强的部门怎么也会成为它施加给其他部门的同样病症的受害者呢?

如果你回想一下我们之前讨论的双部门模型,就能理解。一个部门是半导体和 CPU、存储和骨干网络。这些价格正在崩溃,需要更少的人,同时以更低的价格产生更高的性能。与此同时,软件正在继续前进,以与几十年前开发人员做同样事情的方式没有太大差异的方式生产同样的东西。是的,软件的生产和部署已经有了发展,但归根结底,它仍然是手在键盘上敲出代码。这应该看起来很熟悉,我们不应该对软件工资保持高位并越来越高感到惊讶,尽管生产率相对缺乏。这是技术本身狭义双部门经济中的 Baumol 成本病。

这些高工资直接导致了高软件生产成本,并限制了生产的软件数量,考虑到要素生产成本和那些讨厌的供给曲线。创业公司花费数百万美元雇佣工程师;大公司继续花费数百万美元留住他们。虽然市场有清算价格,供需在那里相遇,但我们仍然知道,当工资高于其他部门的可比职位时,生产的商品就会少于社会期望的数量。在这种情况下,生产不足的商品是……软件。我们最终陷入一种社会技术债务,生产的远少于社会期望的——我们不知道少多少,但可能是一个非常大的数字,这也解释了为什么软件还没有吞噬太多世界。而且因为它一直都是这样,所以没有人注意到。

人口结构、老龄化与 LLM 即将带来的劳动力颠覆

我们认为这一切即将改变。当前这一代 AI 模型是一枚导弹,尽管是无意的,但直接瞄准了软件生产本身。当然,聊天 AI 可以出色地生成本科论文,或者编写营销材料和博客文章(就像我们需要更多这些东西一样),但这些技术在快速且几乎零成本地生产、调试和加速软件生产方面表现出色,甚至到了黑魔法的程度。

为什么不应该如此呢?如下图所示,大语言模型(LLM)在就业市场的影响可以被视为一个 2x2 矩阵。一个轴是领域的语法性,我们指的是控制符号如何被操纵的过程有多基于规则。例如,论文有规则(问任何一个恼火的英语老师),所以基于 LLM 的聊天 AI 可以被训练产生令人惊讶的好论文。税务服务、合同和许多其他领域也在这个框中。

LLM 就业影响矩阵

由此产生的劳动力颠覆可能是巨大的,在未来几年接近前所未有的程度,在右上象限。我们可能会看到数百万个工作岗位在一系列职业中被取代,并且看到它比以往任何一波自动化都发生得更快。对行业、税收甚至高度依赖某些受影响最严重的工作类别的地区或国家的社会稳定性的影响将是无数的。这些广泛且潜在的不稳定影响不应被低估,并且非常重要。

有人认为,发达经济体中老龄化社会和人口金字塔倒置的人口结构将抵消这些 AI 引起的变化。虽然人口结构将在未来几十年软化打击——世界部分地区的老龄化社会和萎缩的劳动力将迫切需要劳动力——但这些人口力量不太可能足够。这些变化如此重要,我们将在未来的文章中回到这个话题。

软件处于自身颠覆的震中

然而,现在让我们回到软件本身。软件比对话英语或任何其他对话语言都更加基于规则和语法。编程语言——从 Python 到 C++——可以被视为形式语言,具有高度明确的规则集,控制每个语言元素如何以及不能如何被使用以产生期望的结果。编程语言是最唠叨的语法唠叨者,这对许多想成为程序员的人来说是极其令人沮丧的(缺少一个冒号?!就是问题所在?!哦 FFS!),但对于像 ChatGPT 这样的 LLM 来说是完美的。

这个图中的第二个轴同样重要。除了底层语法之外,还有领域的可预测性。相同的原因总是导致相同的结果吗?还是领域更临时性,原因有时在结果之前,但并不总是,也不可预测?

再次,编程是可预测领域的一个很好的例子,它被创建来在给定相同输入的情况下产生相同的输出。如果它不这样做,99.9999% 的可能性是你的问题,而不是语言的问题。其他领域的可预测性要低得多,比如股票投资、精神病学,或者也许是气象学。

这种框架——语法性与可预测性——让我们确信,在软件行业的历史上第一次,已经出现了将从根本上改变我们生产软件方式的工具。这不是关于使调试、测试、构建或共享变得更容易——即使这些也会改变——而是关于操纵构成编程语言的符号意味着什么的根本理念本身

让我们具体一点。例如,与其必须学习 Python 来解析一些文本并删除 ASCII 表情符号,不如你可以直接写下面的 ChatGPT 提示:

写一些 Python 代码,打开一个文本文件并删除所有表情符号,除了我喜欢的一个,然后再次保存它。

如果你在想,"这不可能有效",你错了。它工作得很好,花了两秒钟,这只是一个瞥见,以前无法获得的编写代码的灵巧性现在任何人都可以使用:

ChatGPT 代码生成示例

说明显而易见的事:这是一个琐碎、无聊和愚蠢的例子,即使它在正确的充满表情符号的情况下是有用的。它不是复杂的代码。对于熟练的从业者来说,它简单到令人恼火,而对于大多数其他人来说,如果没有访问许多 Reddit 和 Quora,它是不可能的。

但它变得更好更深入。假设你不确定这为什么有效,或者怀疑它是否有效,认为 AI 可能在虚张声势。你可以要求它解释自己,如下所示:

ChatGPT 代码解释示例

简而言之,LLM 使用了一个巧妙的技巧。它没有通过所有 ASCII 表情符号的详尽列表来查看它们是否存在,而是选择使用字符编码来区分表情符号和非表情符号。这太聪明了,而且你可以要求 LLM 解释它是如何做某事的——存在一种自我参照的解释力——这是这改变软件游戏的另一个原因。

这只是开始(而且只会变得更好)。使用这些技术几乎可以编写每一种代码,从连接各种 Web 服务的微服务(你以前可能在 Upwork 上为此支付开发人员 10,000 美元)到整个移动应用(一项可能花费你 20,000 到 50,000 美元或更多的任务)。

更便宜和更低复杂度的软件生产是什么样子

现在,让我们说清楚。你能说"给我做一个比 MICROSOFT WORD 更好的东西",或者"用新颖的方式解决这个经典的计算机科学算法"吗?不,你不能,这将导致许多人将这些技术视为玩具。它们在重要意义上是玩具。它们是"玩具",因为它们能够为真实的人,特别是非程序员,生成代码片段,一个极小的群体会认为这是微不足道的,而另一个巨大的群体会认为这是不可能的。这。改变。一切。

如何?嗯,首先,软件生产的清算价格将会改变。但不仅仅是因为生产软件变得更便宜。在极限情况下,我们把这一刻想象成类似于之前的技术变革浪潮如何将底层技术的价格——从 CPU 到存储和带宽——降到接近零的合理近似值,释放了物种分化和创新的洪流。在软件进化术语中,我们刚刚从人类周期时间转到果蝇的周期时间:一切都进化和突变得更快。

这是我们的一个思想实验:如果软件生产的成本正在遵循类似的曲线,甚至更陡峭的曲线,并且正在下降到接近零的某个值,会怎样?如果生产软件即将成为事后的想法,就像用文本解释自己一样自然?"我需要一些能对 Y 做 X 的东西,不做 Z,用于 iPhone,如果你有让它不那么难看的想法,我洗耳恭听。" 就是那种事情。

我们现在可以重新审视我们之前的成本下降曲线,并将软件添加到组合中。如果软件生产的成本注定要崩溃,出于我们讨论过的所有原因,尽管内部的 Baumol 式成本病一直保持高成本?它可能发生得非常快,比之前的世代更快,考虑到 LLM 将进化得多快。

软件成本崩溃预测

这一切意味着什么?我们对软件工程师没有意见,并且已经投资了许多优秀的工程师。然而,我们确实认为,如果不摆脱软件行业的束缚——其高成本和相对较低的生产率——软件无法达到其最大潜力。一个任何人都可以编写软件、可以花几便士做到这一点、并且可以像说话或写文本一样轻松地做到这一点的软件行业,是一个变革性的时刻。这是一种夸张,但只是适度的夸张,可以说这是一种古腾堡时刻,以前的创作障碍——学术的、创造性的、经济的等等——将要消失,因为人们被解放出来做事情,只受限于他们的想象力,或者更实际地说,受限于生产软件的旧成本。

当然,这将伴随着颠覆。回顾之前的变革浪潮表明,这不是一个平滑的过程,可能需要数年甚至数十年才能理清。如果我们是对的,那么软件开发人员就业格局的戏剧性重塑将伴随着"生产率飙升",这来自于软件生产成本的下降与几十年来软件生产不足导致的全社会技术债务的相遇。

当我们偿还技术债务时,接下来会发生什么?

我们现在已经多次提到这种技术债务,值得强调。我们几乎肯定一直在生产远少于我们需要的软件。这种技术债务的规模是不可知的,但它不可能小,因此随后的增长可能是几何级数的。这意味着,随着软件成本降至近似零,软件的创建将以之前几乎无法想象的方式可预见地爆炸。

人们在这一点上总是提出的问题是,"那么会制作什么应用?" 虽然这是一个可以理解的问题,但它有点愚蠢,而且肯定为时过早。当互联网传输成本为 500,000 美元/Mbps 时,Netflix 是可知的吗?当屏幕、CPU、存储和电池会使这样的设备达到小房间大小时,苹果的 iPhone 是可以想象的吗?当然不是。关键是我们知道的唯一事情是应用和服务将会到来。毫无疑问。你想要在那里,从树枝中风吹动树叶的最初开始投资它们。简而言之,我们现在面前的绿地看起来像下一个伟大的技术周期,但太多人根本看不到(因为他们仍然专注于投资当前的 LLM,将其附加到软件野生环境中当前存在的任何东西上)。

企业家和出版商 Tim O'Reilly 有一个在这一点上适用的好短语。他认为投资者和企业家应该"创造比你获取的更多的价值"。技术行业一开始就是这样,但近年来它太经常追求快速获胜,通常是通过运行金融服务手册中的策略。我们认为,几十年来第一次,技术行业可以回归其根源,通过释放一波软件生产浪潮,真正创造比它获取的更多的价值。

原文

Society's Technical Debt and Software's Gutenberg Moment

相关链接

Baumol's Cost Disease
Moore's Law