GitHub Copilot 正在“摧毁”初级开发者,已沦为编程考试作弊的神器?
文章图片
整理|苏宓出品|CSDN(ID:CSDNnews)自2021年6月 , 微软发布AI代码建议工具
这不 , 继Copilot相继宣布收费、自美国马萨诸塞大学阿默斯特分校计算机科学教授EmeryBerger发表了一篇《CopingwithCopilot》的文章 , 警告教育工作者 , 基于人工智能的开发工具正在向你的作业“开炮” , 抵抗是徒劳的 。 同时 , 他还比喻道 , 「携带(Copilot)的学生正在把Uzis(冲锋枪)带到一场刀战中」 , 而Copilot本身也将变成作弊的有利工具 。
文章图片
为了验证自己的观点 , EmeryBerger还举了几个例子加以说明 , 我们不妨一起来看看 。
写一下函数名 , 就能生成所有的代码
在EmeryBerger看来 , 使用Copilot工具 , 学生们可以立即生成自动完成的代码解决方案 。
对于学生自身而言 , 他们只需要给出问题陈述 , 或者给出函数名称 , 甚至只需要盯着屏幕就行 , 编程就能轻轻松松搞定 。
举个例子 , 假设让一位CS(计算机科学)入门的学生编写一个Python程序 , 输出需要实现1到N所有数字的总和 。 前提条件是 , “我们计算机科学家非常讨厌O(1)闭式解决方案(斐波那契 , 我正在看着你) , 总得让CPU忙起来” , EmeryBerger说道 。
按理来说 , 通常情况下(除非班级中有CarlFriedrichGauss德国数学家这样聪明的人) , 学生们都需要试着写一些代码来实现 , 甚至需要静下心来思考一下 。
不过 , EmeryBerger表示 , “这对于拥有Copilot的学生来说 , 并不会发生这样的苦差事 。 他们只需要将问题陈述作为注释 , 复制并粘贴到IDE中 , 然后输入函数‘defoutput_sum(N):’ , 再按一下Tab键就可以得到想要的内容(如下面代码中3-6行的所有内容都是由Copilot生成的) 。 ”
1#APythonprogramthatoutputsthesumofallthenumbersfrom1toN.2defoutput_sum(N):3sum=04foriinrange(1,N+1):5sum+=i6returnsum至于如果可以用闭式的解决方案(closedformsolution) , Copilot同样可以迅速解决这个问题 , 其中只需要重新命名一下这个函数就行了(第2行是由Copilot自动生成):
1defoutput_sum_closed_form(N):2returnN*(N+1)/2为了慎重起见 , EmeryBerger还使用了封闭形式的斐波那契进行了测试(第2-3行 , 是由Copilot自动生成):
1deffibonacci_closed_form(N):2#recursion,schmecursion3return((1+5**0.5)/2)**N/5**0.5整体看来 , GitHubCopilot在所有的入门编程作业上都接受过专门培训 。
【GitHub Copilot 正在“摧毁”初级开发者,已沦为编程考试作弊的神器?】EmeryBerger教授称 , “每次为了训练Copilot , 安排它编程作业时 , 这款工具都会激动地流‘口水’ , 甚至会喃喃自语:我知道那个 , 这是解决方案 , 请再给给一个作业吧 。 ”
因此对于使用Copilot工具的学生来说 , 与其将编程作为他们课程的目标 , 倒不如说直接他们的课程目标是“点击Tab键”(这是指根据对所需输出的描述来生成代码的按键命令) , 因为在下面所有的黑色加粗代码都是由Copilot自动生成的 , 其中只需要输入函数名称和参数就可以实现所有代码:
1defdepth_first_search(tree,node,visited):2visited.add(node)3forchildintree[node]:4ifchildnotinvisited:5depth_first_search(tree,child,visited)6defquicksort_random_pivot(l):7iflen(l)8returnl9pivot=random.choice(l)10left=[xforxinlifx<pivot]11middle=[xforxinlifx==pivot]12right=[xforxinlifx>pivot]13returnquicksort_random_pivot(left)+middle+quicksort_random_pivot(right)14defdijkstra(g):15dist={}16forving:17dist[v]=float(‘inf’)18dist[g[0]]=019whileTrue:20u=min(dist,key=dist.get)21ifdist[u]==float(‘inf’):22break23forving[u]:24ifdist[v]>dist[u]+g[u][v]:25dist[v]=dist[u]+g[u][v]26returndist与此同时 , Copilot在今年6月宣布的付费政策中 , 以每月10美元(人民币约67元)或每年100美元(人民币约669元)的价格出售 , 并提供60天的免费试用期 。 值得一提的是 , 收费群体是有限制的 , 其中通过身份验证的学生和热门开源项目维护者可以免费使用 。
- 本文转自:新民晚报新民晚报讯(记者 金志刚)数字科技|超级直播秀、搭配、魔尺……这些数字科技正在影响服饰潮流
- 互联互通|外媒:ASML的“时代”正在落幕
- 本文转自:重庆日报正在使用一站式自助机进行业务办理的市民城口县人民医院大楼让信息多跑路|信息化建设让服务“聪明”起来
- 光刻机|中科院正式官宣!国产EUV光刻机“破冰”,ASML:正在被抛弃
- Java|餐饮“黑旋风”走红,情绪营销正在崛起?
- |中国穷人的孩子,大部份正在被手机废掉
- spring|阿里、华为做得很对,外媒:芯片架构的“垄断”正在结束!
- 充电宝|外媒:断供企业正在“自食苦果”
- 谷歌地图正在被抛弃,但创业者们却用地图玩出了花
- 唯品会|阿里、华为做得很对,外媒:芯片架构的“垄断”正在结束!