---
title: "AI 辅助如何影响编程技能的形成"
title_en: "How AI assistance impacts the formation of coding skills"
source: "Anthropic"
source_url: "https://www.anthropic.com/research/AI-assistance-coding-skills"
published_at: "2026-07-08T22:03:46.000Z"
language: "zh-CN"
topics: ["claude"]
tags: ["Anthropic","Claude"]
review_status: "unreviewed"
---

# AI 辅助如何影响编程技能的形成

> 一项随机对照试验发现，使用 AI 辅助编程会导致开发者对所学概念的掌握程度显著下降，测验分数比手动编码组低 17%。

## 内容摘要

Anthropic 的最新研究通过随机对照试验，探讨了 AI 辅助对软件开发者技能形成的影响。52 名初级工程师在使用或不使用 AI 的情况下学习 Python 库 Trio 并完成编程任务。结果显示，AI 组在后续测验中平均得分 50%，而手动编码组为 67%，差距相当于近两个字母等级。定性分析发现，高分参与者更倾向于将 AI 用于概念理解而非单纯代码生成。研究指出，AI 可能以牺牲技能发展为代

## 为什么值得关注

随着 AI 编程工具普及，开发者可能过度依赖 AI 而削弱自身技能，尤其是调试和概念理解能力。这会影响他们监督 AI 生成代码的能力，对软件质量和安全构成风险。研究结果对 AI 产品设计、企业 AI 政策和个人学习策略具有重要启示。

## 核心要点

- AI 组测验平均分 50%，手动组 67%，差距显著。
- 使用 AI 未显著提升任务完成速度。
- 高分参与者用 AI 追问概念，低分者依赖代码生成。
- 调试能力受 AI 影响最大。
- 认知努力对技能发展至关重要。

研究表明，AI 能帮人们[更快地完成](https://papers.ssrn.com/sol3/papers.cfm?abstract_id=4945566)部分工作任务。在一项基于 [Claude.ai](http://claude.ai/redirect/website.v1.2397298e-a2be-4064-bedd-12fd760d437d) 数据的[观察性研究](https://www.anthropic.com/research/estimating-productivity-gains)中，我们发现 AI 可以将某些任务的速度提升 80%。但这种效率提升是否伴随着代价？其他研究显示，当人们使用 AI 辅助时，他们对工作的[投入度会降低](https://www.nature.com/articles/s41598-025-98385-2)，并且会[减少](https://www.microsoft.com/en-us/research/wp-content/uploads/2025/01/lee_2025_ai_critical_thinking_survey.pdf)在工作中付出的努力——换句话说，他们把思考"外包"给了 AI。

目前还不清楚这种"认知外包"是否会阻碍人们在工作中提升技能，或者——就编程而言——理解他们正在构建的系统。我们最新的研究通过一项随机对照试验（参与者是软件开发者），探讨了在工作中使用 AI 可能带来的这一负面影响。

这个问题影响广泛——涉及如何设计促进学习的 AI 产品、工作场所应如何制定 AI 政策，以及更广泛的社会韧性等。我们聚焦于编程领域，因为 AI 工具在这里已经迅速成为标配。AI 在这里制造了一个潜在的矛盾：随着编程越来越自动化、工作速度越来越快，人类仍然需要具备发现错误、引导输出、最终对部署在高风险环境中的 AI 进行监督的能力。AI 是否同时提供了技能发展和效率提升的捷径？还是说，AI 辅助带来的效率提升反而会削弱技能发展？

在一项随机对照试验中，我们研究了：1) 软件开发者在使用和不使用 AI 辅助的情况下，学习新技能（这里是一个 Python 库）的速度有多快；2) 使用 AI 是否让他们更不容易理解自己刚写出的代码。

我们发现，使用 AI 辅助会导致掌握程度出现统计上显著的下降。在一项涵盖他们几分钟前刚用过的概念的测验中，AI 组的参与者得分比手动编码组低 17%，相当于差了将近两个字母等级。使用 AI 略微加快了任务完成速度，但这一差异未达到统计显著性。

重要的是，使用 AI 辅助并不保证得分更低。人们如何使用 AI 会影响他们记住多少信息。掌握程度更好的参与者使用 AI 辅助不仅是为了生成代码，更是在此过程中建立理解——比如通过追问后续问题、请求解释，或在独立编码时提出概念性问题。

## 研究设计

我们招募了 52 名（主要是初级）软件工程师，每个人使用 Python 的频率都超过一年，至少每周一次。我们还确保他们对 AI 编程辅助至少有一定了解，并且不熟悉我们任务所基于的 Python 库——Trio。

我们将研究分为三部分：热身；主要任务（使用 Trio 编写两个不同的功能，这需要理解异步编程的相关概念——一种通常在专业环境中学习的技能）；以及一次测验。我们告诉参与者任务结束后会有测验，但鼓励他们尽可能快地完成。

