Skip to content

Commit

Permalink
updating readme [skip ci]
Browse files Browse the repository at this point in the history
  • Loading branch information
GemmaTuron authored and ersilia-bot committed Mar 11, 2024
2 parents b41ef6c + 00efa75 commit 15f8965
Show file tree
Hide file tree
Showing 5 changed files with 30 additions and 20 deletions.
8 changes: 4 additions & 4 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
FROM bentoml/model-server:0.11.0-py37
MAINTAINER ersilia

RUN conda install -c conda-forge rdkit=2019.03.01
RUN pip install signaturizer==1.1.10
RUN pip install rdkit-pypi
RUN pip install signaturizer==1.1.10

WORKDIR /repo
COPY . /repo
COPY . /repo
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,8 @@ A set of 25 Chemical Checker bioactivity signatures (including 2D & 3D fingerpri

## Ersilia model URLs
* [GitHub](https://github.com/ersilia-os/eos4u6p)
* [AWS S3](https://ersilia-models-zipped.s3.eu-central-1.amazonaws.com/eos4u6p.zip)
* [DockerHub](https://hub.docker.com/r/ersiliaos/eos4u6p) (AMD64, ARM64)

## Citation

Expand Down
8 changes: 7 additions & 1 deletion metadata.json
Original file line number Diff line number Diff line change
Expand Up @@ -28,5 +28,11 @@
"Publication": "https://www.nature.com/articles/s41467-021-24150-4",
"Source Code": "http://gitlabsbnb.irbbarcelona.org/packages/signaturizer",
"License": "MIT",
"Contributor": "miquelduranfrigola"
"Contributor": "miquelduranfrigola",
"S3": "https://ersilia-models-zipped.s3.eu-central-1.amazonaws.com/eos4u6p.zip",
"DockerHub": "https://hub.docker.com/r/ersiliaos/eos4u6p",
"Docker Architecture": [
"AMD64",
"ARM64"
]
}
1 change: 1 addition & 0 deletions model/framework/run.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
python $1/predict.py $2 $3
31 changes: 16 additions & 15 deletions src/service.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,9 +25,9 @@ def load_model(framework_dir, checkpoints_dir):

class Model(object):
def __init__(self):
self.DATA_FILE = "data.csv"
self.PRED_FILE = "pred.json"
self.RUN_FILE = "run.sh"
self.DATA_FILE = "_data.csv"
self.OUTPUT_FILE = "_output.csv"
self.RUN_FILE = "_run.sh"
self.LOG_FILE = "run.log"

def load(self, framework_dir, checkpoints_dir):
Expand All @@ -40,22 +40,22 @@ def set_checkpoints_dir(self, dest):
def set_framework_dir(self, dest):
self.framework_dir = os.path.abspath(dest)

def predict(self, smiles_list):
tmp_folder = tempfile.mkdtemp()
def run(self, input_list):
tmp_folder = tempfile.mkdtemp(prefix="eos-")
data_file = os.path.join(tmp_folder, self.DATA_FILE)
pred_file = os.path.join(tmp_folder, self.PRED_FILE)
output_file = os.path.join(tmp_folder, self.OUTPUT_FILE)
log_file = os.path.join(tmp_folder, self.LOG_FILE)
with open(data_file, "w") as f:
f.write("smiles"+os.linesep)
for smiles in smiles_list:
f.write(smiles + os.linesep)
f.write("input" + os.linesep)
for inp in input_list:
f.write(inp + os.linesep)
run_file = os.path.join(tmp_folder, self.RUN_FILE)
with open(run_file, "w") as f:
lines = [
"python {0}/predict.py {1} {2}".format(
"bash {0}/run.sh {0} {1} {2}".format(
self.framework_dir,
data_file,
pred_file
output_file
)
]
f.write(os.linesep.join(lines))
Expand All @@ -64,8 +64,9 @@ def predict(self, smiles_list):
subprocess.Popen(
cmd, stdout=fp, stderr=fp, shell=True, env=os.environ
).wait()
with open(pred_file, "r") as f:
with open(output_file, "r") as f:
result = json.load(f)
shutil.rmtree(tmp_folder)
return result


Expand Down Expand Up @@ -119,8 +120,8 @@ def save(self, dst):
@artifacts([Artifact("model")])
class Service(BentoService):
@api(input=JsonInput(), batch=True)
def predict(self, input: List[JsonSerializable]):
def run(self, input: List[JsonSerializable]):
input = input[0]
smiles_list = [inp["input"] for inp in input]
output = self.artifacts.model.predict(smiles_list)
input_list = [inp["input"] for inp in input]
output = self.artifacts.model.run(input_list)
return [output]

0 comments on commit 15f8965

Please sign in to comment.