Spaces:
Running
on
Zero
Running
on
Zero
# Exit on error | |
set -e | |
echo "Starting setup process..." | |
# Enable more verbose logging | |
set -x | |
# Check if running with sudo/root permissions for system dependencies | |
if [ "$EUID" -eq 0 ]; then | |
# Install system dependencies | |
echo "Installing system dependencies..." | |
apt-get update && apt-get install -y \ | |
wget \ | |
pkg-config | |
echo "System dependencies installed successfully" | |
else | |
echo "Not running as root. Skipping system dependencies installation." | |
fi | |
# Install NumPy first as it's required by many other packages | |
echo "Installing NumPy..." | |
pip install -q -U "numpy<2.0.0" --no-cache-dir | |
echo "NumPy installed successfully" | |
# Install Python dependencies | |
echo "Installing Python dependencies..." | |
pip install -q -U pillow opencv-python | |
pip install -q -U google-genai | |
pip install -q -U openai>=1.1.0 # For LLM image description support | |
# pip install -q -U latex2markdown - removed, now using Gemini API for LaTeX conversion | |
echo "Python dependencies installed successfully" | |
# Install GOT-OCR transformers dependencies | |
echo "Installing GOT-OCR transformers dependencies..." | |
pip install -q -U torch torchvision | |
pip install -q -U "git+https://github.com/huggingface/transformers.git@main" accelerate verovio | |
pip install -q -U "huggingface_hub[cli]>=0.19.0" | |
pip install -q -U "numpy==1.26.3" # Exact version as in original | |
echo "GOT-OCR transformers dependencies installed successfully" | |
# Install spaces module for ZeroGPU support | |
echo "Installing spaces module for ZeroGPU support..." | |
pip install -q -U spaces | |
echo "Spaces module installed successfully" | |
# Install markitdown with all optional dependencies | |
echo "Installing MarkItDown with all dependencies..." | |
pip install -q -U 'markitdown[all]' | |
echo "MarkItDown installed successfully" | |
# Install the project in development mode only if setup.py or pyproject.toml exists | |
if [ -f "setup.py" ] || [ -f "pyproject.toml" ]; then | |
echo "Installing project in development mode..." | |
pip install -e . | |
echo "Project installed successfully" | |
else | |
echo "No setup.py or pyproject.toml found, skipping project installation" | |
fi | |
# Create .env file if it doesn't exist | |
if [ ! -f .env ]; then | |
echo "Creating .env file..." | |
if [ -f .env.example ]; then | |
cp .env.example .env | |
echo ".env file created from .env.example" | |
else | |
echo "Warning: .env.example not found. Creating empty .env file." | |
touch .env | |
fi | |
fi | |
# Return to normal logging | |
set +x | |
echo "Setup process completed successfully!" |