Skip to main content

在 GitHub Mobile 中负责任地使用 GitHub Copilot 聊天

通过了解其目的、功能和限制,了解如何负责任地使用 GitHub Copilot 聊天功能。

关于 GitHub Mobile 中的GitHub Copilot 对话助手

GitHub Mobile 中的GitHub Copilot 对话助手 是一个聊天界面,可以在其中与 GitHub Copilot 进行互动,并且直接在 GitHub Mobile 中询问编程相关问题并获得答案。 聊天界面提供对编码信息和支持的访问,无需浏览文档或搜索在线论坛。 除了 GitHub Mobile 以外,副驾驶聊天 目前在 GitHub 网站、Visual Studio Code、Visual Studio 和 IDE JetBrains 套件中也受支持。 有关 GitHub Copilot 的详细信息,请参阅 什么是GitHub Copilot?

GitHub Copilot 聊天功能 可以回答与编码相关的各种主题问题,包括语法、编程概念、测试用例、调试等。 GitHub Copilot 聊天功能 并非旨在回答非编码问题或提供有关编码以外主题的一般信息。

GitHub Mobile 中的GitHub Copilot 对话助手 的主要支持语言是英语。

GitHub Copilot 聊天功能 通过结合使用自然语言处理和机器学习来理解你的问题并为你提供答案。 此过程可以细分为多个步骤。

输入处理

来自用户的输入提示由 副驾驶聊天 系统预先处理,并发送到大型语言模型,以便根据上下文和提示获取响应。 用户输入可以采用代码片段或纯语言的形式。 系统仅用于响应与编码相关的问题。

语言模型分析

然后,预处理的提示通过 副驾驶聊天 语言模型传递,该模型是在大量文本数据上训练的神经网络。 语言模型分析输入提示。

响应生成

语言模型根据其对输入提示和所提供上下文的分析生成响应。 此响应可以采用生成的代码、代码建议或现有代码说明的形式。

输出格式设置

由 副驾驶聊天 生成的响应经过格式化后呈现给用户。 副驾驶聊天 可以使用语法突出显示、缩进和其他格式设置功能来为生成的响应增添清晰度。 根据用户问题的类型,还可以提供模型在生成响应时使用的上下文的链接,例如源代码文件或文档。

GitHub Copilot 聊天功能 旨在为你提供问题最相关的答案。 但是,它可能并不总是提供你要查找的答案。 用户 副驾驶聊天 负责查看和验证系统生成的响应,以确保它们准确且合适。 有关提高 GitHub Mobile 中的Copilot 对话助手 性能的更多信息,请参阅提高 GitHub Mobile 中的Copilot 对话助手 性能

各 GitHub Copilot 计划之间的差异

您在 GitHub Mobile 中的Copilot 对话助手 中可用的选项因您使用的 GitHub Copilot 套餐而异。

  • 只有具有 GitHub Copilot Enterprise 订阅的人员才能使用专用索引存储库中的数据访问并拥有对话。
  • 如果你有订阅 GitHub Copilot Enterprise 并且已启用必应搜索集成, GitHub Mobile 中的Copilot 对话助手 则可以使用基于必应搜索结果的信息做出响应。 有关如何启用或禁用必应搜索集成的信息,请参阅文档中的 管理企业中 GitHub Copilot 的策略和功能.
  • 除了一般的编码对话或围绕单个文件的对话之外,拥有 Copilot Pro、Copilot Pro+ 或 Copilot Max 订阅的用户还可以借助嵌入来讨论热门的公开代码库。

如果您没有GitHub Copilot订阅,您可以直接在Copilot Pro的 iOS 版本中购买Copilot Pro+、Copilot Max或GitHub Mobile订阅,或者在 Google Play 商店中购买GitHub Mobile的 Android 版本订阅。

用例 GitHub Mobile 中的GitHub Copilot 对话助手

GitHub Mobile 中的GitHub Copilot 对话助手 可以在各种场景中提供编码协助。

说明代码和建议改进

副驾驶聊天 通过生成代码功能和用途的自然语言说明,可以帮助解释所选代码。 如果想要了解代码的行为,这非常有用,对于需要了解代码工作原理的非技术利益干系人也非常有用。 例如,如果在代码编辑器中选择函数或代码块, 副驾驶聊天 则可以生成代码的作用的自然语言说明,以及它如何适应整个系统。 这可能包括函数的输入和输出参数、其依赖项及其在较大应用程序中的用途等信息。

副驾驶聊天 还可以建议对所选代码的潜在改进,例如改进错误和边缘事例的处理,或对逻辑流的更改,使代码更易于阅读。

通过生成说明和建议相关文档, 副驾驶聊天 可以帮助你了解所选代码,从而改进协作和更有效的软件开发。 但是,请务必注意,生成的解释和文档可能并不总是准确或完整,因此你需要审查 副驾驶聊天 的输出,并偶尔进行更正。

建议代码修复

