Utilisation de VirSorter2

Bonjour,

J'ai noté que VirSorter2 (GitHub - jiarong/VirSorter2: customizable pipeline to identify viral sequences from (meta)genomic data) était installé sur le cluster (module virsorter/2.0).

Je l'ai testé (avec le fichier et la ligne de commande test de VirSorter2) mais le résultat sort en erreur.
Je m'interroge notamment sur la localisation des bases de données nécessaires à son fonctionnement.

Quelqu'un utilise-t-il ce logiciel ?
Quelqu'un peut-il m'aider ?

Par avance merci de votre aide.

Bonjour Denis,

Pour pouvoir vous accompagner, il faut que l'on comprenne l'erreur.
Pouvez-vous nous donner la ligne de commande utilisée ainsi que l'erreur renvoyée ?

Bonjour,

Pour tester VirSorter2 j'ai récupéré directement le module installé sur le cluster (virsorter.2.0) avec la commande "module load", suivi de la récupération des bases de données en les téléchargeant manuellement avec les commandes "tar -xzf db.tgz" puis "virsorter config --init-source --db-dir=./db" comme spécifié dans la documentation (GitHub - jiarong/VirSorter2: customizable pipeline to identify viral sequences from (meta)genomic data).

J'ai ensuite procédé à un test avec le fichier test.fa proposé dans la documentation (téléchargement du fichier test avec "wget -O test.fa https://raw.githubusercontent.com/jiarong/VirSorter2/master/test/8seq.fa") avec la commande suivante : "virsorter run -w Test.out -i test.fa -j 4 all", comme indiqué dans la documentation.

L'erreur renvoyée est renseignée dans le fichier (error.pdf) disponible au lien suivant : FileSender.
Le message d'erreur semble indiquer de multiples conflits de packages notamment avec les packages python.

Note : Étant nouvel utilisateur, je n'ai pas pu vous joindre directement à ce message le pdf contenant le message d'erreur. Le lien indiqué vous permet de le récupérer via filesender.

Par avance merci de votre aide.

Merci pour ce retour complet.

L'erreur provient de l'étape de préparation de l'environnement virsorter setup. VirSorter essaie en effet d'installer les dépendances mais celles-ci sont déjà installées (via conda). On doit donc pouvoir sauter cette étape, avec l'option -s.

  -s, --skip-deps-install  skip dependency installation (if you want to
                           install on your own as in development version)
                           [default: False]

Dans votre exemple, on aura alors la commande: virsorter setup -d db -j 4 -s

Pouvez-vous réessayer avec cette option ?

Bonjour,

Merci beaucoup pour votre retour.

J'ai effectué la commande "virsorter setup -d db -j 4 -s" puis le test avec test.fa ("virsorter run -w Test.out -i test.fa -j 4 all").

Cette commande m'a retourné l'erreur contenue dans le fichier suivant : sftp://dfilloux@core.cluster.france-bioinformatique.fr/shared/ifbstor1/home/dfilloux/work/berenice/Virsorter2.sh.15456168.

Idem. Il faut cette fois-ci indiquer l'option --use-conda-off

Ce qui nous donne qquechose comme virsorter run --use-conda-off -w Test.out -i test.fa -j 4 all

Mais je tombe alors sur une autre erreur

  File "/shared/ifbstor1/software/miniconda/envs/virsorter-2.0/lib/python3.8/site-packages/virsorter/./scripts/circular-linear-split.py", line 6, in <module>
    import screed
ModuleNotFoundError: No module named 'screed'

Avez-vous également cette erreur ?

Je n'ai rien trouvé qui me semblait pertinent sur le github du projet (GitHub - jiarong/VirSorter2: customizable pipeline to identify viral sequences from (meta)genomic data)

