万亿难题:Anthropic是如何让AI编程能力突飞猛进的?

Anthropic 的 Claude Sonnet 3.5 模型在 AI 编程领域取得了显著领先,这促使整个硅谷的竞争对手都在探究其成功秘诀。Anthropic 的优势源于其独特的技术组合,包括从 AI 反馈中进行强化学习 (RLAIF)“宪法 AI”指导原则、出色的工具使用能力、对复杂指令的遵循能力以及高效的记忆管理。这些因素共同作用,使其模型在处理编程任务时表现卓越,并通过 Claude Code 等工具直接从开发者处获取数据,从而形成持续优化的良性循环。

万亿美元的难题

Anthropic 已成为 AI 编程智能的主导者,其成功引发了整个硅谷的探寻和追赶。Sourcegraph 公司的首席执行官奎因·斯莱克(Quinn Slack)将这个问题形容为“价值万亿美元的难题”。从埃隆·马斯克的 xAI 到马克·扎克伯格的 Meta,各大科技巨头都在努力理解并复制 Anthropic 的领先优势。

“我们立刻意识到,‘这个模型在编写长篇高质量代码方面,比市面上任何其他模型都要好’——那种人类会为之自豪的代码。”

— 奎因·斯莱克, Sourcegraph 首席执行官

2024 年 6 月,当 Anthropic 发布 Claude Sonnet 3.5 模型时,斯莱克立即决定将其作为公司的默认模型,并免费提供给用户。他认为,在 AI 领域,跟不上这种变革速度就意味着被淘汰。

揭开成功的秘密

尽管 AI 领域的竞争异常激烈,各大公司都对自己的核心技术保密,但通过对 Anthropic 高管和行业专家的采访,其成功的关键因素逐渐清晰。

StackBlitz 的首席执行官埃里克·西蒙斯(Eric Simons)认为,Anthropic 的一个关键策略是让其模型编写代码并实际部署。软件代码的成败非常明确:它要么能用,要么不能用。这种清晰的“是/否”信号为训练和微调新模型提供了极具价值的反馈。

Anthropic 的核心方法

Anthropic 的联合创始人本·曼(Ben Mann)和产品负责人黛安·佩恩(Dianne Penn)透露了更多细节,证实了其成功的背后是一系列深思熟虑的技术决策。

    • 从人类反馈到 AI 反馈 (RLAIF): 最初,Anthropic 使用人类反馈来优化模型(RLHF)。但随着模型能力的提升,找到足够专业的工程师来提供有效反馈变得越来越难。因此,他们开创了 “从 AI 反馈中进行强化学习”(RLAIF) 的新方法,即让一个 AI 模型来评估另一个 AI 模型的输出。

  • 宪法 AI (Constitutional AI): 为了指导 AI 进行自我评估,Anthropic 制定了一系列英文原则,即“宪法”。在编程任务中,这些原则可能包括:

      • 代码是否解决了用户的最终问题?
      • 代码是否包含了用户未要求的多余功能?
      • 代码是否易于维护?
      • 注释是否有用且清晰?

“这个过程非常简单,”曼解释说,“你让模型生成一个回答,然后让模型根据其中一条原则来批评自己的回答,如果不符合,就让模型修正它。”

超越代码生成:关键能力

Anthropic 的突破并不仅仅依赖于单一技术,而是多种能力的综合结果。

    • 工具使用: Anthropic 训练模型更好地使用工具。由于模型“没有手”,它们被训练成能够自己编写代码来调用外部 API,从而获取天气或股价等实时信息。

    • 遵循复杂指令: 对于大型编程项目,模型需要能够理解并长期遵循人类开发者的复杂指令。Anthropic 在这方面投入了大量精力,使模型能够更好地理解开发者意图,并在遇到困难时接受指导。

  • 高效的记忆管理: 人类开发者也无法记住一个大型代码库的所有细节。Anthropic 训练模型使用一个外部“便笺本”来记录关键信息,同时忽略不重要的细节

    “记住我们讨论了编码质量比记住我们穿什么颜色的衬衫更重要。” — 黛安·佩恩,Anthropic 产品管理负责人

    这种智能的记忆方式让模型能够在整个项目周期内提出连贯且有价值的代码修改建议。

数据优势与未来

麻省理工学院的计算学教授阿曼多·索拉-莱扎马(Armando Solar-Lezama)指出,真正的突破来自研究人员的离散想法,而非仅仅增加数据和算力。然而,获取高质量的开发者行为数据对于保持领先至关重要。

Zencoder 的首席执行官安德鲁·菲列夫(Andrew Filev)认为,来自计算机终端的文本数据是训练编程模型的关键。终端的命令行交互本质上是纯文本,非常适合语言模型学习。

为了直接获取这种宝贵数据,Anthropic 推出了 Claude Code,一个与开发者现有终端配合使用的命令行工具。

“如果我们不与编程用户建立直接关系,我们学习的数量和速度就会慢得多,”本·曼说,“因此,推出 Claude Code 对于我们了解用户需求、改进模型至关重要。”

通过 Claude Code,Anthropic 不仅与客户建立了直接联系,还获得了一个持续的数据来源,这可能帮助其训练出更强大的下一代模型,从而在 AI 编程竞赛中继续保持领先地位。