OpenAI
此頁面由機器翻譯。查看原始英文文章

將 GitHub 連接到 ChatGPT

將 GitHub 連線至 ChatGPT,透過支援的即時程式碼庫存取功能分析、搜尋及引用程式碼。

更新日期:3 days ago

概覽

將 GitHub 連線至 ChatGPT,即可詢問與程式碼相關的問題。

連線 GitHub 後,ChatGPT 可視需要擷取獲准存取的程式碼庫內容,包括程式碼、README 檔案及其他文件。視你的方案和產品介面而定,可用的體驗可能包括標準聊天、深度研究或智慧體工作流程。這種即時存取不會建立同步的 GitHub 索引。

GitHub 的可用性可能因方案、工作區和產品介面而異。即使無法在標準聊天中使用 GitHub,帳戶仍可能可在深度研究或智慧體模式中使用 GitHub。如需瞭解研究工作流程,請參閱:ChatGPT 中的深度研究

將 GitHub 連接至 ChatGPT

若要連接 GitHub,請開啟可用的 應用程式外掛程式,然後選取 GitHub 或包含 GitHub 的外掛程式。如需連接帳戶的步驟,請參閱:在 ChatGPT 中連接及管理應用程式帳戶

接著,系統會將你導向 GitHub,以安裝並授權 ChatGPT 應用程式,然後選取 ChatGPT 可以存取的程式碼庫。ChatGPT 會視需要擷取獲准存取的程式碼庫內容。不支援 GitHub 同步,也無法個別設定程式碼庫索引。

若要變更程式碼庫存取權:

  1. 開啟設定

  2. 視可用選項而定,選取應用程式外掛程式

  3. 開啟 GitHub

  4. 選取可用的程式碼庫管理選項。

若要中斷 GitHub 連線,請開啟相同的應用程式設定,然後選取中斷連線

根據 GitHub pull request 活動建立任務

符合資格的使用者可針對已連接的 github.com 程式碼庫活動,在「工作」中建立事件觸發(以 webhook 為基礎)的任務。支援的活動可包括 pull request 已開啟、標示為可供審查或已關閉。視觸發條件而定,你也可以監控 pull request 審查、留言、提交更新或已完成的合併。

任務只能存取已授權給所連接 GitHub 帳戶的程式碼庫。事件觸發的任務不支援連接自行託管的 GitHub Enterprise。

分享使用 GitHub 的排程任務

當你的帳戶可使用排程任務分享功能時,你可以分享指示中提及 GitHub 且符合資格的排程任務。符合資格的接收者可以連接自己的 GitHub 帳戶,建立另一個獨立任務。他們的帳戶必須具備其任務副本所需之所有程式碼庫的存取權。

共享任務連結不會轉移你的 GitHub 連線、認證、程式碼庫存取權或程式碼庫檔案。共享連結中會顯示任務指示,因此請先移除敏感程式碼或程式碼庫資訊,再進行分享。現有的 GitHub 管理員核准和應用程式唯讀限制仍然適用。

事件觸發的 GitHub 任務可以分享。符合資格的接收者必須連接自己的 GitHub 帳戶,並授權存取其任務所需的 github.com 程式碼庫。

如需詳細資訊,請參閱:ChatGPT 中的排程任務

尋找未顯示的 GitHub 程式碼庫

程式碼庫通常約需 5 分鐘才會在 ChatGPT 中顯示為可用。

尚未看到程式碼庫的其他可能原因:

  • 如果是私人或新建立的程式碼庫,必須先為正確的帳戶或組織安裝 GitHub 應用程式,並授予該程式碼庫的存取權,才會顯示。開啟 GitHub 應用程式的程式碼庫設定,確認該程式碼庫已選取並獲得核准。如果 GitHub 顯示已連接,卻沒有可用的程式碼庫,請先檢查這些設定,再重新連接。

  • 你的 GitHub 組織可能要求管理員核准 ChatGPT 應用程式或特定程式碼庫。檢查 GitHub 應用程式的程式碼庫設定,並透過組織顯示的核准流程申請存取權。

  • GitHub 本身的搜尋索引可能需要一段時間才會納入新的程式碼庫。這與 ChatGPT 應用程式同步無關:ChatGPT 中的 GitHub 存取功能會視需要擷取已授權的程式碼庫內容,不會建立由管理員管理的 GitHub 索引。

