FLUX-auto_installer / ComfyUI-AllinOne-Auto_install.bat
UmeAiRT's picture
Upload ComfyUI-AllinOne-Auto_install.bat
aff16f3 verified
@echo off
setlocal enabledelayedexpansion
:CHOOSE_OPTION
REM Ask user for installation type
echo Choose your preferred installation:
echo A) Fast-Lowvram install
echo B) Unoptimized normal model
set /p "CHOICE=Enter your choice (A or B) and press Enter: "
if /i "%CHOICE%"=="A" (
set "INSTALL_TYPE=fast-lowvram"
) else if /i "%CHOICE%"=="B" (
set "INSTALL_TYPE=unoptimized"
) else (
echo Invalid choice. Please enter A or B.
goto CHOOSE_OPTION
)
:CHOOSE_FLUX_SCHNELL
REM Ask user if they want to download FLUX SCHNELL Model
echo Do you want to download the FLUX SCHNELL Model?
echo A) Yes
echo B) No
set /p "FLUX_SCHNELL_CHOICE=Enter your choice (A or B) and press Enter: "
if /i "%FLUX_SCHNELL_CHOICE%"=="A" (
set "DOWNLOAD_FLUX_SCHNELL=yes"
) else if /i "%FLUX_SCHNELL_CHOICE%"=="B" (
set "DOWNLOAD_FLUX_SCHNELL=no"
) else (
echo Invalid choice. Please enter A or B.
goto CHOOSE_FLUX_SCHNELL
)
:CHOOSE_FLUX_GGUF
REM Ask user if they want to download FLUX GGUF Model
echo Do you want to download FLUX GGUF Models?
echo A) Q8_0 + T5_Q8 (24GB Vram)
echo B) Q5_K_S + T5_Q5_K_M (16GB Vram)
echo C) Q4_K_S + T5_Q3_K_L (less than 12GB Vram)
echo D) All
echo E) No
set /p "FLUX_GGUF_CHOICE=Enter your choice (A,B,C,D or E) and press Enter: "
if /i "%FLUX_GGUF_CHOICE%"=="A" (
set "DOWNLOAD_GGUF=yes"
) else if /i "%FLUX_GGUF_CHOICE%"=="B" (
set "DOWNLOAD_GGUF=yes"
) else if /i "%FLUX_GGUF_CHOICE%"=="C" (
set "DOWNLOAD_GGUF=yes"
) else if /i "%FLUX_GGUF_CHOICE%"=="D" (
set "DOWNLOAD_GGUF=yes"
) else if /i "%FLUX_GGUF_CHOICE%"=="E" (
set "DOWNLOAD_GGUF=no"
) else (
echo Invalid choice. Please enter A or B.
goto CHOOSE_FLUX_GGUF
)
:CHOOSE_FLUX_CONTROLNET
REM Ask user if they want to download FLUX SCHNELL Model
echo Do you want to download ControlNet V3 Models?
echo A) Yes
echo B) No
set /p "FLUX_CONTROLNET_CHOICE=Enter your choice (A or B) and press Enter: "
if /i "%FLUX_CONTROLNET_CHOICE%"=="A" (
set "DOWNLOAD_FLUX_CONTROLNET=yes"
) else if /i "%FLUX_CONTROLNET_CHOICE%"=="B" (
set "DOWNLOAD_FLUX_CONTROLNET=no"
) else (
echo Invalid choice. Please enter A or B.
goto CHOOSE_FLUX_CONTROLNET
)
:CHOOSE_FLUX_LORA
REM Ask user if they want to download FLUX LORA
echo Do you want to download UmeAiRT LoRAs?
echo A) Yes
echo B) No
set /p "FLUX_LORA_CHOICE=Enter your choice (A or B) and press Enter: "
if /i "%FLUX_LORA_CHOICE%"=="A" (
set "DOWNLOAD_FLUX_LORA=yes"
) else if /i "%FLUX_LORA_CHOICE%"=="B" (
set "DOWNLOAD_FLUX_LORA=no"
) else (
echo Invalid choice. Please enter A or B.
goto CHOOSE_FLUX_LORA
)
REM Check if 7-Zip is installed and get its path
for %%I in (7z.exe) do set "SEVEN_ZIP_PATH=%%~$PATH:I"
if not defined SEVEN_ZIP_PATH (
if exist "%ProgramFiles%\7-Zip\7z.exe" (
set "SEVEN_ZIP_PATH=%ProgramFiles%\7-Zip\7z.exe"
) else if exist "%ProgramFiles(x86)%\7-Zip\7z.exe" (
set "SEVEN_ZIP_PATH=%ProgramFiles(x86)%\7-Zip\7z.exe"
) else (
echo 7-Zip is not installed. Downloading and installing...
curl -L -o 7z-installer.exe https://www.7-zip.org/a/7z2201-x64.exe
7z-installer.exe /S
set "SEVEN_ZIP_PATH=%ProgramFiles%\7-Zip\7z.exe"
if not exist "%SEVEN_ZIP_PATH%" (
echo Installation of 7-Zip failed. Please install it manually and try again.
exit /b 1
)
del 7z-installer.exe
)
)
REM Check and install Git
git --version > NUL 2>&1
if %errorlevel% NEQ 0 (
echo Installing Git...
powershell -Command "& {Invoke-WebRequest -Uri 'https://github.com/git-for-windows/git/releases/download/v2.41.0.windows.3/Git-2.41.0.3-64-bit.exe' -OutFile 'Git-2.41.0.3-64-bit.exe'; if ($LASTEXITCODE -ne 0) { exit 1 }}"
if %errorlevel% NEQ 0 (
echo Failed to download Git installer.
exit /b
)
start /wait Git-2.41.0.3-64-bit.exe /VERYSILENT
del Git-2.41.0.3-64-bit.exe
) else (
echo Git already installed.
)
REM Download ComfyUI
echo Downloading ComfyUI...
curl -L -o ComfyUI_windows_portable_nvidia_cu121_or_cpu.7z https://github.com/comfyanonymous/ComfyUI/releases/download/latest/ComfyUI_windows_portable_nvidia_cu121_or_cpu.7z
REM Extract ComfyUI
echo Extracting ComfyUI...
"%SEVEN_ZIP_PATH%" x ComfyUI_windows_portable_nvidia_cu121_or_cpu.7z -o"%CD%" -y
REM Check if extraction was successful
if not exist "ComfyUI_windows_portable" (
echo Extraction failed. Please check the downloaded file and try again.
exit /b 1
)
REM Navigate to custom_nodes folder
cd ComfyUI_windows_portable\ComfyUI\custom_nodes
REM Clone ComfyUI-Manager
echo Cloning ComfyUI-Manager...
git clone https://github.com/ltdrdata/ComfyUI-Manager.git
REM Navigate to models folder
cd ..\models
REM Download VAE file
echo Downloading VAE file...
cd vae
curl -L -o ae.safetensors https://huggingface.co/UmeAiRT/FLUX-auto_installer/resolve/main/ae.safetensors?download=true
cd ..
REM Download CLIP files
echo Downloading CLIP files...
cd clip
curl -L -o clip_l.safetensors https://huggingface.co/UmeAiRT/FLUX-auto_installer/resolve/main/clip_l.safetensors?download=true
curl -L -o t5xxl_fp8_e4m3fn.safetensors https://huggingface.co/UmeAiRT/FLUX-auto_installer/resolve/main/t5xxl_fp8_e4m3fn.safetensors?download=true
curl -L -o t5xxl_fp16.safetensors https://huggingface.co/UmeAiRT/FLUX-auto_installer/resolve/main/t5xxl_fp16.safetensors?download=true
curl -L -o ViT-L-14-TEXT-detail-improved-hiT-GmP-TE-only-HF.safetensors https://huggingface.co/zer0int/CLIP-GmP-ViT-L-14/resolve/main/ViT-L-14-TEXT-detail-improved-hiT-GmP-TE-only-HF.safetensors?download=true
if "%DOWNLOAD_GGUF%"=="yes" (
echo Downloading FLUX GGUF encoder Model...
if /i "%FLUX_GGUF_CHOICE%"=="A" (
curl -L -o t5-v1_1-xxl-encoder-Q8_0.gguf https://huggingface.co/city96/t5-v1_1-xxl-encoder-gguf/resolve/main/t5-v1_1-xxl-encoder-Q8_0.gguf?download=true
) else if /i "%FLUX_GGUF_CHOICE%"=="B" (
curl -L -o t5-v1_1-xxl-encoder-Q5_K_M.gguf https://huggingface.co/city96/t5-v1_1-xxl-encoder-gguf/resolve/main/t5-v1_1-xxl-encoder-Q5_K_M.gguf?download=true
) else if /i "%FLUX_GGUF_CHOICE%"=="C" (
curl -L -o t5-v1_1-xxl-encoder-Q3_K_L.gguf https://huggingface.co/city96/t5-v1_1-xxl-encoder-gguf/resolve/main/t5-v1_1-xxl-encoder-Q3_K_L.gguf?download=true
) else if /i "%FLUX_GGUF_CHOICE%"=="D" (
curl -L -o t5-v1_1-xxl-encoder-Q8_0.gguf https://huggingface.co/city96/t5-v1_1-xxl-encoder-gguf/resolve/main/t5-v1_1-xxl-encoder-Q8_0.gguf?download=true
curl -L -o t5-v1_1-xxl-encoder-Q5_K_M.gguf https://huggingface.co/city96/t5-v1_1-xxl-encoder-gguf/resolve/main/t5-v1_1-xxl-encoder-Q5_K_M.gguf?download=true
curl -L -o t5-v1_1-xxl-encoder-Q3_K_L.gguf https://huggingface.co/city96/t5-v1_1-xxl-encoder-gguf/resolve/main/t5-v1_1-xxl-encoder-Q3_K_L.gguf?download=true
)
)
cd ..
REM Download UNET file based on user choice
echo Downloading UNET file...
cd unet
if "%INSTALL_TYPE%"=="fast-lowvram" (
curl -L -o flux1-dev-fp8.safetensors https://huggingface.co/UmeAiRT/FLUX-auto_installer/resolve/main/flux1-dev-fp8.safetensors?download=true
) else (
curl -L -o flux1-dev.sft https://huggingface.co/Aitrepreneur/FLX/resolve/main/flux1-dev.sft?download=true
)
if "%DOWNLOAD_GGUF%"=="yes" (
echo Downloading FLUX GGUF Model...
if /i "%FLUX_GGUF_CHOICE%"=="A" (
curl -L -o flux1-dev-Q8_0.gguf https://huggingface.co/city96/FLUX.1-dev-gguf/resolve/main/flux1-dev-Q8_0.gguf?download=true
) else if /i "%FLUX_GGUF_CHOICE%"=="B" (
curl -L -o flux1-dev-Q5_K_S.gguf https://huggingface.co/city96/FLUX.1-dev-gguf/resolve/main/flux1-dev-Q5_K_S.gguf?download=true
) else if /i "%FLUX_GGUF_CHOICE%"=="C" (
curl -L -o flux1-dev-Q4_K_S.gguf https://huggingface.co/city96/FLUX.1-dev-gguf/resolve/main/flux1-dev-Q4_K_S.gguf?download=true
) else if /i "%FLUX_GGUF_CHOICE%"=="D" (
curl -L -o flux1-dev-Q8_0.gguf https://huggingface.co/city96/FLUX.1-dev-gguf/resolve/main/flux1-dev-Q8_0.gguf?download=true
curl -L -o flux1-dev-Q5_K_S.gguf https://huggingface.co/city96/FLUX.1-dev-gguf/resolve/main/flux1-dev-Q5_K_S.gguf?download=true
curl -L -o flux1-dev-Q4_K_S.gguf https://huggingface.co/city96/FLUX.1-dev-gguf/resolve/main/flux1-dev-Q4_K_S.gguf?download=true
)
)
REM Download FLUX SCHNELL Model if user chose to
if "%DOWNLOAD_FLUX_SCHNELL%"=="yes" (
echo Downloading FLUX SCHNELL Model...
curl -L -o flux1-schnell-fp8.safetensors https://huggingface.co/UmeAiRT/FLUX-auto_installer/resolve/main/flux1-schnell-fp8.safetensors?download=true
)
cd ..
cd loras
REM Download FLUX SCHNELL Model if user chose to
if "%DOWNLOAD_FLUX_LORA%"=="yes" (
echo Downloading UmeAiRT LoRAs...
curl -L -o ume_sky_v2.safetensors https://huggingface.co/UmeAiRT/FLUX.1-dev-LoRA-Ume_Sky/resolve/main/ume_sky_v2.safetensors?download=true
curl -L -o ume_modern_pixelart.safetensors https://huggingface.co/UmeAiRT/FLUX.1-dev-LoRA-Modern_Pixel_art/resolve/main/ume_modern_pixelart.safetensors?download=true
curl -L -o ume_classic_Romanticism.safetensors https://huggingface.co/UmeAiRT/FLUX.1-dev-LoRA-Romanticism/resolve/main/ume_classic_Romanticism.safetensors?download=true
curl -L -o ume_classic_impressionist.safetensors https://huggingface.co/UmeAiRT/FLUX.1-dev-LoRA-Impressionism/resolve/main/ume_classic_impressionist.safetensors?download=true
)
cd ..
REM Download upscale model
echo Downloading upscale models...
cd upscale_models
curl -L -o 4x_NMKD-Siax_200k.pth https://huggingface.co/uwg/upscaler/resolve/main/ESRGAN/4x_NMKD-Siax_200k.pth?download=true
curl -L -o 4x-ClearRealityV1.pth https://huggingface.co/skbhadra/ClearRealityV1/resolve/main/4x-ClearRealityV1.pth?download=true
cd ..
mkdir .\xlabs\controlnets
cd xlabs\controlnets
REM Download FLUX ControlNet Models if user chose to
if "%DOWNLOAD_FLUX_CONTROLNET%"=="yes" (
echo Downloading FLUX ControlNet Models...
curl -L -o flux-canny-controlnet-v3.safetensors https://huggingface.co/XLabs-AI/flux-controlnet-canny-v3/resolve/main/flux-canny-controlnet-v3.safetensors?download=true
curl -L -o flux-depth-controlnet-v3.safetensors https://huggingface.co/XLabs-AI/flux-controlnet-depth-v3/resolve/main/flux-depth-controlnet-v3.safetensors?download=true
curl -L -o flux-hed-controlnet-v3.safetensors https://huggingface.co/XLabs-AI/flux-controlnet-hed-v3/resolve/main/flux-hed-controlnet-v3.safetensors?download=true
)
cd ..\..\..
mkdir .\user\default
echo Downloading comfy settings...
cd user\default
curl -L -o comfy.settings.json https://huggingface.co/UmeAiRT/FLUX-auto_installer/resolve/main/comfy.settings.json?download=true
echo Downloading comfy workflow...
mkdir .\workflows
cd workflows
curl -L -o "FLUX - TXT to IMG.json" https://huggingface.co/UmeAiRT/FLUX-auto_installer/resolve/main/FLUX-TXTtoIMG.json?download=true
curl -L -o "FLUX - IMG to IMG.json" https://huggingface.co/UmeAiRT/FLUX-auto_installer/resolve/main/FLUX-IMGtoIMG.json?download=true
curl -L -o "FLUX - Inpainting.json" https://huggingface.co/UmeAiRT/FLUX-auto_installer/resolve/main/FLUX-Inpainting.json?download=true
curl -L -o "FLUX - Upscale.json" https://huggingface.co/UmeAiRT/FLUX-auto_installer/resolve/main/FLUX-Upscale.json?download=true
curl -L -o "FLUX - CTRLNet DEPTH.json" https://huggingface.co/UmeAiRT/FLUX-auto_installer/resolve/main/FLUX-CTRLNetDEPTH.json?download=true
curl -L -o "FLUX - CTRLNet CANNY.json" https://huggingface.co/UmeAiRT/FLUX-auto_installer/resolve/main/FLUX-CTRLNetCANNY.json?download=true
curl -L -o "FLUX - CTRLNet HED.json" https://huggingface.co/UmeAiRT/FLUX-auto_installer/resolve/main/FLUX-CTRLNetHED.json?download=true
cd ..\..\..\..
REM Final steps based on user choice
if "%INSTALL_TYPE%"=="fast-lowvram" (
echo Downloading special run file for fast-lowvram...
curl -L -o "run_nvidia_gpu-LOWVRAM.bat" "https://huggingface.co/UmeAiRT/FLUX-auto_installer/resolve/main/run_nvidia_gpu-LOWVRAM.bat?download=true"
echo ComfyUI and FLUX installed. Running ComfyUI...
call "run_nvidia_gpu-LOWVRAM.bat"
) else (
echo ComfyUI and FLUX installed. HAVE FUN ;)
)