GitHub 的 AI 编程工具漏洞高达 40% ,再次陷入争议……
整理 | 禾木木
出品 | AI科技大本营(ID:rgznai100)
在近日发表的一篇论文中,研究人员对 GitHub Copilot 人工智能编程辅助工具进行了深入调查。结果发现,仍处于测试预览阶段的 Copilot 具有高达 40% 的错误代码率,意味着开发者必须在使用时对其保持清醒的认知。此外在多场景测试项目中,约 40% 都被发现包含了安全漏洞。
AI 编程神器 GitHub Copilot
此前,GitHub 和 OpenAI 推出一种新人工智能自动编程工具 Copilot ,能自动生成代码,供开发者参考使用。
官方宣传语为“你的 AI 结对编程助手”。
什么是结对编程呢?
结对编程(英语:Pair programming)是一种敏捷软件开发的方法,两个程序员在一个计算机上共同工作。一个人输入代码,而另一个人审查他输入的每一行代码。输入代码的人称作驾驶员,审查代码的人称作观察员(或导航员)。两个程序员经常互换角色。
在结对编程中,观察员同时考虑工作的战略性方向,提出改进的意见,或将来可能出现的问题以便处理。这样使得驾驶者可以集中全部注意力在完成当前任务的“战术”方面。观察员当作安全网和指南。结对编程对开发程序有很多好处。比如增加纪律性,写出更好的代码等。
那么AI结对编程就是人机结对编程的升级版,具体来说 GitHub Copilot 由 OpenAI Codex 提供支持,可以从开发者已经编写的代码和注释中提取上下文,试图理解开发者意图,生成需要添加的一行、多行代码或整个函数,当程序员接受或拒绝建议时,模型就会学习越来越适应和匹配开发者的编程风格。
这使得程序员无需在写代码时去查阅大量文档或搜索相关示例,更加聚焦于开发工作本身。
正如 OpenAI 员工 Harri Edwards 所言:“用一种不熟悉的语言编写代码,用谷歌搜索所有东西,就像用一本短语手册去浏览一个外国国家。而使用 GitHub Copilot ,好比雇佣一名翻译。”
GitHub 首席执行官在 6 月 29 日的一篇博客文章中称:
OpenAI Codex 对人们如何使用代码有着广泛的了解,且在代码生成方面较 GPT-3 强大得多,部分原因是其在包含大量公共源码的数据集上展开了训练。
GitHub Copilot 适用于多种语言框架,但现阶段的技术预览版本更侧重于 Python、JavaScript、TypeScript、Ruby 和 Go 语言。
然而 Copilot 很快引发了多方争议,尤其涉及代码质量、法律与道德考量、替换人类开发者的可能性、以及引入安全漏洞的可能性。
GitHub Copilot 的代码质量如何呢?
近日,康奈尔大学的研究人员公布了一项数据,为了对 Copilot 的实际价值做出量化,他们为 GitHubCopilot 生成了 89 个不同的场景,生成了 1692 个程序。其中,大约 40% 的程序存在安全漏洞。
具体说来是,这项研究从三个维度展开了考量,分别是缺陷的多样性、prompt 的多样性、以及领域的多样性。
总体而言,头部 39.33% 和总体 40.48% 的项目易受攻击。从安全角度来看,Copilot 在测试场景中的表现也有好有坏。
对于新手来说,Copilot 借鉴的高质量代码还是相当值得推荐的。但若开源存储库中的某些错误相当明显,Copilot 也会更加频繁地重现。
研究人员表示,由于 Copilot 是利用 GitHub 上提供的开源代码进行训练的,因此可以推断,代码安全质量取决于 GitHub 社区的开源代码质量。
在 GitHub Copilot 推出后,有关于它的负面消息这并不是第一次。
就在其发布不到一周的时间里,GitHub Copilot 就被推上了侵权的风口浪尖,引发了前所未有的争议。
原因是有位程序员尝试了一下平方根倒数速算法(Fast Inverse Square Root),结果只是打出来这四个关键词。
floatQ_rsqrt( float number )
{
long i;
float x2, y;
constfloat threehalfs = 1.5F;x2 = number * 0.5F;y = number;i = * ( long * ) &y; // evil floating point bit level hackingi = 0x5f3759df - ( i >> 1 ); // what the fuck? y = * ( float * ) &i;y = y * ( threehalfs - ( x2 * y * y ) ); // 1st iteration
// y = y * ( threehalfs - ( x2 * y * y ) ); // 2nd iteration, this can be removed
return y;
}
GitHub Copilot 就逐行“完美复刻”了当年那段神奇的算法,甚至连当时的原版注释都被保留下来。
甚至GitHub Copilot连当年那句“what the fuck”的注释也用上了。
这种现象引起了大量开发者的不满,这不禁让人细思极恐:难道这不侵犯版权吗?
结 语
关于 GitHub Copilot 代码的事情,在 Hacker News 论坛上引起热议。
一家科技公司的产品安全负责人明确表示:禁止员工使用GitHub Copilot。
不过,也有程序员表示,我用 AI 写的程序关我什么事,有责任那也是 GitHub 母公司微软的。
尽管 AI 编程有很多争议,但脚步从未停止。今年八月,OpenAI 宣布开发一种将自然语言转换为编程代码的人工智能系统 —— Codex。
Codex 是建立在 Copilot 之上,Codex 通过接收用英语编写的句子并将它们翻译成可运行的代码,换句话说,它是可以将自然语言转换为代码的 AI 系统,这意味着 AI 编程的概念又往前进了一步。
对此,OpenAI 称 Codex 让计算机能够更好地理解人们的意图,从而让每个人都可利用计算机来实现更多目的。
那么,AI 写代码究竟可行不可行呢?
参考链接:
https://news.ycombinator.com/item?id=27710287
https://github.com/id-Software/Quake
https://arxiv.org/abs/2108.09293
https://www.techradar.com/news/github-autopilot-highly-likely-to-introduce-bugs-and-vulnerabilities-report-claims
GitHub 的 AI 编程工具漏洞高达 40% ,再次陷入争议……相关推荐
- 微软 Github AI 编程工具 Copilot 正式上线,学生免费使用
2022年6月22日,微软 GitHub AI 编程工具 Copilot 在经过了近一年测试后,已正式上线,定价每月 10 美元(约 66.9 元人民币)或每年 100 美元(约 669 元人民币), ...
- GitHub原生AI代码生成工具Copilot,官方支持Visual Studio 2022
来源丨机器之心 编辑丨极市平台 现在,微软.OpenAI.GitHub 三家联合打造的 AI 编程辅助工具 GitHub Copilot 可用于 Visual Studio 2022 了. 去年 6 ...
- 和AI结对编程!OpenAI与GitHub联手推出AI代码生成工具,比GPT-3更强大
作者 | 琰琰.青暮 比GPT-3更强大! 昨日,微软与OpenAI共同推出了一款AI编程工具GitHub Copilot,这款工具基于GitHub及其他网站的源代码,可根据上文提示为程序员自动编写下 ...
- 地表最强AI 辅助编程工具——GitHub Copilot安装教程
GitHub Copilot 文章目录 GitHub Copilot 一.GitHub Copilot 介绍 二.GitHub Copilot 通行证注册流程 1.打开GitHub Copilot [ ...
- AI编程 亚马逊 CodeWhisperer VS GitHub Copilot
在AI 编程里,各大公司都推出自己AI 编程工具,亚马逊 CodeWhisperer . GitHub Copilot等,由机器学习(ML)驱动的服务.通过开发者的注释和代码来生成代码建议,帮助开发 ...
- OpenAI与GitHub联手推出AI代码生成工具,比GPT-3更强大
来源:AI科技评论 作者:琰琰.青暮 比GPT-3更强大! 昨日,微软与OpenAI共同推出了一款AI编程工具GitHub Copilot,这款工具基于GitHub及其他网站的源代码,可根据上文提示为 ...
- 挑战微软 + GitHub!谷歌联手 Replit,升级 AI 编程“神器”:曾拒绝微软 10 亿美元的收购...
整理 | 郑丽媛 出品 | CSDN(ID:CSDNnews) 自从 ChatGPT 问世,微软和谷歌之间就悄然掀起了一场 AI 大战.随着时间推移,其中的硝烟味愈发浓烈. 谷歌:你有 OpenAI ...
- GitHub Copilot 已上线,AI 编程这等来啦!
点击蓝字 关注我们 在人工智能高速发展的时代,AI 撰稿.AI 语音等技术已经相对成熟,在无数个熬夜写代码和排 bug 的日子里,你有没有 dream 过 AI 编程? GitHub copilot ...
- AI 编程“神器”国产化!华为耗时 8 个月,这个能用中文生成代码的模型诞生了...
作者 | 郑丽媛 出品 | CSDN(ID:CSDNnews) 作为近年来最火的科技突破之一,AI 的应用已逐渐渗透至方方面面.前有各类 AI 工具写小说.编剧本.画插图,后有 AI 代码生成神器 G ...
最新文章
- STM32中关于RCC时钟的理解
- leetcode算法题--最小路径和
- BAPI_PO_CHANGE修改NETPRICE
- 北斗导航 | 多模多频实时GNSS软件接收机
- ARP协议,以及ARP欺骗
- 代理ARP协议(Proxy ARP)
- VirtualBox在win10下安装一个manjaro linux操作系统的教程
- 高性能mysql 第5章 创建高可用的索引
- mac使用php-version切换PHP版本
- 网络棋牌游戏成为网游主流力量
- vs2019配置glfw、glad等环境
- Android 通讯录的实现,根据拼音首字母快速索引到名字
- html css 忽略,HTML与CSS中易被忽略的基础知识点
- 持久化存储系统本版号
- 「学习笔记」黑马面面布局开发
- 怎么证明:向量组A1,A2…As可由向量组B1,B2…Bt线性表出,且s>t,那么A…As线性相关?
- 你的房间总是一团乱吗?
- Unity Animation动画时间设置
- C语言学习:编程、源文件、源代码是什么?一文带你搞定它!
- 遨博协作机器人ROS开发 - 机器人手眼标定原理