code: def validate_version_or_image_args(
      framework_version, py_version, image_uri
  ):
      """Checks if version or image arguments are specified.
  
      Validates framework and model arguments to enforce version or image specification.
  
      Args:
          framework_version (str): The version of the framework.
          py_version (str): The version of Python.
          image_uri (str): The URI of the image.
  
      Raises:
          ValueError: if `image_uri` is None and either `framework_version` or `py_version` is
              None.
      """
      if (
          framework_version is None or py_version is None
      ) and image_uri is None:
          raise ValueError(
              "framework_version or py_version was None, yet image_uri was also None. "
              "Either specify both framework_version and py_version, or specify image_uri."
          )
  
imports: from __future__ import absolute_import
  import json
  import logging
  import os
  import re
  import time
  import shutil
  import tempfile
  from collections import namedtuple
  from typing import List, Optional, Union, Dict
  from packaging import version
  import sagemaker.image_uris
  from sagemaker.instance_group import InstanceGroup
  from sagemaker.s3_utils import s3_path_join
  from sagemaker.session_settings import SessionSettings
  import sagemaker.utils
  from sagemaker.workflow import is_pipeline_variable
  from sagemaker.deprecations import renamed_warning, renamed_kwargs
  from sagemaker.workflow.entities import PipelineVariable
  from sagemaker.deprecations import deprecation_warn_base
label_desc: Use image node_id 25 for calling a global function with example usage: validate_version_or_image_args(framework_version, py_version, image_uri) without return types