CLI(v2) 배포 템플릿 YAML 스키마

APPLIES TO:Azure CLI ml extension v2(현재)

원본 JSON 스키마는 .에서 https://azuremlschemas.azureedge.net/latest/deploymentTemplate.schema.json찾을 수 있습니다.

Note

이 문서에 자세히 설명된 YAML 구문은 최신 버전의 ML CLI v2 확장에 대한 JSON 스키마를 기반으로 합니다. 이 구문은 최신 버전의 ML CLI v2 확장에서만 작동하도록 보장됩니다. https://azuremlschemasprod.azureedge.net/에서 이전 확장 버전에 대한 스키마를 찾을 수 있습니다.

YAML syntax

Key Type Description Allowed values Default value
$schema string YAML 스키마입니다. Azure Machine Learning VS Code 확장명을 사용하여 파일 맨 위에 있는 $schema 포함하여 YAML 파일을 작성하는 경우 스키마 및 리소스 완성을 호출할 수 있습니다.
name string Required. 배포 템플릿의 이름입니다.
version 문자열 또는 정수 배포 템플릿의 버전입니다.
description string 배포 템플릿에 대한 설명입니다.
tags object 배포 템플릿에 대한 태그 사전입니다.
type string 배포 템플릿의 유형입니다.
deployment_template_type string Required. 배포 템플릿 유형입니다. "관리"는 현재 허용되는 유일한 값입니다.
environment string Required. 배포 템플릿에 사용할 환경입니다. 이 값은 레지스트리의 기존 버전이 지정된 환경에 대한 참조여야 합니다. azureml://registries/<registry-name>/environments/<environment-name>/versions/<version> 구문을 사용합니다.

참고: 작업 영역 범위 환경(구문 사용 azureml:<name>:<version> ) 및 인라인 환경 정의는 배포 템플릿에 대해 지원되지 않습니다.
environment_variables object 배포에 대해 설정할 환경 변수 키-값 쌍의 사전입니다. 점수 매기기 스크립트에서 이러한 환경 변수에 액세스할 수 있습니다.
instance_count integer Required. 배포에 사용할 인스턴스 수입니다. 예상하는 워크로드에 따라 값을 지정합니다.
default_instance_type string Required. 이 템플릿을 사용하여 배포할 때 사용할 기본 인스턴스 유형입니다.
allowed_instance_types string 이 템플릿을 사용하여 배포할 때 사용할 수 있는 허용된 인스턴스 형식입니다.
model_mount_path string 컨테이너에 모델을 탑재할 경로입니다.
scoring_path string Required. 점수 매기기 엔드포인트의 경로입니다.
scoring_port integer Required. 점수 매기기 엔드포인트의 포트입니다.
liveness_probe object 컨테이너의 상태를 정기적으로 모니터링하기 위한 활동성 프로브 설정입니다. 구성 가능한 속성 집합은 ProbeSettings 를 참조하세요.
readiness_probe object 컨테이너가 트래픽을 처리할 준비가 되었는지 확인하기 위한 준비 상태 프로브 설정입니다. 구성 가능한 속성 집합은 ProbeSettings 를 참조하세요.
request_settings object 배포에 대한 요청 설정입니다. 구성 가능한 속성 집합은 RequestSettings 를 참조하세요.

ProbeSettings

Key Type Description Default value
failure_threshold integer 프로브가 실패하면 시스템은 포기하기 전에 시간을 시도합니다 failure_threshold . 활동성 프로브의 경우 포기한다는 것은 컨테이너가 다시 시작되었음을 의미합니다. 준비 상태 프로브의 경우 컨테이너는 준비되지 않은 것으로 표시됩니다. 최소값은 .입니다 1. 30
initial_delay integer 프로브가 시작되기 전에 컨테이너가 시작된 후의 시간(초)입니다. 최소값은 .입니다 1. 10
method string 프로브에 사용할 HTTP 메서드입니다.
path string 프로브의 경로입니다.
period integer 프로브를 수행하는 빈도(초)입니다. 10
port integer 검색할 포트입니다.
scheme string 프로브에 사용할 스키마입니다(예: HTTP 또는 HTTPS).
success_threshold integer 프로브가 실패한 후 성공한 것으로 간주되는 최소 연속 성공 횟수입니다. 최소값은 .입니다 1. 1
timeout integer 프로브 시간이 초과된 후의 시간(초)입니다. 최소값은 .입니다 1. 2

RequestSettings

Key Type Description Default value
request_timeout_ms integer 요청 시간 제한(밀리초)입니다. 5000
max_concurrent_requests_per_instance integer 배포에 허용되는 인스턴스당 최대 동시 요청 수입니다. 1

Remarks

배포 템플릿은 모델을 배포하기 위한 재사용 가능한 구성을 제공합니다. 배포를 만들 때 적용할 수 있는 환경, 인프라 설정 및 프로브 구성을 정의합니다.

Examples

예제는 다음과 같습니다.

YAML: basic

$schema: https://azuremlschemas.azureedge.net/latest/deploymentTemplate.schema.json
name: my-deployment-template
version: 1
description: Basic deployment template example
deployment_template_type: Managed
environment: azureml://registries/my-registry/environments/my-environment/versions/1
instance_count: 1
default_instance_type: Standard_DS3_v2
scoring_path: /score
scoring_port: 5001

YAML: 환경 변수 및 프로브 사용

$schema: https://azuremlschemas.azureedge.net/latest/deploymentTemplate.schema.json
name: my-deployment-template
version: 1
description: Deployment template with environment variables and health probes
deployment_template_type: Managed
environment: azureml://registries/azureml/environments/minimal-ubuntu20.04-py38-cpu-inference/versions/latest
environment_variables:
  MODEL_PATH: /var/azureml-app/model
  SCORING_TIMEOUT: "60"
instance_count: 3
default_instance_type: Standard_DS3_v2
scoring_path: /score
scoring_port: 8080
liveness_probe:
  initial_delay: 30
  period: 10
  timeout: 2
  success_threshold: 1
  failure_threshold: 3
readiness_probe:
  initial_delay: 10
  period: 5
  timeout: 2
  success_threshold: 1
  failure_threshold: 3
request_settings:
  request_timeout_ms: 10000
  max_concurrent_requests_per_instance: 2

YAML: 허용된 인스턴스 유형 사용

$schema: https://azuremlschemas.azureedge.net/latest/deploymentTemplate.schema.json
name: my-deployment-template-restricted
version: 1
description: Deployment template with instance type restrictions
deployment_template_type: Managed
environment: azureml://registries/my-registry/environments/my-environment/versions/1
instance_count: 1
default_instance_type: Standard_DS3_v2
scoring_path: /score
scoring_port: 5001
allowed_instance_types: Standard_DS3_v2

YAML: 모델 탑재 경로 사용

$schema: https://azuremlschemas.azureedge.net/latest/deploymentTemplate.schema.json
name: my-deployment-template-custom-mount
version: 1
description: Deployment template with custom model mount path
deployment_template_type: Managed
environment: azureml://registries/my-registry/environments/my-environment/versions/1
instance_count: 1
default_instance_type: Standard_DS3_v2
scoring_path: /score
scoring_port: 5001
model_mount_path: /var/azureml-app/models

Next steps