Spaces:
Running
Running
| set -e | |
| # DT-Explorer Automated Deployment Script | |
| # This script handles the raw bash workflow for solo researchers to update their hosted web app. | |
| echo "==========================================================" | |
| # 1. Slice heavy local trajectories into a lightweight demo set (zero-hardcoded dynamic scaling) | |
| echo "1. Slicing local trajectories down to data/trajectories_demo.pt..." | |
| echo "==========================================================" | |
| python3 -c ' | |
| import torch, os | |
| data = torch.load("data/trajectories.pt", map_location="cpu", weights_only=False) | |
| count = len(data) | |
| # Try full dataset first | |
| torch.save(data[:count], "data/trajectories_demo.pt") | |
| size_mb = os.path.getsize("data/trajectories_demo.pt") / (1024*1024) | |
| if size_mb >= 9.5: | |
| # Calculate average size per trajectory and estimate safe capacity | |
| avg_size = size_mb / count | |
| count = int(9.0 / avg_size) # Aim for ~9.0 MB to be safe | |
| # Verify and make minor adjustments if needed | |
| while count > 0: | |
| demo_data = data[:count] | |
| torch.save(demo_data, "data/trajectories_demo.pt") | |
| size_mb = os.path.getsize("data/trajectories_demo.pt") / (1024*1024) | |
| if size_mb < 9.5: | |
| break | |
| count -= 1 | |
| print(f"Successfully packaged {count}/{len(data)} trajectories (Size: {size_mb:.2f} MB). Safely under 10MB limit.") | |
| ' | |
| echo "Done." | |
| echo "" | |
| echo "==========================================================" | |
| # 2. Stage model weights, SAE checkpoints, and configuration files | |
| echo "2. Staging deployment files in Git..." | |
| echo "==========================================================" | |
| git add data/trajectories_demo.pt models/mini_dt.pt artifacts/saes/ .gitignore Dockerfile docker-compose.yml Makefile scripts/deploy.sh src/dashboard/app.py .github/workflows/hf_sync.yml README.md .gitattributes | |
| echo "Staged." | |
| echo "" | |
| echo "==========================================================" | |
| # 3. Commit changes locally | |
| echo "3. Committing staged changes..." | |
| echo "==========================================================" | |
| git commit -m "feat: redeploy fresh model weights and demo trajectories" || echo "No new changes to commit." | |
| echo "" | |
| echo "==========================================================" | |
| # 4. Push to GitHub (to trigger auto-sync to Hugging Face Space) | |
| echo "4. Pushing to GitHub (origin main)..." | |
| echo "==========================================================" | |
| git push origin main | |
| echo "" | |
| echo "Deployment successful! Check your Hugging Face Space or GitHub repository actions for the build status." | |