本站点文档内容均翻译自code.visualstudio.com,仅供个人学习,如有差异请以官网为准。

VS Code 中的 AI 语言模型

Visual Studio Code 提供了针对不同任务优化的不同内置语言模型。您还可以使用自己的语言模型 API 密钥,以使用其他提供者的模型。本文描述了如何更改聊天或内联建议的语言模型,以及如何使用自己的 API 密钥。

为您的任务选择合适的模型

默认情况下,聊天使用一个基础模型来为广泛的任务提供快速、有能力的响应,例如编码、总结、基于知识的问题、推理等。

然而,您不仅可以使用这个模型。您可以从一系列语言模型中选择,每个模型都有其独特的优点。有关AI模型的详细比较,请参阅在GitHub Copilot文档中选择适合您任务的AI模型

根据所使用的Agent,可用的模型列表可能会有所不同。例如,在代理模式下,模型列表仅限于那些对工具调用有良好支持的模型。

注意

如果您是 Copilot 业务或企业用户,您的管理员需要通过选择加入来为您的组织启用某些模型。编辑预览功能GitHub.com 上的 Copilot 政策设置

更改聊天对话的模型

在聊天输入字段中使用语言模型选择器更改用于聊天对话和代码编辑的模型。

显示聊天视图中模型选择器的截图。

小贴士

安装AI Toolkit扩展以添加更多语言模型,以增强GitHub Copilot的功能。

欲了解更多信息,请参见 更改聊天模型.

您可以通过使用您自己的语言模型 API 密钥来进一步扩展可用模型的列表。

如果您有付费的 Copilot 计划,模型选择器将显示高级请求的乘数。了解更多关于 高级请求 的信息,请参阅 GitHub Copilot 文档。

自动模型选择

注意

自动模型选择功能自 VS Code 1.104 版本起可用。

通过自动模型选择,VS Code 会自动选择一个模型,以确保您获得最佳性能并减少因过度使用特定语言模型而引起的速率限制。它会检测模型性能的下降,并在此时使用最佳模型。我们继续改进此功能,以根据您的需求选择最适合的模型。

要使用自动模型选择,请在聊天中从模型选择器中选择自动

目前,自动选择Claude Sonnet 4、GPT-5、GPT-5 mini和其他模型。如果您的组织已退出某些模型,自动将不会选择这些模型。如果这些模型不可用或您用完高级请求,自动将回退到一个在0x乘数下的模型。

乘数折扣

在使用自动模型选择时,VS Code 使用一个变量模型乘数,基于所选择的模型。如果您是付费用户,自动将应用请求折扣。

任何时候,您都可以通过悬停在聊天响应上查看所使用的模型和模型乘数。

聊天响应的截图,显示悬停时选择的模型。

管理语言模型

您可以使用语言模型编辑器查看所有可用的模型,选择在模型选择器中显示哪些模型,并通过添加内置提供程序或扩展提供的模型提供程序来添加更多模型。

要打开语言模型编辑器,请在聊天视图中打开模型选择器并选择管理模型或在命令面板中运行聊天:管理语言模型命令。

显示语言模型编辑器的截图。

编辑器列出所有可供您使用的模型,并显示诸如模型功能、上下文大小、计费详情和可见性状态等关键信息。默认情况下,模型按提供商分组,但您也可以按可见性分组。

您可以使用以下选项搜索和筛选模型:

  • 使用搜索框进行文本搜索
  • 提供者:@提供者:"OpenAI"
  • 能力:@功能:工具@功能:视觉@功能:代理
  • 能见度:@可见: true/false

定制模型选择器

您可以通过在语言模型编辑器中更改模型的可见性状态来自定义模型选择器中显示的模型。您可以显示或隐藏来自任何提供者的模型。

将鼠标悬停在列表中的某个模型上,选择眼睛图标以在模型选择器中显示或隐藏该模型。

截图显示了语言模型编辑器,带有眼睛图标以在模型选择器中显示或隐藏模型。

带上你自己的语言模型密钥

重要

此功能目前对Copilot Business或Copilot Enterprise用户不可用。

GitHub Copilot 在 VS Code 中提供多种内置语言模型,这些模型针对不同的任务进行了优化。如果您想使用未作为内置模型提供的模型,您可以使用自定义语言模型 API 密钥 (BYOK) 来使用其他提供商的模型。

在 VS Code 中使用您自己的语言模型 API 密钥有几个好处:

  • 模型选择:访问来自不同提供商的数百个模型,超越内置模型。
  • 实验:尝试新的模型或功能,这些模型或功能目前在内置模型中尚未提供。
  • 本地计算:使用您自己的计算资源来运行 GitHub Copilot 已支持的模型之一或运行尚未可用的模型。
  • 更大的控制权:通过使用您自己的密钥,您可以绕过对内置模型施加的标准速率限制和限制。

VS Code 提供了不同的选项来添加更多模型:

