跳转到正文

负责任地使用 GitHub Copilot 文本补全

通过了解其用途、功能和限制,学习如何负责任地使用 Copilot 文本补全。

谁可以使用此功能?

订阅了 GitHub Copilot Enterprise 的企业成员

注意

您目前正在查看 Free、Pro 和 Team 计划的文档。GitHub Copilot Enterprise 仅对 GitHub Enterprise Cloud 计划的客户可用。有关 Copilot Enterprise 的完整文档,请参阅 GitHub Enterprise Cloud 文档中的“什么是 GitHub Copilot?”。

关于 Copilot 文本补全

Copilot 文本补全是 AI 驱动的功能,允许用户通过在键入时建议文本来更轻松地编写拉取请求描述。

当您在键入摘要时短暂暂停,Copilot 会扫描拉取请求并提供建议的文本,尝试完成您的思路。

Copilot 文本补全唯一支持的语言是英语。

Copilot 文本补全使用简单的提示流程,利用 Copilot API,利用通用的大型语言模型,无需额外的训练模型。

当您在键入拉取请求描述时暂停,会生成对 Copilot API 的调用,以生成建议的文本,并将其插入到当前光标位置的描述中。文本补全请求包含来自拉取请求的信息,包括拉取请求标题、描述中已有的任何文本、拉取请求提交标题、部分原始差异以及最近查看的拉取请求和问题标题,这些信息都在提示中请求 Copilot 生成您可能键入的下一个单词的建议。然后,响应将显示为光标后的灰色文本。您可以通过按 Tab 键接受建议的文本,或者通过继续键入或将光标焦点移出描述字段来拒绝建议。

拉取请求文本补全的用例

Copilot 文本补全的目标是帮助拉取请求作者快速向拉取请求的人工审阅者提供上下文。在审查拉取请求时,了解上下文(例如为什么要请求更改以及拉取请求如何进行这些更改)非常有价值。它可以通过减少打开拉取请求所需的时间来提高开发人员的生产力。

提高拉取请求文本补全的性能

该功能旨在补充而不是取代人工为拉取请求添加上下文的工作。文本补全建议的质量取决于标题、提交消息和已添加到描述中的文本的质量。我们鼓励您继续添加有用的上下文,并让 Copilot 在您进行过程中提供建议。您仍然有责任审查和评估您创建的拉取请求中信息的准确性。

拉取请求文本补全的限制

目前,我们的团队意识到此功能存在一些限制。其中许多限制是在利用我们的 Copilot API 时预期的;然而,有一些限制是 Copilot 文本补全特有的,与非常大的拉取请求的范围有限以及潜在的不准确响应有关。我们还注意到,用户应该预料到拉取请求中使用的术语会出现在 AI 生成的建议中。

此功能已接受 RAI 红队测试,我们将继续监测该功能的有效性和安全性。有关更多信息,请参阅 Microsoft 安全博客上的“Microsoft AI 红队构建更安全的 AI 未来”。

范围有限

对于非常大的拉取请求,Copilot API 依赖于自动建议文本的某些拉取请求内容可能不适合 API 调用,因此对于非常大的拉取请求,您可能期望的某些建议可能不会出现。

不准确的响应

Copilot 可使用的输入和上下文越多,文本补全建议就越好。然而,由于该功能还比较新,因此需要时间才能使生成的文本补全建议达到精确的精度。与此同时,在某些情况下,生成的文本补全不太准确,需要用户在使用此描述保存和发布拉取请求之前进行修改。此外,还存在“幻觉”的风险,即 Copilot 生成不准确的语句。由于这些原因,审查是必要的,强烈建议仔细审查输出。

拉取请求内容的复制

由于文本补全建议是从拉取请求中所做的更改中提取的,如果拉取请求的内容中包含有害或冒犯性术语,则建议中也可能包含这些术语。

延伸阅读