人在回路中感到疲惫:LLM 辅助编程带来的心理代价
人在回路中感到疲惫:LLM 辅助编程带来的心理代价
LLM 辅助编程增加了工作强度和认知疲劳
使用大语言模型 (LLMs) 进行编程既能提高生产力,又会带来不稳定性。虽然 LLMs 可以快速生成大量代码,但它们将开发者的主要负担从创作行为转向了监督行为,从而导致一种以高强度和满意度降低为特征的特定类型的职业倦怠。
这种转变创造了一种“监督疲劳”,即人类必须在审查大量大多正确但偶尔荒谬的输出时,维持系统的整体意图和连贯性。纠正 AI 的错误——它可能会生成看起来合理但在复杂变更中无法维持连贯意图的代码——所带来的认知负荷,往往超过了手动编写代码的努力。
人类奖励函数问题
传统的编程提供了一系列持续的、由多巴胺驱动的小型奖励:在脑中解决一个逻辑难题、理解一段复杂的代码,或者看到程序第一次编译成功。LLM 辅助编程将这些令人满足的里程碑自动化了,取而代之的是令人精疲力竭的审查任务。
这种现象被称为人类奖励函数问题。在机器学习中,奖励函数定义了什么是“好”;对于人类开发者而言,“奖励”曾是发现和控制的过程。当这个过程被自动化时,令人满足的工作部分缩减了,而质量保证的认知负荷却增加了,从而在工程的情感奖励周期中留下了一个缺口。
从创造者到质量关卡的角色转变
随着生成代码的成本趋向于零,开发者的价值从编写语法的能力转向了行使判断力的能力。软件工程的瓶颈不再是代码本身,而是人类的注意力与工程判断力。
手艺的演进
这种转变反映了 2000 年代后期从固定宽度到响应式网页设计的转变。正如设计师必须从像素级的精确控制转向为流体系统和不确定性进行设计一样,现代工程师必须从逐行控制转向系统级的编排。核心技能——品味、细微差别和架构观点——变得更加关键,因为开发者现在是面对海量输出时的唯一质量关卡。
AI 编排的新兴策略
经验丰富的开发者正在演变其工作流以应对这种新的强度:
- Pre-mortems: 使用一个新的 LLM 会话来假设一个复杂的计划已经失败,并诊断失败的原因,以发现规格说明中的漏洞。
- Knowledge Distillation: 将多年的隐性判断编码为结构化指令(例如,
AGENTS.md文件)以更有效地引导 AI agent。 - Iterative Planning: 避免“agentic”的一次性尝试,转而采用计划、执行小步骤、并并在继续下一步之前审查每一步的紧密循环。
社区观点与反论点
虽然许多开发者报告称,由于提示词(prompting)的“老虎机”性质而感到精疲力竭,但也有人发现这种转变是解放性的。LLM 的影响似乎很大程度上取决于开发者的原型类型:
"有人通过快速构建来获得乐趣,他们往往热爱 LLM。有人热爱编写代码的艺术;他们他们并不倾向于热爱 LLM... LLM 使某些开发者原型变得更高效,而使其他原型更加疲惫。"
一些开发者认为,AI 移除了语法的“苦差事”和导航的繁琐,使他们能够完全专注于高层架构。另一些人指出,编程的社交属性正在被侵蚀,因为与同事进行“小黄鸭调试法”(rubber-ducking)的自然冲动被替换成了向机器发送另一个提示词,从而增加了职业孤立感。
最后,一些观察者注意到问责制的转变。在某些工作场所,“人在回路中”(human-in-the-loop)这一术语正被“人类承担责任”(human on the hook)所取代,这反映了一个现实:人类不再是过程中的协作人员,而是在 AI 生成的输出在生产环境中失败时,承担全部责任的一方。