webui.bat 1.7 KB
Newer Older
1 2
@echo off

3
if not defined PYTHON (set PYTHON=python)
A
AUTOMATIC 已提交
4
if not defined VENV_DIR (set VENV_DIR=%~dp0%venv)
D
Daniel Grenner 已提交
5

D
DepFA 已提交
6 7
set ERROR_REPORTING=FALSE

8 9 10
mkdir tmp 2>NUL

%PYTHON% -c "" >tmp/stdout.txt 2>tmp/stderr.txt
11
if %ERRORLEVEL% == 0 goto :start_venv
12 13 14
echo Couldn't launch python
goto :show_stdout_stderr

15
:start_venv
A
AUTOMATIC 已提交
16
if ["%VENV_DIR%"] == ["-"] goto :skip_venv
A
AUTOMATIC 已提交
17

A
AUTOMATIC 已提交
18
dir "%VENV_DIR%\Scripts\Python.exe" >tmp/stdout.txt 2>tmp/stderr.txt
A
AUTOMATIC 已提交
19 20
if %ERRORLEVEL% == 0 goto :activate_venv

21
for /f "delims=" %%i in ('CALL %PYTHON% -c "import sys; print(sys.executable)"') do set PYTHON_FULLNAME="%%i"
A
AUTOMATIC 已提交
22
echo Creating venv in directory %VENV_DIR% using python %PYTHON_FULLNAME%
A
AUTOMATIC 已提交
23
%PYTHON_FULLNAME% -m venv "%VENV_DIR%" >tmp/stdout.txt 2>tmp/stderr.txt
A
AUTOMATIC 已提交
24
if %ERRORLEVEL% == 0 goto :activate_venv
A
AUTOMATIC 已提交
25
echo Unable to create venv in directory "%VENV_DIR%"
A
AUTOMATIC 已提交
26 27 28
goto :show_stdout_stderr

:activate_venv
29
set PYTHON="%VENV_DIR%\Scripts\Python.exe"
A
AUTOMATIC 已提交
30
echo venv %PYTHON%
D
d8ahazard 已提交
31
if [%ACCELERATE%] == ["True"] goto :accelerate
32
goto :launch
A
AUTOMATIC 已提交
33 34

:skip_venv
A
AUTOMATIC 已提交
35

D
d8ahazard 已提交
36 37
:accelerate
echo "Checking for accelerate"
38
set ACCELERATE="%VENV_DIR%\Scripts\accelerate.exe"
39
if EXIST %ACCELERATE% goto :accelerate_launch
D
d8ahazard 已提交
40

41
:launch
D
DepFA 已提交
42
%PYTHON% launch.py %*
43 44 45
pause
exit /b

D
d8ahazard 已提交
46
:accelerate_launch
47
echo "Accelerating"
D
d8ahazard 已提交
48 49 50 51
%ACCELERATE% launch --num_cpu_threads_per_process=6 launch.py
pause
exit /b

52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
:show_stdout_stderr

echo.
echo exit code: %errorlevel%

for /f %%i in ("tmp\stdout.txt") do set size=%%~zi
if %size% equ 0 goto :show_stderr
echo.
echo stdout:
type tmp\stdout.txt

:show_stderr
for /f %%i in ("tmp\stderr.txt") do set size=%%~zi
if %size% equ 0 goto :show_stderr
echo.
echo stderr:
type tmp\stderr.txt

:endofscript

echo.
echo Launch unsuccessful. Exiting.
A
AUTOMATIC 已提交
74
pause