使用自定义模型密钥的注意事项

  • 仅适用于聊天体验,不会影响 VS Code 中的内联建议或其他 AI 功能。
  • 功能依赖于模型,并且可能与内置模型有所不同,例如,对工具调用、视觉或思考的支持。
  • CoPilot 服务 API 仍然用于一些任务,例如发送嵌入、仓库索引、查询优化、意图检测和侧查询。
  • 使用BYOK时,没有保证对模型的输出应用负责的人工智能过滤。

添加一个来自内置提供者的模型

VS Code 支持多个内置的模型提供者,您可以使用它们在聊天中向模型选择器中添加更多模型。

要从内置提供程序配置语言模型:

  1. 选择 管理模型 在聊天视图中的语言模型选择器中,或从命令面板中运行 聊天:管理语言模型 命令。

  2. 在语言模型编辑器中,选择添加模型,然后从列表中选择一个模型提供者。

    显示模型提供者快速选择的截图。

  3. 输入提供者特定的详细信息,例如 API 密钥或端点 URL。

  4. 根据提供商,输入型号详细信息或从列表中选择一个型号。

    以下截图显示了在本地运行的Ollama的模型选择器,已部署Phi-4模型。

    截图显示了在本地运行的Ollama模型选择器,允许您从可用模型列表中选择一个模型。

  5. 您现在可以在聊天的模型选择器中选择模型。

    要使用智能体时提供模型,该模型必须支持工具调用。如果模型不支持工具调用,则不会在模型选择器中显示。

注意

配置自定义 OpenAI 兼容模型目前仅在 VS Code Insiders 中提供,截至 1.104 版本。您也可以在 中手动添加您的 OpenAI 兼容模型配置

github.copilot.chat.customOAIModels
  • 在 VS Code 中打开
  • 在 VS Code Insiders 中打开
设置。

更新模型提供者详细信息

要更新您之前配置的模型提供者的信息:

  1. 选择 管理模型 在聊天视图中的语言模型选择器中,或从命令面板中运行 聊天:管理语言模型 命令。

  2. 在语言模型编辑器中,选择您要更新的模型提供商的齿轮图标。

    显示模型提供者 Quick Pick 的截图,其名称旁边有一个齿轮图标。

  3. 更新提供者详细信息,例如 API 密钥或端点 URL。

更改内联聊天的模型

您可以为编辑器内联聊天配置默认语言模型。这使您能够在内联聊天和聊天对话中使用不同的模型。

要配置内联聊天的默认模型,请使用

inlineChat默认模型
  • 在 VS Code 中打开
  • 在 VS Code Insiders 中打开
设置。设置列出了模型选择器中所有可用的模型。

如果你在内联聊天会话期间更改模型,选择将在会话剩余时间内保持有效。重新加载 VS Code 后,模型将重置为在 中指定的值。

inlineChat默认模型
  • 在 VS Code 中打开
  • 在 VS Code Insiders 中打开
设置。

更改内联建议的模型

要更改用于在编辑器中生成内联建议的语言模型:

  1. 选择 配置内联建议... 在 VS Code 标题栏的聊天菜单中。

  2. 选择 更改完成模型...,然后从列表中选择一个模型。

注意

可用的内联建议模型可能会随着我们添加对更多模型的支持而不断发展。

常见问题

为什么无法为 Copilot Business 或 Copilot Enterprise 选择自定义模型密钥?

由于 Copilot Business 和 Copilot Enterprise 主要是为了允许用户在宣布时立即尝试最新的模型,并且尚未作为 Copilot 内置模型提供,因此无法使用您自己的模型密钥。

允许您使用自己的模型密钥将稍后在今年晚些时候推出,以便我们更好地了解组织在大规模使用此功能时的需求。 Copilot Business 和 Enterprise 用户仍然可以使用内置的、受管理的模型。

我可以在 VS Code 中使用本地托管的模型与 Copilot 一起使用吗?

您可以通过使用自定义模型密钥(BYOK) 并使用支持连接本地模型的模型提供商,在聊天中使用本地托管的模型。您有多种选项可以连接到本地模型:

目前,您无法连接到本地模型以进行内联建议。VS Code 提供了扩展 API内联完成项提供程序 使扩展能够贡献自定义完成提供者。你可以从我们的内联完成示例开始。

注意

目前,使用本地托管的模型仍需要 Copilot 服务来完成某些任务。因此,您的 GitHub 帐户需要有访问 Copilot 计划的权限(例如,Copilot Free),并且您需要保持在线状态。这个要求可能会在未来版本中发生变化。

我可以离线使用本地模型吗?

目前,使用本地模型需要访问 Copilot 服务,因此需要您保持在线状态。此要求可能会在未来版本中发生变化。

我可以使用本地模型而没有 Copilot 计划吗?

不,目前您需要拥有访问 Copilot 计划的权限(例如,Copilot Free)才能使用本地模型。此要求可能会在未来的版本中更改。