什么是适用于 Azure 的 GitHub Copilot?

GitHub Copilot for Azure 是一个 GitHub Copilot 扩展,使开发人员能够使用自然语言:

  • 了解 Azure 功能。
  • 部署 Azure 资源。
  • 获取有关 Azure 资源的信息。
  • 诊断并排查 Azure 资源的问题。

必须有权访问 Azure 订阅,并订阅 GitHub Copilot。 开始使用 扩展。

GitHub Copilot 旨在帮助开发人员(包括刚接触 Azure 的开发人员)尽快提高工作效率。 对于经验丰富的 Azure 用户,GitHub Copilot for Azure 取代了以下需求:

  • 记住或查找 Azure CLI 命令和参数。
  • 手动创建复杂的部署脚本。
  • 登录并浏览 Azure 门户。

工作原理

GitHub Copilot for Azure 补充了基本大型语言模型(LLM)(如 GPT-5 和 Claude Sonnet 4)的一般知识,并使用 Azure 模型上下文协议 (MCP) 服务器 进行工具调用,使与 Azure 服务、系统和 Azure Resource Graph 交互能够代表你执行特定任务。 已有 35 个以上的 Azure 服务 可用,并且会定期添加更多服务和功能。 详细了解 Azure MCP 服务器的功能。

支持的开发环境

可以在以下受支持的开发环境中将 GitHub Copilot 用于 Azure:

支持的客户端 Description 功能阶段 下载链接
Visual Studio Code 通过 GitHub Copilot 用户界面在 Azure 上启用 GitHub Copilot ,适用于 Ask 和 Agent 模式。 它还显示 Azure MCP 服务器工具。 提供特定于 IDE 的工具和自定义模式。 正式发布时间 链接
Visual Studio 2022 此外,通过 GitHub Copilot 用户界面和 Azure MCP 服务器工具为 Azure 显示 GitHub Copilot,并且只允许访问 Ask 模式和 Agent 模式。 公共预览 链接
Visual Studio 2026 Surfaces 内置集成的 GitHub Copilot for Azure 以及通过 GitHub Copilot 用户界面的 Azure MCP 服务器工具。 在 Ask 和 Agent 模式下都可用。 公共预览 这些工具可在安装 Azure 和 AI 开发工作负载时使用。

主要方案

适用于 Azure 的 GitHub Copilot 目前支持四个主要方案:

类别 说明 示例
Learn 从最新的 Microsoft Learn 文档了解 Azure 服务和工具。
  • “我应该对应用使用哪些 Azure 服务?”
  • “Azure OpenAI 模型的可用类型是什么?
  • “什么是 Azure AI 搜索,我为什么要使用它?
  • “Azure SQL 的定价如何工作?”
设计和开发 在为云生成应用时,请寻求帮助。
  • “是否可以帮助我使用 Python 生成 RAG 应用程序以部署到 Azure?
  • 使用 azd 取消部署我在 Azure 上的项目。
  • “我们是一家披萨公司,想要创建在线自定义比萨饼交付解决方案。 创建 API 以接受 Azure 上的披萨订单。
部署 创建 Azure 资源并部署应用。
  • “你能帮我将应用程序部署到 Azure 吗?
  • “我需要 CI/CD 管道,以便可以将应用部署到 Azure。
  • 使用 azd 从 Azure 卸载我的项目。
疑难解答 诊断并排查应用程序和资源问题。
  • 是什么在消耗我在 Azure 上的 GPT-5 模型配额?
  • “了解为什么我的 Kubernetes 群集在 Azure 上运行速度缓慢。
  • “为什么我在 Azure 上打开我的网站时看到 500 个错误?
优化 回答有关资源的问题,包括位置、设置和资源运行状况。
  • “我有多少 Azure OpenAI 部署?”
  • 请按订阅统计 eastus 中的 Azure 存储帐户,并按从大到小排序。

注释

确保“Azure”一词位于提示中的某个位置,以便 LLM 从 Azure MCP 服务器调用相应的工具。

本文档提供了快速入门和示例提示,可帮助你尽快开始使用 GitHub Copilot for Azure。

最佳做法

