Spaces:
Sleeping
Sleeping
| #!/usr/bin/env python3 | |
| """Upload backend to HuggingFace Spaces with SSL bypass for TP network.""" | |
| import ssl | |
| import sys | |
| from pathlib import Path | |
| # Must patch BEFORE importing huggingface_hub | |
| ssl._create_default_https_context = ssl._create_unverified_context | |
| import httpx | |
| _orig_client = httpx.Client.__init__ | |
| def _patch_client(self, *args, **kwargs): | |
| kwargs.setdefault("verify", False) | |
| _orig_client(self, *args, **kwargs) | |
| httpx.Client.__init__ = _patch_client | |
| _orig_async = httpx.AsyncClient.__init__ | |
| def _patch_async(self, *args, **kwargs): | |
| kwargs.setdefault("verify", False) | |
| _orig_async(self, *args, **kwargs) | |
| httpx.AsyncClient.__init__ = _patch_async | |
| from huggingface_hub import HfApi, login # noqa: E402 | |
| token = input("Paste your HuggingFace WRITE token: ").strip() | |
| repo_id = input("Enter your Space repo ID (e.g. bencmbit98/rag-sg-disability): ").strip() | |
| login(token=token, add_to_git_credential=False) | |
| print("Logged in.") | |
| api = HfApi() | |
| backend_dir = Path(__file__).parent.parent | |
| print(f"Uploading {backend_dir} to {repo_id} ...") | |
| api.upload_folder( | |
| folder_path=str(backend_dir), | |
| repo_id=repo_id, | |
| repo_type="space", | |
| ignore_patterns=[ | |
| ".venv/**", | |
| "**/__pycache__/**", | |
| "**/*.pyc", | |
| ".env", | |
| "data/raw/enabling_transport/**", | |
| "data/raw/enabling_care/**", | |
| "data/raw/enabling_employment/**", | |
| "data/chroma_db/**", | |
| "*.log", | |
| ], | |
| ) | |
| print("Upload complete! HuggingFace will now build your Docker image.") | |
| print(f"Monitor build progress at: https://huggingface.co/spaces/{repo_id}") | |