AI

了解AI编码风格是有效进行振动编码的关键

发布时间:2025年10月22日    来源:szf
了解AI编码风格是有效进行振动编码的关键

快速阅读: 专栏讨论氛围编码重要性,指出了解AI编码个性对成功利用氛围编码至关重要,强调细节决定成败。

确保了解为你生成代码的人工智能编码风格或个性特征。

今日专栏继续探讨我关于“氛围编码”系列的话题,重点分析在使用生成式人工智能或大模型时,了解其编码个性的重要性。如果你不了解这一隐藏的编码风格方面,将很难成功利用氛围编码。

俗话说,细节决定成败。

我们来谈谈这个问题。

这项关于人工智能突破的分析是我持续为《福布斯》专栏撰写的最新内容之一,旨在识别并解释各种重要的AI复杂性(详情见链接)。

氛围编码正在流行

简单介绍一下氛围编码的基础知识。关于氛围编码的具体内容,可参考以下链接(链接1,链接2)。

传统的编程方法通常是手写源代码,常用的语言有Python、C++等。如今,生成式AI和大模型已经足够成熟,可以用来生成代码。就像你在AI中输入提示以生成故事或回答问题一样,AI也可以为你生成编程代码。例如,整个Python程序可以在几分钟内生成,而手动编写可能需要数小时、数天甚至数周。

这意味着非技术用户如果想开发应用程序,只需告诉AI他们想要的应用程序功能,AI就能快速生成所需的代码。这种做法被称为“氛围编码”,因为用户只需用自然语言(如英语)表达他们的需求,AI就会完成繁重的编码工作。

氛围编码者层出不穷

进行氛围编码的用户通常被称为氛围编码者。

几乎任何人都可以自称是氛围编码者,这使得这个头衔显得模糊且不可靠。一些人强烈认为应该有一个通用的认证或许可制度,要求证明你确实掌握了正确的氛围编码技巧,才能声称自己是氛围编码者。因此,出现了关于如何成为顶级氛围编码者的课程。

目前,氛围编码和成为氛围编码者还处于自发阶段。它是否会发展成更加正式和系统化的形式尚不确定。普遍预计,氛围编码不会经历严格的正规化过程。大多数氛围编码将由不那么专业的大众随意进行,最终可能会形成职业氛围编码者和业余氛围编码者两个群体,其中只有极少数会成为职业氛围编码者。

时间会给出答案。

人类如何编写代码

在深入探讨氛围编码之前,让我们先考虑一下人类编写代码的一些关键基础。

任何曾经看过别人代码的人都会告诉你,编程或编码风格存在很大的差异。这也被称为软件开发者的编码个性。其基本思想是,你编写代码的方式反映了某种特定的风格或个性特征。

有些软件开发者非常精确,编写出简洁而深思熟虑的代码。他们努力确保源代码易于理解,让其他查看代码的人能够立即明白代码的功能。代码刚好够长,以完成任务,避免冗余或携带不必要的部分。这种编码风格或编程个性值得称赞。

另一方面,有些程序员编写的代码杂乱无章,令人费解。尽管这些代码可能运行正常,但其他人几乎无法理解其运作方式。代码可能是意大利面式的结构,复杂的循环和死胡同使得审查代码如同解决谋杀之谜。此外,代码可能比实际需要的要长得多。总体而言,这种编码风格极为糟糕。

总的来说,编码风格可以归结为几类或十几种主要类型,尽管在一定程度上,这些风格各不相同,并受个人培训方式的影响。此外,可能有明确的要求规定了你应该如何编写代码,比如软件经理要求你以特定方式编写代码。

资深软件开发人员无疑会有很多关于他们职业生涯中遇到的其他人的编码风格的可怕故事。在我的长期软件工程师经历中,有一件事情我永远不会忘记:被一家公司聘请去重写一个他们完全依赖的重要程序。当时,公司处境非常困难,他们告诉我,这个关键程序是由一位外部承包商开发的,而这位承包商一直将源代码保密。这使得公司在很大程度上受制于该软件开发者的一举一动。

这位程序员会要求高昂的费用来完成最微小的代码更改。当他外出度假时,公司的高层领导担心没有人知道如何调试代码或在需要时进行调整。公司直到长时间依赖这个程序和那位不可靠的程序员之后,才意识到自己已经陷入了不利的局面。我最终在服务器上找到了源代码并进行了查看。

让我既想笑又感到不可思议的是,代码中的所有变量和常量都以古典音乐家的名字命名。例如,一个表示库存数量的变量被命名为贝多芬,另一个记录日期的变量被命名为莫扎特。这样的命名方式让代码表面看起来难以理解。他本可以使用更具代表性的名称,却选择了完全无关的命名规则。这只是代码中众多令人沮丧和不安的编码风格之一。我最终弄懂了代码并进行了重写。客户对于代码现在可以由其他人轻松维护和扩展感到非常欣慰。原始编写者是有意编写晦涩难懂的代码,还是这只是他的自然编程方式?这是一个开放的问题,幸运的是,这个问题不再困扰公司。

