GitHub Copilot 開發者訓練營筆記
| | 0 | |
昨天聽了前幾天提到的 GitHub Copilot 開發者訓練營(錯過的同學莫急莫慌,YouTube 上有直播錄影可以看)。
由於我已經用了大半年 Github Copilot,天天有驚喜,研討會講的內容沒讓我嚇到吃手手。但還是有學到不少新東西,整理如下:
Github Copilot Chat
可以跟 GPT-4 針對目前編修中的程式碼坐下來聊,討論程式要怎麼寫。應用範例:
- 選取一段程式,在聊天視窗下指令,請 AI 找出錯誤並修正,按 Paste 將 AI 修改版本貼上取代原有內容
- 選取一段程式,下指令請 AI 解釋(可指定使用中文)
- 選取一段程式,下指令翻譯成另一種語言(例如:JavaScript 轉 C#、Python、C++...)
- 選取一段程式,下指令生成測試案例
註1:GPT-4 可支援到 32K Token,意思是 AI 可以依據一大段程式給建議
註2:Copilot Chat 目前處於 Private Beta 階段,可申請加入等侯清單,我已排到在試用中,限於封測保密條款不能公開分享,大家可參考 Scott Hanselman 的現場展示。
Github Next
除了 Github Copilot 及 Github Copilot Chat 外,其實 Github 還有推出一堆新玩具,大部分在測試或預覽階段,有興趣試用的同學可以去排隊(下圖中有標 WAITLIST 、USABLE PROTOTYPE 的項目),研討會有介紹了其中幾項,我整理在後面:
Github Copilot Labs
把 Copilot Chat 功能包裝成快速輸入介面,提供輸入選項,按下 Ask Copilot 得到結果。
如下圖,選取程式碼後會同時出現在 Explain、Translate、Test Generation 區塊,可請 Copilot 解釋、翻譯成其他語言、及生成測試案例,其中生成測試案例功能,若語言為 JavaScript 甚至可直接跑測試。 Brushes 還有一堆功能。
Code Brushes
仿效 Photoshop 的筆刷功能,點一下美化程式碼
- 將程式碼轉成可讀性更高的寫法
例如將return a == null || b == null ? NaN : a < b ? -1 : a > b ? 1 : a >= b ? 0 : NaN;
轉成if (a == null || b == null) { return NaN; } else if (a < b) { return -1; } else if (a > b) { return 1; }....
- 修復簡單錯誤 (找出 Typo:lo 誤打成 low)
- 自動加入 Debug 輸出:console.log('x = ', x, 'lo = ', lo...)
- CSS 自動補上 -webkit-* -moz-* 版宣告
- 依據 Coding Style 調整程式
Copilot for Pull Requests
幫忙處理發 PR 的一堆瑣事
- AI 讀完要發 PR 的程式碼,自動產生 PR 描述、補上缺少的 Test Case
- AI 讀 Issue (Bug 回報) 產生修改建議 (Copilot 直接幫你修掉簡單的 Bug)
- AI 讀取 PR,提供 Code Review 建議
Copilot Voice
使用口語(目前限英文)下指令叫 Copilot 產生程式碼 展示影片
Copilot for CLI
用自然語言下指令,Copilot 轉成 CLI 執行
Copilot for Docs
自然語言下指令,Copilot 透過搜尋引擎幫你爬文件,確保資料的即時性、權威性,可輸入自己的程度(幼幼班、校隊、國手)、對議題了解程度(麻瓜、略懂、老司機)獲得量身訂做的回答,並可納入 Github 上的團隊私有內容。
Notes for seminar of Github Copilot.
Comments
Be the first to post a comment