分享好友 最新动态首页 最新动态分类 切换频道
程序员减负神器,GitHub联手OpenAI,用AI自动补写代码
2024-12-29 23:26

作者 | ZeR0

程序员减负神器,GitHub联手OpenAI,用AI自动补写代码

编辑 | 漠影

这是微软向OpenAI投资10亿美元的第一个重大成果。微软正在寻求简化编程流程的方法,试图教计算机写代码,而GitHub Copilot项目是一个相当值得关注的尝试。

GitHub Copilot从开发者已经编写的代码和注释中提取上下文,试图理解开发者意图,生成需要添加的一行、多行代码或整个函数,当程序员接受或拒绝建议时,模型就会学习越来越适应和匹配开发者的编程风格。

这使得程序员无需在写代码时去查阅大量文档或搜索相关示例,更加聚焦于开发工作本身。

GitHub方面强调,Copilot所做的可不仅是像“鹦鹉学舌”那样照搬见过的代码,它推荐的绝大多数代码都是唯一生成的、训练集中并不存在的。

OpenAI联合创始人兼CTO Greg Brockman将这项工比作“编程的最后一英里”。微软首席技术官Kevin Scott认为,GitHub Copilot不仅适用于开发老将,也能让编程本身更加容易上手。

项目链接:https://copilot.github.com

01.

支持各种编程语言,高效生成匹配代码

GitHub首席执行官Nat Friedman在一篇博客文章中写道,GitHub Copilot支持几乎所有编程语言,技术预览版最适合Python、JavaScript、TypeScript、Ruby和Go。

Nat Friedman将GitHub Copilot描述为结对编程(pair programming)的演进,两个程序员将在同一项目上并肩协作,检查彼此的错误,提供代码建议,加快开发过程。Copilot使得其中一个程序员是虚拟的。

无论开发者在用一种新的语言或框架,还是只是刚刚开始学习写代码,都能借助这一新工具更快上手编程。

GitHub最近对一组Python函数进行的基准测试显示,如果删除函数,并让GitHub Copilot来重新填充,首次尝试时,该模型的准确率为43%,尝试10次后,其准确率上升至57%,它一直在变得更聪明。

02.

技术预览版试用名额有限,未来推商业产品

根据项目网站,GitHub的数百名工程师每天都在编码时使用Copilot,这改变了他们的工作方式。

OpenAI联合创始人兼CTO Greg Brockman说,编程包括提出一个如何做某件事的想法,然后实现它,GitHub Copilot擅长第二部分。“你不想去阅读Twilio的API文档。它(Copilot)知道所有这些东西。这实际上相当可靠。”

“这可以让我不必为了用某个工具而查阅一大堆文档,这对提高工作效率非常有益。”微软首席技术官Kevin Scott亦称赞道。

“这是我见过的机器学习(ML)最令人兴奋的应用。”Instagram联合创始人Mike Krieger感慨说:“在第一天,GitHub Copilot已经教会了我Javascript对象比较的细微差别,并且和我一样适应我们的数据库模式。”

GitHub Copilot目前仅出现在微软的免费开源产品Visual Studio Code中,微软计划在未来将其纳入商业Visual Studio产品中。

03.

幕后功臣:OpenAI GPT-3的后代Codex

OpenAI Codex接受过从GitHub提取的数十亿行公开可用代码以及英语语言示例的训练,能将人类自然语言翻译成机器可理解的编程代码,Brockman将Codex描述为超大规模语言模型GPT-3的后代。

GPT-3是OpenAI的旗舰语言生成算法,参数规模达1750亿。它可以生成有时无法与人类书写区分的文本。GPT-3生成语言,Codex则生成代码。

这不是微软第一次借助OpenAI提供智能软件。上个月,微软展示了它将如何更新Power Apps Studio应用程序,非技术人员能借此来编写应用程序,用户可以输入描述他们想要添加元素的单词,并让GPT-3显示必要代码的选项。

OpenAI认识到在GPT-3中生成代码的潜力。它在网站上写道,提供GPT-3的在线服务可以处理“代码补全”(code completion)。

但Brockman说,当OpenAI刚开始训练该模型时,并没有打算教它如何帮助编写代码。它更像是一种通用语言模型,可以生成文章、修复错误的语法以及将一种语言翻译成另一种语言。

在接下来的几个月里,人们用这个模型做实验,看看它能做什么,有的很有用,有的则显得有些蠢。比如,一位工程师制作了一个网站,可以设计一个看起来像西瓜的按钮。Brockman联系了GitHub首席执行官Nat Friedman,当时他在运行一个有数百万程序员在编写代码的“key destination”,新的故事即从那里开始。

OpenAI预告将于今年夏天晚些时候通过其API发布Codex模型,供第三方开发人员将其融入自己的应用程序。

04.

已设立许多安全机制,但还不完美

GitHub员工试图确保GitHub Copilot生成安全、高质量的代码,但并非所有使用的代码都经过了漏洞、不安全实践或个人数据的审查。

“我们已经为Copilot建立了许多安全机制,我们认为这些机制在减少在各个领域出错的机会方面是先进的,但它们绝对不是完美的。”Friedman透露。

