Skip to content

Commit

Permalink
Add check_chai1 function to chai1/check_install.py for chai_lab insta…
Browse files Browse the repository at this point in the history
…llation
  • Loading branch information
hllelli2 committed Jan 13, 2025
1 parent e6ce615 commit 1d97a15
Show file tree
Hide file tree
Showing 2 changed files with 32 additions and 27 deletions.
27 changes: 0 additions & 27 deletions abcfold/boltz1/check_install.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,30 +31,3 @@ def check_boltz1():
if proc.stderr:
logger.error(proc.stderr.read().decode())
raise subprocess.CalledProcessError(proc.returncode, proc.args)


def check_chai1():
try:
import chai_lab as _ # noqa F40
except (ImportError, ModuleNotFoundError):
try:
import boltz1 as _ # noqa F401

no_deps = True
except (ImportError, ModuleNotFoundError):
no_deps = False
logger.info("Installing chai_lab package")
logger.info("No dependencies will be installed") if no_deps else None
cmd = [sys.executable, "-m", "pip", "install", "chai_lab", "--no-cache-dir"]
cmd.append("--no-deps") if no_deps else None
logger.info("Running %s", " ".join(cmd))
with subprocess.Popen(
cmd,
stdout=sys.stdout,
stderr=subprocess.PIPE,
) as proc:
proc.wait()
if proc.returncode != 0:
if proc.stderr:
logger.error(proc.stderr.read().decode())
raise subprocess.CalledProcessError(proc.returncode, proc.args)
32 changes: 32 additions & 0 deletions abcfold/chai1/check_install.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
import logging
import subprocess
import sys

logger = logging.getLogger("logger")


def check_chai1():
try:
import chai_lab as _ # noqa F40
except (ImportError, ModuleNotFoundError):
try:
import boltz1 as _ # noqa F401

no_deps = True
except (ImportError, ModuleNotFoundError):
no_deps = False
logger.info("Installing chai_lab package")
logger.info("No dependencies will be installed") if no_deps else None
cmd = [sys.executable, "-m", "pip", "install", "chai_lab", "--no-cache-dir"]
cmd.append("--no-deps") if no_deps else None
logger.info("Running %s", " ".join(cmd))
with subprocess.Popen(
cmd,
stdout=sys.stdout,
stderr=subprocess.PIPE,
) as proc:
proc.wait()
if proc.returncode != 0:
if proc.stderr:
logger.error(proc.stderr.read().decode())
raise subprocess.CalledProcessError(proc.returncode, proc.args)

0 comments on commit 1d97a15

Please sign in to comment.