IntelliCode:Visual Studio 中的 AI 辅助代码开发

GitHub CopilotGitHub Copilot Chat 和 IntelliCode 在 Visual Studio 中启用 AI 辅助开发,帮助你在编写代码时提高工作效率和效率。

在本文中,你将了解 Visual Studio IntelliCode 通过提供上下文感知代码自动完成(包括灰色文本中的全行完成)使用人工智能来增强软件开发。 默认情况下,IntelliCode 包含在大多数 Visual Studio 工作负载中,并且可通过 Visual Studio 安装程序获得。 此功能预测开发人员使用的最可能正确的方法或属性,而不只是按字母顺序排列的列表。 它使用开发人员的当前代码上下文和模式来提供此动态列表。

除了提供成员建议外,IntelliCode 还提供了参数完成。 此功能会列出调用方法时将使用的最可能的参数名称,并将这些建议置于完成列表的顶部。 在括号内开始键入或按 Ctrl+空格时,将显示完成列表。

IntelliCode for Visual Studio 中参数完成的屏幕截图。

IntelliCode 在本地跟踪您的编辑,检测您何时在执行重复操作,并在其他类似位置(仅限 C#)提供应用相同操作的建议。 Visual Studio 中 C# 建议的屏幕截图。

上下文感知代码自动完成

IntelliCode 为多种语言提供 AI 辅助的 IntelliSense。 IntelliCode 建议显示在完成列表顶部,旁边有一个星形图标:

使用 Visual Studio IntelliCode 的带有星号的 IntelliSense 建议的屏幕截图。

完成列表建议开发人员使用的最可能正确的 API,而不是提供简单的按字母顺序排列的成员列表。 为了提供此动态列表,IntelliCode 基于 GitHub 上数千个高度分级的开源项目使用开发人员的当前代码上下文和模式。 结果形成一个模型,用于预测最有可能和最相关的 API 调用。

Visual Studio 中 C# 全行自动完成的屏幕截图。

Visual Studio 2022 及更高版本中的 C# 开发人员还受益于 全线自动完成,该自动完成功能基于当前代码预测下一个代码块,并将其呈现为内联预测。

注释

某些 IntelliCode 的功能仍处于预览状态,这意味着不能保证将来的支持。 默认情况下禁用预览功能。 若要启用或禁用 IntelliCode 预览功能,请选择 “工具>选项>IntelliCode”。 在 “预览功能”下,选择“ 启用”、“ 禁用”或 “默认 ”以配置每个功能。

安装用于 Visual Studio 的 IntelliCode

  1. 下载 Visual Studio 版本 16.4 或更高版本。
  2. 安装 受支持的工作负载,例如 .NET 桌面开发。 默认安装 Visual Studio IntelliCode。

若要关闭带星号 IntelliSense 建议,请从菜单中选择“ 扩展>管理扩展 ”来禁用该扩展,找到并选择 IntelliCode 扩展,然后单击“ 禁用”。

支持的语言和工作负载

支持 AI 辅助 IntelliSense 自动完成的语言包括:

  • C#
  • XAML
  • C++
  • JavaScript 和 TypeScript,需要 TypeScript 3.4.2 或更高版本
  • Visual Basic

IntelliCode 包含在 Visual Studio 2019 版本 16.4 中,作为 以下任何工作负载的一部分:

  • Azure 云开发
  • .NET 桌面开发
  • 使用 .NET 的移动开发
  • 使用 Unity 的游戏开发
  • .NET Core 跨平台开发
  • ASP.NET 和 Web 开发
  • Visual Studio 扩展开发
  • 通用 Windows 平台开发
  • Office/SharePoint 开发
  • 使用 C++ 进行桌面开发
  • 使用 C++ 的游戏开发
  • 使用 C++ 进行移动开发
  • 使用 C++ 的 Linux 开发

团队完成项

早期版本的 IntelliCode 提供了一种在代码上训练模型的方法,为特定于团队的 API 框架、库和其他用户项目提供排序的方法完成。 此功能已替换为在计算机上运行的深度学习模型,并可供 C# 用户自由使用。 请参阅 从 IntelliCode 自定义团队完成模型升级到深度学习。 IntelliCode 适用于所有 Visual Studio 用户。

如果你是C++用户,则可以订阅 GitHub Copilot 进行 AI 辅助代码开发。 GitHub Copilot 和 Visual Studio IntelliSense 协同工作,改进代码完成;请参阅 Visual Studio 的 IntelliSense 列表现在可以引导 GitHub Copilot 代码完成。 GitHub Copilot 需要订阅,但你可以使用免费试用对其进行评估。

排查 Visual Studio 中的 IntelliCode 错误

如果未看到任何 IntelliCode 建议,则可能已安装覆盖 IntelliSense UI 的扩展。 此类扩展可以防止 IntelliCode“星标”建议出现在列表顶部。 可以通过关闭扩展来验证扩展是否导致此行为,然后再次尝试 IntelliSense。 或者,如果扩展支持它,请关闭其自动完成功能。

如果禁用覆盖 IntelliSense UI 的扩展无法为你解决问题,请使用 Visual Studio 报告问题 功能报告它,并在报表中提及 IntelliCode。

遥测

IntelliCode 捕获一些匿名使用情况和错误报告数据,以帮助改进产品。 不会将用户定义的代码发送到Microsoft,但我们确实会收集有关你使用 IntelliCode 结果的信息。 对于开源或 .NET 类型和成员的基本模型建议,我们捕获你是否选择了 IntelliCode 建议并记录建议的名称。 Microsoft使用数据来监视基本模型的质量。 对于自定义模型,我们能检测你是否选择了 IntelliCode 建议,但不会记录用户定义类型或方法的名称。

若要关闭 IntelliCode 的数据收集,请选择退出 Visual Studio 体验改善计划。 在菜单栏中,选择“ 帮助>隐私>设置”。 在 Visual Studio 体验改善计划 对话框中,选择 “否”,我不想参与 ,然后选择“ 确定”。

另请参阅