diff --git a/bitsandbytes/backends/utils.py b/bitsandbytes/backends/utils.py index 34e3d5faa..bef07169c 100644 --- a/bitsandbytes/backends/utils.py +++ b/bitsandbytes/backends/utils.py @@ -1,4 +1,4 @@ -import subprocess +from importlib.metadata import metadata from packaging import version import torch @@ -67,17 +67,16 @@ def get_gaudi_sw_version(): """ Returns the installed version of Gaudi SW. """ - output = subprocess.run( - "pip list | grep habana-torch-plugin", - shell=True, - text=True, - capture_output=True, - ) - # If grep return nothing - if not output.stdout.strip(): - return None + try: + # if we find the spec, examine the installed version + plugin_metadata = metadata("habana-torch-plugin") + plugin_version = plugin_metadata.get("Version") + if plugin_version: + gaudi_version = version.parse(plugin_version) + except Exception: + gaudi_version = None - return version.parse(output.stdout.split("\n")[0].split()[-1]) + return gaudi_version GAUDI_SW_VER = get_gaudi_sw_version()