AI 幫你寫程式碼-Copilot 使用體驗

語言: CN / TW / HK

AI 幫你寫程式碼-Copilot 使用體驗

簡介

Github Copilot

英語小課堂

  • pilot 讀音 [ˈpaɪlət] 飛行員
  • copilot 讀音 [ˈkoˌpaɪlət] 飛機副駕駛員

co- 字首,是 com- 字首的變體,表示 輔助、共同、互補,類似的單詞還有:

  • operation 操作
  • cooperation 合作、聯合

Github Copilot

http://copilot.github.com/

Your AI pair programmer, 你的人工智慧程式設計夥伴。在編輯器中可以獲取整行的建議或完整的函式。

接受了數十億行開原始碼的訓練,讓您需要的知識觸手可及,節省您的時間並幫助您保持專注。

Powered by OpenAI

OpenAI 是一個非營利的人工智慧(AI)研究組織,目的是促進和發展友好的人工智慧,使人類整體受益。OpenAI成立於2015年底,總部位於舊金山,組織目標是通過與其他機構和研究者的“自由合作”,向公眾開放專利和研究成果。創始人伊隆·馬斯克以及薩姆·奧特曼的動機是出於對強人工智慧潛在風險的擔憂。

至2018年,OpenAI 的總部坐落於舊金山的米慎區,與伊隆·馬斯克的另一座公司Neuralink在同一辦公室大樓。[8]

2019年7月22日微軟投資OpenAI 10億美元,雙方將攜手合作替Azure雲端平臺服務開發人工智慧技術。2020年6月11日宣佈了GPT-3語言模型,微軟於2020年9月22日取得獨家授權

特點:

  • 編輯器、ide 的擴充套件外掛
  • 懂幾乎所有的程式語言和框架
  • 你是主駕駛,copilot 提供建議,並貼近你的程式碼風格

features

根據函式名補全程式碼

我輸入

js const bubbleSort

根據註釋補全程式碼

我輸入

``` // 郵箱正則

// 檢查郵箱 ```

生成程式碼

```js // 郵箱正則 var email_reg = /^([a-zA-Z0-9]+[_|_|.]?)[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|_|.]?)[a-zA-Z0-9]+.[a-zA-Z]{2,3}$/;

// 檢查郵箱 function check_email(email) { if (!email_reg.test(email)) { return false; } return true; } ```

我輸入

/** * once a week */

後自動補全

js /** * once a week */ export const onceAWeek = (key: string, callback: () => void) => { const now = new Date().getTime(); const last = localStorage.getItem(key); if (last) { const lastTime = Number(last); if (now - lastTime < 7 * 24 * 60 * 60 * 1000) { return; } } localStorage.setItem(key, now.toString()); callback(); }

根據上下文逐行補全程式碼

在某個 Service 類中需要請求介面,它參考了我的其他程式碼,逐行補全了我要寫的內容

直接猜下一行程式碼是什麼

在一個 utils 檔案內,我輸入了 const 後,它猜測我下一步程式碼

How it works

Frequently asked questions

http://copilot.github.com/#faq-will-my-private-code-be-shared-with-other-users

Will my private code be shared with other users?

No. We use telemetry data, including information about which suggestions users accept or reject, to improve the model. Your private code is not used as suggested code for other users of GitHub Copilot.

不會。我們使用遙測資料(包括有關使用者接受或拒絕哪些建議的資訊)來改進模型。 您的私有程式碼不會用作 GitHub Copilot 其他使用者的建議程式碼。

隱私與資料安全相關 http://copilot.github.com/#faq-privacy-and-data-protection

小結

總的來說,GitHub Copilot 是一款非常好用的程式碼生成工具,適合生成通用的工具程式碼、leetcode 演算法、單元測試等場景的高頻程式碼,帶來的最大的價值是節省你查閱文件的時間。而對業務程式碼可能不夠準確,並且可能有資料安全風險。可以嚐鮮試試,目前是測試階段,還沒有最終發行。