code: def get_cuda_path():
      """Return a tuple with (base_cuda_directory, full_path_to_nvcc_compiler)."""
      # Inspired by https://github.com/benfred/implicit/blob/master/cuda_setup.py
      nvcc_bin = "nvcc.exe" if sys.platform == "win32" else "nvcc"
  
      if "CUDAHOME" in os.environ:
          cuda_home = os.environ["CUDAHOME"]
      elif "CUDA_PATH" in os.environ:
          cuda_home = os.environ["CUDA_PATH"]
      else:
          # otherwise, search the PATH for NVCC
          found_nvcc = find_in_path(nvcc_bin, os.environ["PATH"])
          if found_nvcc is None:
              print(
                  "The nvcc binary could not be located in your $PATH. Either "
                  "add it to your path, or set $CUDAHOME to enable CUDA.",
              )
              return None
          cuda_home = os.path.dirname(os.path.dirname(found_nvcc))
      if not os.path.exists(os.path.join(cuda_home, "include")):
          print(
              "Failed to find cuda include directory, using /usr/local/cuda"
          )
          cuda_home = "/usr/local/cuda"
  
      nvcc = os.path.join(cuda_home, "bin", nvcc_bin)
      if not os.path.exists(nvcc):
          print(
              "Failed to find nvcc compiler in %s, trying /usr/local/cuda"
              % nvcc
          )
          cuda_home = "/usr/local/cuda"
          nvcc = os.path.join(cuda_home, "bin", nvcc_bin)
  
      return cuda_home, nvcc
  
file_path: shap/setup.py
imports: import os
  import platform
  import subprocess
  import sys
  import sysconfig
  import numpy
  from packaging.version import Version, parse
  from setuptools import Extension, setup
label_desc: Use image node_id 2 for calling a global function with example usage: get_cuda_path() and returns: cuda_home,  nvcc, None