|
@echo off |
|
setlocal enabledelayedexpansion |
|
|
|
set "basePath=%CD%" |
|
set "comfyPath=%basePath%\ComfyUI" |
|
set "pythonPath=%basePath%\python_embeded" |
|
set "customNodesPath=%comfyPath%\custom_nodes" |
|
|
|
if not exist "%basePath%\logs" mkdir "%basePath%\logs" |
|
|
|
curl -L -o banner.txt https://huggingface.co/UmeAiRT/ComfyUI-Auto_installer/resolve/main/others/banner.txt?download=true >> "%basePath%\logs\SageAttention.txt" 2>&1 |
|
echo -------------------------------------------------------------------------------[34m |
|
type banner.txt |
|
echo [0m------------------------------------------------------------------------------- |
|
echo ComfyUI - WAN2.1 - SageAttention installer |
|
echo V1.3 |
|
echo ------------------------------------------------------------------------------- |
|
del /f banner.txt |
|
|
|
:check_folder |
|
if exist "%basePath%\ComfyUI" ( |
|
echo ComfyUI folder detected |
|
set "comfyPath=%basePath%\ComfyUI" |
|
if exist "%basePath%\python_embeded" ( |
|
echo Python folder detected |
|
set "pythonPath=%basePath%\python_embeded" |
|
) else ( |
|
echo Python folder not detected, give Python folder path : |
|
pause |
|
) |
|
) else if exist "%basePath%\ComfyUI_windows_portable" ( |
|
set "comfyPath=%basePath%\ComfyUI_windows_portable\ComfyUI" |
|
set "pythonPath=%basePath%\ComfyUI_windows_portable\python_embeded" |
|
echo ComfyUI folder detected |
|
) else ( |
|
echo ComfyUI folder not detected, give ComfyUi folder path : |
|
set /p "comfyPath=Path: " |
|
echo Python folder not detected, give Python folder path : |
|
set /p "pythonPath=Path: " |
|
) |
|
|
|
:CHOOSE_CLEAN |
|
|
|
echo [33mDo you want to do a clean install? (old triton and sageattention will be deleted)[0m |
|
echo [32mA) Yes[0m |
|
echo [32mB) No[0m |
|
set /p "CHOOSE_CLEAN=Enter your choice (A or B) and press Enter: " |
|
|
|
if /i "%CHOOSE_CLEAN%"=="A" ( |
|
echo [33mUninstalling Triton and SageAttention...[0m |
|
"%pythonPath%\python.exe" -m pip uninstall -y triton-windows >> "%basePath%\logs\SageAttention.txt" 2>&1 |
|
"%pythonPath%\python.exe" -m pip uninstall -y triton >> "%basePath%\logs\SageAttention.txt" 2>&1 |
|
"%pythonPath%\python.exe" -m pip uninstall -y sageattention >> "%basePath%\logs\SageAttention.txt" 2>&1 |
|
|
|
echo [33mRemoving SageAttention build files...[0m |
|
rmdir /s /q "SageAttention" >> "%basePath%\logs\SageAttention.txt" 2>&1 |
|
rmdir /s /q "%pythonPath%\libs" >> "%basePath%\logs\SageAttention.txt" 2>&1 |
|
rmdir /s /q "%pythonPath%\include" >> "%basePath%\logs\SageAttention.txt" 2>&1 |
|
) else if /i "%CHOOSE_CLEAN%"=="B" ( |
|
set "CHOOSE_CLEANL=no" |
|
) else ( |
|
echo [31mInvalid choice. Please enter A or B.[0m |
|
goto CHOOSE_CLEAN |
|
) |
|
|
|
echo [33mInstalling Visual Studio Build Tools...[0m |
|
winget install --id Microsoft.VisualStudio.2022.BuildTools -e --source winget --override "--quiet --wait --norestart --add Microsoft.VisualStudio.Component.VC.Tools.x86.x64 --add Microsoft.VisualStudio.Component.Windows10SDK.20348" |
|
|
|
echo [33mInstalling Triton...[0m |
|
curl -L -o "%pythonPath%\triton-3.3.0-py3-none-any.whl" https://github.com/woct0rdho/triton-windows/releases/download/empty/triton-3.3.0-py3-none-any.whl >> "%basePath%\logs\SageAttention.txt" 2>&1 |
|
"%pythonPath%\python.exe" -m pip install "%pythonPath%\triton-3.3.0-py3-none-any.whl" >> "%basePath%\logs\SageAttention.txt" 2>&1 |
|
"%pythonPath%\python.exe" -s -m pip install triton-windows >> "%basePath%\logs\SageAttention.txt" 2>&1 |
|
|
|
echo [33mDownloading Python include/libs...[0m |
|
curl -L -o "%pythonPath%\python_3.12.9_include_libs.zip" https://huggingface.co/UmeAiRT/ComfyUI-Auto_installer/resolve/main/others/python_3.12.9_include_libs.zip?download=true >> "%basePath%\logs\SageAttention.txt" 2>&1 |
|
tar -xf "%pythonPath%\python_3.12.9_include_libs.zip" -C "%pythonPath%" >> "%basePath%\logs\SageAttention.txt" 2>&1 |
|
|
|
echo [33mDownloading SageAttention...[0m |
|
git clone https://github.com/thu-ml/SageAttention.git >> "%basePath%\logs\SageAttention.txt" 2>&1 |
|
|
|
echo [33mInstalling SageAttention...[0m |
|
"%pythonPath%\python.exe" -s -m pip install -e SageAttention >> "%basePath%\logs\SageAttention.txt" 2>&1 |
|
rmdir /s /q "SageAttention" >> "%basePath%\logs\SageAttention.txt" 2>&1 |
|
|
|
echo [33mInstallation complete[0m |
|
pause |