def METHOD_NAME(user_code_path: List) -> List:
    pip_name_exceptions = [
        "argparse",
        "ast",
        "classy_vision",
        "collections",
        "contextlib",
        "data",
        "dataclasses",
        "dataloader",
        "dataset",
        "datasets",
        "einops",
        "enum",
        "evaluate",
        "fx",
        "glob",
        "h5py",
        "imageio",
        "importlib",
        "inspect",
        "intel_extension_for_pytorch",
        "itertools",
        "jax",
        "joblib",
        "json",
        "keras",
        "libcst",
        "linecache",
        "logging",
        "loggings",
        "math",
        "model",
        "models",
        "neural_coder",
        "neural_compressor",
        "numpy",
        "os",
        "onnxruntime",
        "pandas",
        "PIL",
        "random",
        "requests",
        "shutil",
        "subprocess",
        "sys",
        "system",
        "tempfile",
        "typing",
        "tensorflow",
        "threading",
        "time",
        "timeit",
        "torch",
        "torchdynamo",
        "tqdm",
        "traceback",
        "trainer_qa",
        "unittest",
        "utils_qa",
        "vissl",
        "warning",
        "warnings",
        "packaging",
        "pytorch_lightning",
        "__future__",
        "matplotlib",
        "progress",
        "tensorboard",
        "onnx",
        "coloredlogs",
        "cpuinfo",
        "rsa",
    ]
    if globals.cache_load_transformers:
        pip_name_exceptions.append("transformers")
    list_pip_path = []
    list_pip_name = []
    # get list of pip name
    for path in user_code_path:
        lines = open(path, "r").read().split("\n")
        for line in lines:
            is_import_line = False
            if line[0:6] == "import" and line[0:8] != "import ." and "," not in line:  # to-do: handle "," case
                is_import_line = True
                start = 7
            elif line[0:4] == "from" and line[0:6] != "from .":
                is_import_line = True
                start = 5
            if is_import_line:
                space_idx = line[start:].find(" ")
                dot_idx = line[start:].find(".")
                if space_idx == -1 and dot_idx == -1:
                    pip_name = line[start:]
                elif space_idx > 0 and dot_idx == -1:
                    pip_name = line[start : start + space_idx]
                elif space_idx == -1 and dot_idx > 0:
                    pip_name = line[start : start + dot_idx]
                elif space_idx > 0 and dot_idx > 0:
                    pip_name = line[start : start + min(space_idx, dot_idx)]
                list_pip_name.append(pip_name)
    list_pip_name = list(set(list_pip_name).difference(set(pip_name_exceptions)))
    for item in list_pip_name:
        if "_nc" in item:
            list_pip_name.remove(item)
    logger.debug(f"list pip name: {list_pip_name}")
    # get list of pip path
    cmd_import = " ".join(["import " + i + ";" for i in list_pip_name])
    try:
        exec(cmd_import)
    except ModuleNotFoundError as mnfe:
        logger.error(
            f"Please install all required pip modules defined in your Python scripts "
            f"before running Neural Coder: {mnfe}"
        )
        quit()
    import inspect
    for i in list_pip_name:
        try:
            pip_dir_path = inspect.getsourcefile(eval(i))
            pip_dir_path = pip_dir_path[0 : pip_dir_path.rfind("/")]
            for path, dir_list, file_list in os.walk(pip_dir_path):
                for file_name in file_list:
                    file_path = os.path.join(path, file_name)
                    if file_path[-3:] == ".py" and file_path[-11:] != "__init__.py" and file_path[-8:] != "setup.py":
                        list_pip_path.append(os.path.abspath(file_path))
        except TypeError as te:
            logger.error(
                f"Please reinstall certain pip modules as its detected as a built-in module "
                f"and the installation path cannot be retrieved: {te}"
            )
    return list_pip_path