account_id: &ACCOUNT_ID <set-$ACCOUNT_ID-in-environment>
region: &REGION <set-$REGION-in-environment>
framework: &FRAMEWORK pytorch
version: &VERSION 1.13.1
os_version: &OS_VERSION ubuntu20.04
short_version: &SHORT_VERSION "1.13"
image_type: &IMAGE_TYPE inference
device_type: &DEVICE_TYPE neuronx
arch_type: x86

repository_info:
  inference_repository: &INFERENCE_REPOSITORY
    image_type: *IMAGE_TYPE
    root: !join [ *FRAMEWORK, "/", *IMAGE_TYPE ]
    repository_name: &REPOSITORY_NAME !join [pr, "-", *FRAMEWORK, "-", *IMAGE_TYPE, "-", *DEVICE_TYPE]
    repository: &REPOSITORY !join [ *ACCOUNT_ID, .dkr.ecr., *REGION, .amazonaws.com/, *REPOSITORY_NAME ]

context:
  inference_context: &INFERENCE_CONTEXT
    neuron-monitor:
      source: docker/build_artifacts/neuron-monitor.sh
      target: neuron-monitor.sh
    neuron-entrypoint:
      source: docker/build_artifacts/neuron-entrypoint.py
      target: neuron-entrypoint.py
    torchserve-neuron:
      source: docker/build_artifacts/torchserve-neuron.sh
      target: torchserve-neuron.sh
    config:
      source: docker/build_artifacts/config.properties
      target: config.properties

images:
  BuildNeuronXPTInferencePy3DockerImage:
    <<: *INFERENCE_REPOSITORY
    build: &PYTORCH_INF_INFERENCE_PY3 false
    image_size_baseline: 13000
    device_type: *DEVICE_TYPE
    python_version: &DOCKER_PYTHON_VERSION py3
    tag_python_version: &TAG_PYTHON_VERSION py310
    neuron_sdk_version: &NEURON_SDK_VERSION sdk2.12.0
    os_version: &OS_VERSION ubuntu20.04
    torch_serve_version: &TORCHSERVE_VERSION 0.7.1
    tool_kit_version: &SM_TOOLKIT_VERSION 2.0.14
    tag: !join [ *VERSION, "-", *DEVICE_TYPE, "-", *TAG_PYTHON_VERSION, "-", *NEURON_SDK_VERSION, "-", *OS_VERSION ]
    docker_file: !join [ docker/, *SHORT_VERSION, /, *DOCKER_PYTHON_VERSION, /, *NEURON_SDK_VERSION, /Dockerfile., *DEVICE_TYPE ]
    context:
      <<: *INFERENCE_CONTEXT