On va essayer avec virsorter/2.1 (en cours d'installation)

Bonjour,

En effet, j'obtiens le même type d'erreur que vous en appliquant cette commande.

J'ai réalisé quelques tests avec virsoter/2.1 en utilisant les commandes que vous m'aviez indiqué mais le même type d'erreur (No module named 'screed') m'est retournée (le rapport complet est disponible à : sftp://dfilloux@core.cluster.france-bioinformatique.fr/shared/ifbstor1/home/dfilloux/work/berenice/test_22_03/Test_test_ifb_22_03.sh.15460426).

Bonjour Denis,

Je ne suis pas sûr de la solution à apporter, j'ai donc fait une issue sur le projet VirSorter: Conda and VirSorter env requirements · Issue #54 · jiarong/VirSorter2 · GitHub

Merci.
Je crois que l'auteur a répondu à l'issue, mais je ne suis pas totalement à même de comprendre...

Sachez que si cela peut aider, j'ai demandé l'installation de VirSorter 2.1 sur le cluster de Muse (muse-login.hpc-lr.univ-montp2.fr) et cela fonctionne comme attendu. Notre administrateur est bertrand.pitollat@cirad.fr.

Je ne sais pas si vous souhaitez persister à installer correctement VirSorter2, car nous avons donc une solution de remplacement.

Cordialement.

Bonjour Denis,
Merci pour l'info. Parfait si vous n'êtes pas bloqué !
On va encore essayer 2/3 trucs pour finaliser l'installation.

Hi,

I am also having issues with running VirSorter2.

When I run the test command:
virsorter run -w test.out -i test.fa --min-length 1500 -j 4 all

I get the error:
[2022-04-13 13:42 INFO] VirSorter 2.2
[2022-04-13 13:42 INFO] /opt/conda/bin/virsorter run -w test.out -i test.fa --min-length 1500 -j 4 all
[2022-04-13 13:42 INFO] Using /shared/home/bbaker/.virsorter/template-config.yaml as config template
Traceback (most recent call last):
File "/opt/conda/bin/virsorter", line 10, in
sys.exit(cli())
File "/opt/conda/lib/python3.8/site-packages/click/core.py", line 829, in call
return self.main(*args, **kwargs)
File "/opt/conda/lib/python3.8/site-packages/click/core.py", line 782, in main
rv = self.invoke(ctx)
File "/opt/conda/lib/python3.8/site-packages/click/core.py", line 1259, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/opt/conda/lib/python3.8/site-packages/click/core.py", line 1066, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/opt/conda/lib/python3.8/site-packages/click/core.py", line 610, in invoke
return callback(*args, **kwargs)
File "/opt/conda/lib/python3.8/site-packages/virsorter/virsorter.py", line 354, in run_workflow
make_config(
File "/opt/conda/lib/python3.8/site-packages/virsorter/config.py", line 151, in make_config
groups_avail = os.listdir(f'{db_dir}/group')
FileNotFoundError: [Errno 2] No such file or directory: '/shared/ifbstor1/projects/final_markers/VirSorter2/db/group'

Any help is appreciated!

Thanks in advance,
Brittany

Bonjour les admins

Je n'arrive pas à faire fonctionner virsorter moi non plus. Que ce soit avec le jeu de données test ou des données perso. Cependant les erreurs ne sont pas identiques selon les données.

Est ce que qq'un a réussi à faire fonctionner ce programme sur le cluster depuis ?

Merci
G.

virsorter run -w test.out -i test.fa --min-length 1500 -j 4 all
[2022-09-30 17:51 INFO] VirSorter 2.2
[2022-09-30 17:51 INFO] /opt/conda/bin/virsorter run -w test.out -i test.fa --min-length 1500 -j 4 all
[2022-09-30 17:51 INFO] Using /shared/home/gblanc/.virsorter/template-config.yaml as config template
[2022-09-30 17:51 INFO] conig file written to /shared/projects/phycovir/ULVE/test.out/config.yaml

[2022-09-30 17:51 INFO] Executing: snakemake --snakefile /opt/conda/lib/python3.8/site-packages/virsorter/Snakefile --directory /shared/projects/phycovir/ULVE/test.out --jobs 4 --configfile /shared/projects/phycovir/ULVE/test.out/config.yaml --latency-wait 600 --rerun-incomplete --nolock  --conda-frontend mamba --conda-prefix /shared/home/gblanc/Programs/VirsorterDB/db/conda_envs --use-conda    --quiet  all   
MissingInputException in line 4 of /opt/conda/lib/python3.8/site-packages/virsorter/rules/preprocess.smk:
Missing input files for rule circular_linear_split:
/shared/projects/phycovir/ULVE/test.fa
virsorter run -w test.out -i VIROME-ASSEMBLIES/spades.06EDM_100kd_ADN_trim_.meta.scaffolds.fa --min-length 1500 -j 4 all
[2022-09-30 17:53 INFO] VirSorter 2.2
[2022-09-30 17:53 INFO] /opt/conda/bin/virsorter run -w test.out -i VIROME-ASSEMBLIES/spades.06EDM_100kd_ADN_trim_.meta.scaffolds.fa --min-length 1500 -j 4 all
[2022-09-30 17:53 INFO] Using /shared/home/gblanc/.virsorter/template-config.yaml as config template
[2022-09-30 17:53 INFO] conig file written to /shared/projects/phycovir/ULVE/test.out/config.yaml

[2022-09-30 17:53 INFO] Executing: snakemake --snakefile /opt/conda/lib/python3.8/site-packages/virsorter/Snakefile --directory /shared/projects/phycovir/ULVE/test.out --jobs 4 --configfile /shared/projects/phycovir/ULVE/test.out/config.yaml --latency-wait 600 --rerun-incomplete --nolock  --conda-frontend mamba --conda-prefix /shared/home/gblanc/Programs/VirsorterDB/db/conda_envs --use-conda    --quiet  all   
Traceback (most recent call last):
  File "/opt/conda/lib/python3.8/site-packages/snakemake/__init__.py", line 662, in snakemake
    success = workflow.execute(
  File "/opt/conda/lib/python3.8/site-packages/snakemake/workflow.py", line 856, in execute
    dag.create_conda_envs(
  File "/opt/conda/lib/python3.8/site-packages/snakemake/dag.py", line 280, in create_conda_envs
    env.create(dryrun)
  File "/opt/conda/lib/python3.8/site-packages/snakemake/deployment/conda.py", line 247, in create
    conda = Conda(self._container_img)
  File "/opt/conda/lib/python3.8/site-packages/snakemake/deployment/conda.py", line 381, in __new__
    inst.__init__(container_img=container_img)
  File "/opt/conda/lib/python3.8/site-packages/snakemake/deployment/conda.py", line 394, in __init__
    self._check()
  File "/opt/conda/lib/python3.8/site-packages/snakemake/deployment/conda.py", line 448, in _check
    if StrictVersion(version) < StrictVersion("4.2"):
  File "/opt/conda/lib/python3.8/distutils/version.py", line 40, in __init__
    self.parse(vstring)
  File "/opt/conda/lib/python3.8/distutils/version.py", line 137, in parse
    raise ValueError("invalid version number '%s'" % vstring)
ValueError: invalid version number 'line'