Source code for gptcache.utils.dependency_control

import subprocess

from gptcache.utils.error import PipInstallError
from gptcache.utils.log import gptcache_log


[docs]def prompt_install(package: str, warn: bool = False): # pragma: no cover """ Function used to prompt user to install a package. """ cmd = f"pip install -q {package}" try: if warn and input(f"Install {package}? Y/n: ") != "Y": raise ModuleNotFoundError(f"No module named {package}") print(f"start to install package: {package}") subprocess.check_call(cmd, shell=True) print(f"successfully installed package: {package}") gptcache_log.info("%s installed successfully!", package) except subprocess.CalledProcessError as e: raise PipInstallError(package) from e