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

AKS部署ML模型超时且端点卡在Transitioning状态咨询

Azure ML AKS部署模型规则说明与优化方案

「单容器最多部署1000个模型」规则含义

该规则指同一部署任务、同一容器镜像、同一推理入口脚本的单个Pod,最多可以同时挂载1000个已注册到Azure ML工作区的模型,所有模型共享该Pod分配到的CPU、内存资源。
你当前遇到的单节点仅能部署10~11个模型的问题,和该规则无关:你当前的部署逻辑是每个模型单独触发一次部署任务,每个模型独占一个Pod的全部资源配额,相当于把单Pod可承载1000个模型的容量只用了1/1000,造成了资源浪费。

提升AKS单节点可部署模型数量方案

  • 切换为多模型共享Pod部署模式:将多个推理逻辑相似的模型合并到同一次部署任务中,在Model.deploy的模型列表参数传入多个模型,而非单个模型。仅需调整推理入口脚本,在init()函数中批量加载所有挂载的模型,run()函数中根据请求参数路由到对应模型做推理即可,这种方式可以最大化利用单Pod资源,170个模型仅需2~3个Pod即可承载。
  • 调低单部署的资源预留配额:你当前给每个单模型Pod配置的预留资源为1核1G、上限2核2G,若你的模型实际推理仅需更少资源(比如小模型仅需0.1核、0.2G内存),可调低AksWebservice.deploy_configuration中的cpu_cores、memory_gb参数值,让单节点可容纳更多Pod。
  • 调高部署超时阈值:在部署配置中新增timeout_seconds参数,将超时时间从默认值调高到300~600秒,避免节点资源紧张时拉取模型、启动容器过慢导致的部署超时错误。
  • 开启AKS节点本地缓存:在AKS节点池配置中开启镜像缓存、模型文件缓存,减少重复拉取镜像和模型的开销,提升部署成功率。

多模型部署代码示例

# 构造待批量部署的模型列表,最多可传入1000个已注册的模型
model_list = [model_1, model_2, model_3, ..., model_n]

# 环境配置逻辑不变,仅需将入口脚本替换为支持多模型加载、路由的版本
myenv = Environment(name = Deployment_name)
myenv.python.conda_dependencies = CondaDependencies.create(pip_packages)
inf_config = InferenceConfig(environment= myenv, entry_script='./multi_model_entry.py')

# 调整资源配额与超时时间
deployment_config = AksWebservice.deploy_configuration(
    cpu_cores = 0.6, 
    memory_gb = 1, 
    cpu_cores_limit = 1.5, 
    memory_gb_limit = 2.5, 
    traffic_percentile = 10,
    timeout_seconds = 600
)

aks_target = ComputeTarget(ws, 'pipeline')
# 部署时传入批量模型列表
service = Model.deploy(ws, Deployment_name, model_list, inf_config,
            deployment_config, aks_target, overwrite=True)
service.wait_for_deployment(show_output=True)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 15:09:03