Copilot Edits是VS Code中Copilot的新预览功能,它结合了Copilot聊天和内联聊天的优势,提供对话式的工作流程,旨在通过迭代方式帮助用户高效地进行代码编辑。此功能具有多文件迭代编辑、用户掌控、语音交互、双模型架构等特点,适用于不同技能水平的用户。
Copilot Edits是VS Code中Copilot的新预览功能,结合了聊天和内联聊天的优点,提供对话式工作流程,可在多个文件上进行内联更改。
用户可以通过自然语言询问Copilot需要的内容,然后在工作集中跨多个文件进行内联更改。撤消和重做功能使用户可以精确控制更改。
用户可以通过工作集控制并定义需要应用编辑的文件。用户还可以接受或拒绝AI生成的编辑,并通过后续指令进行迭代,直到找到适当的解决方案。
Copilot Edits支持语音交互,提供自然体验。此外,它利用双模型架构提高编辑效率和准确性。
Copilot Edits适用于不同技能水平的用户,包括产品经理和工程师。目前处于预览阶段,团队计划改进应用更改推测解码端点的性能等。
作者:@Isidor Nikolic
原文:https://code.visualstudio.com/blogs/2024/11/12/introducing-copilot-edits
Copilot Edits 是一个预览功能,为 VS Code 中使用 Copilot 的全新方式。结合了 Copilot 聊天和内联聊天的优势,提供跨多个文件进行内联更改的对话式工作流程。它旨在通过迭代的方式帮助用户高效地进行代码编辑。
Copilot Edits 与 Copilot 的其他功能有何不同?
在过去,你可以在 VS Code 中通过两种独立的方式使用 GitHub Copilot。你可以使用补全或内联聊天功能修改编辑器中的代码。或者,可以使用 Copilot 在聊天视图中询问有关代码的问题。Copilot Edits 是一种全新的 VS Code 中使用 Copilot 的方式。它结合了聊天和内联聊天的优点:对话流程以及跨你管理的一组文件进行内联更改的能力。
重要功能和信息
1、多文件迭代编辑
在 Copilot Edits 中,可以指定一组要编辑的文件,然后使用自然语言询问 Copilot 你需要什么。Copilot Edits 会使用专为快速迭代而设计的 UI,在你的工作区中跨多个文件进行内联更改。你可以在审查建议的更改、接受有效的更改并通过后续询问进行迭代时保持代码的流畅性。
2、用户掌控
有一个新的 UI 概念 - 工作集 - 可以让你控制并定义需要应用编辑的文件。你还可以通过拖放文件或编辑器选项卡,或按
#
键将文件显式添加到工作集中。
Copilot Edits 会自动将你跨编辑器组的活动编辑器添加到工作集中。工作集以及撤消和重做功能使你可以精确控制更改,并允许你准确决定在何处以及如何应用更改。Copilot Edits 会在你的代码中直接显示生成的编辑,并为你提供代码审查流程,你可以在其中接受或拒绝每个 AI 生成的编辑。Copilot Edits 不会在工作集之外进行更改 - 唯一的例外是当它建议创建新文件时。
迭代式改进
Copilot Edits 并非依赖于一个永远不会出错的模型,而是通过用户控制、审查和迭代来实现高效编辑。用户可以接受或拒绝建议的更改,并通过后续指令进行迭代,直到找到合适的解决方案。
语音交互
使用语音与 Copilot Edits 进行交互是一种自然体验。通过语音指令,用户可以流畅地进行对话式编辑,就像与一位领域专家进行结对编程一样。
3、双模型架构
Copilot Edits 利用双模型架构来提高编辑效率和准确性。首先,基础语言模型会考虑 Edits 会话的完整上下文,以生成初始编辑建议。你可以在以下基础语言模型之间选择你喜欢的模型:GPT-4o、o1-preview、o1-mini 和 Claude 3.5 Sonnet。为了获得高效的体验,团队开发了一个推测解码端点,针对文件中更改的快速应用进行了优化。基础模型提出的编辑将发送到推测解码端点,然后该端点将在编辑器中内联提出这些更改。推测解码端点比常规模型更快,但团队知道它可以更快,并且正在努力改进这一点,敬请期待。