Rex-Thinker-Demo / prepare_hf_deployment.py
Mountchicken's picture
Upload 53 files
e0483c8 verified
#!/usr/bin/env python3
"""
Script to prepare files for Hugging Face Spaces deployment
"""
import os
import shutil
from pathlib import Path
def prepare_deployment():
"""Prepare files for HF Spaces deployment"""
print("Preparing files for Hugging Face Spaces deployment...")
# Create deployment directory
deploy_dir = Path("hf_deployment")
deploy_dir.mkdir(exist_ok=True)
# Copy main files
files_to_copy = [
("requirements_hf.txt", "requirements.txt"),
("packages.txt", "packages.txt"),
("pre_build.py", "pre_build.py"),
("README_HF.md", "README.md"),
]
for src, dst in files_to_copy:
if os.path.exists(src):
shutil.copy2(src, deploy_dir / dst)
print(f"Copied {src} -> {dst}")
else:
print(f"Warning: {src} not found")
# Copy demo directory
if os.path.exists("demo"):
shutil.copytree("demo", deploy_dir / "demo", dirs_exist_ok=True)
print("Copied demo/ directory")
# Copy tools directory
if os.path.exists("tools"):
shutil.copytree("tools", deploy_dir / "tools", dirs_exist_ok=True)
print("Copied tools/ directory")
# Copy other important files if they exist
optional_files = ["setup.py", "LICENSE"]
for file in optional_files:
if os.path.exists(file):
shutil.copy2(file, deploy_dir / file)
print(f"Copied {file}")
print(f"\nDeployment files prepared in '{deploy_dir}' directory")
print("\nNext steps:")
print("1. Create a new Hugging Face Space")
print("2. Upload all files from the 'hf_deployment' directory")
print("3. Select appropriate hardware (A10G or higher recommended)")
print("4. Wait for the space to build and deploy")
return deploy_dir
if __name__ == "__main__":
prepare_deployment()