Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Broken mDeepFRI installation and first prediction #86

Open
achousal opened this issue Nov 26, 2024 · 1 comment
Open

Broken mDeepFRI installation and first prediction #86

achousal opened this issue Nov 26, 2024 · 1 comment
Assignees

Comments

@achousal
Copy link

  • After running pip install mdeepfri, and mDeepFRI --help, I get error messages like the following:

(deepfri) /mnt/data2/andres/deepfri/databases$ mDeepFRI --help
Traceback (most recent call last):
File "/home/kuanguser/miniconda3/envs/deepfri/bin/mDeepFRI", line 5, in
from mDeepFRI.cli import main
File "/home/kuanguser/miniconda3/envs/deepfri/lib/python3.8/site-packages/mDeepFRI/cli.py", line 7, in
from mDeepFRI.pipeline import predict_protein_function
File "/home/kuanguser/miniconda3/envs/deepfri/lib/python3.8/site-packages/mDeepFRI/pipeline.py", line 10, in
from tqdm import tqdm

  • The modules needed which did not install with the general command are: tqdm, pyopal, pysam, biotite, onnxruntime, MMseq2

  • After installing the modules I get the help command working, but the default foldcomp and MMseq2 databases wont install properly after running a prediction.

  • Command used:

  • mDeepFRI predict-function -i /mnt/data2/andres/data/prediction_mgm/SRR1778453/SRR1778453_mH_fC_mS_genes.fna -d /mnt/data2/andres/deepfri/foldcomp/database -w /mnt/data2/andres/deepfri/weights/ -o /mnt/data2/andres/deepfri/output/ 2> log.txt &

  • Note: at first, the prediction error log was asking for mmseq package, so I installed MMseq2 from "conda install -c conda-forge -c bioconda mmseqs2"
    Related error message:

