2021-07-14 15:33:52
3 年前,自 微軟收購(gòu) Github 後大動作(zuò)不斷啊,兩年多(duō)之前就讓 Github 私庫免費了!,後面還推出了 Github for Mobile 移動版,這些我都已經在Java技(jì )術棧作(zuò)過分(fēn)享,沒看過的可(kě)以回過頭看下。
最近,Github 又(yòu)搞大事了,推出了一款 AI 編程神器——Github Copilot,牛逼啊,下面棧長(cháng)帶大家來看看到底是什麽鬼?
官網:
https://copilot.github.com/
Copilot 是由 Github 和 OpenAI 合作(zuò)聯合開發的,看到這個玩意,讓我想到了之前分(fēn)享的 AI 寫代碼工(gōng)具(jù):Codota,它能(néng)夠自動進行代碼分(fēn)析并智能(néng)提示,極大的提高開發效率。
棧長(cháng)大緻看了下,Github Copilot 貌似要更牛逼,Github Copilot ——你的 AI 配對程序員,可(kě)以理(lǐ)解為(wèi)你的影子程序員,它基于數十億行開源代碼進行訓練,并在背後默默給你建議,不管是整行、還是是整個完整方法,它都能(néng)幫你完成。
牛逼,某些代碼,比如說工(gōng)具(jù)類,再也不用(yòng)在網上找了,Github Copilot 就能(néng)完成整段方法的代碼編寫。
簡單的講,Copilot 可(kě)以根據你提供的注釋、方法名(míng)、代碼本身等上下文(wén)信息自動匹配以完成整個方法。
來看幾個官網提供的示例,就知道有(yǒu)多(duō)牛逼!
自動完成整個方法:
根據注釋完成整個方法:
自動填充相似代碼:
自動生成相匹配的單元測試代碼:
可(kě)切換多(duō)種不同的解決方案:
快速上手新(xīn)語言、新(xīn)框架:
很(hěn)可(kě)惜,Copilot 目前還是預覽版,還不支持 Java,隻支持 Python、JavaScript、TypeScript、Ruby 和 Go 幾種編程語言,不然棧長(cháng)還真想上手體(tǐ)驗一下。
另外,Copilot 目前也隻支持在 Visual Studio Code 中(zhōng)使用(yòng),如果你想基于上述幾種語言進行體(tǐ)驗,可(kě)以申請試用(yòng)預覽版,申請地址:
https://github.com/features/copilot/signup
這裏棧長(cháng)就不演示了,有(yǒu)興趣的可(kě)以研究下,等後面如果支持 Java 了,棧長(cháng)一定體(tǐ)驗下,不要走開,關注Java技(jì )術棧,第一時間推送哦。
Copilot 這麽牛逼?是什麽工(gōng)作(zuò)原理(lǐ)呢(ne)?
來看下官網提供的交互圖:
1)GitHub Copilot 編程器向 GitHub Copilot 服務(wù)發送上下文(wén)信息,包括注釋、代碼等信息;
2)GitHub Copilot 服務(wù)使用(yòng) OpenAI Codex 模型,它基于數億公(gōng)開源代碼及自然語言進行訓練,然後向 GitHub Copilot 編程器提供建議,最後返回匹配的單個代碼行或者整個方法;
3)GitHub Copilot 編程器不斷向 GitHub Copilot 服務(wù)提供改善建議;
感受 Github Copilot 工(gōng)具(jù)自動完成代碼的便利,确實能(néng)夠解輕程序員到處找示例代碼的痛楚,也能(néng)幫助我們盡可(kě)能(néng)的避免複制代碼出現的 bug 或者潛在漏洞的風險。
Github Copilot 雖好,其實還有(yǒu)兩點需要我們注意!!
1、安(ān)全性
從上面的工(gōng)作(zuò)原理(lǐ)圖,我們知道,獲取代碼建議,就必須先将編輯器中(zhōng)的注釋、代碼等相信信息發送到 GitHub Copilot 服務(wù)器中(zhōng),這就導緻代碼外洩的風險。
目前安(ān)全性不得而知,隻是預覽版,但對于金融、支付類的敏感業務(wù)場景恐怕是要好好思量。
2、版權問題
Github Copilot 工(gōng)具(jù)基于數億開放源代碼進行訓練,但如果被其他(tā)商(shāng)業公(gōng)司免費拿(ná)去商(shāng)用(yòng),那不是被 "白嫖" 了?
版權問題目前還是争議很(hěn)大,如果真是這樣,你是否也有(yǒu)同樣的擔憂?你的開源項目還會放在 Github 托管嗎?
好了,今天就分(fēn)享到這裏了,後續棧長(cháng)還會一直分(fēn)享最硬核的 Java 技(jì )術,小(xiǎo)夥伴們可(kě)以持續關注Java技(jì )術棧,第一時間推送哦。
最後,對于 Github 推出的 Copilot 工(gōng)具(jù),你們有(yǒu)什麽想說的?歡迎留言分(fēn)享~
相關新(xīn)聞
查看更多(duō)
汕頭房産(chǎn)小(xiǎo)程序開發公(gōng)司
房産(chǎn)小(xiǎo)程序開發就找汕頭雲海網絡科(kē)技(jì ),專業誠信開發公(gōng)司,助力房企快速建立網上售樓平台,搶占市場先機!
2021.06.19
查看更多(duō)
汕頭雲海告訴你:APP對Windows系統兼容
Windows 10系統的發布讓我們看到微軟對于移動端,的重視程度有(yǒu)了明顯的提升
2015.05.12
查看更多(duō)
再美的文(wén)字……對我們的贊美都是蒼白的
極簡就是美!一句話完敗各種長(cháng)篇大論!于是,企業品牌紛紛借勢,從高大上的林肯汽車(chē)、沃爾沃、福特等,到大衆快消品維達、可(kě)口可(kě)樂,再到各種美妝、美食、飲品……
2015.05.19