### 氛围编程与生成的代码

回到氛围编程的话题,你可能会首先认为如果人工智能要为你生成代码,那么就没有必要再检查代码的外观了。代码只会在计算机上运行,人类无需检查代码。无论代码是美观还是混乱不堪,都没有什么关系。事情并非如此简单。

假设生成的代码复杂且运行速度极慢。你生成的应用程序将会像树懒一样缓慢。程序的用户不会满意,这对你是不利的,对所有人都是不利的。也许代码运行良好,但没有包含错误检查功能。用户误将自己的年龄输入为225岁,实际想要输入的是22岁。由于人工智能没有提供错误检查代码,后续代码假定用户确实是225岁,从而引发一系列问题。

问题的核心在于生成的代码确实很重要。不仅涉及代码在运行时的表现,还涉及到代码是否易于人类理解。为什么人类需要检查人工智能生成的代码呢?

因为目前由现代通用大语言模型生成的代码往往不完整,存在错误,需要人类软件开发人员审查代码并尝试使其更加健壮。目标是最终让人工智能替你完成这项工作。但在那之前,生成易于人类阅读的代码仍然是一个高优先级的任务。

### 评估现有的大语言模型

在最近的一项名为“领先大语言模型的编码个性”的研究中,研究人员实验了各种流行的大语言模型,以评估它们在人工智能生成代码方面的优缺点。以下是他们的一些主要发现(摘录):

“大型语言模型的代码生成能力是其在软件开发中日益广泛应用的基础。”

“为了有效利用人工智能进行编码,开发人员需要准备好识别并弥补这些模型的弱点。”

“我们的分析涵盖了两类模型:五种领先的‘非推理型’大语言模型(Anthropic的Claude Sonnet 4和3.7、OpenAI的GPT-40、Meta的Llama 3.2 90B以及开源的OpenCoder-8B)和一种新的‘推理型’模型,GPT-5。”

“为了进行直接的对比,我们评估了GPT-5在其最小推理模式下的表现,这种模式类似于其同类产品的非推理方法。”

一方面,它们具备从生成语法正确的代码到解决复杂算法问题等一系列强大能力,这使得它们的出现如此引人注目。另一方面,它们都存在相同的盲点:一致无法编写安全代码、工程纪律不足以及倾向于产生技术债务。

目前,关于通用大模型生成代码的一个重要问题是,它们经常产生脆弱、易受网络安全攻击且总体上不如专业人类软件开发者所产代码的质量。

不幸的是,那些愉快地使用AI生成代码的业余程序员并未意识到他们开发的应用和程序可能含有与漏洞、错误和易被黑客利用的安全隐患相关的定时炸弹。

如果将一群人类软件开发者聚集在一起,很有可能通过检查他们的代码将其归类为不同的编码风格或个性。这样做可以让你更好地了解他们会以何种方式为你编写代码。

该研究选择了几个大模型进行考察,并为每个AI表达了如下编码风格或个性:

– 基础性能者:GPT-5-minimal

– 高级架构师:Claude Sonnet 4

– 平衡前辈:Claude 3.7 Sonnet

– 高效通才:GPT-4o

– 未兑现承诺:Llama 3.2 90B

– 快速原型制作师:OpenCoder-8b

如果你正在使用这些大模型,请务必考虑其编码风格是否会生成满足你所需应用程序或程序的代码。

变化多端

任何对生成代码的大模型探索都会受到这些模型快速变化的影响。例如,如果AI开发者在后台调整了AI生成代码的方式,先前的假设可能不再成立。同理,当新版本的AI发布时,旧版本的表现可能不能预测新版本的行为。新版本可能会以完全不同的方式生成代码。

另一个因素是大模型是否经过定制或调整以专门生成代码。本质上,你可以使用通用生成AI来生成代码,这是最简单的方法,或者使用专门为代码生成而设计的大模型。理论上,定制化的模型在生成代码方面应该表现更好,因为这是它们被设计或调整的目的(当然,这并不是绝对的保证)。

此外还有更多变数。

AI开发者意识到人们希望使用AI生成代码。直到现在,大多数通用大模型在这方面只是副业。AI开发者并没有给予太多关注。随着用户越来越倾向于使用能够生成严谨代码的AI,这一领域开始吸引资金投入,以完善这些功能。

可以预见,不久的将来,生成的代码将自动包含坚实的错误检查、防止漏洞并接近专业软件开发者的水平。我们尚未达到这一目标。但这是一条通往巨大财富的道路,因此AI开发者正积极朝这个方向努力。

小技巧

最后,一个你可以考虑使用的技巧是在适当时候告诉AI你想要生成的代码类型。要点在于,如果你只是平淡地告诉AI生成一个工资系统或约会应用的代码,AI将会使用其默认的代码生成模式。

你可以在提示中明确告诉AI你希望生成的代码类型。越具体越好,这样生成的代码就越不可能有预先设定的问题和缺陷。我必须警告你,这不是万能的解决方案。即使你指导AI以合理和定向的方式生成代码,也不能保证AI会完全按照指示行事。但这是一个显著的促进因素。

在即将发布的文章中,我将分享如何通过提示让AI适当地生成代码。敬请期待该篇文章。

最后一点思考。

贝多芬曾说过:“音乐可以改变世界。”我借用这句话并说,AI可以改变世界,尤其是生成代码的AI。一场巨大的变革即将到来,世界将因此而不同。

我已经能听到音乐在播放。

(以上内容均由Ai生成)

你可能还想读

Apriority获230万美元种子轮融资,加入Techstars加速债务管理智能化

Apriority获230万美元种子轮融资,加入Techstars加速债务管理智能化

快速阅读: Apriority宣布完成230万美元种子轮融资,由Techstars等领投。平台利用AI技术优化债务管理,帮助借款人节省利息,掌握财务控制权,尤其惠及低收入家庭。 旧金山,2025年10月23日 —— 以借款人为核心的服务平台 […]

发布时间:2025年10月23日
Cercli获1200万美元融资,加速AI劳动力平台发展

Cercli获1200万美元融资,加速AI劳动力平台发展

快速阅读: 阿联酋工作管理平台Cercli获1200万美元A轮融资,由Picus Capital领投。资金将用于产品开发、AI创新及市场扩展,目标中东、欧洲和北美。Cercli实现每月22%增长率,客户覆盖50国。 总部位于阿联酋的工作管理 […]

发布时间:2025年10月23日
扎克伯格裁撤600名AI工程师,但称AI仍是未来核心

扎克伯格裁撤600名AI工程师,但称AI仍是未来核心

快速阅读: Meta宣布裁减AI部门约600名工程师,涉及FAIR等多个团队,旨在精简业务提高效率。CEO扎克伯格重申AI仍是公司核心,将继续投资高级机器学习和超级智能项目。 Meta近日宣布从其人工智能(AI)部门裁员约600名工程师,此 […]

发布时间:2025年10月23日
Andreessen Horowitz拟筹集100亿美元,加密货币未被列入重点

Andreessen Horowitz拟筹集100亿美元,加密货币未被列入重点

快速阅读: 风险投资公司a16z计划筹集100亿美元,重点投资AI和国防,未提及加密货币。此举令人意外,因a16z曾是加密领域的重要支持者,近期仍积极投资相关项目。 据报道,风险投资公司安德森·霍洛维茨(a16z)正在寻求筹集约100亿美元 […]

发布时间:2025年10月23日
花旗资助香港390万港元,助力贫困青年掌握AI技能

花旗资助香港390万港元,助力贫困青年掌握AI技能

快速阅读: 花旗基金会向香港“改变年轻生命基金会”捐赠50万美元,支持为期两年的“求职挑战”项目,提升弱势青少年的人工智能技能和求职能力,增强其就业竞争力。 花旗基金会向香港“改变年轻生命基金会”拨款50万美元(约390万港元),用于为期两 […]

发布时间:2025年10月23日
AI成新界面,企业转型加速

AI成新界面,企业转型加速

快速阅读: 自动驾驶技术从微小升级到移除方向盘,彻底改变车辆设计和旅程体验,重塑汽车与环境的关系。AI发展类似,通过小步快跑实现重大转变,成为统一的用户界面,改善客户互动体验。 多年来,汽车自主驾驶功能的发展似乎只是一系列微小的升级,比如车 […]

发布时间:2025年10月23日
实博蒂克斯成立顾问委员会,推动AI技术发展

实博蒂克斯成立顾问委员会,推动AI技术发展

快速阅读: Realbotix成立顾问委员会,增强AI技术,调整董事会。成员包括谷歌萨利姆·哈桑及转任的安德鲁·德苏扎,目标推进AI与机器人技术发展。弗雷德·派退休,公司感谢其贡献。调整优化产品,强化全球市场地位。 Realbotix公司宣 […]

发布时间:2025年10月23日
OpenAI联手Vantage在威斯康星建数据中心,预计近吉瓦规模

OpenAI联手Vantage在威斯康星建数据中心,预计近吉瓦规模

快速阅读: OpenAI宣布在美国扩展Stargate数据中心计划,包括威斯康星州Lighthouse项目,预计2028年完工,将开发近1吉瓦电力,采用可持续能源和环保措施,创造数千就业岗位。 该设施是OpenAI在披露美国五个Starga […]

发布时间:2025年10月23日