Spaces:
Sleeping
Sleeping
@echo off | |
REM Hugging Face Spaces Deployment Script for Windows | |
REM This script helps set up your FastAPI application for Hugging Face Spaces | |
echo π Setting up CSS Essay Grader API for Hugging Face Spaces... | |
REM Check if we're in the right directory | |
if not exist "app.py" ( | |
echo β Error: app.py not found. Please run this script from the project root directory. | |
pause | |
exit /b 1 | |
) | |
REM Create necessary files for Hugging Face Spaces | |
echo π Creating Hugging Face Spaces configuration files... | |
REM Copy the HF-specific app file | |
if exist "app_hf.py" ( | |
copy "app_hf.py" "app.py" >nul | |
echo β Copied app_hf.py to app.py | |
) else ( | |
echo β οΈ Warning: app_hf.py not found. Using existing app.py | |
) | |
REM Copy the HF-specific requirements file | |
if exist "requirements_hf.txt" ( | |
copy "requirements_hf.txt" "requirements.txt" >nul | |
echo β Copied requirements_hf.txt to requirements.txt | |
) else ( | |
echo β οΈ Warning: requirements_hf.txt not found. Using existing requirements.txt | |
) | |
REM Copy the HF-specific Dockerfile | |
if exist "Dockerfile.hf" ( | |
copy "Dockerfile.hf" "Dockerfile" >nul | |
echo β Copied Dockerfile.hf to Dockerfile | |
) else ( | |
echo β οΈ Warning: Dockerfile.hf not found. Using existing Dockerfile | |
) | |
REM Copy the HF-specific README | |
if exist "README_hf.md" ( | |
copy "README_hf.md" "README.md" >nul | |
echo β Copied README_hf.md to README.md | |
) else ( | |
echo β οΈ Warning: README_hf.md not found. Using existing README.md | |
) | |
REM Create .dockerignore if it doesn't exist | |
if not exist ".dockerignore" ( | |
echo π Creating .dockerignore file... | |
( | |
echo # Git | |
echo .git | |
echo .gitignore | |
echo. | |
echo # Python | |
echo __pycache__ | |
echo *.pyc | |
echo *.pyo | |
echo *.pyd | |
echo .Python | |
echo env | |
echo pip-log.txt | |
echo pip-delete-this-directory.txt | |
echo .tox | |
echo .coverage | |
echo .coverage.* | |
echo .cache | |
echo nosetests.xml | |
echo coverage.xml | |
echo *.cover | |
echo *.log | |
echo .git | |
echo .mypy_cache | |
echo .pytest_cache | |
echo .hypothesis | |
echo. | |
echo # Virtual environments | |
echo venv/ | |
echo ENV/ | |
echo env/ | |
echo .venv/ | |
echo. | |
echo # IDE | |
echo .vscode/ | |
echo .idea/ | |
echo *.swp | |
echo *.swo | |
echo *~ | |
echo. | |
echo # OS | |
echo .DS_Store | |
echo .DS_Store? | |
echo ._* | |
echo .Spotlight-V100 | |
echo .Trashes | |
echo ehthumbs.db | |
echo Thumbs.db | |
echo. | |
echo # Project specific | |
echo temp/ | |
echo output/ | |
echo *.pdf | |
echo *.png | |
echo *.jpg | |
echo *.jpeg | |
echo *.gif | |
echo *.bmp | |
echo *.tiff | |
echo *.docx | |
echo *.txt | |
echo *.log | |
echo. | |
echo # Development files | |
echo test_*.py | |
echo *_test.py | |
echo quick-fix.sh | |
echo optimize-deployment.py | |
echo deployment-guide.md | |
echo API_FORMAT_DOCUMENTATION.md | |
) > .dockerignore | |
echo β Created .dockerignore file | |
) | |
REM Create necessary directories | |
echo π Creating necessary directories... | |
if not exist "temp" mkdir temp | |
if not exist "output" mkdir output | |
echo β Created temp and output directories | |
REM Check for required files | |
echo π Checking for required files... | |
if exist "app.py" echo β app.py found | |
if exist "requirements.txt" echo β requirements.txt found | |
if exist "Dockerfile" echo β Dockerfile found | |
if exist "README.md" echo β README.md found | |
if exist "OCR.py" echo β OCR.py found | |
if exist "Feedback.py" echo β Feedback.py found | |
if exist "PDFFeedbackGenerator.py" echo β PDFFeedbackGenerator.py found | |
if exist "OCRAccuracyAnalyzer.py" echo β OCRAccuracyAnalyzer.py found | |
REM Check for environment variables | |
echo. | |
echo π§ Environment Variables Setup: | |
echo Make sure to set the following environment variables in your Hugging Face Space: | |
echo - OPENAI_API_KEY: Your OpenAI API key | |
echo - GOOGLE_CLOUD_CREDENTIALS: Your Google Cloud Vision credentials (JSON) | |
REM Display next steps | |
echo. | |
echo π Setup complete! Next steps: | |
echo. | |
echo 1. Create a new Hugging Face Space: | |
echo - Go to https://huggingface.co/spaces | |
echo - Click 'Create new Space' | |
echo - Choose 'Docker' as SDK | |
echo - Set Space name (e.g., 'css-essay-grader') | |
echo. | |
echo 2. Clone the Space repository: | |
echo git clone https://huggingface.co/spaces/YOUR_USERNAME/YOUR_SPACE_NAME | |
echo. | |
echo 3. Copy your files to the Space repository: | |
echo xcopy /E /I /Y * C:\path\to\your\space\repo\ | |
echo. | |
echo 4. Set environment variables in the Space settings: | |
echo - OPENAI_API_KEY | |
echo - GOOGLE_CLOUD_CREDENTIALS | |
echo. | |
echo 5. Commit and push: | |
echo cd C:\path\to\your\space\repo\ | |
echo git add . | |
echo git commit -m 'Initial deployment' | |
echo git push | |
echo. | |
echo 6. Wait for deployment (usually 5-10 minutes) | |
echo. | |
echo 7. Access your API: | |
echo https://YOUR_USERNAME-YOUR_SPACE_NAME.hf.space | |
echo https://YOUR_USERNAME-YOUR_SPACE_NAME.hf.space/docs | |
echo. | |
echo π Your CSS Essay Grader API is ready for Hugging Face Spaces deployment! | |
pause |