GitHub Copilot 資料
在本單元中,我們將介紹 GitHub Copilot 如何處理不同環境、功能和組態的資料。
GitHub Copilot 程式碼建議的資料處理
程式碼編輯器中的 GitHub Copilot 不會保留任何提示,例如用於提供訓練基礎模型的建議的程式碼或其他內容。 一旦傳回建議,它就會捨棄提示。
GitHub Copilot 個別的訂閱者可以選擇不與 GitHub 共用他們的提示,否則這些提示會用來微調 GitHub 的基礎模型。
GitHub Copilot 聊天的資料處理
GitHub Copilot Chat 會作為一個互動式平台來運作,讓開發人員能夠與 AI 助理進行交談式互動以獲得編碼協助。 以下是它執行的步驟,可能與程式碼完成等其他功能不同:
- 格式化:Copilot 會精心格式化產生的回應以在聊天介面中獲得最佳的呈現。 它會醒目提示程式碼片段以提高可讀性,並且可能包括直接整合到程式碼中的選項。 Copilot 會在 IDE 內的 Copilot Chat 視窗中展示格式化的回應,讓您可以輕鬆地檢閱所提供的資訊並與之互動。
- 使用者參與:您可以透過詢問後續問題、要求釐清或提供其他意見來積極參與回應。 聊天介面會維護交談歷程記錄,以便於後續互動中的內容理解。
- 資料保留:對於在程式碼編輯器之外使用的 Copilot Chat,GitHub 通常會保留提示、建議和支援內容長達 28 天。 程式碼編輯器中 Copilot Chat 的特定保留原則可能會有所不同。
CLI、Mobile 和 GitHub.com 上的 GitHub Copilot Chat 也是如此。
GitHub Copilot Chat 支援的提示類型
GitHub Copilot Chat 可處理各種與編碼相關的提示,展示了其作為交談式編碼助理的多功能性。 以下是一些常見的輸入類型:
- 直接問題:您可以詢問有關編碼概念、程式庫或疑難排解問題的具體問題。 例如,「如何在 Python 中實作快速排序演算法?」或「為什麼我的 React 元件未轉譯?」
- 與程式碼相關的要求:您可以要求程式碼產生、修改或說明。 範例包括「撰寫一個函式來計算階乘」、「修正我的程式碼中的這個錯誤」或「說明此程式碼片段」。
- 開放式查詢:您可以透過詢問開放式問題 (例如「撰寫全新程式碼的最佳做法為何?」或「我能如何提高 Python 應用程式的效能?」) 來探索編碼概念或尋求一般指導。
- 內容提示:您可以提供程式碼片段或描述特定的編碼場景來尋求量身定制的協助。 例如,「以下是我的程式碼的一部分,您能建議改進的地方嗎?」或「我正在建置一個 Web 應用程式,您能幫我處理驗證流程嗎?」
Copilot Chat 能處理各種不同類型的輸入,這增強了其作為全方位編碼小幫手的實用性。
有限的內容視窗
雖然 GitHub Copilot Chat 擅長理解和回應提示,但必須承認內容視窗的限制。 這是指模型可以同時處理以產生建議的周圍程式碼和文字的數量。 GitHub Copilot 的內容視窗範圍通常可包含大約 200-500 行的程式碼或最多幾千個語彙基元。 此限制可能會有所不同,具體取決於所使用的 Copilot 的具體實作和版本。
Copilot Chat 目前使用 4k 個語彙基元的內容視窗來運作,與標準 Copilot 相比,提供了更廣泛的範圍來理解和回應使用者查詢。
儘管有這些進步,但您在製作提示時仍應注意內容視窗的限制。 將複雜的問題拆解為更小、更具焦點的查詢或提供相關的程式碼片段,可以顯著地提高模型提供準確且有用回應的能力。