Spaces:
Sleeping
Sleeping
| import os | |
| import sys | |
| from huggingface_hub import HfApi, login | |
| def deploy_model(): | |
| print("="*60) | |
| print(" CAMPUS AI - HUGGING FACE DEPLOYMENT") | |
| print("="*60) | |
| # 1. Ask for credentials and repo ID | |
| hf_token = input("\nEnter your Hugging Face WRITE Token (paste and press Enter): ").strip() | |
| repo_id = input("Enter your Hugging Face Repository ID (e.g. your_username/campus-ai-poster-sdxl): ").strip() | |
| if not hf_token or not repo_id: | |
| print("\n[!] Error: Token and Repository ID are required.") | |
| sys.exit(1) | |
| try: | |
| # 2. Authenticate | |
| print("\n[+] Authenticating with Hugging Face...") | |
| login(token=hf_token) | |
| api = HfApi() | |
| # 3. Verify Phase 3 Model exists | |
| model_dir = "models/sdxl/checkpoints/campus_ai_poster_sdxl_phase3" | |
| model_file = os.path.join(model_dir, "campus_ai_poster_sdxl_phase3.safetensors") | |
| if not os.path.exists(model_file): | |
| print(f"\n[!] Error: Phase 3 model not found at {model_file}!") | |
| print("Make sure Phase 3 training has finished successfully.") | |
| sys.exit(1) | |
| print("\n[+] Creating/Verifying repository...") | |
| api.create_repo(repo_id=repo_id, exist_ok=True, private=False) | |
| # 4. Upload the model | |
| print(f"\n[+] Uploading Phase 3 Model to {repo_id}...") | |
| api.upload_file( | |
| path_or_fileobj=model_file, | |
| path_in_repo="campus_ai_poster_sdxl_phase3.safetensors", | |
| repo_id=repo_id, | |
| repo_type="model", | |
| commit_message="Upload final Campus AI Phase 3 LoRA weights" | |
| ) | |
| print("\n" + "="*60) | |
| print(f" ✅ DEPLOYMENT SUCCESSFUL!") | |
| print(f" Model is now live at: https://huggingface.co/{repo_id}") | |
| print("="*60) | |
| print("You can now connect this model directly to your Hugging Face space.") | |
| except Exception as e: | |
| print(f"\n[!] Deployment Failed: {str(e)}") | |
| if __name__ == "__main__": | |
| deploy_model() | |