code: def version_safe_check_type(
      argname: str, value: T, expected_type: Type[T]
  ) -> None:
      """Excecute the check_type function if it has the expected signature, otherwise
      warn.  This is done to support newer versions of typeguard with minimal loss
      of functionality for users that have dependency conflicts"""
      # Get the signature of the check_type function
      sig = signature(check_type)
      # Get the parameters of the check_type function
      params = sig.parameters
      # Check if the check_type function has the expected signature
      params = set(params.keys())
      if all(
          arg in params for arg in ["argname", "value", "expected_type"]
      ):
          check_type(argname, value, expected_type)
  
file_path: Ax/ax/utils/common/typeutils.py
imports: from inspect import signature
  from typing import Any, Dict, List, Optional, Tuple, Type, TypeVar
  import numpy
  from typeguard import check_type
label_desc: Use image node_id 7 for calling a global function with example usage: version_safe_check_type(argname, value, expected_type) without return types