“AI程序员”上岗,软件开发的“第三次工业革命”来临?(第三次工业革命人工智能)

澎湃新闻见习记者 邵文

近日,GitHub、GitHub的母公司微软和OpenAI联合推出了“AI配对程序员”GitHub Copilot的技术预览版,这也是微软向OpenAI投资10亿美元后的首个主要成果。

“AI程序员”上岗,软件开发的“第三次工业革命”来临?(第三次工业革命人工智能)

GitHub Copilot官网中将其描述为:“你的AI配对程序员”,可直接在编辑器中获取有关整行或整个函数的建议,帮助你更快完成编程工作。

GitHub Copilot不是搜索引擎,它提出的绝大多数代码建议都是新生成的,此前从未出现过。它会分析用户已编写的代码,并生成新的匹配代码,包括之前调用过的特定函数。可实现的主要功能有:根据注释写出代码、快速评估不同方法、编写测试、自动填充重复代码、给出整行代码或整个函数的补全建议以及适应用户编写代码的方式。

AI开始抢夺程序员的工作了?

“AI程序员”上岗,软件开发的“第三次工业革命”来临?(第三次工业革命人工智能)

从左起,GitHub首席执行官Chris Wanstrath、微软首席执行官Satya Nadella和GitHub首席执行官Nat Friedman在旧金山GitHub总部。(来源:微软)

GitHub Copilot建立在Open AI Codex的新算法之上,Open AI首席技术官Greg Brockman将其描述为GPT-3的后代。GPT-3是Open AI的旗舰语言生成算法,可以生成无法区分是否为人类书写的文本。他进一步解释道,编程涉及提出关于如何做某事的想法,然后实施它,Copilot擅长实施。

Open AI是一家人工智能初创公司,现由Y Combinator前总裁Sam Altman领导。自Altman领导以来,OpenAI已经从非营利转向“有限盈利”(capped-profi)模式,2019年接受了微软的投资。2020年9月,微软获得OpenAIGPT-3语言模型的独家许可。

GitHub首席执行官Nat Friedman在博客中表示,Copilot适用于广泛的框架和语言,但目前发布的技术预览版对Python、JavaScript、TypeScript、Ruby和Go尤其适用。

对于AI替代程序员的热议,Nat Friedman表示,“软件开发正迎来自己的‘第三次工业革命’。第一次革命是编译器、调试器、垃圾收集器以及语言等工具的出现,极大提升了开发者的工作效率;第二次则以开源为龙头,帮助全球开发者社区汇聚起来并在彼此的开发成果基础之上不断推进;第三次革命就在当下,尝试在编码当中使用AI技术。在发展成熟之后,开发人员的日常工作内容将有巨大改变——但仍然有很多工作可做、也只能由人类开发者完成,因此不用太担心。”

本质上来说,Copilot是一款AI结对编程工具。程序员可以在机器辅助下进行编程,并且在与AI共同完成程序编写的过程中,程序员会及时纠正机器人的错误,进一步改进机器人学习的模型。

GitHub认为该工具是结对编程的重大进展,程序员在编写代码时有了一个“虚拟的帮手”,它可以捕捉到程序员的错误,加速开发过程。

这里说的结对编程(Pair programming)是计算机编程领域的术语,用来代指两个程序员在一台计算机上共同工作,一个人输入代码,而另一个人审查输入的每一行代码,输入代码的人称作驾驶员,而审查代码的人称作观察员。为了保证结对编程的纠偏能力,两个程序员经常互换角色。

近年来人机结对编程(MMPP)不断成熟,AI结对编程(AIPP,可以简单理解为人机结对编程的升级版)产品也逐步成熟落地,目前典型的落地产品有aiXcoder智能编程机器人和最新亮相的Copilot。

对于Copilot能实现怎样的效果,官网做了如下演示。

根据注释写出代码:编程者给出一条描述代码逻辑的注释,Copilot就能自动生成代码。

“AI程序员”上岗,软件开发的“第三次工业革命”来临?(第三次工业革命人工智能)

代码补全:提取代码上下文,即可给出整行代码或整个函数的补全建议。

“AI程序员”上岗,软件开发的“第三次工业革命”来临?(第三次工业革命人工智能)

自动填充重复代码:

“AI程序员”上岗,软件开发的“第三次工业革命”来临?(第三次工业革命人工智能)

编写测试:导入单元测试包,即可帮开发者实现与代码匹配的软件测试。

“AI程序员”上岗,软件开发的“第三次工业革命”来临?(第三次工业革命人工智能)

快速评估不同方法:

在编程中,同一个函数常有多种实现方法,编程者通常会根据代码的实现效果和运行性能选择最合适的方法,Copilot可一键查看多种实现方法。

