change webui.bat to use venv
This commit is contained in:
parent
2000830342
commit
efa0a6483c
|
@ -27,12 +27,15 @@ You optionally can use GPFGAN to improve faces, then you'll need to download the
|
||||||
- install [CUDA 11.3](https://developer.nvidia.com/cuda-11.3.0-download-archive?target_os=Windows&target_arch=x86_64)
|
- install [CUDA 11.3](https://developer.nvidia.com/cuda-11.3.0-download-archive?target_os=Windows&target_arch=x86_64)
|
||||||
- place `model.ckpt` into webui directory, next to `webui.bat`.
|
- place `model.ckpt` into webui directory, next to `webui.bat`.
|
||||||
- _*(optional)*_ place `GFPGANv1.3.pth` into webui directory, next to `webui.bat`.
|
- _*(optional)*_ place `GFPGANv1.3.pth` into webui directory, next to `webui.bat`.
|
||||||
- run `webui.bat` from Windows explorer.
|
- run `webui.bat` from Windows Explorer.
|
||||||
|
|
||||||
#### Troublehooting:
|
#### Troublehooting:
|
||||||
|
|
||||||
- if you get out of memory errors and your videocard has low amount of VRAM (4GB), edit `webui.bat`, change line 5 to from `set COMMANDLINE_ARGS=` to `set COMMANDLINE_ARGS=--medvram` (see below for other possible options)
|
- if you get out of memory errors and your videocard has low amount of VRAM (4GB), edit `webui.bat`, change line 5 to from `set COMMANDLINE_ARGS=` to `set COMMANDLINE_ARGS=--medvram` (see below for other possible options)
|
||||||
|
- installer creates python virtual environment, so none of installed modules will affect your system installation of python if you had one prior to installing this.
|
||||||
|
- to prevent the creation of virtual environment and use your system python, edit `webui.bat` replacing `set VENV_DIR=venv` with `set VENV_DIR=`.
|
||||||
|
- webui.bat installs requirements from files `requirements_versions.txt`, which lists versions for modules specifically compatible with Python 3.10.6. If you choose to install for a different version of python, editing `webui.bat` to have `set REQS_FILE=requirements.txt` instead of `set REQS_FILE=requirements_versions.txt` may help (but I still reccomend you to just use the recommended version of python).
|
||||||
|
- if your version of Python is not in PATH, edit the line `set PYTHON=python` to say the full path to your python executable: `B:\soft\Python310\python.exe`. You can do this for python, but not for git.
|
||||||
|
|
||||||
### Manual instructions
|
### Manual instructions
|
||||||
Alternatively, if you don't want to run webui.bat, here are instructions for installing
|
Alternatively, if you don't want to run webui.bat, here are instructions for installing
|
||||||
|
|
10
requirements_versions.txt
Normal file
10
requirements_versions.txt
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
basicsr==1.4.1
|
||||||
|
gfpgan
|
||||||
|
gradio==3.2
|
||||||
|
numpy==1.22.0
|
||||||
|
Pillow==9.2.0
|
||||||
|
realesrgan==0.2.5.0
|
||||||
|
torch
|
||||||
|
transformers==4.19.2
|
||||||
|
omegaconf==2.1.1
|
||||||
|
pytorch_lightning==1.7.2
|
34
webui.bat
34
webui.bat
|
@ -3,10 +3,12 @@
|
||||||
set PYTHON=python
|
set PYTHON=python
|
||||||
set GIT=git
|
set GIT=git
|
||||||
set COMMANDLINE_ARGS=
|
set COMMANDLINE_ARGS=
|
||||||
|
set VENV_DIR=venv
|
||||||
|
|
||||||
mkdir tmp 2>NUL
|
mkdir tmp 2>NUL
|
||||||
|
|
||||||
set TORCH_COMMAND=pip install torch --extra-index-url https://download.pytorch.org/whl/cu113
|
set TORCH_COMMAND=pip install torch --extra-index-url https://download.pytorch.org/whl/cu113
|
||||||
|
set REQS_FILE=requirements_versions.txt
|
||||||
|
|
||||||
%PYTHON% -c "" >tmp/stdout.txt 2>tmp/stderr.txt
|
%PYTHON% -c "" >tmp/stdout.txt 2>tmp/stderr.txt
|
||||||
if %ERRORLEVEL% == 0 goto :check_git
|
if %ERRORLEVEL% == 0 goto :check_git
|
||||||
|
@ -15,11 +17,34 @@ goto :show_stdout_stderr
|
||||||
|
|
||||||
:check_git
|
:check_git
|
||||||
%GIT% --help >tmp/stdout.txt 2>tmp/stderr.txt
|
%GIT% --help >tmp/stdout.txt 2>tmp/stderr.txt
|
||||||
if %ERRORLEVEL% == 0 goto :install_torch
|
if %ERRORLEVEL% == 0 goto :setup_venv
|
||||||
echo Couldn't launch git
|
echo Couldn't launch git
|
||||||
goto :show_stdout_stderr
|
goto :show_stdout_stderr
|
||||||
|
|
||||||
|
:setup_venv
|
||||||
|
if [%VENV_DIR%] == [] goto :skip_venv
|
||||||
|
|
||||||
|
dir %VENV_DIR%\Scripts\Python.exe >tmp/stdout.txt 2>tmp/stderr.txt
|
||||||
|
if %ERRORLEVEL% == 0 goto :activate_venv
|
||||||
|
|
||||||
|
for /f %%i in ('%PYTHON% -c "import sys; print(sys.executable)"') do set PYTHON_FULLNAME=%%i
|
||||||
|
echo Creating venv in directory %VENV_DIR% using python %PYTHON_FULLNAME%
|
||||||
|
%PYTHON_FULLNAME% -m venv %VENV_DIR% >tmp/stdout.txt 2>tmp/stderr.txt
|
||||||
|
if %ERRORLEVEL% == 0 goto :activate_venv
|
||||||
|
echo Unable to create venv in directory %VENV_DIR%
|
||||||
|
goto :show_stdout_stderr
|
||||||
|
|
||||||
|
:activate_venv
|
||||||
|
set PYTHON=%~dp0%VENV_DIR%\Scripts\Python.exe
|
||||||
|
%PYTHON% --version
|
||||||
|
echo venv %PYTHON%
|
||||||
|
goto :install_torch
|
||||||
|
|
||||||
|
:skip_venv
|
||||||
|
%PYTHON% --version
|
||||||
|
|
||||||
:install_torch
|
:install_torch
|
||||||
|
|
||||||
%PYTHON% -c "import torch" >tmp/stdout.txt 2>tmp/stderr.txt
|
%PYTHON% -c "import torch" >tmp/stdout.txt 2>tmp/stderr.txt
|
||||||
if %ERRORLEVEL% == 0 goto :check_gpu
|
if %ERRORLEVEL% == 0 goto :check_gpu
|
||||||
echo Installing torch...
|
echo Installing torch...
|
||||||
|
@ -64,7 +89,7 @@ goto :show_stdout_stderr
|
||||||
%PYTHON% -c "import omegaconf" >tmp/stdout.txt 2>tmp/stderr.txt
|
%PYTHON% -c "import omegaconf" >tmp/stdout.txt 2>tmp/stderr.txt
|
||||||
if %ERRORLEVEL% == 0 goto :make_dirs
|
if %ERRORLEVEL% == 0 goto :make_dirs
|
||||||
echo Installing requirements...
|
echo Installing requirements...
|
||||||
%PYTHON% -m pip install -r requirements.txt >tmp/stdout.txt 2>tmp/stderr.txt
|
%PYTHON% -m pip install -r %REQS_FILE% >tmp/stdout.txt 2>tmp/stderr.txt
|
||||||
if %ERRORLEVEL% == 0 goto :update_numpy
|
if %ERRORLEVEL% == 0 goto :update_numpy
|
||||||
goto :show_stdout_stderr
|
goto :show_stdout_stderr
|
||||||
:update_numpy
|
:update_numpy
|
||||||
|
@ -89,7 +114,7 @@ goto :show_stdout_stderr
|
||||||
:check_model
|
:check_model
|
||||||
dir model.ckpt >tmp/stdout.txt 2>tmp/stderr.txt
|
dir model.ckpt >tmp/stdout.txt 2>tmp/stderr.txt
|
||||||
if %ERRORLEVEL% == 0 goto :check_gfpgan
|
if %ERRORLEVEL% == 0 goto :check_gfpgan
|
||||||
echo Stable Diffusin model not found: you need to place model.ckpt file into same directory as this file.
|
echo Stable Diffusion model not found: you need to place model.ckpt file into same directory as this file.
|
||||||
goto :show_stdout_stderr
|
goto :show_stdout_stderr
|
||||||
|
|
||||||
:check_gfpgan
|
:check_gfpgan
|
||||||
|
@ -101,7 +126,7 @@ echo Face fixing feature will not work.
|
||||||
:launch
|
:launch
|
||||||
echo Launching webui.py...
|
echo Launching webui.py...
|
||||||
cd repositories\stable-diffusion
|
cd repositories\stable-diffusion
|
||||||
%PYTHON% ..\..\webui.py %COMMANDLINE_ARGS%
|
%PYTHON% ../../webui.py %COMMANDLINE_ARGS%
|
||||||
pause
|
pause
|
||||||
exit /b
|
exit /b
|
||||||
|
|
||||||
|
@ -127,3 +152,4 @@ type tmp\stderr.txt
|
||||||
|
|
||||||
echo.
|
echo.
|
||||||
echo Launch unsuccessful. Exiting.
|
echo Launch unsuccessful. Exiting.
|
||||||
|
pause
|
||||||
|
|
2
webui.py
2
webui.py
|
@ -633,9 +633,9 @@ def draw_xy_grid(xs, ys, x_label, y_label, cell):
|
||||||
|
|
||||||
for y in ys:
|
for y in ys:
|
||||||
for x in xs:
|
for x in xs:
|
||||||
|
state.job = f"{x + y * len(xs)} out of {len(xs) * len(ys)}"
|
||||||
res.append(cell(x, y))
|
res.append(cell(x, y))
|
||||||
|
|
||||||
|
|
||||||
grid = image_grid(res, rows=len(ys))
|
grid = image_grid(res, rows=len(ys))
|
||||||
grid = draw_grid_annotations(grid, res[0].width, res[0].height, hor_texts, ver_texts)
|
grid = draw_grid_annotations(grid, res[0].width, res[0].height, hor_texts, ver_texts)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user