Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- :: DO NOT USE YET. W.I.P.
- @echo off
- setlocal enabledelayedexpansion
- :: === INIQUITY-25 LAUNCHER ===
- :: Version: Smarter install and safety checks
- :: --- Ask for environment name ---
- set /p VENV_NAME=Choose a name for your Python environment folder (e.g., myAI):
- :: --- Resolve full paths ---
- pushd "%~dp0.."
- set VENV_PATH=%CD%\%VENV_NAME%
- popd
- set WEBUI_PATH=%VENV_PATH%\Lib\site-packages\open_webui
- set AI_HOME=%~dp0
- :: --- Basic required file checks ---
- if not exist "%AI_HOME%\personality.txt" (
- echo [ERROR] Missing personality.txt. Aborting.
- pause
- exit /b
- )
- if not exist "%AI_HOME%\main.py" (
- echo [ERROR] Missing main.py. Aborting.
- pause
- exit /b
- )
- :: --- Create base_dir.txt if needed ---
- if not exist "%AI_HOME%\base_dir.txt" (
- (
- echo %AI_HOME%
- echo Amicia
- echo You
- ) > "%AI_HOME%\base_dir.txt"
- echo [INFO] base_dir.txt created.
- ) else (
- echo [INFO] base_dir.txt already exists.
- )
- :: --- Activate virtual environment ---
- call "%VENV_PATH%\Scripts\activate.bat"
- if errorlevel 1 (
- echo [ERROR] Failed to activate venv.
- pause
- exit /b
- )
- :: --- Install dependencies one by one if missing ---
- set PACKAGES=onnxruntime wikipedia fastapi uvicorn
- for %%P in (%PACKAGES%) do (
- echo [CHECK] %%P...
- if exist "%VENV_PATH%\Lib\site-packages\%%P" (
- echo [OK] %%P already installed.
- ) else (
- echo [ACTION] Installing %%P...
- pip install --prefer-binary --quiet %%P
- if errorlevel 1 (
- echo [ERROR] Could not install %%P. Aborting.
- pause
- exit /b
- )
- )
- )
- :: --- Confirm WebUI is ready ---
- echo [CHECK] open-webui main.py...
- if exist "%WEBUI_PATH%\main.py" (
- echo [OK] open-webui already installed.
- ) else (
- echo [ACTION] Installing open-webui...
- pip install --prefer-binary open-webui
- if errorlevel 1 (
- echo [ERROR] Could not install open-webui.
- pause
- exit /b
- )
- )
- :: --- Backup and inject custom main.py BEFORE launch ---
- if not exist "%WEBUI_PATH%\main.py.bak" (
- copy /Y "%WEBUI_PATH%\main.py" "%WEBUI_PATH%\main.py.bak"
- echo [INFO] Backed up original main.py
- )
- echo [ACTION] Injecting custom main.py...
- copy /y /v "%AI_HOME%\main.py" "%WEBUI_PATH%\main.py"
- if errorlevel 1 (
- echo [ERROR] Failed to copy custom main.py. Aborting.
- pause
- exit /b
- )
- echo [OK] Custom main.py injected.
- :: --- Launch Open WebUI ---
- echo [START] Launching Open WebUI...
- open-webui serve
- echo.
- pause
- :: --- Restore original main.py after exit ---
- echo [CLEANUP] Restoring original main.py...
- copy /y /v "%WEBUI_PATH%\main.py.bak" "%WEBUI_PATH%\main.py"
- echo [DONE] main.py restored.
- :: --- Countdown before exiting ---
- for /l %%i in (5,-1,1) do (
- echo Exiting in %%i seconds...
- timeout /t 1 >nul
- )
- exit
Advertisement
Add Comment
Please, Sign In to add comment