Spaces:
Sleeping
Sleeping
| @echo off | |
| setlocal enabledelayedexpansion | |
| echo ======================================== | |
| echo Starting IntegraChat Backend Server | |
| echo ======================================== | |
| echo. | |
| REM Get the directory where the batch file is located and move to project root | |
| cd /d "%~dp0" | |
| REM Validate project structure | |
| if not exist "backend" ( | |
| echo ERROR: backend directory not found! | |
| echo Please make sure you're running this from the project root. | |
| pause | |
| exit /b 1 | |
| ) | |
| if not exist "requirements.txt" ( | |
| echo ERROR: requirements.txt not found in project root! | |
| pause | |
| exit /b 1 | |
| ) | |
| REM Check if Python is available | |
| python --version >nul 2>&1 | |
| if errorlevel 1 ( | |
| echo ERROR: Python is not installed or not in PATH! | |
| echo Please install Python 3.10+ and add it to your PATH. | |
| pause | |
| exit /b 1 | |
| ) | |
| echo Python version: | |
| python --version | |
| echo. | |
| REM Create virtual environment if needed | |
| if not exist "venv\Scripts\activate.bat" ( | |
| echo Creating virtual environment... | |
| python -m venv venv | |
| if errorlevel 1 ( | |
| echo ERROR: Failed to create virtual environment! | |
| pause | |
| exit /b 1 | |
| ) | |
| ) | |
| REM Activate virtual environment | |
| echo Activating virtual environment... | |
| call venv\Scripts\activate.bat | |
| if errorlevel 1 ( | |
| echo ERROR: Failed to activate virtual environment! | |
| pause | |
| exit /b 1 | |
| ) | |
| echo. | |
| REM Install dependencies from root requirements.txt | |
| echo Installing/validating dependencies... | |
| pip install --upgrade pip >nul | |
| pip install -r requirements.txt | |
| if errorlevel 1 ( | |
| echo ERROR: Failed to install dependencies! | |
| pause | |
| exit /b 1 | |
| ) | |
| echo. | |
| REM Check if .env file exists in root | |
| if not exist ".env" ( | |
| echo Warning: .env file not found in project root! | |
| echo Please create .env from env.example if needed. | |
| echo. | |
| ) | |
| REM Prepare environment variables | |
| set PYTHONPATH=%cd% | |
| set "APP_PORT=8000" | |
| if not "%API_PORT%"=="" ( | |
| set "APP_PORT=%API_PORT%" | |
| ) | |
| set "VENV_PYTHON=%cd%\venv\Scripts\python.exe" | |
| if not exist "%VENV_PYTHON%" ( | |
| echo ERROR: Could not find python executable in venv! | |
| pause | |
| exit /b 1 | |
| ) | |
| REM Launch MCP servers in separate windows | |
| echo. | |
| echo Launching MCP servers in separate windows... | |
| start "RAG MCP (8001)" "%VENV_PYTHON%" -m uvicorn backend.mcp_servers.main:app --host 0.0.0.0 --port 8001 | |
| start "WEB MCP (8002)" "%VENV_PYTHON%" -m uvicorn backend.mcp_servers.web_server:web_app --host 0.0.0.0 --port 8002 | |
| start "ADMIN MCP (8003)" "%VENV_PYTHON%" -m uvicorn backend.mcp_servers.admin_server:admin_app --host 0.0.0.0 --port 8003 | |
| echo MCP servers started. Close their windows or press Ctrl+C inside them to stop. | |
| echo. | |
| REM Start the FastAPI server | |
| echo ======================================== | |
| echo Starting FastAPI server... | |
| echo Server will be available at: | |
| echo http://localhost:%APP_PORT% | |
| echo http://127.0.0.1:%APP_PORT% | |
| echo ======================================== | |
| echo. | |
| echo Press Ctrl+C to stop the server | |
| echo. | |
| python -m uvicorn backend.api.main:app --reload --host 0.0.0.0 --port %APP_PORT% | |
| if errorlevel 1 ( | |
| echo. | |
| echo ERROR: Failed to start the server! | |
| echo. | |
| echo Common issues: | |
| echo 1. Verify backend/api/main.py exists | |
| echo 2. Ensure dependencies installed correctly | |
| echo 3. Check if another process is using port %APP_PORT% | |
| echo. | |
| ) | |
| pause | |
| endlocal | |