ersilia-os / eos6m4j

Molecular maps based on broadly learned knowledge-based representations
MIT License
0 stars 0 forks source link

New model ready for testing! #3

Closed github-actions[bot] closed 1 year ago

github-actions[bot] commented 1 year ago

This model is ready for testing. If you are assigned to this issue, please try it out using the CLI, Google Colab and DockerHub and let us know if it works!

HellenNamulinda commented 1 year ago

Hi @GemmaTuron and @samuelmaina , I tested the model using Colab, CLI and docker. It works.

Test file: eml_50.csv

Colab Colab Output: eos6m4j_colab_output.csv

CLI I don't know why this smile, Nc1nc(NC2CC2)c3ncn([C@@H]4C[C@H](CO)C=C4)c3n1 returns null on CLI(for a single string and even when part of a file) yet it works well using Colab and Docker. Otherwise, all other smiles in the file have output values. eos6m4j_cli_fetch.log CLI Output: 6m4j_cli_output.csv

🚀 Serving model eos6m4j: bidd-molmap-dsp

   URL: http://0.0.0.0:56765
   PID: -1
   SRV: pulled_docker

👉 To run model:
   - run

💁 Information:
   - info
(ersilia) hellenah@hellenah-elitebook:~$ ersilia run -i "Nc1nc(NC2CC2)c3ncn([C@@H]4C[C@H](CO)C=C4)c3n1"
{
    "input": {
        "key": "MCGSCOLBFJQGHM-SCZZXKLOSA-N",
        "input": "Nc1nc(NC2CC2)c3ncn([C@@H]4C[C@H](CO)C=C4)c3n1",
        "text": "Nc1nc(NC2CC2)c3ncn([C@@H]4C[C@H](CO)C=C4)c3n1"
    },
    "output": {
        "molmap": [
            null,
            null,
            null,
            null,
            null,
            null,
            null,
            null,
            null,
...
(ersilia) hellenah@hellenah-elitebook:~$ ersilia run -i "CCC"
{
    "input": {
        "key": "ATUOYWHBWRKTHZ-UHFFFAOYSA-N",
        "input": "CCC",
        "text": "CCC"
    },
    "output": {
        "molmap": [
            0.077715013933846,
            0.008355661397430108,
            0.00835081469570388,
            0.008413646767066386,
            0.00859833613564168,
            0.004069891515939892,
            0.005522817732531842,
            0.007877159776026044,
...

Docker Docker Output: 6m4j_docker_output.csv

+ [ -z eos6m4j ]
+ ersilia serve -p 3000 eos6m4j
🚀 Serving model eos6m4j: bidd-molmap-dsp

   URL: http://127.0.0.1:3000
   PID: 37
   SRV: conda

👉 To run model:
   - run

💁 Information:
   - info
Serving model eos6m4j...
+ echo Serving model eos6m4j...

root@8e71b67e80b6:~# ersilia run -i "Nc1nc(NC2CC2)c3ncn([C@@H]4C[C@H](CO)C=C4)c3n1"
{
    "input": {
        "key": "MCGSCOLBFJQGHM-SCZZXKLOSA-N",
        "input": "Nc1nc(NC2CC2)c3ncn([C@@H]4C[C@H](CO)C=C4)c3n1",
        "text": "Nc1nc(NC2CC2)c3ncn([C@@H]4C[C@H](CO)C=C4)c3n1"
    },
    "output": {
        "molmap": [
            0.20272887204768225,
            0.030785257532420555,
            0.030774597488276833,
            0.03066029667484404,
            0.03085334830346864,
            0.02136806934299571,
            0.026177260262751613,
            0.02772695710163858,
            0.9116391179496534,
            0.9164740246901901,
            0.9999999991422307,
            0.9999999995833333,
            0.9999999991422307,
            0.9184310325654067,
            0.9953690754888427,
            0.14118866576615105,
...
samuelmaina commented 1 year ago

@HellenNamulinda , I will look into this

HellenNamulinda commented 1 year ago

Alright @samuelmaina, Though I don't think it's a problem with the model. It could be a non-deterministic behavior within ersilia CLI, because the model gives output for that smile when using Docker and Colab.

GemmaTuron commented 1 year ago

Thanks @HellenNamulinda for reporting this. It is very strange... any other smiles works when passed as single input? @emmakodes have you had time to test the model and observed the same?

HellenNamulinda commented 1 year ago

Yes @GemmaTuron, Other smiles work.

samuelmaina commented 1 year ago

Yeah @HellenNamulinda , I have seen this behavior in other models too. It's a issue that need to be investigated.

GemmaTuron commented 1 year ago

Hi @samuelmaina

Please add more details to the above comment or it will be impossible to identify the source of the error. Which other models, and this exact same behavior, where one smiles can be calculates as part of a large file but not single?

HellenNamulinda commented 1 year ago

Hi @GemmaTuron For this case, the smile can't be calculated in both cases, that's; when passed as a single input and even when part of a large file.

The only difference is that the behavior only happens when using CLI. Otherwise, the same smile can be calculated when using Docker and Colab. Like the output in my comment here

samuelmaina commented 1 year ago

@GemmaTuron, I meant at times , a model will produce an output and sometimes it will produce none. I have experienced some models producing none for the first run and produce results on the second run. Some model produce float has no property len for some machines and not in others. In this case, when I run the model, I am getting the output in CLI but the smiles may produce a null in another computer.

   - info
(ersilia) samuelmayna@SAM:~/ersilia_github_models$ ersilia run -i "Nc1nc(NC2CC2)c3ncn([C@@H]4C[C@H](CO)C=C4)c3n1"
{
    "input": {
        "key": "MCGSCOLBFJQGHM-SCZZXKLOSA-N",
        "input": "Nc1nc(NC2CC2)c3ncn([C@@H]4C[C@H](CO)C=C4)c3n1",
        "text": "Nc1nc(NC2CC2)c3ncn([C@@H]4C[C@H](CO)C=C4)c3n1"
    },
    "output": {
        "molmap": [
            0.20272886753082275,
            0.03078525699675083,
            0.030774597078561783,
            0.030660295858979225,
            0.03085334785282612,
            0.02136806957423687,
            0.026177261024713516,
            0.027726957574486732,
            0.9116390943527222,
            0.9164740443229675,
GemmaTuron commented 1 year ago

please @samuelmaina Try to be specific. Which models?

emmakodes commented 1 year ago

Thanks @HellenNamulinda for reporting this. It is very strange... any other smiles work when passed as single input? @emmakodes have you had time to test the model and observed the same?

Hello @GemmaTuron I am starting with this model today, currently fetching the model

samuelmaina commented 1 year ago

please @samuelmaina Try to be specific. Which models?

I tried to search for the model(I had done it very early and the other testers were getting their values in the first run) that produced null for the first time, but I could not find anywhere I had documented the issue. I should have reported that as an error. For the float has no property len , in https://github.com/ersilia-os/eos1amr/issues/4, @HellenNamulinda and @emmakodes are getting this error even after rerun and I am not getting it even after rerun.

GemmaTuron commented 1 year ago

Hi,

I have fetched the model from S3 and I run this molecule on my CLI Nc1nc(NC2CC2)c3ncn([C@@H]4C[C@H](CO)C=C4)c3n1 getting the expected outcome... so I cannot reproduce Hellen's issue. I am also unable to reproduce the error for eos1amr in an Ubuntu machine. Let's think what might be causing this.

emmakodes commented 1 year ago

Hello @GemmaTuron @samuelmaina

CLI

input file: eml_50.csv Model fetch and makes prediction successfully eos6m4j_cli_fetch.log eos6m4j_cli_pred.csv

For Nc1nc(NC2CC2)c3ncn([C@@H]4C[C@H](CO)C=C4)c3n1 I get prediction successfully both as a single input and in a file. I didn't get null

(ersilia) emma@DESKTOP-VN7367J:~/ersiliamodel$ ersilia -v api run -i "Nc1nc(NC2CC2)c3ncn([C@@H]4C[C@H](CO)C=C4)c3n1"

{
    "input": {
        "key": "MCGSCOLBFJQGHM-SCZZXKLOSA-N",
        "input": "Nc1nc(NC2CC2)c3ncn([C@@H]4C[C@H](CO)C=C4)c3n1",
        "text": "Nc1nc(NC2CC2)c3ncn([C@@H]4C[C@H](CO)C=C4)c3n1"
    },
    "output": {
        "molmap": [
            0.20272887204768203,
            0.03078525753242058,
            0.030774597488276833,
            0.030660296674844073,
            0.030853348303468652,
            0.021368069342995705,
            0.02617726026275158,
            0.027726957101638614,
            0.9116391179496534,
...

Colab

Model fetch and makes prediction successfully eos6m4j_output.csv

DockerHub

Model fetch and makes prediction successfully eos6m4j_docker_pred.csv

GemmaTuron commented 1 year ago

perfect, so I think we can conclude this model is working! I am using it as part of our ZairaChem pipeline and it also seems to be just fine.

GemmaTuron commented 1 year ago

@HellenNamulinda and @samuelmaina Can you paste here the packages installed in your eos6m4j env? conda activate eos6m4j conda list