微软的AI Copilot开始自动化编码行业 - 彭博社
Jackie Davalos, Dina Bass
微软表示,GitHub Copilot到目前为止已吸引了130万客户。
摄影师:Michael Short/BloombergKris Marszalek
摄影师:Paul Yeung/Bloomberg当软件开发人员Nikolai Avteniev在2021年获得微软公司的Copilot编码助手预览版时,他很快看到了潜力。
由微软的GitHub编码平台开发,基于OpenAI生成式人工智能的一个版本,这个助手并不完美,有时会出错。但是作为StubHub售票员工作的Avteniev,对它如何能够仅凭几个提示就完成代码行感到惊讶。他所要做的就是按下tab键,Copilot就会填写剩下的部分。
“它只用了3个按键,而不是15个,”他最近回忆道。“这是一个小小的速度提升。”
三年后,现在融入了最新版本的OpenAI GPT-4技术,GitHub的Copilot可以做更多事情,包括回答工程师的问题和将代码从一种编程语言转换为另一种。因此,这个助手正在负责越来越多的正在编写的软件,甚至被用来编写公司的关键系统。
尼古拉·阿夫捷涅夫摄影师:戴安娜·泽因·阿尔欣达维/彭博社在这个过程中,Copilot正逐渐改变软件工程师的工作生活——这是第一个大规模使用生成式人工智能的专业群体。微软表示,Copilot目前已吸引了130万客户,包括从小型初创公司到高盛、福特和安永等公司的5万家企业。工程师们表示,Copilot通过处理繁琐和重复的任务,每月节省了他们数百小时的时间,让他们有更多时间专注于更棘手的挑战。
2018年以75亿美元被微软收购,GitHub主导着市场,并且押注Copilot具有AI实力来抗衡包括Tabnine、亚马逊的CodeWhisperer和谷歌支持的Replit Ghostwriter在内的竞争对手服务。GitHub的AI助手也是微软正在将其嵌入Office、Windows、必应和其他业务线的一系列其他Copilot的一种测试。
GitHub Copilot程序员首选
一项调查询问开发人员他们在过去一年中最常使用的AI编码工具
来源:Stack Overflow 2023开发者调查
与AI一般情况一样,GitHub Copilot也有局限性。开发人员表示,它有时会提供过时的代码,对问题提供无用的答案,并生成可能存在错误或侵犯版权的建议。由于该工具是基于公开和开放的代码存储库进行训练的,工程师们面临着复制安全问题或在工作中注入新问题的风险,特别是如果他们盲目接受Copilot的建议。
GitHub强调这个工具是一个助手,而不是人类程序员的替代品,并且将责任放在客户身上,让他们明智地使用它。GitHub首席执行官Thomas Dohmke表示,需要健全的准则来防止懒惰的程序员简单地接受Copilot的建议。他对工程师们能够保持诚实表示信心。
“团队的社会动态将确保那些通过过快接受代码作弊,而不实际按照团队定义的流程进行的人,这些代码不会进入生产环境,”他在一次采访中说。
生成式人工智能是多年来改变计算机编码的最新创新。上个世纪,程序编译器通过快速将命令转换为计算机能够理解的二进制代码加速了软件开发。最近,Linux推广了开源编码,让程序员可以利用彼此的工作,而不是从头开始编写所有内容。
像GitHub的Copilot这样的编码助手可能会更加革命性,因为生成式人工智能具有自动化当前软件工程师工作大部分内容的潜在能力。
Thomas Dohmke摄影师:Lionel Ng/Bloomberg目前,它主要使他们更加高效。StubHub的Avteniev,同时也在纽约市立大学教授软件工程,表示Copilot的预测能力帮助程序员保持“状态”,因为他们不再需要停下来查找信息。Avteniev已经编码超过20年,但即使是他有时也会忘记编程语言,迫使他浪费时间在Google上搜索。他说:“Copilot让你不必退出当前的编码过程。”“即使它生成的是无意义的东西,接受它然后自己纠正仍然比较容易。”
Aaron Hedges,一名有超过15年开发经验的开发者,在Copilot到来之前感到疲惫不堪。Hedges为ReadMe工作,这是一家帮助公司创建其应用程序编程接口(API)技术描述的初创公司。像Avteniev一样,他充分利用Copilot的自动完成功能。“因为我是一名相当资深的工程师,我可以看着那个并说,‘哦,没错。’”他还喜欢他可以在不离开编程窗口的情况下提问。“我不必切换到浏览器并打开一个新标签,这可能会造成很大的干扰,”他说。
以每月10美元的价格,Copilot订阅对于Hedges来说是一个他愿意自掏腰包的便宜货。下班后,他为龙与地下城粉丝构建网站。有一个蹒跚学步的孩子和另一个即将出生的宝宝,闲暇时间显得格外珍贵。“我晚上有两个小时独自编程的时间对我来说非常重要,”他说。“我能越高效,就越好。”
没有比调试软件更烦人的任务了——这个过程可能会占据工程师高达50%的时间。帮助开发者设计应用程序或网站界面的Figma表示,Copilot可以在几分钟内而不是几小时内创建缺陷测试程序。“这就是人工智能的真正价值所在,”该公司的工程副总裁Abhishek Mathur说。“它并不取代我们的工作,而是释放我们的时间来开发创造性的解决方案。”
一些公司开始部署Copilot来为关键系统创建代码。啤酒生产商Carlsberg使用它为一款现有工具编写代码,帮助销售团队计划、准备和记录销售电话。啤酒生产商的首席信息官Sarah Haywood提到,考虑到Copilot的局限性,他们使用自己的质量保证流程来检查他们创建的代码是否按预期工作。她表示,最终,公司将能够外包这项任务。“随着时间的推移,人们会对人工智能建立更多信任,”她说。“我认为我们不应该不断检查人工智能的一切,否则我们实际上并没有增加任何价值。”
为了评估技术的准确性,加拿大滑铁卢大学去年发布了一项实验。研究人员收集了一个数据集,其中包含已知缺陷的代码片段以及这些错误的修复方法。研究人员让Copilot创建这些确切的代码片段,以查看它是否会生成有错误的版本。助手在33%的情况下复制了有缺陷的版本,比人类频率低。在四分之一的情况下,AI生成了带有修复的代码。学校的计算机科学教授之一梅·纳加潘表示,Copilot通常更擅长避免基本错误而不是更复杂的错误。
“这里的类比是,我们现在处于驾驶辅助的时代,还没有到自动驾驶阶段,”他说。
软件工程师可能会缓慢改变他们的工作习惯。许多人欢迎Copilot,但对过度依赖它持谨慎态度。最近一项由GitHub资助的研究发现,开发人员只有27%的时间接受了助手的建议。
工程师在出现问题时也可能很快责怪Copilot。去年10月和12月,Etsy的网站出现短暂崩溃,该公司的一些开发人员指责Copilot导致了这次故障。Etsy证实了这些事件,但否认了Copilot的责任。“虽然我们确实理解工程师可能会讨论Copilot在故障或问题中理论上可能扮演的角色,但我们没有任何证据表明该工具实际导致了任何影响客户的事件,”一位发言人表示。
Copilot预计在未来几年将有显著提升。GitHub已经推出了一些增强功能,包括一个企业版本,可以根据客户自己的编程代码回答问题,这将帮助新工程师快速上手,使资深程序员能够更快地工作。在未来几个月,GitHub还将允许工程师使用雇主自己的代码库来帮助自动完成他们正在开发的程序。这将使生成的代码更加定制化和有帮助。
GitHub不能停滞不前。至少有十几家初创公司正在寻求颠覆市场。一些公司正在利用新模型,大大增加了代码助手可以快速获取的信息量,使它们更容易生成整个程序。投资人兼前GitHub CEO Nat Friedman表示:“一个能够看到你所有代码的AI程序员将能够做出更好的决策并编写比只能通过纸巾卷看到你的代码的程序员更加连贯的代码。”
Friedman支持一家名为Magic AI的初创公司,计划创建“一个超级软件工程师”。而由Peter Thiel支持的Cognition AI则正在研发一个可以独立处理软件项目的助手。普林斯顿大学本月发布了一个用于AI软件工程代理的开源模型,似乎每周都会有新的初创公司涌现。
在采访中,很少有程序员表达对AI取代他们的恐惧。正如许多行业一样,他们表示,自动化将使他们能够专注于更具挑战性和有趣的任务。但是,炙手可热的AI芯片制造商英伟达公司的CEO黄仁勋持有一个不太乐观的观点。他最近预测编程作为一种职业注定要消失。现在AI使得用普通英语编程成为可能,黄仁勋说,任何人都可以成为程序员。
Crypto.com的风险投资部门对该行业激增的估值的可持续性持怀疑态度,数字资产交易所的首席执行官Kris Marszalek表示。
在虚拟货币最新涨势之后,早期加密货币初创公司的数亿美元融资轮明显增加,他的观察引起了人们的关注。这些交易提醒人们,伴随着疫情时代牛市中的投资狂潮,结果参差不齐。