微软向全部 Azure DevOps 用户开放 Copilot 代码审查,按次计费且延迟两天出账
微软取消注册限制,面向所有 Azure DevOps 客户开放 Azure Repos 的 GitHub Copilot 代码审查,按审查次数计费,费用在完成后 48 小时内显示于 Azure 成本管理,并支持项目级标签归因。
从注册门槛到全面开放,Azure Repos 用户无需迁移即可使用
微软已向所有 Azure DevOps 客户开放了针对 Azure Repos 的 GitHub Copilot 代码审查功能,并取消了自 6 月以来限制该功能使用的注册要求。该功能会在拉取请求上发布审查评论,通过关联的 Azure 订阅按审查次数计费,并在审查完成后两天内生成费用报告。此举旨在服务那些暂无法迁移至 GitHub 的 Azure Repos 用户,而非推动强制迁移。
6 月份的公告从微软鲜少在书面材料中提及的角度,解释了该功能存在的缘由。Dan Hellem 和 Andrew Brenner 写道,该公司曾经花费数年时间鼓励客户将代码库从 Azure Repos 迁移至 GitHub,以便可以体验其人工智能和代理式开发功能,并在随后承认了实际情况:虽然许多客户正在积极规划并执行向 GitHub 的迁移,但还有许多客户尚未做好迁移准备,仍然在继续依赖 Azure Repos 进行日常开发。迁移的复杂程度因组织的规模、定制化程度、合规要求、工具配置以及行业限制而异。微软没有坐等这些客户主动迁移,而是将 GitHub 的相关功能直接提供给他们。
客户对这一发布的解读也如出一辙。针对这一公告,评论者 Marc Selman 写道:这类功能在 GitHub 上早已经存在。对于许多企业和机构而言,迁移到 GitHub 的工作量太大,风险也太高。我很高兴他们终于开始拥抱 DevOps 了。
计费模型与成本归因:按次审查、延迟结算、项目级标签
在计费方面,本次更新值得仔细研读。每次代码审查都会消耗输入、输出和缓存令牌,这些资源将按每 1 美分 1 个点数的规则折算为 GitHub AI 积分。代码审查工作量越大,分析的上下文越多,消耗的资源也就越多;此外,拉取请求的大小、自定义说明以及模型变更都会影响总费用。费用将在代码审查完成后 48 小时内,显示在 Azure 成本管理中的 GitHub Copilot for AzDO 产品下。
本次发布改进了成本归因功能。现在,费用带有 Azure DevOps 项目标签,因此,团队可以按项目过滤或分组进行成本分析,而不是仅查看组织层面的总费用。由于这些是标准的 Azure 标签,所以可以在成本分析视图、导出和预算中正常使用。文档中明确说明了预算的功能及其局限性:预算仅起到提醒作用。它不会阻止审查,也不会更改任何资源。团队可以设置阈值,并在下次评估开始前一小时内收到电子邮件通知。考虑到 48 小时的报告延迟,如果在一个工作繁忙的项目中应用自动审查策略,那么该策略运行两天后,其成本才会在 Azure 成本管理中显示。
功能边界与运行限制:并发、代理池与适用范围
在广泛启用自动审查之前,有必要检查一下并发限制:每个组织最多 5 个并发审查,每个用户最多 2 个,每个拉取请求最多 1 个。如果一个组织中有多个团队在审查每一个新的拉取请求,那么这些请求将会排队等待。
该功能运行在 Azure Pipelines 基础设施上。默认情况下,它使用组织的默认智能代理池,但某些组织可能会禁用该智能代理池。该功能支持托管 DevOps Pool,但必须运行最新的 Ubuntu Server 镜像;它不支持 Windows 镜像,而且微软不建议在同一个智能代理池中混合使用 Ubuntu 和 Windows 智能代理。它也不支持自托管智能代理。
该审查功能的设计初衷是提供建议。Copilot 始终会在审查后留下评论,而绝不会批准或申请变更。因此,如果其反馈不符合“必经审查者”策略,也不会阻止合并操作。除非被要求,否则它不会在重新提交后重新审查,也不会阅读回复或进行跟进。
该功能的可靠性在预览期间表现并不稳定。有客户反映,在计划工具执行阶段结束后,代码审查停止,系统处于空闲状态的时间约为 60 分钟,并在随后自动取消。Hellem 确认,这是一个已知的问题,修复程序正在推送当中,预计需要约一周的时间才能覆盖所有组织。另一位客户无法在文档所描述的位置找到自动代码审查设置,Hellem 澄清说,该设置位于分支策略层。
在整个过程中,预览版本的术语一直不一致。6 月的博文描述的是“有限公开预览”,但同时开展的注册活动却称之为“技术预览”。8 月的博文则称其为“公开预览”,而且无需注册。文档中则仍然显示“有限预览”的横幅,而且不提供 SLA,仅提供有限支持。
各项要求限制了该功能的适用范围。代码库大小必须在 10 GB 及以下,拉取请求中修改的文件数量必须在 100 个及以下且无合并冲突,而且不支持 TFVC。该功能将按地区逐步推出,微软预计需要两到三周或更长的时间才能覆盖所有组织。
微软给出的建议是:先在一两个代码库上启用该功能,比较所需的工作量,并监控日常使用情况,然后再进行扩展。审查成本会随拉取请求的数量而增加,报告会在两天后生成。
行业影响:代理式工具与代码库迁移的长期博弈
这种模式不限于代码审查。微软的 Azure DevOps Remote MCP Server 本月正式发布,为 AI 助手提供了访问工作项、拉取请求、代码库和管道的托管端点。不过,Claude、ChatGPT 和 Cursor 目前尚无法连接到这项服务,因为 Entra 缺乏这些客户端所需的客户端注册机制。这两项发布面向的是同一个用户群体:希望在 Azure DevOps 中使用代理式工具,同时又不希望迁移其代码库的团队。
8 月的版本新增了组织、项目和代码库层级的接入控制功能,支持托管 DevOps 池、自定义指令,以及由分支策略驱动的自动审查。自定义指令可以应用于整个组织或项目,也可以针对每个代码库单独设置,或针对特定的路径进行配置。
从更宏观的视角看,微软此次开放 Copilot 代码审查,反映出企业级开发工具市场的一个现实:代码库迁移远非单纯的技术升级,而是牵涉合规、定制化、工具链耦合与行业约束的系统工程。在可预见的未来,混合环境仍将是大型组织的常态,而按次计费、延迟结算、项目级成本归因的设计,正是为这种常态提供可计量、可审计的 AI 辅助能力。对于 DevOps 工程师、企业级 CI/CD 架构师和云平台采购决策者而言,如何在成本、并发限制与审查策略之间取得平衡,将成为下一阶段需要持续关注的课题。