什么是Azure GitHub Copilot?

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

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

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

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

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

工作原理

GitHub Copilot for Azure 使用 Azure 模型上下文协议(MCP)服务器 补充了像 GPT-5 和 Claude Sonnet 4 这样的基础大型语言模型(LLM)的一般知识,允许其通过工具调用,与 Azure 服务、系统和 Azure 资源图进行交互,以代表您执行特定任务。 超过 50 Azure 服务已可用,并定期添加更多服务和功能。 详细了解 Azure MCP Server 的功能。

支持的开发环境

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

支持的客户端 Description 功能阶段 下载链接
Visual Studio Code 通过GitHub Copilot用户界面展示适用于Azure的GitHub Copilot。 它还显示Azure MCP 服务器工具。 提供特定于 IDE 的工具和自定义模式。 正式发布时间 链接
Visual Studio 2022 通过GitHub Copilot用户界面显示Azure MCP服务器的内置工具。 公共预览 这些工具在安装 Azure 开发工作负荷时可用。
Visual Studio 2026 通过GitHub Copilot用户界面显示用于Azure和Azure MCP 服务器工具的内置GitHub Copilot。 正式发布时间 这些工具在安装 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”一词位于某个位置,以便 LLM 从Azure MCP 服务器调用相应的工具。

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

最佳做法

首先,使用“代理”模式获得最佳体验。 避免“询问”模式。

其次,在提示中包含“Azure”一词,以帮助Copilot了解它需要从Azure MCP 服务器调用工具。

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

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

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

在代理模式下工作时,可以创建更长的提示,但在允许其作为您的代理执行操作之前,务必限制其功能,尤其是在使用 Azure 帐户时。 下面是生成较长提示的方法,可能有助于获得所需的结果。

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

工具调用

GitHub Copilot for Azure在后台使用代理工具执行所有操作。 首次为Visual Studio Code发布时,由Azure团队负责的GitHub Copilot创建了专用工具供使用,但当前的策略是逐步转向使用由Azure MCP Server提供的工具。

下面是Azure GitHub Copilot当前支持的所有工具的列表。 此外,列出的迁移状态仅适用于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 查询资源、订阅或资源组。
    • “列出我的所有虚拟机”
    • “显示资源组中的资源”
    已计划的
    • 开始使用GitHub Copilot for Azure,方法是安装软件并编写您的第一个提示。
    • 请遵循 快速入门指南 来了解如何在您的软件开发工作流中集成 GitHub Copilot for Azure。 本快速入门介绍如何将服务部署到Azure、监视其状态以及排查问题。
    • 请参阅示例提示,了解更多关于Azure的信息以及对Azure帐户、订阅和资源的理解。
    • 请参阅为 Azure 设计和开发应用程序的示例提示。
    • 请参阅示例提示将应用程序部署到 Azure
    • 请参阅用于排除Azure资源故障的示例提示。