第 10 章
代码的觉醒:当模型学会编程
Greg Brockman的手指悬停在键盘上方。屏幕上是VSCode编辑器,光标在一个Python文件的函数体内闪烁。他键入一行注释:“从给定的URL列表中并发下载所有文件,并返回每个文件的大小”。然后停下来。
会议室里还有另外三个人。GitHub的CEO Nat Friedman坐在正对面,身体前倾,盯着投影屏幕。OpenAI的两位工程师站在Brockman身后,他们已经看过这个演示几十次,但仍然屏住呼吸。
Brockman按下Tab键。屏幕上,灰色代码开始流动。导入aiohttp。定义异步函数。构建任务列表。处理异常。返回字典。整个过程不到一秒。代码不是从某个现成的片段库中检索出来的。模型根据那行注释,逐行生成了完整的实现逻辑。
Friedman没有说话。他把目光从屏幕移向Brockman,再移回屏幕。反复了两次。然后他伸出手,指向投影。“再试一个。”
Brockman删掉刚才的代码,重新键入一行注释:“实现一个LRU缓存,支持get和put操作,时间复杂度O(1)”。按下Tab。灰色代码再次涌现:定义双向链表节点类,构建哈希表,实现get方法、put方法,处理容量溢出。标准的算法题解法,边界条件处理得干净利落。
Friedman靠回椅背。他说了一句后来被反复转述的话。但记录只到这一步——那个时刻在场的五个人,对那句话的确切措辞后来有不同记忆。唯一确定的是,那一刻所有人都意识到,他们眼前发生的事情,已经超出了“代码补全”四个字所能概括的范围。那是一个智力引擎正在理解代码的瞬间。
从自然语言到代码
2020年初秋,GPT-3发布,1750亿参数的震撼尚未消散。人们用精心设计的提示词让模型写诗、做摘要、回答复杂问题,效果惊艳但不稳定。模型有时能生成令人拍案叫绝的回答,有时却会编造出完全虚构的事实。这种不可靠性使得GPT-3更像一个迷人的技术演示,而非可以交付客户的商业产品。InstructGPT还要等将近两年才会出现,RLHF驯服模型行为的工作才刚刚开始。大模型的商业化前景笼罩在不确定性中。
但在OpenAI内部,一个研究小组已经开始将目光投向不同的方向。如果自然语言的问题在于模糊性——同样的词汇可以表达完全不同的含义,同样的意图可以用无数种方式表述——那么有没有一种“语言”是严格的?有没有一种文本形式,其含义完全由形式规则决定?
代码。
这个转向并非一时兴起。早在GPT-3训练期间,研究团队就注意到,模型中混入的GitHub代码数据似乎对模型的逻辑推理能力产生了有益影响。虽然这还只是一个模糊的观察,缺乏系统的实验验证,但它足够诱人,足以说服一小部分研究人员将注意力集中到这个方向上来。
代码天然具备几个让机器学习研究者兴奋的特性。语法严格——编译器不会容忍模棱两可的表达,一个变量名拼写错误,程序就会拒绝运行。逻辑清晰——函数的输入输出关系是确定的,可以被形式化验证。反馈即时——代码能否运行、测试是否通过,几秒钟内就能得到答案。
这些特性意味着模型在代码生成上的表现可以被客观验证。不存在自然语言对话中那种模棱两可的判断——“回答得不错,但有几个事实错误”。一个生成的函数要么通过了所有单元测试,要么没有。通过率是多少就是多少。这种清晰的评估标准,让代码领域成为检验大模型真实能力的理想试验场。
数据与训练
研究团队开始从GitHub爬取公开仓库数据。这不是一个小工程。到2020年底,GitHub上托管着超过两亿个代码仓库,涵盖Python、JavaScript、Java、C++、Go、TypeScript等数十种编程语言。原始数据量达到TB级别。团队需要过滤掉重复代码、低质量项目、废弃仓库和许可证不兼容的内容。
过滤策略本身就是一个研究课题。什么样的代码算是“高质量”?最简单的方法是使用星标数量作为代理指标,但星标多的项目不一定是代码质量高的——有些流行项目恰恰因为代码混乱、维护不善而被人诟病。另一种方法是检查代码是否通过了持续集成测试,但很多高质量项目并没有设置CI流程。
最终,团队采取了一种多指标的过滤方法:保留满足近期有提交活动、有明确的许可证声明、代码不包含明显的安全漏洞、文件大小在合理范围内等条件的仓库。这个过滤过程筛掉了超过80%的原始数据。剩下的部分——仍然包含数十亿行代码——构成了训练Codex的语料库。
训练过程中,OpenAI的研究人员没有对GPT-3的架构做根本性修改。这是一个深思熟虑的决定。他们想回答一个问题:规模法则在文本之外是否依然有效?如果Transformer架构是通用的序列建模工具,那么在代码数据上训练它,应该能产生类似的涌现能力。Transformer的自注意力机制天然适用于代码的结构特征——变量之间的依赖关系、函数调用的层次结构、跨文件的模块引用,这些都可以被注意力权重捕捉。
但代码的统计特征与自然语言截然不同。自然语言文本充满了歧义、文化背景和隐含假设,一段对话的含义可能依赖于说话者的语气、上下文,乃至双方共享但不言明的知识。代码不同。一个Python函数的意义完全由它的语法和逻辑定义。for循环就是for循环,if条件就是if条件。这种严格性意味着模型在学习过程中能够建立更清晰的输入-输出映射,模糊空间被大幅压缩了。
能力的涌现
2021年初,Codex的第一个内部版本开始产生结果,其质量令研究人员震惊。当用自然语言描述一个编程任务时,模型能够生成功能正确的代码。这不是传统的语法补全——集成开发环境已经做了几十年的事。这是在理解意图并转化为可执行的逻辑。
一个具体的例子可以帮助理解这个区别。如果提示是“写一个函数,接收一个CSV文件路径作为参数,读取文件内容,计算第二列的平均值,并返回结果”,传统的IDE补全能做的是:当你输入“import”时建议“csv”,当你输入“csv.”时列出这个模块的方法。这是查找,不是生成。Codex做的是完全不同的事:它生成完整的函数体——导入csv模块,打开文件,解析各行,提取第二列,转换数值类型,计算均值,处理可能的类型错误和空文件异常。这一切是逐行生成的,每一步都建立在对任务整体理解的基础上。
OpenAI决定进行一次系统化评估。他们构建了一个名为HumanEval的基准测试集,包含164个手工编写的编程问题。每个问题要求实现一个特定功能的函数,并附带单元测试以验证正确性。问题涵盖字符串处理、数学运算、数据结构操作、算法实现等多个难度层级。
Codex的第一个版本在HumanEval上达到了28.8%的准确率。这个数字需要放在上下文中理解。GPT-3在未经专门代码训练的情况下,在这个测试集上的表现几乎为零——它能偶尔生成语法正确的代码片段,但几乎无法完成任何需要逻辑推理的编程任务。28.8%虽然不算高,但它是从一个接近零的起点实现的跃升。这证明训练数据的选择确实产生了质变。
接下来发生的事情更加令人兴奋。当模型参数量从120亿增加到1200亿时,HumanEval的准确率从28.8%跃升到72.3%。更大的模型不仅记住了更多的代码模式,它开始展现出对编程逻辑的更深层理解——能够处理训练数据中从未出现过的算法组合,能够在多个编程概念之间建立联系来解决新问题,甚至能够理解一些隐含的需求,比如函数文档中没有明确写出的边界条件处理。
这种能力涌现的模式,与GPT-3在自然语言任务上表现出的上下文学习能力遵循相同的规律。参数规模越大,训练数据越丰富,模型的能力就越不仅仅是“记住更多”,而是“理解更深”。
有一个关键区别让代码领域的发现格外有力:代码生成的正确性可以被严格验证。72.3%的准确率是一个不可争辩的测量结果,不存在自然语言评估中那种依赖人类判断的模糊性和可争议性。当允许模型为每个问题生成100个候选答案并选择通过测试最多的那个时,准确率进一步提升到77.5%。对于某些特定类型的简单问题——比如基本的字符串处理和数组操作——准确率超过了90%。
但数字只是故事的一部分。在OpenAI的办公室里,研究团队开始尝试用Codex解决实际工作中遇到的问题。一个工程师描述了周末的经历:他需要写一个脚本,从公司内部API拉取数据,做统计分析,生成表格。原本预计需要两三个小时的工作,他打开编辑器,逐段写下注释描述每一步需求,Codex生成对应的代码。审查逻辑,修正一两处错误,运行通过。整个过程不到四十分钟。
这不是孤例。类似的故事在早期测试用户中反复出现。一个前端开发者写下注释描述他想要的React组件行为——props接口、状态管理、事件处理——Codex生成了完整的组件代码。一个数据工程师描述数据清洗的步骤,模型生成了完整的Spark作业。这些体验指向了一个共同的模式:Codex特别擅长处理那些模式化的、有明确实现路径的编程任务。这些任务不需要原创性的算法设计或系统架构思考,但它们在日常开发工作中占据了大量时间——读取配置文件、设置数据库连接、编写CRUD操作、实现标准的设计模式。这些“样板代码”的编写可以被大幅加速。
Copilot的诞生
2021年6月29日,微软和OpenAI联合发布了GitHub Copilot的技术预览版。产品形态是一个VSCode编辑器插件。开发者在编写代码时,Copilot在后台持续分析上下文——当前文件内容、光标位置、相关注释和函数签名——然后以灰色文本的形式建议接下来的代码行。开发者可以按Tab键接受建议,也可以继续输入忽略它。
发布页面上的描述简洁而克制:“你的AI配对程序员。”这个定位刻意回避了“自动编程”或“代码生成”这样的大词。副驾驶——Copilot——是一个助手,不是替代者。驾驶员仍在位,负责方向判断和最终决策。这个措辞选择同时服务于法律审慎和产品策略,它降低了用户对模型能力的过度期待,也为不可避免的错误预设了责任归属。
技术预览版的申请页面很快被挤爆。等待名单在几天内膨胀到数十万人。开发者社区的反应分裂而激烈。一部分人兴奋于生产力提升的可能性,在社交媒体上分享Copilot生成令人惊叹代码的截图。另一部分人则提出了尖锐的质疑,涉及代码质量、安全性、知识产权和职业前景。
这些质疑并非无理取闹。Copilot确实存在明显的局限性。模型有时会生成看似合理但存在逻辑缺陷的代码。它可能调用不存在的API方法——这是大模型“幻觉”问题在代码领域的表现。更棘手的是,有些生成的代码实质上复制了训练数据中开源项目的代码片段。如果一个项目采用了GPL许可证——要求衍生作品也必须以GPL许可证开源——那么使用Copilot生成的相似代码是否构成侵权?自由软件基金会很快就此发表了声明,认为这确实构成了法律风险,但这个问题的法律边界至今仍在法庭上进行拉锯战。
另一个令人不安的问题是许可证兼容性。训练数据中的代码可能源自MIT、Apache、GPL、BSD等数十种不同许可证的项目。模型在学习过程中无法自动区分这些法律差异,它学到的是代码的功能模式,而非附着其上的法律义务。但生成的代码如果与训练样本过于相似,使用它的开发者可能在不知情的情况下违反了开源许可证条款。
这些问题足够严重,以至于一些企业和开源项目明确禁止开发者使用Copilot生成的代码。但对大多数个人开发者来说,效率的提升压倒了法律风险的担忧。技术预览版开放后,用户增长曲线几乎垂直。数十万开发者在日常工作中开始依赖这个灰色代码的建议。
Nat Friedman后来在一次内部会议上总结了那个时期的心态:“我们知道产品不完美。我们知道法律问题没解决。但我们更知道,如果我们等到所有问题都解决再发布,就永远不会发布了。唯一的办法是把它交到用户手里,让真实的使用反馈驱动迭代。”
这个判断反映了微软和OpenAI在Copilot项目上的核心策略:速度优先。在科技行业的平台竞争中,先发优势可以转化为难以逾越的网络效应。每一个获得Copilot使用经验的开发者,都在增加对这套工具的依赖度。这种依赖会转化为对VSCode的粘性,进而强化微软在整个开发者工具生态中的控制力。
Google的困境
Google在这个领域的处境恰好构成了反面案例。当Copilot的技术预览版在开发者社区引发轰动时,Google内部并非无动于衷。事实上,Google拥有不逊于任何机构的AI研究能力。Transformer架构是Google发明的,BERT是Google发布的,T5证明了统一范式的可行性,PaLM展示了参数规模的继续扩张路径。在代码生成方面,Google Brain和DeepMind也都有研究团队在探索相关方向。
但这些研究力量分散在不同的部门,缺乏统一的产品战略。更重要的是,Google没有一个像GitHub那样拥有数千万开发者的分发渠道。技术优势如果不能转化为产品优势,在市场竞争中就毫无意义。
一位Google工程副总裁在2021年7月的内部邮件中表达了他的挫败感。邮件的具体措辞没有公开,但多位在场者证实,其核心意思是:我们发明了支撑这些产品的核心技术,但竞争对手正在用我们的研究成果抢占我们的开发者市场。这个表述指向了一个尴尬的历史事实:Google在基础研究上的领先,在相当长一段时间内并未转化为产品的领先。论文发了很多,但商业化的果实被微软和OpenAI摘走了。
这种结构性滞后的根源在于商业模式的不同。Google的核心收入来自搜索广告。开发者工具市场——IDE、代码托管、云开发环境——从来不是Google的战略重心。而微软的整个商业生态都与开发者绑定:Azure云服务、Visual Studio许可证、GitHub订阅、MSDN开发者网络。每一项都需要开发者的认可和使用。
对微软来说,在AI辅助编程上的领先不仅是技术上的胜利,它是整个开发者生态战略的延伸。如果GitHub Copilot能锁定数千万开发者习惯,这些开发者会更倾向于选择Azure部署他们的应用,会选择VSCode作为主力编辑器,会依赖GitHub的Actions和Packages等生态服务。Copilot不是孤立的产品,而是一个更大拼图中的关键一块。
Satya Nadella在Copilot发布后的一次内部会议上,将代码生成定义为AI从“有趣”到“有用”的关键转折点。他在这个判断上压注了微软的AI战略。微软已经通过2019年对OpenAI的10亿美元投资锁定了技术合作管道,通过2018年收购GitHub获得了开发者分发平台,通过VSCode的普及建立了一个跨操作系统的编辑器生态。这三条线在Copilot上汇合——技术、分发、生态,构成了竞争对手难以复制的壁垒。
认知套利的经济学
2021年8月,Codex的论文在arXiv上正式发布。论文详细描述了训练方法、评估框架和性能数据。在学术圈引发关注的同时,它在产业界的影响更为深远。那些还在观望大模型商业化的投资者和企业决策者,从Codex身上看到了一个具体的、可量化的商业案例。
这个案例的经济学逻辑是冷酷而清晰的。一个资深软件工程师在硅谷的年薪——包括工资、奖金和股票——轻松超过20万美元。一个由十名工程师组成的高级团队,年人力成本在200万到300万美元之间。而Codex生成一个函数建议的计算成本,按照当时的云GPU定价,大约在0.001美元的量级。即使考虑到审查、修改和测试AI生成代码所需的人力——这仍然需要熟练工程师的时间——整体效率提升的空间也是数量级的。
这就是本章需要落地的核心概念:认知套利。利用大模型以极低成本复制、重组并规模化提供原本由高成本人类认知劳动所创造的价值。在代码生成领域,这种套利的幅度大到了无法忽视的程度。
一个具体的测算说明问题。假设Copilot能让一个十人开发团队的效率提升20%,这意味着同样的产出现在只需要八个人。节省的两个工程师,年薪加起来至少40万美元。即使企业为十个人全买了每月10美元的Copilot许可,年成本也只有1200美元。40万对比1200——投资回报率超过300倍。
当然,现实比这个简单的测算复杂。那20%的效率提升需要兑现——有些任务Copilot加速明显,有些几乎没用。节省的人力成本不会直接转化为利润——企业可能让团队用节省的时间做更多的功能开发,而不是裁员。但核心逻辑是成立的:AI辅助编程的经济账,对任何规模的企业来说都是正的。这种经济学逻辑一旦成立,就会产生不可抗拒的市场引力。企业不会因为AI生成的代码可能有bug就拒绝使用它,就像企业不会因为人类程序员可能写bug就放弃雇佣他们一样。关键在于净效率提升,关键在于投入产出比。
商业化与生态锁定
2021年10月,GitHub Copilot正式结束技术预览,转为付费订阅服务。定价方案简洁:个人用户每月10美元,企业用户每月19美元,开源项目维护者可以免费使用。这是大模型历史上第一个大规模商业化的付费产品。ChatGPT还要再过一年多才会出现。
付费转化率超出了所有人的预期。正式发布后的一个月内,付费用户突破40万。到2021年底,这个数字增长到超过100万,年化经常性收入超过1亿美元。对于一个推出不到半年的产品来说,这些数字的意义不在于绝对值——1亿美元对微软这样的巨头不算什么——而在于它证明了一件事:大模型可以赚钱。不是未来某个时刻赚钱,是现在、当下、以可计算的方式赚钱。
企业客户的采用速度尤其令GitHub团队惊讶。Stripe的工程团队在正式版发布当天就批量采购了数千个许可证。Shopify的CTO在内部全员邮件中要求所有工程师安装Copilot。Salesforce的开发者体验团队开始编写公司内部的Copilot使用指南。这些早期企业用户的动作,表明AI辅助编程正在从个人偏好转变为组织规范。
微软的整合机器也在全速运转。Visual Studio 2022版本在11月发布时,原生集成了Copilot。Azure DevOps平台开始提供基于Codex的代码审查建议——AI不仅能生成代码,还能对已有代码提出改进意见。Teams协作工具中加入了AI生成的代码片段分享功能。每一个整合动作都在强化微软的护城河:开发者越依赖Copilot,就越深地嵌入微软的生态体系。
Google的应对迟缓而分散。直到2021年底,Google Cloud才正式宣布与AI研究部门合作,开发基于PaLM模型的代码生成工具。这个项目进入内部测试的时间是2022年中期,比Copilot晚了整整一年。在平台级产品的竞争中,一年的差距意味着追赶者需要在性能上大幅领先才能吸引用户迁移。而Google的工具在推出时,在代码完成质量上与Codex大致相当,没有形成足够的切换诱因。
更让Google焦虑的是Copilot对开发者工具偏好的塑造。VSCode本已是全球最流行的代码编辑器,月活用户超过1400万。Copilot的深度集成使得这个编辑器对开发者更加具有粘性。习惯了灰色代码自动出现的开发者,在切换到其他编辑器时会感到明显的功能缺失。这种粘性不是技术锁定的粗暴形式——你仍然可以选择迁移——但它是一种习惯锁定,一种效率依赖,一种润物无声的路径依赖。
开源社区的反应更加复杂。一部分人对微软的野心保持警惕。自由软件基金会发布了措辞严厉的声明,指责Copilot“利用开源社区的劳动成果牟取商业利益”。一些著名的开源维护者宣布他们的项目不再允许使用Copilot生成的贡献。另一些开发者开始探索替代方案,包括基于开源模型的代码生成工具,但这些替代项目在代码完成质量上与Codex存在明显差距,还不足以构成真正的竞争威胁。
另一部分开源开发者采取了实用主义态度。他们指出,绝大多数开源许可证允许商业使用——MIT、Apache 2.0、BSD都没有限制将代码用于训练AI模型。至于GPL,争议焦点在于生成的代码是否构成“衍生作品”,这个法律定义可能需要数年时间通过判例法逐步清晰。在此之前,许多开发者选择继续使用Copilot,同时保持对许可证问题的关注。
能力的深化与职业的位移
2021年12月,OpenAI发布了Codex的改进版本。新版本在HumanEval上的准确率提升到82.5%。更重要的是,模型开始展现出对多文件项目的处理能力。它能够理解跨文件的模块依赖关系,能够建议适合项目结构的文件组织方式,甚至能够根据现有代码库的风格自动调整生成代码的命名规范和架构模式。
这种能力升级指向了更深远的变化。模型不再仅仅是“完成当前函数”,而是开始形成对软件系统的整体理解。一个经验丰富的开发者描述了他在新版本下的工作流程:早晨列出当天要实现的功能列表,然后逐一用自然语言向Copilot描述需求,模型生成初版代码,他审查逻辑、修正错误、优化性能、补充边缘情况处理,代码提交到Git,进入代码审查流程。他的总结是:他现在的工作重心已经从编写代码转向了审查代码和设计架构。
这个变化看起来是效率提升——同样时间完成更多工作。但它暗示的结构性转变远比效率深刻。如果大量“编码”工作——将清晰的功能需求转化为编程语言的具体实现——可以被AI承担,那么软件工程师的核心技能组合就会发生位移。需求分析、系统设计、代码审查、性能优化的权重上升,语法熟悉度、API记忆、样板代码编写速度的权重下降。
这个位移如果广泛发生,它会重塑整个编程教育体系和职业阶梯。初级程序员——那些职业生涯头几年主要承担编码任务的工程师——会受到最直接的冲击。如果一个AI系统能以十分之一的时间生成质量相当的代码,那么企业为什么还要雇佣同样多的初级工程师?不是完全替代——初级工程师还有学习成长的需要,还有人际协作的价值。但岗位数量、薪资水平和晋升路径可能会被重新配置。
这些问题在2021年底还只是边缘讨论。开发者社区的主流情绪仍然是兴奋和好奇。Copilot的用户数量持续增长,到2022年初突破200万付费用户,年化收入接近2.5亿美元。这个收入规模虽然无法显著影响微软的财务表现——微软2021财年总收入为1680亿美元——但它的战略价值远超收入本身。
分水岭
Copilot为大模型提供了一个阶段性的商业闭环案例。在Copilot之前,大模型的商业化前景笼罩在不确定性中。GPT-3的API虽然吸引了大量开发者进行实验,但真正在付费场景中稳定运行的应用寥寥无几。投资者开始质疑:如果大模型只是一个昂贵的演示系统,那些数十亿美元的估值是否建立在沙子上?
InstructGPT和ChatGPT后来解决了产品的可靠性问题,但解决的是另一个层面的问题——可控性和安全性。在可控性之前,还有一个更基础的问题:这玩意儿到底能用来干什么赚钱?Copilot是第一个用营收数字回答这个问题的产品。它证明大模型在垂直领域——有明确输入输出、可客观验证质量、有直接经济价值的领域——可以在短期内产生可衡量的商业回报。
这个认知一旦确立,资本开始重新涌入AI领域。2022年上半年,大模型相关的初创公司融资额激增。投资者的提问方式变了,不再追问技术指标的提升空间——那个被规模法则大致回答了——而是追问同一个问题:你的模型能像Copilot那样找到明确的付费场景吗?
这种从技术叙事到商业叙事的转变,是大模型历史上一道清晰的分水岭。智力引擎的发展不再仅由研究者的好奇心驱动,市场逻辑开始发挥越来越大的作用。哪个领域有明确的付费意愿,哪个领域能展示可量化的ROI,资源就会加速流向那个方向。代码生成恰好站在了这个转折点的交汇处:它既有清晰的技术可行性,又有巨大的经济价值。
但Codex的成功也反向证明了一个更广泛的命题。规模法则在代码领域有效——这意味着同样的逻辑可能适用于任何可以序列化的结构化知识领域。数学公式、化学分子式、乐谱、蛋白质序列、材料科学的物理约束。如果模型能学会编程语言的语法和逻辑,为什么不能学会蛋白质折叠的规律?为什么不能学会化学反应的结果预测?多模态模型的研发在2022年加速推进,其认知基础就建立在这个推断上。
这同时也引出了一个令人不安的问题。如果大模型能够通过GitHub上的海量公开代码学会编程,那么那些同样以文本形式存在于网络上的专业知识领域——法律合同、医学诊断报告、金融分析模型——是否也会成为下一个被“认知套利”的对象?这个问题在2022年初还是少数人的远虑,但Copilot已经用事实证明了:模型不需要理解法律,就能生成格式正确的法律文书;模型不需要理解医学,就能根据症状描述生成鉴别诊断列表。模式识别和统计关联在某些专业领域可以达到令人惊讶的效果,即使模型缺乏真正的领域知识和因果推理能力。这个问题是智力引擎从代码觉醒中带出的、悬而未决的债务。
尾声
深夜,西雅图的国会山社区。一个独立开发者坐在他公寓的飘窗旁边,笔记本电脑搁在膝盖上。VSCode编辑器占据了整个屏幕。左手边是项目文件树——一个正在成型的开源工具,用于自动化云资源配置。右手边是Copilot的面板。
他键入一行注释,描述下一个要实现的功能:从消息队列中批量取出数据,解析JSON消息体,写入PostgreSQL数据库,失败时重试三次,并将失败消息发送到死信队列。这行注释下面,灰色代码开始浮现。导入asyncpg和消息队列客户端。定义重试装饰器。构建批量插入SQL语句。处理序列化异常。整个模块的逻辑骨架在不到两秒内生成完毕。
他花了几分钟审查代码。调整了一处错误处理的位置。修改了连接池的大小参数。然后按下Tab,接受剩余部分。单元测试通过。集成测试通过。提交信息写得很短:实现消息消费模块。
他站起身去厨房倒水。窗外是夜色中模糊的华盛顿湖轮廓,室内的显示器冷光映在玻璃上。电脑屏幕上,CI管道正在自动运行。代码从提交到构建到测试到部署,一路绿灯。他端着水杯回来,看到通知栏里的构建成功提示。坐下来,打开下一个issue。继续输入下一行注释。
智力引擎已经从一个研究概念,渗透进价值创造的核心环节。剩下的问题是,这种渗透会止步于哪里——以及,它以谁的规则进行。