本文经AI新媒体量子位(公众号ID:QbitAI)授权转载,转载请联系出处。CvY28资讯网——每日最新资讯28at.com
GitHub Copilot,最近又出了个新功能。CvY28资讯网——每日最新资讯28at.com
这一次,它不再是帮你写代码了,而是充当一个“翻译官”:CvY28资讯网——每日最新资讯28at.com
用“人话”告诉你,这段代码到底写了啥。CvY28资讯网——每日最新资讯28at.com
瞧,只需要选中一段代码,然后点一下旁边的“Ask Copilot”,就会快速得到代码的“人话版”解释:CvY28资讯网——每日最新资讯28at.com
CvY28资讯网——每日最新资讯28at.com
示例中的代码片段是这样的:CvY28资讯网——每日最新资讯28at.com
if len(l)=0:CvY28资讯网——每日最新资讯28at.com
return NoneCvY28资讯网——每日最新资讯28at.com
else:CvY28资讯网——每日最新资讯28at.com
max_int=l[0]CvY28资讯网——每日最新资讯28at.com
for i in l:CvY28资讯网——每日最新资讯28at.com
if i>max_intCvY28资讯网——每日最新资讯28at.com
max_int=iCvY28资讯网——每日最新资讯28at.com
return max_intCvY28资讯网——每日最新资讯28at.com
Copilot对此进行“翻译”后,输出的内容是:CvY28资讯网——每日最新资讯28at.com
定义一个函数max_int(),它将一个列表作为输入。设置一个变量max_int=l[0],它包含列表中的第一个元素。设置一个for循环,迭代列表中的每个元素。如果元素大于max_int,便让max_int等于I。返回max_int。CvY28资讯网——每日最新资讯28at.com
这便是GitHub Copilot的最新功能——Explain Code。CvY28资讯网——每日最新资讯28at.com
之前Copilot是基于人类的注释生成代码,现在好了,它也学会了反向输出。CvY28资讯网——每日最新资讯28at.com
网友们的反应也是可想而知了:CvY28资讯网——每日最新资讯28at.com
CvY28资讯网——每日最新资讯28at.com
但在“新奇”之后,这件事也引发了不小的讨论。CvY28资讯网——每日最新资讯28at.com
AI给代码做注释,有必要吗?CvY28资讯网——每日最新资讯28at.com
不仅是Copilot,“AI给代码做注释”这事最近在Reddit也比较火。CvY28资讯网——每日最新资讯28at.com
CvY28资讯网——每日最新资讯28at.com
有位贴主上传了他用AI技术,给代码做注释的demo。CvY28资讯网——每日最新资讯28at.com
不同于Copilot的Explain Code,这个AI不会非常详尽地去描述每行代码运行的过程。CvY28资讯网——每日最新资讯28at.com
而是概括性地去讲“这段代码是干嘛的”。CvY28资讯网——每日最新资讯28at.com
以下面这个代码片段为例:CvY28资讯网——每日最新资讯28at.com
CvY28资讯网——每日最新资讯28at.com
在AI“解读”过后,它就会告诉你:CvY28资讯网——每日最新资讯28at.com
这段代码是用来从GitHub的Repo中收集数据。CvY28资讯网——每日最新资讯28at.com
会返回一个数据的矩阵。CvY28资讯网——每日最新资讯28at.com
再如下面这个代码片段:CvY28资讯网——每日最新资讯28at.com
CvY28资讯网——每日最新资讯28at.com
AI给出的注释是:CvY28资讯网——每日最新资讯28at.com
函数运行的是梯度下降算法。CvY28资讯网——每日最新资讯28at.com
而后它还会对函数中的变量依次做解释。CvY28资讯网——每日最新资讯28at.com
看似不错的效果,但依旧还是引来了网友们激烈的讨论。CvY28资讯网——每日最新资讯28at.com
“乐观派”网友认为:CvY28资讯网——每日最新资讯28at.com
辅助写注释和写测试比写代码的帮助大更多,而犯错可能更少。CvY28资讯网——每日最新资讯28at.com
CvY28资讯网——每日最新资讯28at.com
但有人质疑这种AI的能力:CvY28资讯网——每日最新资讯28at.com
如果我函数写的特别乱、变量这名字乱糟糟的,它还能好使吗?CvY28资讯网——每日最新资讯28at.com
CvY28资讯网——每日最新资讯28at.com
也有人认为,诸如此类的AI“没有什么用处”:CvY28资讯网——每日最新资讯28at.com
CvY28资讯网——每日最新资讯28at.com
更形象一点的比喻,这种AI起到的作用,可能就是“复读机”……CvY28资讯网——每日最新资讯28at.com
CvY28资讯网——每日最新资讯28at.com
那么对于“AI给打码写注释”这件事,你觉得是否有用呢?CvY28资讯网——每日最新资讯28at.com
CvY28资讯网——每日最新资讯28at.com
本文链接://www.dmpip.com//www.dmpip.com/showinfo-119-2132-0.html看不懂代码?AI给你做翻译,说人话的那种
声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com
上一篇: 云计算开发:Python3-title()方法详解
下一篇: 云计算开发:Python3-translate()方法详解