ReproAgent / run.sh
Yusufarsh's picture
Upload 20 files
331f4b7 verified
#!/bin/bash
# ReproAgent Quick Start Script
# Sets up environment and launches demo
set -e # Exit on error
echo "πŸš€ ReproAgent Quick Start"
echo "=========================="
echo ""
# Colors
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
NC='\033[0m' # No Color
# Check Python version
echo "Checking Python version..."
python_version=$(python3 --version 2>&1 | awk '{print $2}')
echo " Python version: $python_version"
# Check if virtual environment exists
if [ ! -d "venv" ]; then
echo ""
echo "πŸ“¦ Creating virtual environment..."
python3 -m venv venv
echo " βœ… Virtual environment created"
fi
# Activate virtual environment
echo ""
echo "πŸ”§ Activating virtual environment..."
source venv/bin/activate
echo " βœ… Activated"
# Install dependencies
echo ""
echo "πŸ“₯ Installing dependencies..."
pip install --upgrade pip --quiet
pip install -r requirements.txt --quiet
echo " βœ… Dependencies installed"
# Create .env if not exists
if [ ! -f ".env" ]; then
echo ""
echo "πŸ“ Creating .env file..."
cp .env.example .env 2>/dev/null || echo "# Add your API keys here" > .env
echo " ⚠️ Please edit .env and add your API keys"
echo " (Optional - system works without LLM)"
fi
# Create data directories
echo ""
echo "πŸ“ Setting up data directories..."
mkdir -p data/papers/easy
mkdir -p data/papers/medium
mkdir -p data/papers/hard
mkdir -p logs
mkdir -p checkpoints
echo " βœ… Directories created"
# Create sample data
echo ""
echo "πŸ“„ Creating sample papers..."
python3 -c "from reproagent.papers import create_sample_papers; create_sample_papers()" 2>/dev/null || echo " ⚠️ Sample paper creation skipped"
echo " βœ… Sample data ready"
# Validate environment
echo ""
echo "πŸ” Validating environment..."
if python3 validate.py; then
echo ""
echo -e "${GREEN}βœ… Validation passed!${NC}"
else
echo ""
echo -e "${YELLOW}⚠️ Some validations failed (may be non-critical)${NC}"
fi
# Ask what to do
echo ""
echo "="*50
echo "What would you like to do?"
echo "="*50
echo "1) Launch Gradio demo (recommended)"
echo "2) Run inference"
echo "3) Run baseline comparison"
echo "4) Run validation only"
echo "5) Exit"
echo ""
read -p "Enter choice [1-5]: " choice
case $choice in
1)
echo ""
echo "🎨 Launching Gradio demo..."
python3 server/app.py
;;
2)
echo ""
echo "πŸ€– Running inference..."
python3 inference.py --difficulty easy --steps 30
;;
3)
echo ""
echo "πŸ“Š Running baseline comparison..."
python3 baseline/run_baseline.py
;;
4)
echo ""
echo "βœ… Validation complete (already ran above)"
;;
5)
echo "πŸ‘‹ Goodbye!"
exit 0
;;
*)
echo "Invalid choice. Exiting."
exit 1
;;
esac