You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AzureML提交至计算资源部署卡顿耗时久,如何提速?

AzureML部署至计算资源卡顿:提速方案及原因排查

问题背景

部署AzureML模型至计算资源时出现长时间卡顿,日志停留在Submitting deployment to compute..阶段,相关日志及代码如下:

部署日志

Running
2022-08-23 14:51:11+00:00 Creating Container Registry if not exists.
2022-08-23 14:51:11+00:00 Registering the environment.
2022-08-23 14:51:13+00:00 Use the existing image.
2022-08-23 14:51:13+00:00 Generating deployment configuration.
2022-08-23 14:51:24+00:00 Submitting deployment to compute..

部署代码

#Define the deployment configuration
aciconfig = AciWebservice.deploy_configuration(
    cpu_cores = 1,
    memory_gb = 1,
    dns_name_label = os.environ['ACI_DNS_NAME_LABEL']
)

env = Environment.from_conda_specification("env", "../Environments/score_env.yml")

inf_conf = InferenceConfig(entry_script="score.py",environment=env)

#deploy successful models as a web service 
webservice_name = os.environ['WEB_SERVICE_NAME']
retries = 2
while retries > 0:
    try:
        service = Model.deploy(ws, webservice_name,models_latest,inf_conf,aciconfig, overwrite=True)
        service.wait_for_deployment(True)
        print("Webservice updated")
        break

    except:
        print(service.get_logs())
        retries -= 1
        if retries == 0:
            raise

原因分析

从当前日志阶段判断,卡顿并非由ACI的CPU/内存资源不足导致(该阶段还未到分配计算资源、启动容器的环节),可能的诱因包括:

  • 镜像相关问题:尽管日志显示使用现有镜像,但如果镜像体积过大、存储区域与ACI部署区域不一致,会导致镜像拉取延迟;或镜像本身存在损坏、拉取权限问题
  • ACI区域资源紧张:目标部署区域的ACI计算资源暂时饱和,部署请求进入排队状态
  • AzureML服务端延迟:AzureML部署流程的服务端偶尔出现处理延迟
  • 网络连通性问题:AzureML工作区与ACI所在区域之间的网络存在阻塞、带宽不足等情况

提速解决方案

  1. 优化环境镜像

    • 精简score_env.yml中的依赖,移除不必要的包,减小镜像体积
    • 提前将环境镜像构建并推送到与ACI同区域的ACR,避免跨区域拉取镜像的耗时
    • 预验证镜像可用性:通过env.build(ws)提前构建镜像,确保镜像可正常拉取和运行
  2. 调整部署策略

    • 若当前区域资源紧张,切换至邻近且资源充足的Azure区域进行ACI部署
    • 增加部署超时时间:在service.wait_for_deployment()中设置更长的超时参数(如service.wait_for_deployment(True, timeout_in_seconds=3600)),避免因默认超时导致的失败重试
  3. 网络优化

    • 确保AzureML工作区与ACI使用相同的虚拟网络(若启用VNet),减少网络传输延迟
    • 检查本地网络到Azure的连通性,避免网络波动影响部署流程
  4. 资源配置预调整

    • 虽然当前卡顿阶段与ACI资源无关,但后续容器启动阶段可能因资源不足出现延迟,可根据模型推理需求适当调高cpu_cores和memory_gb参数(如cpu_cores=2, memory_gb=4)

内容的提问来源于stack exchange,提问作者user17260574

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 16:18:18