class_docstr: AutoscalingConfig is the helper class to provide autoscaling
  related configs.
  
  # TODO(rickyx):
      1. Move the config validation logic here.
      2. Deprecate the ray-schema.json for validation because it's
      static thus not possible to validate the config with interdependency
      of each other.
class_docstr_tok: ["AutoscalingConfig","is","the","helper","class","to","provide","autoscaling","related","configs",".","#","TODO","(","rickyx",")",":","1",".","Move","the","config","validation","logic","here",".","2",".","Deprecate","the","ray-schema.json","for","validation","because","it's","static","thus","not","possible","to","validate","the","config","with","interdependency","of","each","other","."]
code: def get_node_labels(self, ray_node_type: NodeType) -> Dict[str, str]:
      return copy.deepcopy(
          self.get_node_type_specific_config(ray_node_type, "labels")
          or {}
      )
  
imports: import copy
  import logging
  from abc import ABC, abstractmethod
  from dataclasses import dataclass, field
  from enum import Enum
  from pathlib import Path
  from typing import Any, Dict, List, Optional
  import yaml
  from ray.autoscaler._private.util import hash_runtime_conf, prepare_config, validate_config
  from ray.autoscaler.v2.schema import NodeType
label_desc: Use image node_id 13 for calling the AutoscalingConfig obj's underlying member method code with example usage: obj.get_node_labels(ray_node_type) and returns: copy