
GitHub Copilot,最近又出了個(gè)新功能。這一次,它不再是幫你寫代碼了,而是充當(dāng)一個(gè)“翻譯官”:用“人話”告訴你,這段代碼到底寫了啥。
瞧,只需要選中一段代碼,然后點(diǎn)一下旁邊的“Ask Copilot”,就會(huì)快速得到代碼的“人話版”解釋:
示例中的代碼片段是這樣的:
if len(l)=0: return Nonelse: max_int=l[0] for i in l if i>max_int max_int=i return max_int
Copilot 對(duì)此進(jìn)行“翻譯”后,輸出的內(nèi)容是:
定義一個(gè)函數(shù) max_int (),它將一個(gè)列表作為輸入。
設(shè)置一個(gè)變量 max_int=l [0],它包含列表中的第一個(gè)元素。
設(shè)置一個(gè) for 循環(huán),迭代列表中的每個(gè)元素。
如果元素大于 max_int,便讓 max_int 等于 I。
返回 max_int。
這便是 GitHub Copilot 的最新功能 ——Explain Code。之前 Copilot 是基于人類的注釋生成代碼,現(xiàn)在好了,它也學(xué)會(huì)了反向輸出。
網(wǎng)友們的反應(yīng)也是可想而知了:
但在“新奇”之后,這件事也引發(fā)了不小的討論。
AI 給代碼做注釋,有必要嗎?
不僅是 Copilot,“AI 給代碼做注釋”這事最近在 Reddit 也比較火。
有位貼主上傳了他用 AI 技術(shù),給代碼做注釋的 demo。不同于 Copilot 的 Explain Code,這個(gè) AI 不會(huì)非常詳盡地去描述每行代碼運(yùn)行的過程。而是概括性地去講“這段代碼是干嘛的”。
以下面這個(gè)代碼片段為例:
在 AI“解讀”過后,它就會(huì)告訴你:
這段代碼是用來從 GitHub 的 Repo 中收集數(shù)據(jù)。會(huì)返回一個(gè)數(shù)據(jù)的矩陣。
再如下面這個(gè)代碼片段:
AI 給出的注釋是:
函數(shù)運(yùn)行的是梯度下降算法。
而后它還會(huì)對(duì)函數(shù)中的變量依次做解釋??此撇诲e(cuò)的效果,但依舊還是引來了網(wǎng)友們激烈的討論。
“樂觀派”網(wǎng)友認(rèn)為:
輔助寫注釋和寫測(cè)試比寫代碼的幫助大更多,而犯錯(cuò)可能更少。
但有人質(zhì)疑這種 AI 的能力:
如果我函數(shù)寫的特別亂、變量這名字亂糟糟的,它還能好使嗎?
也有人認(rèn)為,諸如此類的 AI“沒有什么用處”:
更形象一點(diǎn)的比喻,這種 AI 起到的作用,可能就是“復(fù)讀機(jī)”……
那么對(duì)于“AI 給打碼寫注釋”這件事,你覺得是否有用呢?
網(wǎng)站首頁(yè) |網(wǎng)站簡(jiǎn)介 | 關(guān)于我們 | 廣告業(yè)務(wù) | 投稿信箱
Copyright © 2000-2020 m.hngelin.com All Rights Reserved.
中國(guó)網(wǎng)絡(luò)消費(fèi)網(wǎng) 版權(quán)所有 未經(jīng)書面授權(quán) 不得復(fù)制或建立鏡像
聯(lián)系郵箱:920 891 263@qq.com
富宁县| 淮南市| 贡嘎县| 独山县| 额尔古纳市| 汝阳县| 衡山县| 双辽市| 淳化县| 万全县| 西华县| 威远县| 凤庆县| 苏尼特右旗| 西畴县| 霍州市| 绿春县| 临潭县| 丹阳市| 垦利县| 阿鲁科尔沁旗| 肥东县| 屯留县| 阿拉善盟| 巨鹿县| 普格县| 东至县| 墨江| 宜城市| 邮箱| 怀集县| 古丈县| 崇礼县| 安阳市| 应城市| 西吉县| 武强县| 靖江市| 长丰县| 龙海市| 苍山县|