Invalid value for "--i-classifier";Invalid value for "--i-reads"

Hi,
I downloaded the pre-trained SILVA classifier ( Silva 132 99% OTUs from 515F/806R region of sequences (MD5: 9f50514214ffb6fee9d2f87a47a51076 ) available in: https://docs.qiime2.org/2019.4/data-resources/

However when I use it directly in feature-classifier, I got this error:
(1/2) Invalid value for “–i-classifier”: ‘silva-132-99-515-806-nb-classifier.qza’ is not a QIIME 2 Artifact (.qza)
(2/2) Invalid value for “–i-reads”: ‘rep-seqs.qza’ is not a QIIME 2 Artifact (.qza)

Here is the command:
qiime feature-classifier classify-sklearn --i-classifier silva-132-99-515-806-nb-classifier.qza --i-reads rep-seqs.qza --o-classification taxonomy.qza

The rep-seqs.qza file was obtained from dada2 and I was able to obtain taxonomy.qza file when I used Greengenes classifier (downloaded from the same link above) with the same rep-seq.qza file.

I could not figure out what the problem is. Is it memory problem? I used the laptop (Intel core i5, Dell) with ubuntu. I have also checked the scikit-learn version as 0.20.2 since I am using qiime2-2019.04 version.

Is it memory problem?
I am attaching the disk information as well:
1.9G 0 1.9G 0% /dev
tmpfs 386M 1.8M 384M 1% /run
/dev/sda8 19G 14G 4.0G 77% /
tmpfs 1.9G 65M 1.9G 4% /dev/shm
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
/dev/loop0 4.2M 4.2M 0 100% /snap/gnome-calculator/406
/dev/loop3 88M 88M 0 100% /snap/core/5662
/dev/loop2 3.8M 3.8M 0 100% /snap/gnome-system-monitor/81
/dev/loop5 2.3M 2.3M 0 100% /snap/gnome-calculator/238
/dev/loop6 141M 141M 0 100% /snap/gnome-3-26-1604/82
/dev/loop8 54M 54M 0 100% /snap/core18/970
/dev/loop9 15M 15M 0 100% /snap/gnome-logs/45
/dev/loop10 1.0M 1.0M 0 100% /snap/gnome-logs/61
/dev/loop7 36M 36M 0 100% /snap/gtk-common-themes/1198
/dev/loop11 43M 43M 0 100% /snap/gtk-common-themes/701
/dev/loop12 152M 152M 0 100% /snap/gnome-3-28-1804/47
/dev/loop13 141M 141M 0 100% /snap/gnome-3-26-1604/70
/dev/loop14 15M 15M 0 100% /snap/gnome-characters/272
/dev/loop15 89M 89M 0 100% /snap/core/6964
tmpfs 386M 36K 386M 1% /run/user/1000
/dev/loop16 15M 15M 0 100% /snap/gnome-characters/280
/dev/sdb1 29G 2.3G 27G 8% /media/zhengwei/KINGSTON
/dev/loop17 3.8M 3.8M 0 100% /snap/gnome-system-monitor/83
/dev/loop18 152M 152M 0 100% /snap/gnome-3-28-1804/51

I also read the similar topic of UGG (Error in using Pre-trained SILVA classifier), but I did not get any idea to resolve this problem.

I will be really happy if you could help me…
Regards

Hi @weizheng,

Based on the command, I have a suspicion that you’ve got a path problem. I’ve been noticing recently that if I pass a path that doesn’t exist, I’ll get a “not an Artifact” error. So, I would check where you have your files and where you’re running your command. (pwd and ls are two of my favorite bash commands.)

Best,
Justine

1 Like

Hi, jwdebelius,

Thanks for your reply. I have checked the place of files. I think that the problem was not induced by this, because I put ‘silva-132-99-515-806-nb-classifier.qza’ ,‘rep-seqs.qza’ and ‘gg-13-8-99-515-806-nb-classifier.qza (greengene database download as silva database)’ in the same place. When I run “qiime feature-classifier classify-sklearn \ --i-classifier gg-13-8-99-515-806-nb-classifier.qza \ --i-reads rep-seqs.qza \ --o-classification taxonomy.qza”, it was successfully worked. However, when I run “qiime feature-classifier classify-sklearn \ --i-classifier silva-132-99-515-806-nb-classifier.qza \ --i-reads rep-seqs.qza \ --o-classification taxonomy.qza”, I got an error with
“(1/2) Invalid value for “–i-classifier”: ‘silva-132-99-515-806-nb-classifier.qza’ is not a QIIME 2 Artifact (.qza)
(2/2) Invalid value for “–i-reads”: ‘rep-seqs.qza’ is not a QIIME 2 Artifact (.qza)”

Looking forward to your reply…

Regards

Hi! Can you please attach a screenshot from your directory with files, and also a screenshot from the terminal with commands

Are you running both commands form the same terminal window?

1 Like

Yes, I took 4 pictures. You can see that I put ‘silva-132-99-515-806-nb-classifier.qza’ ,‘rep-seqs.qza’ and ‘gg-13-8-99-515-806-nb-classifier.qza’ in the same place. When I run “qiime feature-classifier classify-sklearn \ --i-classifier silva-132-99-515-806-nb-classifier.qza \ --i-reads rep-seqs.qza \ --o-classification taxonomy.qza”, I got an error with
“(1/2) Invalid value for “–i-classifier”: ‘silva-132-99-515-806-nb-classifier.qza’ is not a QIIME 2 Artifact (.qza)
(2/2) Invalid value for “–i-reads”: ‘rep-seqs.qza’ is not a QIIME 2 Artifact (.qza)”
But when I run “qiime feature-classifier classify-sklearn \ --i-classifier gg-13-8-99-515-806-nb-classifier.qza \ --i-reads rep-seqs.qza \ --o-classification taxonomy.qza”, it was successfully worked

.

Looks like everything is fine.
Are you typing your commands in the terminal or you use some application to write and edit your commands?

1 Like

I agree, that all looks normal to me. Here’s a kind of out there question:

What does your /tmp partition look like?

df -ha

will tell us more about that.

Yes, I run the “df -ha”, the results are as follows:
sysfs 0 0 0 - /sys
proc 0 0 0 - /proc
udev 1.9G 0 1.9G 0% /dev
devpts 0 0 0 - /dev/pts
tmpfs 386M 1.8M 384M 1% /run
/dev/sda8 19G 14G 4.0G 78% /
securityfs 0 0 0 - /sys/kernel/security
tmpfs 1.9G 69M 1.9G 4% /dev/shm
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
cgroup2 0 0 0 - /sys/fs/cgroup/unified
cgroup 0 0 0 - /sys/fs/cgroup/systemd
pstore 0 0 0 - /sys/fs/pstore
bpf 0 0 0 - /sys/fs/bpf
cgroup 0 0 0 - /sys/fs/cgroup/rdma
cgroup 0 0 0 - /sys/fs/cgroup/cpuset
cgroup 0 0 0 - /sys/fs/cgroup/net_cls,net_prio
cgroup 0 0 0 - /sys/fs/cgroup/perf_event
cgroup 0 0 0 - /sys/fs/cgroup/freezer
cgroup 0 0 0 - /sys/fs/cgroup/pids
cgroup 0 0 0 - /sys/fs/cgroup/hugetlb
cgroup 0 0 0 - /sys/fs/cgroup/cpu,cpuacct
cgroup 0 0 0 - /sys/fs/cgroup/blkio
cgroup 0 0 0 - /sys/fs/cgroup/memory
cgroup 0 0 0 - /sys/fs/cgroup/devices
systemd-1 0 0 0 - /proc/sys/fs/binfmt_misc
hugetlbfs 0 0 0 - /dev/hugepages
debugfs 0 0 0 - /sys/kernel/debug
mqueue 0 0 0 - /dev/mqueue
configfs 0 0 0 - /sys/kernel/config
fusectl 0 0 0 - /sys/fs/fuse/connections
/dev/loop0 15M 15M 0 100% /snap/gnome-logs/45
/dev/loop1 3.8M 3.8M 0 100% /snap/gnome-system-monitor/81
/dev/loop2 88M 88M 0 100% /snap/core/5662
/dev/loop3 2.3M 2.3M 0 100% /snap/gnome-calculator/238
/dev/loop5 1.0M 1.0M 0 100% /snap/gnome-logs/61
/dev/loop4 89M 89M 0 100% /snap/core/6964
/dev/loop6 141M 141M 0 100% /snap/gnome-3-26-1604/82
/dev/loop8 3.8M 3.8M 0 100% /snap/gnome-system-monitor/83
/dev/loop7 43M 43M 0 100% /snap/gtk-common-themes/701
/dev/loop10 36M 36M 0 100% /snap/gtk-common-themes/1198
/dev/loop9 4.2M 4.2M 0 100% /snap/gnome-calculator/406
/dev/loop11 152M 152M 0 100% /snap/gnome-3-28-1804/47
/dev/loop12 152M 152M 0 100% /snap/gnome-3-28-1804/51
/dev/loop13 54M 54M 0 100% /snap/core18/970
/dev/loop14 15M 15M 0 100% /snap/gnome-characters/272
/dev/loop15 141M 141M 0 100% /snap/gnome-3-26-1604/70
/dev/loop16 15M 15M 0 100% /snap/gnome-characters/280
tmpfs 386M 24K 386M 1% /run/user/1000
gvfsd-fuse 0 0 0 - /run/user/1000/gvfs
/dev/sdb1 29G 2.6G 27G 9% /media/zhengwei/KINGSTON

I also upload the screen print.

It looks like you don’t have very much space available on your hard drive, your root partition has only 4G left (and I don’t see a /tmp partition, so it is limited to that as well). This is not really enough room for QIIME 2 to extract the SILVA classifier (greengenes is a bit smaller so it’s able to squeeze in, but barely).

Unfortunately the CLI should be telling us you ran out of room instead of complaining about the .qza being wrong, but this will be fixed in the next release. Nonetheless, you’ll need much more room I think.

You may be able to use a external drive and combining that with:

export TMPDIR=/your/external/drive

(you can search TMPDIR for more details)

you will probably be able to get things moving again.

2 Likes

Many thanks for your good suggestion. This problem has been solved after Re-Partition.:upside_down_face::slightly_smiling_face:

3 Likes

Hi ebolyen,
I also got the same problem. but I think my space is enough. please look below:

decen@bio:~/qiime2$ df -ha
Filesystem      Size  Used Avail Use% Mounted on
sysfs              0     0     0    - /sys
proc               0     0     0    - /proc
udev            2,5G     0  2,5G   0% /dev
devpts             0     0     0    - /dev/pts
tmpfs           503M   14M  490M   3% /run
/dev/sda1        43G   22G   19G  54% /
securityfs         0     0     0    - /sys/kernel/security
tmpfs           2,5G   29M  2,5G   2% /dev/shm
tmpfs           5,0M  4,0K  5,0M   1% /run/lock
tmpfs           2,5G     0  2,5G   0% /sys/fs/cgroup
cgroup             0     0     0    - /sys/fs/cgroup/systemd
pstore             0     0     0    - /sys/fs/pstore
cgroup             0     0     0    - /sys/fs/cgroup/pids
cgroup             0     0     0    - /sys/fs/cgroup/hugetlb
cgroup             0     0     0    - /sys/fs/cgroup/devices
cgroup             0     0     0    - /sys/fs/cgroup/freezer
cgroup             0     0     0    - /sys/fs/cgroup/blkio
cgroup             0     0     0    - /sys/fs/cgroup/cpu,cpuacct
cgroup             0     0     0    - /sys/fs/cgroup/cpuset
cgroup             0     0     0    - /sys/fs/cgroup/memory
cgroup             0     0     0    - /sys/fs/cgroup/rdma
cgroup             0     0     0    - /sys/fs/cgroup/net_cls,net_prio
cgroup             0     0     0    - /sys/fs/cgroup/perf_event
systemd-1          0     0     0    - /proc/sys/fs/binfmt_misc
mqueue             0     0     0    - /dev/mqueue
hugetlbfs          0     0     0    - /dev/hugepages
debugfs            0     0     0    - /sys/kernel/debug
fusectl            0     0     0    - /sys/fs/fuse/connections
configfs           0     0     0    - /sys/kernel/config
E               105G   82G   23G  79% /media/sf_E
tmpfs           503M   96K  503M   1% /run/user/1000
gvfsd-fuse         0     0     0    - /run/user/1000/gvfs
/dev/sr0         56M   56M     0 100% /media/decen/VBox_GAs_5.2.20

what should I do? Thanks a lot!

Hi @Decen,

Thanks for posting your partition usage! Base on this, it appears you do not have a dedicated TMP partition, which is pretty normal, and so we look at the root partition to determine the size:

Based on this, it is relatively full. But not so full I would expect it to fail. Just to make sure this is actually what we think it is, are you certain that the filepaths you are using are completely correct? Right now the error that we see is mangling these three cases internally:

  1. Artifact.load fails due to lack of space
  2. Artifact.load fails because the file does not exist
  3. Artifact.load fails because the file isn't a qza

We can't differentiate them at the moment, but the next release will fix that.

Are you able to increase the disk size for VirtualBox? That may help, otherwise you could add a mounted volume and set TMPDIR to that location. If that doesn't work let me know, there may be a fourth case we are unaware of.

Hi Ebolyen,

Thanks a lot! I will follow your suggestions. the paths, I think they are right, generally, I execute the commands at the current directory including all the files, just in case of any errors.

cheers

Hi, I am experiencing the same error, as mentioned above. I have checked the space, filepath and the artifact but nothing seems to work. I started that with 2019.10 version and then with 2020 version, changed classifier to silva from gg and then tried to download then again from the website. Also tried to directly gave the command and not submit a job at uni cluster. But nothing seems to work. Is there any way to get rid of this problem?

Hi @Fatima_Sarwar15!

Please provide the following:

  • What is the exact command or commands you ran? Copy and paste please.
  • What is the exact error message? If you didn’t run the command with the --verbose flag, please re-run and copy-and-paste the results.

A post was split to a new topic: Invalid value for ‘–i-classifier’: ‘silva-138-99-515-806-nb-classifier.qza’ is not a QIIME 2 Artifact (.qza)