[2024-11-26 13:55:20] cli.predict_function INFO: Minimum length: 60
[2024-11-26 13:55:20] cli.predict_function INFO: Maximum length: 1000
[2024-11-26 13:55:20] pipeline.predict_protein_function INFO: EC number prediction is not supported in version 1.1.
[2024-11-26 13:55:20] pipeline.predict_protein_function INFO: Creating PDB100 database. This may take a bit during a first run.
[2024-11-26 13:55:20] pdb.create_pdb_mmseqs INFO: Downloading PDB100 database.
[2024-11-26 13:55:44] pdb.create_pdb_mmseqs INFO: Creating MMSeqs2 database from PDB100.
Traceback (most recent call last):
File "/home/kuanguser/miniconda3/envs/deepfri/bin/mDeepFRI", line 8, in
sys.exit(main())
File "/home/kuanguser/miniconda3/envs/deepfri/lib/python3.8/site-packages/click/core.py", line 1157, in call
return self.main(*args, **kwargs)
File "/home/kuanguser/miniconda3/envs/deepfri/lib/python3.8/site-packages/click/core.py", line 1078, in main
rv = self.invoke(ctx)
File "/home/kuanguser/miniconda3/envs/deepfri/lib/python3.8/site-packages/click/core.py", line 1688, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/home/kuanguser/miniconda3/envs/deepfri/lib/python3.8/site-packages/click/core.py", line 1434, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/home/kuanguser/miniconda3/envs/deepfri/lib/python3.8/site-packages/click/core.py", line 783, in invoke
return __callback(*args, **kwargs)
File "/home/kuanguser/miniconda3/envs/deepfri/lib/python3.8/site-packages/click/decorators.py", line 33, in new_func
return f(get_current_context(), *args, **kwargs)
File "/home/kuanguser/miniconda3/envs/deepfri/lib/python3.8/site-packages/mDeepFRI/cli.py", line 231, in predict_function
predict_protein_function(
File "/home/kuanguser/miniconda3/envs/deepfri/lib/python3.8/site-packages/mDeepFRI/pipeline.py", line 80, in predict_protein_function
pdb100 = create_pdb_mmseqs()
File "/home/kuanguser/miniconda3/envs/deepfri/lib/python3.8/site-packages/mDeepFRI/pdb.py", line 65, in create_pdb_mmseqs
createdb(compressed_path, pdb100_mmseqs)
File "/home/kuanguser/miniconda3/envs/deepfri/lib/python3.8/site-packages/mDeepFRI/mmseqs.py", line 43, in createdb
run_command(f"mmseqs createdb {sequences_file} {db_path} --dbtype 1")
File "/home/kuanguser/miniconda3/envs/deepfri/lib/python3.8/site-packages/mDeepFRI/utils.py", line 32, in run_command
completed_process = subprocess.run(command,
File "/home/kuanguser/miniconda3/envs/deepfri/lib/python3.8/subprocess.py", line 493, in run
with Popen(*popenargs, **kwargs) as process:
File "/home/kuanguser/miniconda3/envs/deepfri/lib/python3.8/subprocess.py", line 858, in init
self._execute_child(args, executable, preexec_fn, close_fds,
File "/home/kuanguser/miniconda3/envs/deepfri/lib/python3.8/subprocess.py", line 1720, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'mmseqs'

  • Second try with MMseq2 installed in enviorment:

[2024-11-26 14:01:57] pipeline.predict_protein_function INFO: EC number prediction is not supported in version 1.1.
[2024-11-26 14:01:57] pipeline.predict_protein_function INFO: Creating PDB100 database. This may take a bit during a first run.
[2024-11-26 14:01:57] pipeline.predict_protein_function INFO: PDB100 database created.
[2024-11-26 14:01:57] database.build_database INFO: Building MMSeqs2 database from /mnt/data2/andres/deepfri/foldcomp/database
[2024-11-26 14:01:57] database.build_database INFO: Found /mnt/data2/andres/deepfri/foldcomp/database.fasta.gz in /mnt/data2/andres/deepfri/foldcomp
[2024-11-26 14:01:57] database.build_database INFO: Skipping extraction of FASTA file from FoldComp database.
[2024-11-26 14:01:57] database.build_database INFO: Creating and indexing MMSeqs2 database.
Traceback (most recent call last):
File "/home/kuanguser/miniconda3/envs/deepfri/lib/python3.8/site-packages/mDeepFRI/utils.py", line 32, in run_command
completed_process = subprocess.run(command,
File "/home/kuanguser/miniconda3/envs/deepfri/lib/python3.8/subprocess.py", line 516, in run
raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['mmseqs', 'createdb', '/mnt/data2/andres/deepfri/foldcomp/database.fasta.gz', '/mnt/data2/andres/deepfri/foldcomp/database.mmseqsDB', '--dbtype', '1']' returned non-zero exit status 1.

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File "/home/kuanguser/miniconda3/envs/deepfri/bin/mDeepFRI", line 8, in
sys.exit(main())
File "/home/kuanguser/miniconda3/envs/deepfri/lib/python3.8/site-packages/click/core.py", line 1157, in call
return self.main(*args, **kwargs)
File "/home/kuanguser/miniconda3/envs/deepfri/lib/python3.8/site-packages/click/core.py", line 1078, in main
rv = self.invoke(ctx)
File "/home/kuanguser/miniconda3/envs/deepfri/lib/python3.8/site-packages/click/core.py", line 1688, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/home/kuanguser/miniconda3/envs/deepfri/lib/python3.8/site-packages/click/core.py", line 1434, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/home/kuanguser/miniconda3/envs/deepfri/lib/python3.8/site-packages/click/core.py", line 783, in invoke
return __callback(*args, **kwargs)
File "/home/kuanguser/miniconda3/envs/deepfri/lib/python3.8/site-packages/click/decorators.py", line 33, in new_func
return f(get_current_context(), *args, **kwargs)
File "/home/kuanguser/miniconda3/envs/deepfri/lib/python3.8/site-packages/mDeepFRI/cli.py", line 231, in predict_function
predict_protein_function(
File "/home/kuanguser/miniconda3/envs/deepfri/lib/python3.8/site-packages/mDeepFRI/pipeline.py", line 89, in predict_protein_function
db = build_database(
File "/home/kuanguser/miniconda3/envs/deepfri/lib/python3.8/site-packages/mDeepFRI/database.py", line 87, in build_database
create_target_database(output_sequences, mmseqs_path, threads)
File "/home/kuanguser/miniconda3/envs/deepfri/lib/python3.8/site-packages/mDeepFRI/mmseqs.py", line 112, in create_target_database
createdb(foldcomp_fasta_path, mmseqs_db_path)
File "/home/kuanguser/miniconda3/envs/deepfri/lib/python3.8/site-packages/mDeepFRI/mmseqs.py", line 43, in createdb
run_command(f"mmseqs createdb {sequences_file} {db_path} --dbtype 1")
File "/home/kuanguser/miniconda3/envs/deepfri/lib/python3.8/site-packages/mDeepFRI/utils.py", line 42, in run_command
raise RuntimeError(
RuntimeError: Command 'mmseqs createdb /mnt/data2/andres/deepfri/foldcomp/database.fasta.gz /mnt/data2/andres/deepfri/foldcomp/database.mmseqsDB --dbtype 1' failed with exit code 1
The input files have no entry: - /mnt/data2/andres/deepfri/foldcomp/database.fasta.gz
Please check your input files. Only files in fasta/fastq[.gz|bz2] are supported

  • This is how my foldcomp folder looks:

(deepfri) kuanguser@kuanglabnslook:/mnt/data2/andres/deepfri/foldcomp$ ls -hs
total 768K
128K database 0 database.mmseqsDB 0 database.mmseqsDB.index 0 database.mmseqsDB_h 0 database.mmseqsDB_h.index
128K database.fasta.gz 128K database.mmseqsDB.dbtype 128K database.mmseqsDB.source 128K database.mmseqsDB_h.dbtype 128K log.txt

  • Trying to create a custom db with afdb_swissprot_v4:

(deepfri) kuanguser@kuanglabnslook:/mnt/data2/andres/deepfri$ foldcomp compress -t 40 afdb_swissprot_v4 databases/afdb_swissprot_v4.tar.gz
foldcomp: command not found

@valentynbez
Copy link
Collaborator

valentynbez commented Dec 6, 2024

Hi @achousal!
Can you share you OS and python version?

I have a strong imprression that pip install failed.
Could you please rerun installation command and share log from it?
pip install mdeepfri --force-reinstall

Thanks for using my software and reporting back!
Valentyn

@valentynbez valentynbez self-assigned this Dec 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants