管理个人 GitHub Copilot 策略、功能和扩展

已完成

GitHub提供了多个用于自定义和扩展GitHub Copilot的选项。 对于单个用户,可以管理GitHub Copilot计划、配置GitHub Copilot设置以及安装GitHub Copilot扩展。

注释

如果你是组织的成员,并且你已通过组织分配了GitHub Copilot订阅,请与客户经理合作,以确保你拥有正确的计划和设置。 如果组织具有GitHub Copilot业务或GitHub Copilot企业计划,则可能无法更改单个计划或设置。

以单个订阅者身份管理GitHub Copilot策略和功能

除了受支持的 IDE 中GitHub Copilot插件的配置外,还可以在GitHub上配置GitHub Copilot设置。 无论在何处使用GitHub Copilot,设置都适用。

启用或禁用功能

可以使用帐户设置启用或禁用GitHub Copilot的多项功能。 这些功能默认处于启用状态,但你可以根据需要选择禁用这些功能。

GitHub 中的GitHub Copilot

你可以选择是否在 GitHub 中使用 GitHub Copilot 对话助手,但预览功能不可用。 默认情况下,此设置处于启用状态。

GitHub Desktop 中的 GitHub Copilot

可以选择是否在 GitHub Desktop 中使用 GitHub Copilot Chat 来获得帮助。 默认情况下,此设置处于启用状态。

GitHub Copilot 云代理

可以选择是在存储库中启用或禁用 GitHub Copilot 云代理。 GitHub Copilot 云代理允许你将 GitHub Copilot 分配到 GitHub Issues,或者通过 GitHub Copilot Chat 中的提示请求 GitHub Copilot 提出拉取请求。 默认情况下,GitHub Copilot 云代理在所有存储库中启用,但你可以阻止它在个人帐户拥有的存储库中使用。 GitHub Copilot 云代理适用于 GitHub Copilot Pro、GitHub Copilot Pro+、GitHub Copilot Business 和 GitHub Copilot Enterprise 计划。

GitHub Copilot可以搜索网络

可以选择是否在GitHub Copilot聊天中使用 Web 搜索功能。 如果启用此设置,GitHub Copilot Chat 将使用必应搜索互联网,以获取与问题相关的信息。 在讨论新技术或高度特定的主题时,必应搜索特别有用。

非Microsoft编码代理

可以选择是否允许在存储库中启用非Microsoft编码代理。 非Microsoft代理(如人类 Claude 和 OpenAI Codex)可以与 GitHub Copilot 云代理一起工作。 GitHub Copilot Pro、GitHub Copilot Pro+、GitHub Copilot Business 和 GitHub Copilot Enterprise 计划中提供了非Microsoft代理。

启用或禁用隐私策略

可以使用帐户设置启用或禁用GitHub Copilot的多个隐私策略

启用或禁用与公共代码匹配的建议

注释

如果你是 GitHub Enterprise Cloud 组织中的成员,并且通过组织分配得到了 GitHub Copilot 订阅,则无法在个人帐户设置中配置与公共代码匹配的建议。 您的用于匹配公共代码的建议设置继承自您的组织或企业。

GitHub Copilot的个人设置包括允许或阻止与公开可用的代码匹配的代码建议的选项。 如果选择阻止与公共代码匹配的建议,GitHub Copilot会将代码建议及其大约150个字符的周围代码与GitHub上的公共代码进行对比检查。 如果存在匹配或近似匹配,则不会向你显示该建议。

如果您选择允许与公共代码匹配的建议,当 GitHub Copilot 提出匹配代码时,您可以查看匹配项的详细信息,并点击访问 GitHub 上的相关仓库。

启用或禁用为产品改进而收集的提示和建议

您可以选择是否允许GitHub收集和保留您的提示和GitHub Copilot的建议,并进一步处理和与Microsoft共享。

  • 在GitHub上任意页面的右上角,单击个人资料照片,然后单击Copilot设置
  • 若要允许或阻止GitHub使用您的数据,请选择或取消选择 允许GitHub使用代码编辑器中的代码片段进行产品改进

模型训练和改进

默认情况下,GitHub、其关联方和第三方不会使用你的数据,包括 AI 模型训练的提示、建议和代码片段。 这反映在GitHub Copilot的个人设置中,无法启用。

管理个人帐户的 GitHub Copilot 扩展

可以通过从 GitHub 市场安装GitHub应用,将其他功能添加到个人帐户中的GitHub Copilot。

关于个人帐户的 GitHub Copilot 扩展

GitHub Copilot扩展是一种可在 GitHub 帐户上安装的 GitHub 应用,用于向GitHub Copilot添加其他功能。

任何人都可以为其个人帐户安装GitHub Copilot扩展,但你必须设置GitHub Copilot Free,或者拥有有效的 GitHub Copilot Pro 或 GitHub Copilot Pro+ 计划才能使用你安装的GitHub Copilot扩展。

注释

如果您通过 GitHub Copilot Business 或 GitHub Copilot Enterprise 计划获得 GitHub Copilot 的访问权限,GitHub Copilot 扩展由组织所有者在组织级别进行安装,您无需在个人帐户上安装该扩展。

还可以为个人帐户创建自己的自定义GitHub Copilot扩展。

GitHub Copilot 聊天功能的限制

根据您的代码库、输入的提示以及其他因素,在使用GitHub Copilot 聊天功能时,您可能会遇到不同级别的性能表现。 以下信息旨在帮助你了解有关性能的系统限制和关键概念,因为它们适用于GitHub Copilot聊天。

作用域受限

GitHub Copilot 对话功能是在大型代码库上训练的,但它的功能范围仍然有限。 它可能无法处理一些复杂的代码结构或模糊的编程语言。 对于每种编程语言,你收到的建议的质量可能取决于该语言的训练数据的数量和多样性。 例如,JavaScript 在公共存储库中表现良好,是GitHub Copilot支持的最佳语言之一。 表现在公共存储库中代表性较少的语言可能对 GitHub Copilot 聊天更具挑战性。 此外,GitHub Copilot聊天只能根据所编写代码的上下文来建议代码,因此它可能无法识别更大的设计或体系结构问题。

潜在偏见

GitHub Copilot的训练数据来自可能包含偏见和错误的现有代码存储库。 如果这些偏差存在于训练数据中,GitHub Copilot可能会延续这些偏差。 GitHub Copilot聊天可能偏向于某些编程语言或编码样式,这可能会导致代码建议欠佳或不完整。

安全风险

GitHub Copilot Chat 基于所编写代码的上下文生成代码,如果不仔细使用,可能会公开敏感信息或漏洞。 在使用GitHub Copilot Chat的对话功能为安全敏感应用程序生成代码时,应小心并始终全面检查和测试生成的代码。

与公共代码匹配

GitHub Copilot 的聊天能够以概率算法生成新的代码。 GitHub Copilot Chat 生成的代码与训练集中的代码匹配的概率较低,但不是零。 GitHub Copilot 聊天建议可能包含一些代码片段,这些代码与训练集中的代码匹配。 GitHub Copilot 聊天功能使用筛选器来过滤掉与公共存储库中的代码匹配的项,但您仍应采取预防措施。 您应像对待使用非自创材料的代码一样,对待 GitHub Copilot 的建议。 这包括确保其适用性的预防措施。 这些预防措施包括严格的测试、IP 扫描和安全漏洞检查。 应确保 IDE 或编辑器不会在你评审所生成的代码之前自动编译或运行此代码。

代码不准确

GitHub Copilot聊天可能会生成看起来有效但无效的代码。 代码实际上在语义上或语法上可能不正确,或者可能无法准确反映开发人员的意图。 为了降低代码不准确的风险,应仔细查看和测试生成的代码。 处理关键或敏感应用程序时,这一点尤其重要。 还应确保生成的代码遵循最佳做法和设计模式,并符合代码库的整体体系结构和样式。

对非编码主题的不准确回复

GitHub Copilot聊天不是为了回答非编码问题而设计的,因此其响应可能并不总是准确或有用的在这些上下文中。 如果用户询问GitHub Copilot聊天非编码问题,它可能会生成不相关或无理的答案,或者可能表示无法提供有用的响应。

概要

GitHub提供了多个用于自定义和扩展GitHub Copilot的选项。 对于单个用户,可以管理GitHub Copilot计划、配置GitHub Copilot设置以及安装GitHub Copilot扩展。 还可以启用或禁用功能和隐私策略,以自定义GitHub Copilot体验。