Visual Studio 使用 GitHub Copilot – AI 配對程式設計2024-08-05T13:54:35-07:00

最新的 Visual Studio 2022 結合了 GitHub Copilot

您的 AI 配對程式設計師現在已順暢地整合,您可以將更多時間用在重要的程式碼上。

開始使用只需 3 個步驟

GitHub Copilot installation screenshot

安裝最新版本的 Visual Studio 2022

GitHub Copilot 的最新體驗已整合至 Visual Studio,並將 GitHub Copilot 程式碼完成和 GitHub Copilot 聊天的功能結合成一個便利的套件。 下載最新的 Visual Studio 2022 以探索新功能與改良功能。

GitHub Copilot installation screenshot

註冊免費試用

GitHub Copilot 免費提供 GitHub 上通過驗證的學生和熱門開放原始碼專案的維護者使用。 如果您不是學生或熱門開放原始碼專案的維護者,可以使用一次性的 30 天試用來免費試用 GitHub Copilot。

Github Copilot sign in screenshot

使用您的 GitHub 帳戶來登入

若要啟用 GitHub Copilot,請確保已將 GitHub 帳戶新增至 Visual Studio。 如需詳細資訊,請參閱 Microsoft 文件中的「在 Visual Studio 中使用 GitHub 帳戶」。

5 個提示與秘訣

01
最佳做法

GitHub Copilot 是由人工智慧 (AI) 提供的程式碼編寫小幫手,可在各種環境中執行,並幫助您更有效率地執行每日程式碼編寫工作。 在此新系列的內容中,我們將特別說明 GitHub Copilot 如何在 Visual Studio 中運作,以及它如何幫助您更有效率。

02
Prompt like a pro (像專業人員般提示)

任何大型語言模型的輸出品質主要取決於提示的品質,而 GitHub Copilot 也不例外。 在這個新影片中,Gwyn 會指導有關 Visual Studio 2022 中 GitHub Copilot 的「提示工程」,以及如何以更好的提示建立更好的結果。

03
程式碼完成

在編輯器中開始撰寫,而 Copilot 將在您輸入時建議程式碼。
提示: 按 “Tab” 以接受建議。

04
內嵌聊天

