现已发布!阅读关于 11 月新增功能和修复的内容。

AI 可扩展性 in VS Code

本文概述了 Visual Studio Code 中的 AI 可扩展性选项,帮助您为您的扩展选择正确的方法。

VS Code 包含强大的 AI 功能,可增强编码体验

  • 代码补全:在您键入时提供内联代码建议
  • 代理模式:使 AI 能够使用专用工具自主规划和执行开发任务
  • 聊天:允许开发人员通过聊天界面使用自然语言提问或在代码库中进行编辑
  • 智能操作:在编辑器中到处使用 AI 增强的操作来执行常见的开发任务

您可以扩展和自定义所有这些内置功能,以创建满足用户特定需求的定制 AI 体验。

为什么扩展 VS Code 中的 AI?

为您的扩展添加 AI 功能会给您的用户带来几项好处

  • 代理模式下的领域特定知识:让代理模式访问您公司的数据源和服务的
  • 增强的用户体验:提供针对您扩展的领域量身定制的智能帮助
  • 领域专业化:创建特定于编程语言、框架或领域的 AI 功能
  • 扩展聊天功能:为聊天界面添加专用工具或助手,以获得更强大的交互
  • 提高开发人员生产力:通过 AI 功能增强常见的开发任务,例如调试、代码审查或测试

扩展聊天体验

语言模型工具

语言模型工具使您能够通过领域特定功能扩展 VS Code 中的代理模式。在代理模式下,这些工具会根据用户的聊天提示自动调用,以执行专用任务或从数据源或服务中检索信息。用户还可以通过 #-提及工具在聊天提示中明确引用这些工具。

要实现语言模型工具,请在您的 VS Code 扩展中使用语言模型工具 API。语言模型工具可以访问所有 VS Code 扩展 API,并提供与编辑器的深度集成。

主要优势:

  • 作为自主编码工作流一部分的领域特定功能
  • 您的工具实现可以使用 VS Code API,因为它在扩展主机进程中运行
  • 通过 Visual Studio Marketplace 轻松分发和部署

主要考虑因素:

  • 远程部署需要扩展实现客户端-服务器通信
  • 跨不同工具的重用需要模块化设计和实现

MCP 工具

模型上下文协议 (MCP) 工具提供了一种通过使用标准化协议将外部服务与语言模型集成的方法。在代理模式下,这些工具会根据用户的聊天提示自动调用,以执行专用任务或从外部数据源检索信息。

MCP 工具在 VS Code 之外运行,可以在用户本地计算机上运行,也可以作为远程服务运行。用户可以通过 JSON 配置添加 MCP 工具,或者 VS Code 扩展可以以编程方式配置它们。您可以通过各种语言 SDK 和部署选项来实现 MCP 工具。

由于 MCP 工具在 VS Code 之外运行,因此它们无法访问 VS Code 扩展 API。

主要优势:

  • 将领域特定功能作为自主编码工作流的一部分
  • 本地和远程部署选项
  • 在其他 MCP 客户端中重用 MCP 服务器

主要考虑因素:

  • 无法访问 VS Code 扩展 API
  • 分发和部署需要用户设置 MCP 服务器

聊天参与者

聊天参与者是专业助手,可让用户通过特定领域的专家扩展提问模式。在聊天中,用户可以通过 @-提及聊天参与者并提供关于特定主题或领域的自然语言提示来调用它。聊天参与者负责处理整个聊天交互。

要实现聊天参与者,请在您的 VS Code 扩展中使用聊天 API。聊天参与者可以访问所有 VS Code 扩展 API,并提供与编辑器的深度集成。

主要优势:

  • 控制端到端的交互流程
  • 在扩展主机进程中运行可访问 VS Code 扩展 API
  • 通过 Visual Studio Marketplace 轻松分发和部署

主要考虑因素:

  • 远程部署需要扩展实现客户端-服务器通信
  • 跨不同工具的重用需要模块化设计和实现

构建您自己的 AI 驱动功能

VS Code 为您提供对 AI 模型的直接编程访问,用于在您的扩展中创建自定义 AI 驱动的功能。这种方法使您能够构建使用 AI 功能的编辑器特定交互,而无需依赖聊天界面。

要直接使用语言模型,请在您的 VS Code 扩展中使用语言模型 API。您可以将这些 AI 功能合并到任何扩展功能中,例如代码操作、悬停提供程序、自定义视图等。

主要优势:

  • 将 AI 功能集成到现有扩展功能或构建新功能
  • 在扩展主机进程中运行可访问 VS Code 扩展 API
  • 通过 Visual Studio Marketplace 轻松分发和部署

主要考虑因素:

  • 跨不同体验的重用需要模块化设计和实现

决定使用哪个选项

在为您的 VS Code 扩展选择扩展 AI 的正确方法时,请考虑以下指南

  1. 选择语言模型工具,当:

    • 您想通过专用功能来扩展 VS Code 中的聊天
    • 您希望在代理模式下基于用户意图进行自动调用
    • 您希望访问 VS Code API 以在 VS Code 中进行深度集成
    • 您想通过 VS Code Marketplace 分发您的工具
  2. 选择 MCP 工具,当:

    • 您想通过专用功能来扩展 VS Code 中的聊天
    • 您希望在代理模式下基于用户意图进行自动调用
    • 您不需要与 VS Code API 集成
    • 您的工具需要在不同环境(不只是 VS Code)中工作
    • 您的工具应远程或本地运行
  3. 选择聊天参与者,当:

    • 您想通过具有领域专业知识的专用助手来扩展提问模式
    • 您需要自定义整个交互流程和响应行为
    • 您希望访问 VS Code API 以在 VS Code 中进行深度集成
    • 您想通过 VS Code Marketplace 分发您的工具
  4. 选择语言模型 API,当:

    • 您想将 AI 功能集成到现有扩展功能中
    • 您正在构建聊天界面之外的 UI 体验
    • 您需要对 AI 模型请求进行直接的编程控制

后续步骤

选择最适合您扩展目标的方法

示例项目

© . This site is unofficial and not affiliated with Microsoft.