Graph_RAG7 / deploy.bat
Aigenthix's picture
Upload 19 files
bc10808 verified
Raw
History Blame Contribute Delete
4.23 kB
@echo off
REM Graph RAG Chatbot Deployment Script for Windows
setlocal enabledelayedexpansion
echo.
echo πŸ€– Graph RAG Chatbot Deployment Script
echo.
REM Check GROQ_API_KEY
if not defined GROQ_API_KEY (
if exist ".env" (
for /f "tokens=2 delims==" %%A in ('findstr "GROQ_API_KEY" .env') do set GROQ_API_KEY=%%A
) else (
echo ⚠️ GROQ_API_KEY not found!
echo.
echo Getting Groq API Key:
echo 1. Visit https://console.groq.com
echo 2. Sign up/Login
echo 3. Create an API key
echo 4. Copy it
echo.
set /p GROQ_API_KEY="Enter your GROQ_API_KEY: "
echo GROQ_API_KEY=!GROQ_API_KEY! > .env
echo βœ… API key saved to .env
)
)
echo βœ… GROQ_API_KEY configured
echo.
echo Select deployment method:
echo 1) Local (Python venv)
echo 2) Docker (Single container)
echo 3) Docker Compose (Recommended)
echo 4) Hugging Face Spaces
echo.
set /p choice="Enter choice (1-4): "
if "%choice%"=="1" goto local_deploy
if "%choice%"=="2" goto docker_deploy
if "%choice%"=="3" goto compose_deploy
if "%choice%"=="4" goto hf_deploy
goto invalid_choice
:local_deploy
echo.
echo πŸ“¦ Local Deployment
echo.
where python >nul 2>nul
if errorlevel 1 (
echo ❌ Python not found. Please install Python 3.8+
exit /b 1
)
echo Creating virtual environment...
python -m venv venv
echo Activating virtual environment...
call venv\Scripts\activate.bat
echo Installing dependencies...
python -m pip install --upgrade pip
pip install -r requirements.txt
echo.
echo βœ… Installation complete!
echo.
echo To start the app, run:
echo venv\Scripts\activate.bat
echo python app.py
echo.
echo Then open: http://localhost:7860
goto end
:docker_deploy
echo.
echo 🐳 Docker Deployment
echo.
where docker >nul 2>nul
if errorlevel 1 (
echo ❌ Docker not found. Please install Docker.
echo Visit: https://docs.docker.com/get-docker/
exit /b 1
)
echo Building Docker image...
docker build -t graph-rag-chatbot .
echo.
echo βœ… Image built successfully!
echo.
echo To run the container, use:
echo docker run -p 7860:7860 ^
echo -e GROQ_API_KEY=%GROQ_API_KEY% ^
echo -v %%cd%%/data:/app/data ^
echo graph-rag-chatbot
echo.
set /p start="Start container now? (y/n): "
if /i "%start%"=="y" (
docker run -p 7860:7860 -e GROQ_API_KEY=%GROQ_API_KEY% -v %cd%/data:/app/data graph-rag-chatbot
)
goto end
:compose_deploy
echo.
echo 🐳 Docker Compose Deployment
echo.
where docker-compose >nul 2>nul
if errorlevel 1 (
echo ❌ Docker Compose not found.
echo Visit: https://docs.docker.com/compose/install/
exit /b 1
)
if not exist ".env" (
copy .env.example .env
)
echo Starting Docker Compose services...
docker-compose up -d
echo.
echo βœ… Services started!
echo.
echo Access the app at: http://localhost:7860
echo.
echo Useful commands:
echo docker-compose logs -f # View logs
echo docker-compose ps # View services
echo docker-compose down # Stop services
goto end
:hf_deploy
echo.
echo πŸ€— Hugging Face Spaces Deployment
echo.
where git >nul 2>nul
if errorlevel 1 (
echo ❌ Git not found. Please install Git.
exit /b 1
)
echo Steps to deploy to HF Spaces:
echo.
echo 1. Create a new Space:
echo https://huggingface.co/spaces
echo - Select Docker as SDK
echo - Name: graph-rag-chatbot
echo.
set /p hf_username="Enter your HF username: "
git clone https://huggingface.co/spaces/%hf_username%/graph-rag-chatbot hf-space-clone
cd hf-space-clone
echo Copying project files...
copy ..\app.py .
xcopy ..\templates templates /E /I
copy ..\Dockerfile .
copy ..\requirements.txt .
copy ..\.dockerignore .
git add .
git commit -m "Initial Graph RAG deployment"
git push
echo.
echo βœ… Files pushed to HF Spaces!
echo.
echo Final step: Add your API key as a secret
echo 1. Go to: https://huggingface.co/spaces/%hf_username%/graph-rag-chatbot
echo 2. Click Settings ^> Repository secrets
echo 3. Add new secret:
echo Name: GROQ_API_KEY
echo Value: %GROQ_API_KEY%
echo.
echo Your app will be live in a few minutes!
goto end
:invalid_choice
echo ❌ Invalid choice
exit /b 1
:end
echo.
echo πŸŽ‰ Deployment configured!
echo.
endlocal