使用內嵌聊天透過將提示轉換成程式碼,以協助您撰寫方法、類別、單元測試。 以滑鼠右鍵按一下您的文字檔,然後選取 [詢問 Copilot] 或 Alt + /` 以開啟內嵌
提示: 使用 “/” 來說明您的意圖,或使用 “#” 來參考您的檔案。 例如 “/test for #filename”

05
聊天視窗

詢問有關您的解決方案或檔案的問題。  從 Copilot 徽章或 CTRL+/,C 開啟。
提示: 在 Visual Studio 中使用 #solution 來參考您的使用中解決方案 (僅適用 C#)

不要獨自飛行

全球的開發人員使用 GitHub Copilot 更快速地編寫程式碼、將焦點放在商務邏輯上,而不要使用範本,以及執行最重要的工作: 建置出色的軟體。

Copilot 個人

專為想要更快速、更愉快編碼的個人開發人員、自由職業者、學生和教育工作者。

$10USD每月 / 每年美金 $100 元

開始免費試用
免費供經驗證過的學生、老師和維護者使用的熱門開放原始碼專案。
包含內容

聊天

  • 無限的訊息、互動和歷程記錄
  • 內容感知程式碼支援與說明
  • 偵錯和安全性補救協助
  • 為您組織存放庫量身訂做的交談
  • 根據您組織知識庫的解答
  • 從熱門開放原始碼存放庫存取知識
  • 提取要求差異分析
  • 由 Bing 提供的 Web 搜尋 (Beta)

程式碼完成

  • 即時程式碼建議
  • 程式碼的註解
  • 微調模型 (即將以附加元件形式推出)

智慧動作

  • 內嵌聊天和提示建議
  • 斜線命令和內容變數
  • 認可訊息產生
  • 提取要求描述與摘要

支援的環境

  • IDE、CLI 和 GitHub Mobile
  • GitHub.com

管理與原則

  • 公用程式碼篩選器
  • 使用者管理和 SSO
  • 根據預設,從訓練排除資料
  • IP 補償
  • 內容排除
  • SAML SSO 驗證1
  • 需要 GitHub Enterprise 雲端

最熱門

Copilot 商務

讓組織準備好改善工程速度、程式碼品質及開發人員體驗。

$19USD每位使用者 / 月

包含內容

聊天

  • 無限的訊息、互動和歷程記錄
  • 內容感知程式碼支援與說明
  • 偵錯和安全性補救協助
  • 為您組織存放庫量身訂做的交談
  • 根據您組織知識庫的解答
  • 從熱門開放原始碼存放庫存取知識
  • 提取要求差異分析
  • 由 Bing 提供的 Web 搜尋 (Beta)

程式碼完成

  • 即時程式碼建議
  • 程式碼的註解
  • 微調模型 (即將以附加元件形式推出)

智慧動作

  • 內嵌聊天和提示建議
  • 斜線命令和內容變數
  • 認可訊息產生
  • 提取要求描述與摘要

支援的環境

  • IDE、CLI 和 GitHub Mobile
  • GitHub.com

管理與原則

  • 公用程式碼篩選器
  • 使用者管理和 SSO
  • 根據預設,從訓練排除資料
  • IP 補償
  • 內容排除
  • SAML SSO 驗證1
  • 需要 GitHub Enterprise 雲端

新增

Copilot 企業

對於想要自訂組織 GitHub Copilot,並將 AI 結合到開發人員工作流程中的公司。

$39USD每位使用者 / 月

包含內容

聊天

  • 無限的訊息、互動和歷程記錄
  • 內容感知程式碼支援與說明
  • 偵錯和安全性補救協助
  • 為您組織存放庫量身訂做的交談
  • 根據您組織知識庫的解答
  • 從熱門開放原始碼存放庫存取知識
  • 提取要求差異分析
  • 由 Bing 提供的 Web 搜尋 (Beta)

程式碼完成

  • 即時程式碼建議
  • 程式碼的註解
  • 微調模型 (即將以附加元件形式推出)

智慧動作

  • 內嵌聊天和提示建議
  • 斜線命令和內容變數
  • 認可訊息產生
  • 提取要求描述與摘要

支援的環境

  • IDE、CLI 和 GitHub Mobile
  • GitHub.com

管理與原則

  • 公用程式碼篩選器
  • 使用者管理和 SSO
  • 根據預設,從訓練排除資料
  • IP 補償
  • 內容排除
  • SAML SSO 驗證1
  • 需要 GitHub Enterprise 雲端

1: 使用 SAML 單一登入 (SSO) 進行驗證,適用於使用 GitHub Enterprise Cloud 的組織。

了解 GitHub Copilot 條款及條件。

常見問題集

Visual Studio 2022 版本 17.10 或更新版本

  1. 下載最新版本的 Visual Studio 2022。 在安裝程式中至少選取一個工作負載。 務必將預先選取的元件 GitHub Copilot 保持選取。 或者,如果未選取工作負載,請從安裝程式中的個別元件選取 GitHub Copilot 來安裝。
  2. 為您的個人帳戶設定 GitHub Copilot 訂閱,或者如果您是擁有 GitHub Copilot 訂閱的組織或企業成員,則需要由組織擁有者指派一個基座。 開始個人帳戶的付費訂閱之前,您可以設定一次性的 30 天試用來評估 GitHub Copilot。 若要開始試用,您必須選擇每月或每年計費週期,並提供付款方式。 如果您未在 30 天結束之前取消試用,試用會自動轉換為付費訂閱。您可以在 30 天內隨時取消您的 GitHub Copilot 試用,且不會遭到計費。 如果您在試用結束之前取消,將可以繼續存取 GitHub Copilot,直到 30 天試用期結束為止。 如需詳細資訊,請參閱管理您的 GitHub Copilot 個人訂閱。
  3. 使用具有 GitHub Copilot 訂閱的 GitHub 帳戶來登入 Visual Studio。 遵循將 GitHub 帳戶新增到 Visual Studio Keychain 中的步驟。

如需詳細資料,請瀏覽 learn.microsoft.com 上的在 Visual Studio 中安裝和管理 GitHub Copilot 文件頁面

使用 Visual Studio 2022 版本 17.10 或更新版本,GitHub Copilot 和 GitHub Copilot 聊天可供安裝作為單一延伸模組,將 Copilot 和 Copilot 聊天結合成一個套件。 整合的 GitHub Copilot 延伸模組預設會在所有工作負載中以內建且建議的元件形式包含,而且可透過 Visual Studio 安裝程式取得。

若要取得全新的整合 GitHub Copilot 延伸模組:

  • 安裝 Visual Studio 2022 版本 17.10 或更新版本。
  • 在安裝程式中至少選取一個工作負載。 務必將預先選取的元件 GitHub Copilot 保持選取。 或者,如果未選取工作負載,請從安裝程式中的個別元件選取 GitHub Copilot 來安裝。

GitHub Copilot 預設會隨著所有工作負載安裝。 如果您選擇排除它,稍後可以使用 Visual Studio 安裝程式來修改您的安裝,然後選取 GitHub Copilot 元件來安裝它。

如需更多詳細資料,請瀏覽 learn.microsoft.com 上的 Visual Studio 中的 GitHub Copilot 安裝文件頁面

使用 Visual Studio 2022 17.10 版和更新版本時,您會在 Visual Studio 環境的右上角看見 Copilot 狀態圖示,指出 Copilot 是否處於使用中、非使用中、無法使用或未安裝狀態。 只要使用狀態圖示的下拉式功能表,您就能輕鬆存取可針對您 Copilot 狀態協助管理或進行疑難排解的選項。 根據您的 Copilot 狀態而定,某些選項會開放使用或顯示灰色。

如需詳細資訊,請參閱管理您的 Copilot 狀態

Visual Studio 2022 17.9 版或更舊版本

Visual Studio 2022 17.8 版到 17.9 版之中,使用者可以分開安裝 GitHub Copilot 和 GitHub Copilot 聊天這兩個延伸模組。 您必須先安裝 GitHub Copilot 延伸模組才能安裝 GitHub Copilot 聊天。

請遵循為 Visual Studio 2022 17.8 版到 17.9 版取得 GitHub Copilot 中的步驟。

若要啟用 GitHub Copilot,請確保已將 GitHub 帳戶新增至 Visual Studio。 如需詳細資訊,請參閱將 GitHub 帳戶新增至您的 Visual Studio 金鑰鏈
您可以透過提供更多資訊給 GitHub Copilot 聊天來取得更好的回答,這包括:

  • 使用斜線符號命令可快速指定常見工作,例如使用  /explain  取得程式碼說明。
  • 使用參考將該聊天限制為特定檔案。
  • 檢閱 Copilot 為了產生回答所使用的來源
  • 請針對每個 Copilot 聊天使用不同的討論串,以便在每個聊天中保持不同的情境。

深入了解如何在 Visual Studio 中使用 Copilot Chat

深入了解如何使用 GitHub Copilot 針對常見問題進行疑難排解

您也可以透過 GitHub 的討論論壇追蹤關於 GitHub Copilot 的討論。

否,GitHub Copilot 是分開的訂閱,並不隨附於 Visual Studio Professional 或 Enterprise 授權。

深入了解 GitHub Copilot 的計費方式

GitHub Copilot 改變了開發人員體驗。 由 AI 中的領導者所支援,Copilot 在整個軟體開發生命週期中提供關係式協助,從 IDE 中的程式碼完成和聊天協助,到 GitHub 中的文件說明與解答等等。 隨著 Copilot 提升工作流程,開發人員可以專注於更多事項: 價值、創新和幸福感。

GitHub Copilot 可讓開發人員將更多心力放在解決問題和共同作業上,並減少花在瑣事和重複性質高的工作上的心力。 這就是為什麼使用 Copilot 的開發人員相較於未使用的開發人員對工作報告更高的滿意度,且在撰寫程式碼方面最高提升 55% 生產力而不需犧牲品質,這全都會讓參與的開發人員更快速地提供出色的軟體。 不對品質做出讓步,這一切實現了開發人員更投入,而且能以更快的速度交付更棒的軟體這一成果。

GitHub Copilot 與一流的編輯工具整合,其中包括 Visual Studio Code、Visual Studio、JetBrains IDE 和 Neovim,而且和其他 AI 編碼助手不同,原本就內建在 GitHub 之中。 Copilot 已經成長到擁有數百萬名個別使用者和數以萬計的企業客戶,是全世界最廣泛採用的 AI 開發人員工具,以及開發人員所期望並需要的競爭優勢。

如需 GitHub Copilot 的一般用途、產品影響、人力、監督及隱私權的詳細資訊,請參閱 GitHub Copilot 常見問題集的完整清單

GitHub Copilot 已於出現在公用存放庫中的所有語言上定型。 對於每個語言,您所收到的建議品質可能取決於該語言訓練資料的量和多元性。 舉例來說,JavaScript 是公用存放庫中最熱門的語言,也是 GitHub Copilot 支援最完善的其中一種語言。 在公用存放庫中較不熱門的語言,可能產生較少或較不強固的建議。

如需 GitHub Copilot 的一般用途、產品影響、人力、監督及隱私權的詳細資訊,請參閱 GitHub Copilot 常見問題集的完整清單

GitHub Copilot 由生成式 AI 模型提供技術支援,這些模型則是由 GitHub、OpenAI 和 Microsoft 所開發。 其已經過公開可用來源的自然語言文字和原始程式碼訓練,其中包括 GitHub 上公用存放庫中的程式碼。

如需 GitHub Copilot 的一般用途、產品影響、人力、監督及隱私權的詳細資訊,請參閱 GitHub Copilot 常見問題集的完整清單

否,GitHub Copilot 會使用機率性判斷方法來產生建議。

思考智慧財產權和開放原始碼問題時,必須理解 GitHub Copilot 真正的運作原理。 建立 Copilot 建議的 AI 模型可能使用公用程式碼訓練,但不會包含任何程式碼。 當它們產生建議時,不會從任何程式代碼基底「複製並貼上」。

  • 為了產生程式碼建議,Copilot 延伸模組會先檢查編輯器中的程式碼,並專注於游標前後的行以及資訊 (包括編輯器中開啟的其他檔案),還有存放庫或檔案路徑的 URL 以識別相關內容。 該資訊會傳送至 Copilot 的模型,並製作出接下來可能得到之結果的預測判斷,然後產生建議。
  • 為了在程式碼編輯器中為聊天產生建議,Copilot 會結合您的提示和其他內容 (包括在使用中文件開啟的程式碼檔案、您的程式碼選項,以及包括架構、語言和相依性在內的一般工作區資訊) 來建立關聯式提示。 該資訊會傳送至 Copilot 的模型,並製作出接下來可能得到之結果的預測判斷,然後產生建議。
  • 為了在 GitHub.com 上產生聊天建議 (例如從您的聊天提示提供問題解答),Copilot 會結合您的提示和其他內容 (包括先前的提示、GitHub.com 上的公開頁面,以及從您程式碼基底或 Bing 搜尋取得的內容) 來建立關聯式提示。 該資訊會傳送至 Copilot 的模型,並製作出接下來可能得到之結果的預測判斷,然後產生建議。

如需 GitHub Copilot 的一般用途、產品影響、人力、監督及隱私權的詳細資訊,請參閱 GitHub Copilot 常見問題集的完整清單

GitHub Copilot 會根據使用者存取和使用 Copilot 的方式處理個人資料,這包括: 透過 github.com、行動應用程式、延伸模組或其中一種 IDE 延伸模組存取或使用 Copilot,或是透過命令列介面 (CLI)、IDE 程式碼完成項或 GitHub.com 上的個人化聊天建議存取或使用 Copilot。 處理的個人資料類型可能包括:

  • 業務開發資料: 這包括使用者與 Copilot 互動時產生的假名識別碼,例如已接受或已關閉的完成項目、錯誤訊息、系統記錄檔,以及產品使用計量。
  • 提示: 這些是聊天或程式碼的輸入,會和內容一同傳送至 Copilot 的 AI 來產生建議。
  • 建議: 這些是根據使用者提示所提供給使用者的 AI 產生程式碼行或聊天回覆。
  • 意見反應資料: 這包括即時使用者意見反應 (例如按讚、按倒讚)、選填留言,以及透過支援票證提供的意見反應。

如需 GitHub Copilot 的一般用途、產品影響、人力、監督及隱私權的詳細資訊,請參閱 GitHub Copilot 常見問題集的完整清單

使用者存取 Copilot 的方式和目的,將會影響 GitHub 使用 Copilot 資料的方式。 使用者可以透過網頁、延伸模組、行動應用程式、電腦終端機和各種 IDE (整合式開發環境) 存取 GitHub Copilot。 GitHub 一般會使用個人資料來:

  • 根據客戶的設定和使用方式傳遞、維護和更新服務,以確保能夠提供個人化的體驗和建議
  • 疑難排解牽涉到防範、偵測、解決和減輕包含安全性事件和產品相關問題在內的疑難雜症,方式是透過修正軟體錯誤、維護線上服務的功能以及將這些服務維持在最新狀態
  • 透過將服務保持在最新狀態並繼續運作,來增強使用者生產力、可靠性、效率、品質、隱私權、無障礙性和安全性

GitHub 的資料保護合約 (DPA) 列出了這些做法,詳細說明了我們對資料控制者客戶的資料處理承諾。

GitHub 也會針對下列目的,依據 DPA 使用特定個人資料搭配客戶授權:

  • 計費和帳戶管理
  • 遵守和解釋法律法律義務
  • 用於偵測和防範濫用情形、提供保護、掃描病毒,以及掃描到偵測違反服務條款的情事
  • 產生摘要報表以計算員工佣金和合作夥伴獎勵
  • 產生彙總的報表以供內部使用和規劃策略,涵蓋區域包括預測、收入分析、容量規劃和產品策略

如需 GitHub 作為控制者進行資料處理活動 (特別是對 Copilot 個人客戶) 的詳細資料,請參閱 GitHub 隱私權聲明

GitHub Copilot 的主要 IP 考量與著作權相關。 驅動 Copilot 的模型使用了廣泛的公開存取程式碼集合進行訓練,其中可能包含有著作權的程式碼,而 Copilot 的建議在極少的情況下,可能會類似於用於訓練自身模型的程式碼。 以下是關於這些考量的一些須知基本資訊:

著作權法允許使用著作權作品來訓練 AI 模型: 世界各地的國家/地區在其著作權法中都有規定,可讓機器學習、理解、擷取著作權素材中的模式和事實,包括軟體程式碼。 舉例來說,歐盟、日本和新加坡均有明確規定,允許機器學習開發 AI 模型。 包括加拿大、印度和美國在內的其他國家/地區,也根據合理使用、公平交易規定允許這類訓練。 GitHub Copilot 的 AI 模型使用了 GitHub 公用存放庫中的程式碼訓練,這些存放庫具有公開存取性質,且處於允許的著作權使用範圍內。

建議中有什麼著作權風險? 在極少的情況 (GitHub 的研究指出少於 1%) 下,GitHub 的建議可能與用於訓練 GitHub AI 模型的程式碼範例相符。 重申一次,Copilot 不會「查詢」或「複製並貼上」程式碼,而是使用來自使用者工作區的內容來合成和產生建議。

我們的體驗顯示,有兩種狀況最可能出現相符的建議: (i) 當程式碼編輯器中只有很少或沒有任何內容可供 Copilot 的模型合成,或是 (ii) 當相符的建議代表常見做法或方法時。 如果程式碼建議與現有的程式碼相符,那麼使用該建議可能會觸發著作權侵權的主張,這取決於所用程式碼的量和性質,以及使用該程式碼的情境。 在許多方面,這都是使用非開發人員自創的程式碼所引起的相同風險,例如複製線上來源的程式碼或重複使用程式庫中的程式碼。 因此,負責任的組織和開發人員會建議使用者採用程式碼掃描原則,來識別和評估可能相符的程式碼。

在 Copilot 中,您可以選擇是否要允許 Copilot 建議與 GitHub.com 上公開可用程式碼相符的程式碼完成項。 如需詳細資訊,請參閱「在 GitHub.com 上進行 GitHub Copilot 設定」。 如果您已允許和公用程式碼相符的建議,GitHub Copilot 就能在您接受該等建議時提供關於相符程式碼的詳細資料。 程式碼相符不一定表示著作權侵權,因此在適當情況下是否使用該建議,以及應歸因何者與對象 (以及其他授權合規性),最終應由使用者決定。

如需 GitHub Copilot 的一般用途、產品影響、人力、監督及隱私權的詳細資訊,請參閱 GitHub Copilot 常見問題集的完整清單

開始 GitHub Copilot 的免費試用

意見反應