“AI程序员”上岗,软件开发的“第三次工业革命”来临?(第三次工业革命人工智能)

“这很可能是让编程本身更平易近人的事情之一,”微软CTO凯文·斯科特表示。

Copilot的核心Codex模型使用GitHub的数十亿行公开可用代码以及英语示例进行训练。对于由此引发的争议,Friedman回应称,“总体来说:(1)在公共数据上训练机器学习系统属于合理的使用方式;(2)输出结果的所有权归于操作者,跟传统的编译器没什么区别。具体到训练问题上,大家也可以看到OpenAI向美国专利商标局做出的承诺。”

GitHub也表示,并不是所有使用的代码都经过了漏洞、不安全实践或个人数据的审查。因此,他们也设置了一些过滤器来防止Copilot生成攻击性的语言,但效果可能并不完美,需要后续完善。

GitHub Copilot首先会出现在微软的免费开源产品Visual Studio Code中,未来,微软计划将其整合到商业产品Visual Studio中。

责任编辑:李跃群

校对:张艳

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

(0)
上一篇 2024年5月1日 上午10:36
下一篇 2024年5月1日 上午10:48

相关推荐

  • 仓库管理系统项目计划

    仓库管理系统项目计划 仓库管理系统是一种用于管理仓库库存和物流的软件系统。在现代商业环境中,仓库管理系统已经成为一种必要的工具,可以帮助企业更好地管理库存,提高生产效率,减少成本,…

    科研百科 2024年12月19日
    2
  • 信息化项目管理的重点在哪?(信息化项目管理的重点在哪些方面)

    做项目(特别是信息化项目)的重点在哪?人!特别是大项目,人员要到位,形成联系人清单,办公地点要确定,知道在哪里找到人。甲乙双方在一起,甲方重点看项目总监和项目经理,既然选择了供应商…

    科研百科 2022年12月28日
    164
  • 2023四川地方高校预算经费分析,8所高校增幅超30%,12所超10亿元(四川各高校经费预算)

    四川省一共有本科院校53所,其中公办本科院校35所,其中部属高校6所,省属地方高校29所。这些地方高校的年度预算经费有多少,也是我们对比高校实力差距的一个因素之一。 2023年预算…

    科研百科 2024年4月17日
    1.2K
  • 无纸化办公会议系统

    无纸化办公会议系统:让会议更高效 无纸化办公会议系统是一种新兴的办公方式,它改变了传统会议的形式,通过电子表格和电脑屏幕来进行会议记录和讨论,提高了会议的效率和质量。 无纸化办公会…

    科研百科 2025年1月9日
    4
  • 线上计算机硕士(线上计算机科研项目怎么做)

    线上计算机科研项目怎么做? 随着互联网的发展,线上计算机科研项目已经成为了越来越多学生和研究人员的首选。相较于传统的实验室环境,线上科研平台提供了更为灵活、便捷、安全的方式来进行科…

    科研百科 2024年8月5日
    29
  • 库房管理系统项目介绍

    库房管理系统项目介绍 随着现代商业的快速发展,企业对于其库存管理的需求也越来越强烈。传统的手工管理方式已经无法满足现代企业对于库存管理的需求,因此,开发一款专业的库房管理系统成为了…

    科研百科 2025年7月3日
    1
  • 公安队伍管理薄弱环节

    公安队伍管理薄弱环节 公安队伍是国家安全的重要组成部分,他们肩负着维护社会治安、保障人民安全的重要任务。然而,随着公安队伍规模的不断扩大和任务的日益繁重,公安队伍管理薄弱环节也日益…

    科研百科 2024年10月24日
    3
  • 工程项目管理包括那几个方面?(工程项目管理包括那几个方面内容)

    一、项目集成管理 其作用是保证各种项目要素协调运作,对冲突目标进行权衡折衷,最大限度满足项目相关人员的利益要求和期望。包括项目管理过程有:   1) 项目计划制定:将其它计划过程的…

    科研百科 2024年6月12日
    52
  • 合同管理 价格

    合同管理是现代商业中至关重要的一环,它可以帮助企业确保合同的有效性和合规性,减少合同漏洞和纠纷,提高企业的市场竞争力。在这篇文章中,我们将探讨合同管理的重要性,以及如何有效地进行合…

    科研百科 2024年9月20日
    21
  • 项目负责人和主持

    作为项目负责人和主持,我深知自己肩负的责任和使命。我们的目标是确保项目按时完成,并且达到预期的成果。为了实现这个目标,我们需要团队合作,密切沟通,并且始终保持高度的专业素养。 作为…

    科研百科 2024年11月16日
    2