Visual Studio 玩转 IntelliCode AI辅助开发

🎀🎀🎀【AI辅助编程系列】🎀🎀🎀

  1. Visual Studio 使用 GitHub Copilot 与 IntelliCode 辅助编码
  2. Visual Studio 安装和管理 GitHub Copilot
  3. Visual Studio 使用 GitHub Copilot 扩展
  4. Visual Studio 使用 GitHub Copilot 聊天
  5. Visual Studio 使用 GitHub Copilot 协助调试
  6. Visual Studio 使用 IntelliCode AI 辅助代码开发
  7. Visual Studio 玩转 IntelliCode AI辅助开发


文章目录


一、前言📋

IntelliCode 整行自动完成功能根据当前代码 预测 下一个 代码区块,并呈现为灰色文本 内联预测 。 想想在键入电子邮件时看到的灰色文本自动完成,只不过此处用于代码。

此功能支持 Visual Studio 2022 中的 C#

二、工作原理🧮

IntelliCode 使用大规模转换器模型,该模型在来自 GitHub 的约 50 万个公共开源存储库上进行训练。 此模型通过充分掌握至今的已编码内容来预测接下来要键入的内容,这些内容包括:

  • 变量名称和位置
  • 你使用的库
  • 附近代码中的函数
  • IntelliSense 列表
  • 该模型在本地计算机上运行,该功能可在脱机和空隙环境中使用。 此功能支持 C#。

三、两种模式🎭

IntelliCode 以两种方式提供完成 -

  • 一种是在用户键入内容时。
  • 第二种是用户在 IntelliSense 列表中选择了项时。

3.1 模式 1:键入时整行自动完成

当用户键入时,我们将显示整行自动完成,可以通过 "要接受的选项卡" 来接受。若要消除预测,可以使用 EscDelete 键。

3.2 模式 2:选择 IntelliSense 项时的整行自动完成

当用户选择了 IntelliSense 列表中的项时,IntelliCode 将使用用户已键入的项以及用户已选择的项作为提供预测的上下文。 在此示例中,将看到"要接受的选项卡"预测。 第一个选项卡接受 IntelliSense 列表中的选定项,第二个选项卡接受整行完成。 若要消除预测,可以使用 EscDelete 键。

四、接受或消除整行完成🎏

默认情况下,Tab 键用于接受整行自动完成。 要将默认接受键更改为向右箭头,请转到 工具 > 选项 > IntelliCode > 高级

启用 Apply whole line completions on right arrow 设置。

五、控制整行自动完成🪧

可以使用编辑器右下角显示的紫色小灯泡(缩放控件旁边)来控制整行自动完成功能。

"工具""选项""IntelliCode""常规" 中,该设置 Show inline completions 允许你打开或关闭全行自动完成。

"高级" 选项卡包含更多选项。

  1. 本文前面讨论了第一种设置,即 Apply whole line completions on right arrow

  2. 第二个设置,Disable suggestions while debugging 可以让你在调试时尽量减少分心。

  3. 第三种设置为 Show inline completions on new lines,可以根据输入新行时是否想要查看整行自动完成来启用或关闭该设置,即按 ReturnEnter

  4. 最后一项设置 Wait for pauses in typing before showing line completions 启用后,整行自动完成仅在暂停键入时显示。 如果发现整行自动完成在默认模式下分散注意力,你可能更喜欢此选项。

六、 编辑代码时的 AI 辅助🤖

当在代码中的多个位置进行类似的编辑时,可借助 IntelliCode 建议来实施编辑。 它会在本地跟踪你的编辑过程和内容并检测 可重复 应用的内容。 然后,它会提供相关建议,使你能够在可能适用的其他位置中应用这些编辑。 例如,如果你错过了可以应用重构的位置,IntelliCode 建议将帮助你找到这些 位置 并进行 更正

IntelliCode 知道代码的 语义结构 。 该结构用于检测可应用更改的情况,即使变量名称不同也能检测到。

假设要将一个使用 硬编码 本地值的 重复性 温度换算替换为能将这些值提取出来的 helper 函数。 IntelliCode 将检测你正在进行的 重复更改 ,并 建议 你在其他位置进行此更改。

建议在 Visual Studio 编辑器中显示为快速操作。 IntelliCode 建议具有 "快速操作" 菜单选项:"应用建议""忽略此类建议"。 如果你想要使用建议的更改,请选择 "应用建议"

Visual Studio 2019 16.9 及更高版本中,你还会在完成列表中看到你键入的建议:

由于 IntelliCode 建议会通过会话中的 重复编辑 进行学习,因此有时会提出 不符合 你意向的建议。 如果你不想使用建议的更改,只需选择 "忽略此类建议" 操作。 IntelliCode 不会再建议这类模式,除非你在后续编辑中 重新创建 了它。

IntelliCode 建议是会话范围内的建议 - 在关闭并重新打开 Visual Studio 后不会显示

若要查看包含所有建议的更改的列表,请转到 "视图" > "其他窗口"> "IntelliCode 建议"

七、 提供多条灯泡建议💡

当你接受完成列表建议时,如果有可应用相同更改的其他位置,你将看到具有操作的灯泡,该操作将向你显示找到的建议的列表。 此操作会打开 "IntelliCode 建议" 窗口,可在其中查找建议并执行建议的操作。

八、总结🎯

本系列教程就此完结,后续如有更新会持续跟进。如果对您有忆点点帮助,请点个赞关注,老规矩我全都要。


🎀🎀🎀【AI辅助编程系列】🎀🎀🎀

  1. Visual Studio 使用 GitHub Copilot 与 IntelliCode 辅助编码
  2. Visual Studio 安装和管理 GitHub Copilot
  3. Visual Studio 使用 GitHub Copilot 扩展
  4. Visual Studio 使用 GitHub Copilot 聊天
  5. Visual Studio 使用 GitHub Copilot 协助调试
  6. Visual Studio 使用 IntelliCode AI 辅助代码开发
  7. Visual Studio 玩转 IntelliCode AI辅助开发
相关推荐
AI_NEW_COME几秒前
超越飞书钉钉:探索高效内部知识库平替方案与应用
人工智能·钉钉·飞书
沈询-阿里15 分钟前
用JAVA实现人工智能:采用框架Spring AI Java
java·人工智能·spring
四口鲸鱼爱吃盐40 分钟前
Pytorch | 对比Pytorch中的十种优化器:基于CIFAR10上的ResNet分类器
人工智能·pytorch·python
阿正的梦工坊41 分钟前
PyTorch 的 torch.unbind 函数详解与进阶应用:中英双语
人工智能·pytorch·python
WeeJot嵌入式43 分钟前
深度解析AlexNet网络及其在PyTorch中的实现
网络·人工智能·pytorch
Python大数据分析@1 小时前
Jupyter Notebook 适合做机器学习开发吗?
ide·机器学习·jupyter
葛雨龙1 小时前
visual studio 2022 c++使用教程
c++·ide·visual studio
weixin_387545641 小时前
如何使用通义千问 AI 生成 PPT 并发布到个人网站
人工智能·powerpoint
神一样的老师1 小时前
使用TinyML方法的智能家居嵌入式智能关键词识别
人工智能
Jam-Young2 小时前
OpenCV的简单练习
人工智能·opencv·计算机视觉