我们设计的编程任务模拟了人们通过自学教程学习新工具的方式。每位参与者都会收到问题描述、起始代码，以及解决问题所需的 Trio 概念的简要说明。我们使用了一个在线编码平台，侧边栏有一个 AI 助手，它可以访问参与者的代码，并且可以在被要求时随时生成正确的代码¹。

### 评估设计

在评估设计中，我们借鉴了[计算机科学教育领域的研究](https://ieeexplore.ieee.org/document/9962584)，确定了四种常用于评估编程技能掌握程度的问题类型：

- **调试**：识别和诊断代码中错误的能力。这项技能对于检测 AI 生成的代码是否正确以及理解其失败原因至关重要。

- **代码阅读**：阅读和理解代码功能的能力。这项技能使人类能够在部署前理解和验证 AI 编写的代码。

- **代码编写**：编写或选择正确方法编写代码的能力。随着 AI 编程工具的进一步整合，低级代码编写（如记住函数的语法）将不如高级系统设计重要。

- **概念理解**：理解工具和库背后核心原理的能力。概念理解对于评估 AI 生成的代码是否使用了符合库设计意图的适当软件设计模式至关重要。

我们的评估最侧重于调试、代码阅读和概念理解问题，因为我们认为这些对于监督越来越可能由 AI 生成的代码最为重要。

## 结果

平均而言，AI 组的参与者完成速度大约快两分钟，但这一差异在统计上不显著。然而，测验分数存在显著差异：AI 组的平均得分为 50%，而手动编码组为 67%——相当于差了将近两个字母等级（Cohen's d=0.738，p=0.01）。两组之间分数差距最大的是调试问题，这表明如果 AI 阻碍了编程能力发展，那么理解代码何时出错以及为何失败的能力可能是一个特别值得关注的领域。

### 定性分析：AI 交互模式

我们特别感兴趣的是了解参与者如何完成我们设计的任务。在定性分析中，我们手动标注了屏幕录像，以确定参与者花了多少时间编写查询、他们问了什么类型的问题、犯了什么类型的错误，以及花了多少时间主动编码。

一个令人惊讶的结果是参与者与 AI 助手互动的时间。有几位参与者花了长达 11 分钟（占总时间的 30%）编写多达 15 个查询。这有助于解释为什么平均而言，使用 AI 的参与者完成得更快，尽管效率提升在统计上不显著。我们预计，当 AI 用于重复性或熟悉的任务时，更有可能显著提高效率。

不出所料，不使用 AI 的组遇到了更多错误。这些错误包括语法错误和 Trio 概念错误，后者直接映射到评估中测试的主题。我们的假设是，遇到更多 Trio 错误（即对照组）的参与者可能通过独立解决这些错误提高了调试技能。

然后，我们根据参与者与 AI 的交互方式对他们进行分组，识别出导致不同完成时间和学习结果的不同模式。

**低分交互模式**：低分模式通常涉及对 AI 的严重依赖，无论是通过代码生成还是调试。该组的平均测验分数低于 40%。他们表现出较少的独立思考，更多的认知外包。我们进一步将其分为：

- **AI 委托型**（n=4）：该组参与者完全依赖 AI 编写代码并完成任务。他们完成任务最快，过程中很少或没有遇到错误。

- **渐进式 AI 依赖型**（n=4）：该组参与者开始时问一两个问题，但最终将所有代码编写委托给 AI 助手。他们在测验中得分很低，主要是因为未能掌握第二个任务中的任何概念。

- **迭代式 AI 调试型**（n=4）：该组参与者依赖 AI 来调试或验证他们的代码。他们问了更多问题，但依赖助手来解决问题，而不是澄清自己的理解。结果他们得分很低，完成两个任务的速度也较慢。

**高分交互模式**：我们认为高分测验模式是平均测验分数达到 65% 或更高的行为。这些集群中的参与者既使用 AI 进行代码生成，也用于概念查询。

- **生成后理解型**（n=2）：该组参与者首先生成代码，然后手动复制或粘贴代码到他们的工作中。代码生成后，他们向 AI 助手追问问题以提高理解。这些参与者使用 AI 时速度并不特别快，但在测验中表现出更高水平的理解。有趣的是，这种方法看起来与 AI 委托型几乎相同，只是他们使用 AI 来检查自己的理解。

- **混合代码-解释型**（n=3）：该组参与者编写混合查询，同时请求代码生成和对生成代码的解释。阅读和理解他们要求的解释花费了更多时间，但有助于他们的理解。

- **概念探究型**（n=7）：该组参与者只问概念性问题，并依靠他们提高的理解来完成任务。尽管该组遇到了很多错误，但他们也独立解决了这些错误。平均而言，这种模式在高分模式中速度最快，总体速度仅次于 AI 委托型。

我们的定性分析并未在交互模式和学习结果之间建立因果联系，但它确实指出了与不同学习结果相关的行为。

## 结论

我们的结果表明，在工作场所（尤其是软件工程领域）积极引入 AI 是存在代价的。研究结果强调，并非所有对 AI 的依赖都是一样的：我们在追求效率时与 AI 互动的方式会影响我们学到多少。考虑到时间限制和组织压力，初级开发者或其他专业人士可能会依赖 AI 尽可能快地完成任务，但代价是技能发展——尤其是当出现问题时调试问题的能力。

尽管是初步结果，但这些结果在公司从人工编写代码转向更多 AI 编写代码的过程中提出了重要的考量。如果初级工程师的技能发展因首先使用 AI 而受到阻碍，那么效率提升可能会以验证 AI 编写代码所需的技能为代价。管理者应该有意识地思考如何大规模部署 AI 工具，并考虑确保工程师在工作中继续学习——从而能够对他们构建的系统进行有意义的监督——的系统或有意的设计选择。

对于软件工程或任何其他行业的新手工作者来说，我们的研究可以看作是一个小小的证据，证明了有意识地使用 AI 工具发展技能的价值。认知努力——甚至陷入痛苦的困境——对于培养掌握能力可能很重要。这也是一个适用于个人如何选择与 AI 合作以及使用哪些工具的教训。主要的 LLM 服务也提供了旨在促进理解的学习模式（例如，[Claude Code 学习和解释模式](https://code.claude.com/docs/en/output-styles)或 [ChatGPT 学习模式](https://openai.com/index/chatgpt-study-mode/)）。了解人们在使用 AI 时如何学习也有助于指导我们如何设计它；AI 辅助应该使人类能够更高效地工作，同时发展新技能。

先前的研究对于 AI 是[帮助](https://arxiv.org/abs/2302.06590)还是[阻碍](https://arxiv.org/abs/2507.09089)编程效率得出了不同的结果。我们自己的[研究](https://www.anthropic.com/research/estimating-productivity-gains)发现，AI 可以将完成某些工作任务的时间减少 80%——这一结果似乎与这里呈现的发现存在矛盾。但这两项研究提出了不同的问题，使用了不同的方法：我们早期的观察性研究测量了参与者在已经具备相关技能的任务上的效率，而本研究则考察了人们在学习新东西时会发生什么。有可能 AI 既加速了已熟练掌握技能的工作效率，又阻碍了新技能的获取，尽管需要更多研究来理解这种关系。

这项研究只是揭示人机协作如何影响工作者体验的第一步。我们的样本相对较小，并且我们的评估是在编码任务后不久测量理解程度。即时测验表现是否能预测长期技能发展，是本研究未能解决的一个重要问题。还有许多未解之谜，我们希望未来的研究能够探讨，例如 AI 对编程以外任务的影响、这种影响是否会随着工程师流利度的提高而长期消失，以及在学习过程中 AI 辅助是否与人类辅助不同。

最终，为了在 AI 存在的情况下适应技能发展，我们需要对 AI 对工作者的影响有一个更全面的看法。在 AI 增强的工作场所，效率提升很重要，但支撑这些效率提升的专业知识的长期发展也同样重要。

阅读[完整论文](https://arxiv.org/abs/2601.20245)了解详情。

### 致谢

本项目由 Judy Hanwen Shen 和 Alex Tamkin 领导。本博文的编辑支持由 Jake Eaton、Stuart Ritchie 和 Sarah Pollack 提供。

我们要感谢 Ethan Perez、Miranda Zhang 和 Henry Sleight 通过 Anthropic 安全研究员计划使本项目成为可能。我们还要感谢 Matthew Jörke、Juliette Woodrow、Sarah Wu、Elizabeth Childs、Roshni Sahoo、Nate Rush、Julian Michael 和 Rose Wang 对实验设计的反馈。

```
@misc{aiskillformation2026,
  author = {Shen, Judy Hanwen and Tamkin, Alex},
  title = {How AI Impacts Skill Formation},
  year = {2026},
  eprint = {2601.20245},
  archivePrefix = {arXiv},
  primaryClass = {cs.LG},
  eprinttype = {arxiv}
}
```

### 脚注

- 重要的是，这种设置不同于像 Claude Code 这样的智能编码产品；我们预计这类程序对技能发展的影响可能比这里的结果更显著。

重要的是，这种设置不同于像 Claude Code 这样的智能编码产品；我们预计这类程序对技能发展的影响可能比这里的结果更显著。

## 相关内容

### AI 模型中双用途知识的"关闭开关"

### 语言模型中的全局工作空间

新的可解释性研究揭示了 Claude 中一个涌现的心理工作空间，它持有不出现在模型输出中的内部想法。

### Anthropic 经济指数报告：节奏

在我们最新的经济指数报告中，我们首次按小时采样，以探究：人们什么时候来找 Claude？他们用它生产什么？以及他们如何看待 AI 对其工作的影响？

---

英文原文：[How AI assistance impacts the formation of coding skills](https://www.anthropic.com/research/AI-assistance-coding-skills)