使用 copilot 可以通过回答问题、执行任务和生成代码来提高开发人员工作效率。 但是,请记住以下重要规则:

  • 查看所有 AI 生成的响应。 根据这些响应采取行动之前,请验证其正确性、适用性、潜在结果(如成本和安全性)。
  • 切勿在源代码中保存应用程序机密或凭据。
  • 提出问题时,切勿在问题或代码中提交应用程序机密或凭据。

使用基于大型语言模型的任何工具时,请使用良好的提示工程技术来获得最佳结果。 以下提示来自文章 :在 Azure 中编写 Microsoft Copilot 的有效提示,其中提供了有关 Azure 上下文中的提示工程的建议。

在代理模式下工作时,可以创建更长的提示,但必须在允许 Copilot 代表你采取行动之前加以约束,尤其是在使用 Azure 帐户时。 下面是生成较长提示的方法,可能有助于获得所需的结果。

  • 命令 - “在我授权之前不要采取任何行动。” 在确认其对提示的理解之前,防止副驾驶采取措施。
  • 描述 - 说明你希望发生的事情。 在这里,你将向同事详细描述工作内容,以确保同事能够成功地完成任务。
  • - “在开始之前,你是否有任何需要澄清的问题要问我?” - 给副驾驶员一个机会来识别不清楚的指示。
  • 迭代 - 不断与副驾互动,直到它理解你的需求。 在具备取得成功所需的一切之前,Copilot 可能需要多次尝试和迭代。
  • 请求 - “创建一个分步清单计划,以便我在授权你执行该计划之前可以查看。这不但促使副驾驶提前思考其行动并解释其方法,同时也需要遵循这些步骤并提供进展状态。
  • 审查 - 在某些时候,你可能会信任副驾驶,而不仔细检查其工作。 但是,最好是确保查看计划并阐明所需内容。
  • 授权 - “我审查了该计划,你有权开始。
  • 验证 - 花时间来仔细检查工作,以确保它达到你所期望的目标。

工具调用

GitHub Copilot for Azure 在后台使用智能工具来执行所有操作。 在 GitHub Copilot for Azure 首次为 Visual Studio Code 发布时,团队创建了专用工具以供使用,但目前的方向是从专有工具过渡到由 Azure MCP 服务器提供的工具。

下面是 GitHub Copilot for Azure 当前支持的所有工具的列表。 此外,列出的迁移状态仅适用于 Visual Studio Code 版本。 默认情况下,Visual Studio 2022 版本使用 Azure MCP 服务器工具。

Tool 说明和示例提示 迁移状态
Azure 列出活动日志 列出指定时间内资源的活动日志。
  • “显示 Web 应用的活动日志”
  • “过去 24 小时内我的 VM 发生了什么情况?
完成
Azure诊断资源(azure_diagnose_resource) 使用日志和遥测诊断应用性能或故障。
  • “为什么我的应用速度很慢?
  • “帮助我诊断应用的问题”
完成
azure_get_auth_context 检索当前的 Azure 身份验证上下文(帐户、订阅、租户)。
  • “我登录的 Azure 帐户是什么?”
  • “显示我的当前租户”
N/A
azure_set_auth_context 更新 Azure 身份验证上下文(登录/注销、切换租户或订阅)。
  • “登录 Azure”
  • “更改我的订阅”
N/A
获取_azure_已验证_模块 获取针对资源类型的经过验证的 Bicep 模块。
  • “获取存储帐户的 Bicep 模块”
  • “查找虚拟机的已验证模块”
已计划的
生成Azure CLI命令 基于用户意向生成 Azure CLI 命令。
  • “使用 Azure CLI 创建新资源组”
  • “列出资源组中的所有 VM”
完成
Azure推荐自定义模式 捕获与 Azure 相关的意向并建议用于增强工作流的模式。
  • “我想生成 Azure 函数”
  • “帮助我部署到 Azure”
N/A
azure_get_dotnet_template_tags 列出用于筛选 .NET 模板的标记“哪些 .NET 模板标记可用?”
  • “显示 Azure 项目的模板类别”
  • N/A
    Azure_dotnet_模板_for_tag 检索与 dotnet 新命令的给定标记匹配的 .NET 项目模板列表。
    • “显示 Azure 函数模板”、“获取 Web API 模板”
    N/A
    查询 Azure 资源图 (azure_query_azure_resource_graph) 查询 Azure Resource Graph 以获取资源、订阅或资源组。
    • “列出我的所有虚拟机”
    • “显示资源组中的资源”
    已计划的