使用GitHub Copilot时,所有数据都安全地传输和存储,其遥测技术的使用被严格限制在个人需要知道的基础上。GitHub承诺不会将任何开发者的私有代码引用到为其他用户生成代码。

Copilot的网站写道:“由于底层技术的预发布性质,GitHub Copilot有时可能生成不希望的输出,包括有偏见、歧视、辱骂或攻击性的输出。”

鉴于对GPT-3偏见和滥用语言模式的批评,OpenAI似乎还没有找到阻止算法继承其训练数据最坏元素的方法。

GitHub还警告说,该模型可能会显示电子邮件地址、API密钥或电话号码,但这种情况很罕见,而且发现数据是由该算法合成或伪随机生成的。

不过,Copilot生成的代码在很大程度上是原创的。GitHub进行的一项测试发现,在训练集中只能找到0.1%的Copilot生成代码。

这不是第一个尝试自动生成代码来帮助程序员的项目。去年10月,美国初创公司Kite已经推出了一个类似的功能,借助AI帮开发者自动补全代码片段,该功能支持16个代码编辑器。

05.

结语:或有助于扩大开发者阵容

Copilot的问世凸显了OpenAI与其投资者微软之间日益密切的关系。除了用OpenAI提供的AI软件来理解开发者编程外,微软也在使用OpenAI的GPT-3语言模型,让非开发人员可以使用语音命令而非代码来构建应用程序。

开发者是微软企业战略的一大核心。发展GitHub使用的工具,降低了经验不足的程序员的开发门槛,能帮助微软进一步扩大其开发者队伍。

不过,GitHub Copilot只是一个辅助工具,开发者仍需仔细地测试、审查自己的代码。随着智能系统的优化,这一工具不仅有助于提高现有工程师的开发效率,也有潜力让更多人开始探索软件开发。

原标题:《程序员减负神器!GitHub联手OpenAI,用AI自动补写代码》

最新文章
chatai智能助手2023最新下载
在我们的日常生活中,总会有一些无聊的时间段,比如上班途中,排队等候,甚至是在家无所事事的时候。而这时候,如果有一位与你互动的智能伙伴,该是多么的有趣与愉快!chatai智能聊天助手就是这样一款游戏,它可以为你提供与机器人愉快互动
AI伪原创神器,AI文案生成器!
在这个信息爆炸的时代,文案的重要性越来越受到企业和个人的重视。一篇好的文案能够有效地传递产品或服务的价值,吸引潜在客户的注意力,从而提高销售和品牌知名度。然而,对于许多人来说,写作并不是他们擅
Google核心算法更新及应对(更新至2024年9月)
Google近些年的算法更新大多是成系列的,核心算法更新(Core Algorithm Update)是其中最重要的。其它系列还包括有用内容更新,评论更新,垃圾更新。2018年3月4日开始,Google排名大幅波动,持续了将近两周,Glenn Gabe将其称为Brackets Up
Facebook游戏代投:探索社交媒体平台的游戏推广方式!
绑定游戏与Facebook的方式多种多样,从使用Facebook账号登录到在Facebook游戏平台发布游戏,再到借助Facebook广告推广吸引玩家。这些方式都为游戏开发者提供了丰富的机遇和潜力。通过与Facebook的绑定,您可以享受到方便快捷的登录体验、社
ai智能获客裂变系统
在这个信息爆炸的时代,如何更好地吸引客户、留住客户、并实现裂变增长成为了企业迫切需要解决的问题。AI智能获客裂变系统应运而生,成为数字营销的重要利器。本文将深入探讨此系统的优势,解读其在数字营销领域的应用和前景。1、个性化营
ai面试会问什么问题
摘要:AI面试是一种通过人工智能技术进行面试的新型面试方式,与传统面试相比,AI面试可以更全面地考察求职者的综合素质。本文将介绍AI面试可能会问到的问题,包括自我介绍、职业规划、工作经验、团队合作、解决问题能力、创新能力、沟通能
ai生成绘画 王者ai绘画生成参数?
②可能是使用的软件版本过低,导致其软件在运行过程中出现了系统崩溃等现象。王者ai绘画的生成参数是:帧率,分辨率设置为中,画质,特效等等都可设置为低,手机配置一般的可以这样设置。必须有的都有。手机配置高的话可以尽管设置。是的,A
Affiliate Marketing With Google Ads: A Step-by-Step Guide for 2023
By Hanson ChengWhile the concept of affiliate marketing is pretty straightforward, getting traffic to your landing page or website can be more challenging. The affiliate offer you’re promoting can have the best sales
5大方向支持,最高补助1000万元!北京市商务局发布通知
央视网消息:据首都之窗网站消息,北京市商务局发布关于申报2024年北京市县域商业体系建设项目的通知,详情如下:  北京市商务局关于申报2024年北京市县域商业体系建设项目的通知  京商流通字〔2024〕7号  各涉农区商务局、各有关企
Coupang店铺怎么做?如何快速上架产品出单?
对于新卖家而言,商品上架是在Coupang上开展销售的第一步,提供清晰的商品信息可以帮助卖家更快的吸引更多买家主菜单的第一项即为“商品管理”,点击商品管理的第一个选项,注册商品,这是针对单个商品的注册请参考以下步骤: 商品名称 商
相关文章
推荐文章
发表评论
0评