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
Classifier process errored - CPU Architecture #65
Comments
What's your |
My Nextcloud runs in a Debian Buster Docker Container on a Synolgy DS918+, so it should be x64. |
ok. (The fact that you didn't run into #52 when installing from the web UI is interesting...) |
There should be a warning-level log message before these two log messages, saying something like |
Jep, also not very verbose :-/ {
"reqId": "b6Wn01s9daui30J6ezBX",
"level": 2,
"time": "2021-08-24T07:45:23+00:00",
"remoteAddr": "",
"user": "--",
"app": "recognize",
"method": "",
"url": "--",
"message": "Classifier process output: ",
"userAgent": "--",
"version": "22.1.0.1"
} |
Speaking of verbose: Is there a verbose logging parameter for the occ command? |
Not, currently. I agree that it could spit out more information again. The output was reduced by a refactor, but I'll take a look again.
That would mean that the process fails silently :/ Can you try executing the classifier manually?
(Update: Forgot the node binary...) Thank you for sponsoring me, btw ❤️ |
Mmh. seems correct. Can you try And for good measure: |
Sorry, I deleted my former post as I realized I executed the command on the host machine and not within the Docker container. 😅 Within the container its:
For completeness the result on the host was:
|
It seems we have run into tensorflow/tfjs#2631 |
Two paths forward from here:
|
So, I installed node.js via nvm and ran the
{
"reqId": "KBbgSJd7nbEibjgv1vJ5",
"level": 2,
"time": "2021-08-24T15:43:10+00:00",
"remoteAddr": "",
"user": "--",
"app": "recognize",
"method": "",
"url": "--",
"message": "Classifier process output: ",
"userAgent": "--",
"version": "22.1.0.1",
"id": "6125138e97f97"
} If I ran your test command
I already tried Any other Ideas? |
I think that's as deep as we're gonna go on this one. I'll publish a new release soon where you can select pure-js operation. That should definitely work, even though it's slower. |
Okay, Thank you! |
now that i have been able to install (raspbian, nc 21.0.4) following this |
@spicemint Yep, raspi is arm, which does not work, yet. I'm on it. |
I'm using J5040 (Goldmont Plus architecture), and same thing happens. While I can try plain javascript option but I didn't want to because it will be painfully slow anyway. So here's how I did:
|
This may also be a nice resource for downloading pre-built binaries for some architectures: https://github.com/kaufman-lab/build_tensorflow/releases (whl files are simply zip archives) |
hopefully use most optimal tensorflow variant see #65
Yes, some versions worked. I also installed the LAST working version with Nextcloud to install |
Does this improve any performance (I just installed it by Package and not built byself and I don't have to use JavaScript mode) |
I'm currently setting up a repo for building various flavors of libtensorflow. If you'd like your machine to be covered, run the following on your machine and post the output here:
(cc @jakobroehrl) |
Hey. I am using the docker alpine nextcloud image. Output of gcc: Because currently when I try to recognize:classify I get:
|
root@server: |
How to use/install them? Thanks |
I've forked that repository and setup a better pipeline to streamline this: https://github.com/marcelklehr/build_tensorflow/actions |
I'm getting a log full of these too. Using NC version 23.0.3 and the latest Recognize installed via the Apps page within NC itself. If I manually run: It scrolls through many images found, finally ending with this:
I'm using the Nextcloud Docker container, on Win 10 x64, WSL (Ubuntu containers). |
@YouveGotMeowxy As the title says, most likely, your CPU architecture is not supported by the standard tensorflow build. That means you have two options
|
I'm just running it within an Ubuntu container on WSL (AMD Ryzen processor). Standard Tensorflow doesn't support that? Also, are there any drawbacks to using the js mode? And if I use JS mode, will the OCC manual recognize still work? |
This comment was marked as off-topic.
This comment was marked as off-topic.
I have no idea if tensorflow supports your CPU. lscpu will tell you which instructions your CPU supports. Tensorflow needs avx and possibly avx512 or something like that. Don't remember off the top of my head. A different reason for the Permission denied error could be that it's actually about permissions. Recognize makes sure that all permissions are set on the node.js binary, but you can try whether executing
JS mode is slower, but other than that should work fine. |
I installed node latest (18.2.0), npm 8.9.0, rebuilt tensorflow from source.
Running the manual command seems to work fine:
But running the recognition doesn't (after listing 500 images and getting ready to process them):
Not sure what's wrong as afaik, all permissions should be fine. |
@kbftech You'll need to set the path to a node.js executable in the settings. The setting seems to have been lost. |
Seems to work! Thanks :D Side note: EDIT: It's been scanning for 5 hours straight. about 5000 pictures analysed so far. |
@YouveGotMeowxy
|
TY for that. I added node
However, when I check the "Enable WASM mode" box and run it again, after awhile, it shows this (does this look right?): |
@YouveGotMeowxy Wild guess: Your node_modules have not been generated correctly? Try this "again": FYI, I updated node and npm to latest before re-installing dependencies. I had a few errors saying my node version wasn't 14.whatever but it works fine nonetheless. |
@kbftech I appreciate all the help. 🌝 Maybe I'm installing it wrong? I'm running it in a container that's running Alpine, so I just do a I was under the impression that would install and setup everything on it's own? |
@YouveGotMeowxy It seems that you have run into a bug with v2.0.0: #207 For now enabling WASM mode should do the trick, even though it's slower. I will release a new version shortly that will work with native mode again. |
node.js should not be 500mb, afaik |
OK, you're right, I misread the startup log about the size. It's not 500 mb. Sorry about that. :) |
@marcelklehr Just for future reference, is |
I'm not sure occ has an interactive shell, so I'm confused about what program you are running. The occ command used with recognize is located in the root of your nextcloud installation and can be run using php occ recognize:classify-images |
I'm using the OCC app that you can install from the Apps page within NC. It lets you run OCC right from within NC. |
Then [object Object] means there's a bug in the OCC app. |
@marcelklehr ok. Side note: is it normal for the 'Checking CPU' waiting indicator on the settings page to never stop "waiting"? I've let it run all night and wake up to see it still waiting. |
Appears to be working with the latest update, and my own node.js added in the path field. Update: |
I installed v1.5.8 but the procces still fails without any usefull error message. :(
The text was updated successfully, but these errors were encountered: