cursor_slides_internvl2 / upload_internvl2_to_hf.py
mknolan's picture
Upload InternVL2 implementation
e59dc66 verified
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Script to upload the InternVL2 files to Hugging Face Spaces
"""
import os
import sys
import getpass
from huggingface_hub import HfApi, create_repo, upload_folder
# Default repository name
DEFAULT_REPO = "mknolan/cursor_slides_internvl2"
def main():
"""Main function to upload files to Hugging Face Spaces"""
# Get Hugging Face token with WRITE access
token = getpass.getpass("Enter your Hugging Face token (with WRITE access): ")
# Get repository name
repo_name = input("Enter repository name (default: {}): ".format(DEFAULT_REPO)) or DEFAULT_REPO
print("Uploading to Space: {}".format(repo_name))
# Initialize Hugging Face API
api = HfApi(token=token)
try:
# Try to get the repository, create if it doesn't exist
try:
repo = api.repo_info(repo_id=repo_name, repo_type="space")
print("Repo {} ready".format(repo_name))
except Exception:
print("Creating new Space: {}".format(repo_name))
create_repo(
repo_id=repo_name,
token=token,
repo_type="space",
space_sdk="gradio",
private=False
)
# Upload the entire folder at once using upload_folder
print("Uploading files to Hugging Face Space...")
upload_folder(
folder_path=".", # Current directory
repo_id=repo_name,
repo_type="space",
ignore_patterns=[
".git*",
"*__pycache__*",
"*.pyc",
".DS_Store",
"*.ipynb_checkpoints*",
"venv",
".env"
],
commit_message="Upload InternVL2 implementation",
token=token
)
print("Upload completed!")
print("Check your Space at: https://huggingface.co/spaces/{}".format(repo_name))
except Exception as e:
print("Error: {}".format(e))
return 1
return 0
if __name__ == "__main__":
sys.exit(main())