OpenAI
页面内容为机器翻译。查看英文原文

将 GitHub 连接到 ChatGPT

在 ChatGPT 中直接访问你的 GitHub 代码仓库,以分析、搜索和引用代码。

更新于:7 days ago

概述

你可以将自己的 GitHub 代码仓库连接到 ChatGPT 应用以及 ChatGPT 智能体,以便基于你自己的代码提问。

连接到 GitHub 后,ChatGPT 可以从你的代码仓库中提取实时数据(包括代码、README 文件和其他文档),并实时对其进行推理;这可以通过带同步功能的应用、带文件搜索功能的应用,或带深度研究功能的应用完成。只需连接并提出问题,ChatGPT 就会直接从你的 GitHub 内容中读取、分析并引用相关片段。

注意:GitHub 应用的可用性可能因 ChatGPT 套餐和使用体验而异。例如,ChatGPT Plus 用户可能不会在标准 ChatGPT 体验中看到 GitHub 应用,即使它在深度研究或智能体模式等其他体验中可用。

将 GitHub 连接到 ChatGPT

你可以选择设置应用,并在 ChatGPT 应用目录中找到 GitHub,从而将 GitHub 连接到 ChatGPT。

随后,你将被引导至 GitHub,以安装并授权 ChatGPT 应用,然后选择 ChatGPT 可以访问的代码仓库。连接后,ChatGPT 可能会询问你最常使用哪些代码仓库,以便同步它们,从而提升速度和质量。此同步选择与 GitHub 代码仓库访问权限相互独立;即使某些代码仓库未被选中进行同步,只要你已在 GitHub 中允许访问,ChatGPT 仍可访问它们。

如需更改 ChatGPT 可以访问的代码仓库,请前往设置应用,打开 GitHub,然后选择选择代码仓库(或在 GitHub 上配置代码仓库)以打开 GitHub 的代码仓库访问页面。如需断开 GitHub 与 ChatGPT 的连接,请前往设置应用,打开 GitHub,然后选择断开连接

为什么将 ChatGPT 连接到 GitHub 后,我看不到我的某些代码仓库?

通常在代码仓库显示为可在 ChatGPT 中使用之前,会有约 5 分钟的延迟。

你可能还未看到某个代码仓库的其他原因:

  • 私有或新创建的代码仓库:如果你的代码仓库是私有的,或是在最初连接到 GitHub 后创建的,它可能不会立即显示在 ChatGPT 中。请访问此链接,或在 ChatGPT 中 GitHub 的设置页面点按齿轮图标,以配置对所需代码仓库的访问权限。

  • 代码仓库需要 GitHub 管理员批准:你的代码仓库可能被 GitHub 管理员阻止连接到 ChatGPT。请访问此链接,或在 ChatGPT 中 GitHub 的设置页面点按齿轮图标。在这里,你可以“请求”访问可由你的 IT 管理员批准的代码仓库。

  • 未被 GitHub 编入索引的代码仓库:由于 GitHub 的搜索索引机制,该代码仓库可能不在 GitHub 的索引中,因此 ChatGPT 应用在搜索时看不到它。你可以前往 GitHub 并使用以下格式搜索该代码仓库,来手动触发索引:repo:{username/repo_name} import(例如 repo:openai/codex import)。请注意,索引可能需要约 5–10 分钟才会可供连接器使用。

数据与隐私

ChatGPT 如何与 GitHub 配合工作

ChatGPT 会根据你的提示形成搜索查询,以便在你已连接的 GitHub 代码仓库中查找相关信息,并将这些查询发送给 GitHub。例如,如果你问:“你能告诉我我在后端哪里处理了文件上传吗?” ChatGPT 可能会使用类似“文件上传处理程序 后端”的查询来搜索你的 GitHub 代码仓库。如有需要,它可能会进行几次不同的搜索,以找到最相关的代码或文件。

OpenAI 会使用 GitHub 中的内容来训练其模型吗?

默认情况下,使用商业服务(例如 ChatGPT Business、Enterprise、Edu 和我们的 API)的客户发送的内容不会用于改进我们的模型。请参阅我们的企业隐私页面,了解我们如何使用业务数据。

使用个人订阅访问我们的服务时,如果你的“为所有人改进模型”设置已开启,我们可能会使用你的内容来训练我们的模型。你可以在我们帮助中心的这篇文章中阅读更多有关你的数据如何存储和使用的信息。

GitHub 的数据驻留功能在所有可用区域均受支持。阅读更多关于数据驻留的信息。

常见问题

GitHub 管理员如何批准 ChatGPT 应用?

GitHub 管理员可以按照这些说明来为其组织批准 OAuth 应用,例如 ChatGPT 应用。

如何在代码仓库中搜索单个文件?

你只能搜索你的 GitHub 代码仓库名称。不支持搜索特定文件名。

我可以禁止 ChatGPT 应用访问特定代码仓库吗?

可以,不过这需要在 GitHub 设置中控制。管理员可以按照这些说明来禁止访问特定代码仓库。

连接到 ChatGPT 后,我可以向 GitHub 推送代码、更新或 PR 吗?

ChatGPT 中的 GitHub 应用只允许你从代码仓库中读取内容,以分析和搜索你的代码。如果你想直接向 GitHub 生成、编辑并推送代码,可以通过我们的 Codex 产品实现。

如果我在 GitHub 上启用了 IP 允许列表,该怎么办?

如果你在 GitHub 的企业或组织级别启用了 IP 允许列表,则需要确保将 OpenAI 的出站 IP 块添加到 IP 允许列表中。

为什么我可以在深度研究或 Agent 模式中使用 GitHub,却不能在聊天中使用?

GitHub 应用的可用性可能会因 ChatGPT 方案和产品体验而异。某些方案可能允许在深度研究或 Agent 模式中使用 GitHub 应用,但不能在标准 ChatGPT 体验中使用。如果你在聊天中看不到 GitHub,请查看你的 ChatGPT 方案详情。

你可以在我们的 Codex 帮助中心文章中了解更多信息。

这篇文章对你有帮助吗?