InvokeAI
InvokeAI copied to clipboard
[bug]: configure_invokeai.py insists on installing models in $HOME/invokeai
Is there an existing issue for this?
- [X] I have searched the existing issues
commit hash
62b80a81d366239d3a482d8939721932fe367a9f
OS
macOS
GPU
cpu
VRAM
8 GB
What happened?
I'm running python scripts/configure_invokeai.py to config things.
I have read the changes here.
I want models/outputs/config (root) to be $HOME/foo/invokeai-install.
When I run python scripts/configure_invokeai.py it asks me to Select the default directory for image outputs which I set to $HOME/foo/invokeai-install, then it asks about NSFW, then it asks about downloading models.
It automatically starts downloading the models again to put them in $HOME/invokeai.
This install process would make a lot more sense to me if it just asked for one location (root) at the beginning and then put the configs, outputs, and models there. (Maybe it could continue to ask about changing the default output directory, but not really necessary IMHO.)
Screenshots
No response
Additional context
I haven't figured out a workaround for this.
Contact Details
No response
Thanks for the report. Could you post a log or screenshot of the interactions?
I see the problem. In 2.2.4 the configure script is not responsible for setting the location of the invokeai runtime directory. Instead this directory gets set up by the install script and then the configure script is called to populate it with models. I agree that this is confusing behavior and I will modify the script so that it does not ask you for the location of the output directory.
Right now, if the install script has already created $HOME/invokeai and you want to move the directory to $HOME/foo/invokeai-install, here are the recommended steps:
mv $HOME/invokeai $HOME/foo/invokeai-install
cd $HOME/foo/invokeai-install
source .venv/bin/activate # alternatively, launch invoke.sh and enter the "developer's console"
pip install -r requirements.txt
pip install https://github.com/invoke-ai/InvokeAI/archive/refs/tags/v2.2.4.zip
I tested this on a Linux box. Hopefully it will work on your system as well. The reason to do the pip installs again, is that once a virtual environment (.venv) is set up, python doesn't take kindly to it being moved. Because pip will use cached libraries, this setup should be relatively quick.
You might also need to do a configure_invokeai.py as the last step, but this should not be strictly necessary if your models directory is already populated.
the configure script is not responsible for setting the location of the invokeai runtime directory.
Ah! Thanks. This explains it.
I wasn't trying to move anything actually - I was just updating a working installation:
- pull master
conda env updatepython scripts/configure_invokeai.py
This is how I have been doing it for a while...
(I didn't think to look for the install script. Even after reading your ALERT, "root directory" seemed like a configuration.)
Confirming I'm replicating I ran:
set INVOKEAI_ROOT=C:\Users\ ... \InvokeAI
where the "..." gets you from C to the location you installed it. And then ran and it worked
python scripts/configure_invokeai.py