code: def _validate_pt_tf_versions(
      pytorch_version, tensorflow_version, image_uri
  ):
      """Placeholder docstring"""
  
      if image_uri is not None:
          return
  
      if tensorflow_version is not None and pytorch_version is not None:
          raise ValueError(
              "tensorflow_version and pytorch_version are both not None. "
              "Specify only tensorflow_version or pytorch_version."
          )
      if tensorflow_version is None and pytorch_version is None:
          raise ValueError(
              "tensorflow_version and pytorch_version are both None. "
              "Specify either tensorflow_version or pytorch_version."
          )
  
imports: from __future__ import absolute_import
  import logging
  from typing import Optional, Union, List, Dict
  import sagemaker
  from sagemaker import image_uris, ModelMetrics
  from sagemaker.deserializers import JSONDeserializer
  from sagemaker.drift_check_baselines import DriftCheckBaselines
  from sagemaker.fw_utils import model_code_key_prefix, validate_version_or_image_args
  from sagemaker.metadata_properties import MetadataProperties
  from sagemaker.model import FrameworkModel, MODEL_SERVER_WORKERS_PARAM_NAME
  from sagemaker.predictor import Predictor
  from sagemaker.serializers import JSONSerializer
  from sagemaker.session import Session
  from sagemaker.utils import to_string, format_tags
  from sagemaker.workflow import is_pipeline_variable
  from sagemaker.workflow.entities import PipelineVariable
label_desc: Use image node_id 1 for calling a global function with example usage: _validate_pt_tf_versions(pytorch_version, tensorflow_version, image_uri) without return types