資料與隱私權

ChatGPT 如何與 GitHub 搭配運作

ChatGPT 會根據你的提示詞建立搜尋查詢,以便在已連接的 GitHub 程式碼庫中尋找相關資訊,並將這些查詢傳送至 GitHub。例如,如果你問:「可以告訴我後端在哪裡處理檔案上傳嗎?」ChatGPT 可能會使用「檔案上傳處理程式後端」之類的查詢來搜尋你的 GitHub 程式碼庫。如有需要,它可能會進行幾次不同的搜尋,以找出最相關的程式碼或檔案。

瞭解模型訓練與 GitHub 資料

依預設,使用商務產品(例如 ChatGPT Business、Enterprise、Edu 和我們的 API)的客戶所傳送之內容,不會用來改善我們的模型。如需 OpenAI 如何使用商務資料的相關資訊,請參閱:企業隱私權

針對符合資格的個人帳戶內容,是否用於改善模型取決於你的為所有人改善模型設定。如需連接應用程式的資料使用方式和模型訓練相關資訊,請參閱:ChatGPT 中的連接應用程式

ChatGPT 資料駐留僅適用於工作區所選區域內受支援且符合適用範圍的客戶內容。傳送至 GitHub 的資訊也受 GitHub 本身的儲存、處理及資料駐留條款約束。如需目前的涵蓋範圍,請參閱:ChatGPT 的資料駐留與推論駐留

常見問題

GitHub 管理員如何核准 ChatGPT 應用程式?

如果你的組織限制 OAuth 應用程式存取權,組織擁有者可以按照 GitHub 的為組織核准 OAuth 應用程式指示操作。安裝 GitHub 應用程式與授予程式碼庫存取權是兩個不同的步驟。

如何在程式碼庫中搜尋個別檔案?

程式碼庫選取器會搜尋程式碼庫名稱,而非程式碼庫內的檔案。在支援的 ChatGPT 體驗中連線 GitHub 後,你可以要求 ChatGPT 使用檔案名稱、函式名稱或錯誤訊息搜尋已授權的程式碼庫。請附上程式碼庫名稱;如果知道檔案路徑,也請一併提供。

可以禁止 ChatGPT 應用程式存取特定程式碼庫嗎?

可以。程式碼庫存取權是在 GitHub 中控管。組織擁有者可以查看已安裝的 GitHub 應用程式,以變更應用程式可存取的程式碼庫。

連線至 ChatGPT 後,可以將程式碼、更新或 PR 推送到 GitHub 嗎?

ChatGPT 中的 GitHub 應用程式只能讀取你的程式碼庫,以分析和搜尋程式碼。若要產生、編輯程式碼並直接推送至 GitHub,請使用 Codex。如需詳細資訊,請參閱:說明中心的 Codex 文章

如果我在 GitHub 上啟用了 IP 允許清單,該怎麼辦?

如果你的 GitHub 企業或組織已啟用 IP 允許清單,請將 OpenAI 的輸出 IP 位址區塊新增至 IP 允許清單

為什麼 GitHub 可用於深度研究或智慧體模式,卻無法用於聊天?

GitHub 的可用情況可能因 ChatGPT 方案和產品體驗而異。部分方案可能支援在深度研究或智慧體模式中使用 GitHub,但不支援在標準聊天中使用。如果你在標準聊天中看不到 GitHub,請查看 ChatGPT 方案的詳細資訊。

這篇文章有幫助嗎?