副驾驶聊天 可以通过根据错误或问题的上下文建议代码片段和解决方案来建议针对代码中的 bug 进行修复。 如果你正在努力确定 bug 的根本原因,或者需要有关修复 bug 的最佳方法的指导,这非常有用。 例如,如果代码生成错误消息或警告, 副驾驶聊天 则可以根据错误消息、代码的语法和周围的代码来建议可能的修复。

副驾驶聊天 可以建议对变量、控制结构或函数调用进行修改,以帮助解决该问题,并生成可纳入代码库的代码片段。 但是,请务必注意,建议的修复可能并不总是最佳或完整的,因此你需要查看和测试建议。

回答编码问题

可以请求 副驾驶聊天 有关特定编码问题的帮助或说明,并接收自然语言格式或代码片段格式的响应。 对于程序员来说,这是一个有用的工具,因为它可以为常见的编码任务和挑战提供指导和支持。

为GitHub Mobile 中的Copilot 对话助手提高性能

副驾驶聊天 可以支持各种实际应用程序,例如代码生成、代码分析和代码修复,每个应用程序都有不同的性能指标和缓解策略。 为了提高性能并解决 副驾驶聊天 的一些局限性,可以采取多种措施。 有关 GitHub Mobile 中的Copilot 对话助手 限制的详细信息,请参阅GitHub Mobile 中的Copilot 对话助手 的限制

使提示与主题相关

副驾驶聊天 旨在专门处理与编码相关的查询。 因此,将提示限制为编码问题或任务可以提高模型的输出质量。

将 副驾驶聊天 用作工具,而不是替代品。

虽然 副驾驶聊天 它可以是生成代码的强大工具,但请务必将其用作工具,而不是人为编程的替代工具。 应始终查看并测试生成的 副驾驶聊天 代码,以确保它满足你的要求,并且没有错误或安全问题。

使用安全编码和代码评审做法

虽然 副驾驶聊天 可以生成语法正确的代码,但它可能并不总是安全的。 应始终遵循安全编码的最佳做法,例如避免硬编码的密码或 SQL 注入漏洞,以及遵循代码评审最佳做法来解决 副驾驶聊天其限制。

提供反馈

如果你在使用 副驾驶聊天 时遇到任何问题或限制,我们建议你在对某个回答表示不喜欢时,通过 GitHub Mobile 中的Copilot 对话助手 中出现的提供反馈链接提交反馈。 这可以帮助开发人员改进该工具并解决任何问题或限制。

掌握最新动态

GitHub Mobile 中的Copilot 对话助手 是一项新技术,可能会随着时间的推移而发展。 应随时了解工具的任何更新或更改,以及可能出现的任何新安全风险或最佳做法。

局限性GitHub Mobile 中的Copilot 对话助手

根据代码库和输入数据等因素,在使用 副驾驶聊天时可能会遇到不同级别的性能。 以下信息旨在帮助你理解系统限制的适用范围和与 副驾驶聊天 相关的性能关键概念。

作用域受限

副驾驶聊天 已基于海量代码进行训练,但其能力范围仍然有限,可能无法处理更复杂的代码结构或较冷门的编程语言。 对于每种语言,收到的建议质量可能取决于该语言训练数据的数量和多样性。 例如,JavaScript 在公共代码仓库中有大量项目,也是 GitHub Copilot 支持得最好的语言之一。 在公共代码仓库中较少出现的语言,可能会让 副驾驶聊天 更难提供帮助。 此外, 副驾驶聊天 只能根据所编写代码的上下文来建议代码,因此它可能无法识别更大的设计或体系结构问题。

潜在偏见

Copilot训练数据来自现有代码存储库,其中可能包含工具可以延续的偏见和错误。 此外, 副驾驶聊天 可能偏向于某些编程语言或编码样式,这可能会导致代码建议欠佳或不完整。

安全风险

副驾驶聊天 基于所编写代码的上下文生成代码,如果未仔细使用,则可能会公开敏感信息或漏洞。 在用于 副驾驶聊天 为安全敏感应用程序生成代码时,应小心谨慎,并始终全面查看和测试生成的代码。

与公共代码匹配

副驾驶聊天 能够生成以概率方式执行的新代码。 虽然它可能生成与训练集中代码匹配的代码的概率较低,但 副驾驶聊天 建议可能包含一些代码片段,这些代码片段与训练集中的代码匹配。 副驾驶聊天 使用筛选器来阻止与 GitHub 代码库中的公共代码相匹配的内容,但你仍应像对待任何使用了并非由你独立创作的材料的代码一样,始终采取同样的预防措施,包括采取措施确保其适用性。 这些预防措施包括严格的测试、IP 扫描和安全漏洞检查。

代码不准确

其中一个限制 副驾驶聊天 是,它可能会生成看似有效的代码,但实际上可能不是语义或语法正确的,或者可能无法准确反映开发人员的意图。 若要降低代码不准确的风险,应仔细评审和测试生成的代码,尤其是在处理关键或敏感应用程序时。 还应确保生成的代码遵循最佳做法和设计模式,并符合代码库的整体体系结构和样式。

对非编码主题的响应不准确

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

其他阅读材料