code: def get_artifact_attribute(
      swagger_client: SwaggerClientWrapper,
      parent_identifier: str,
      path: List[str],
      default_request_params: Dict,
  ) -> ArtifactAttribute:
      requests_params = add_artifact_version_to_request_params(
          default_request_params
      )
      params = {
          "experimentId": parent_identifier,
          "attribute": path_to_str(path),
          **requests_params,
      }
      try:
          result = (
              swagger_client.api.getArtifactAttribute(**params)
              .response()
              .result
          )
          return ArtifactAttribute(hash=result.hash)
      except HTTPNotFound:
          raise FetchAttributeNotFoundException(path_to_str(path))
  
imports: from typing import Dict, List, Optional, Tuple, Type
  from bravado.exception import HTTPNotFound
  from neptune.common.backends.utils import with_api_exceptions_handler
  from neptune.exceptions import ArtifactNotFoundException, ArtifactUploadingError, FetchAttributeNotFoundException, NeptuneEmptyLocationException
  from neptune.internal.artifacts.file_hasher import FileHasher
  from neptune.internal.artifacts.types import ArtifactDriver, ArtifactDriversMap, ArtifactFileData
  from neptune.internal.backends.api_model import ArtifactAttribute, ArtifactModel
  from neptune.internal.backends.swagger_client_wrapper import SwaggerClientWrapper
  from neptune.internal.operation import AssignArtifact, Operation
  from neptune.internal.utils.paths import path_to_str
label_desc: Use image node_id 12 for calling a global function with example usage: get_artifact_attribute(swagger_client, parent_identifier, path, default_request_params) and returns: ArtifactAttribute