wintergw's picture
Update app.py
04b6aa6 verified
Raw
History Blame
1.75 kB
from huggingface_hub import hf_hub_download, snapshot_download
import pandas as pd
import importlib
import importlib.util
import streamlit as st
import sys
import os
from pathlib import Path
PRIVATE_SPACE_NAME = os.getenv("PRIVATE_SPACE_NAME")
= os.getenv("USER_NAME")
REPO_ID = USER_NAME + "/" + PRIVATE_SPACE_NAME
REPO_TYPE = "space"
# def setup_cache_directory():
# """Set up and return cache directory for private space files"""
# cache_dir = Path("private_space_cache")
# cache_dir.mkdir(exist_ok=True)
# return cache_dir
# def download_private_assets(cache_dir):
# """Download necessary files from private space"""
# try:
# snapshot_download(
# repo_id=REPO_ID,
# repo_type=REPO_TYPE,
# local_dir=cache_dir,
# )
# return True
# except Exception as e:
# print(f"Error downloading private assets: {str(e)}")
# return False
# # Setup cache directory and download assets
# cache_dir = setup_cache_directory()
# download_private_assets(cache_dir)
# Download the entire space (optional, if needed)
repo_dir = snapshot_download(
repo_id=REPO_ID,
repo_type=REPO_TYPE,
cache_dir="private_space_cache"
)
# Add repo directory to sys.path so Python can find modules inside it
sys.path.append(repo_dir)
# Download specific files (if snapshot_download wasn't used)
app_path = hf_hub_download(
repo_id=REPO_ID,
filename="app.py",
repo_type=REPO_TYPE
)
# Load and execute `app.py`
spec_app = importlib.util.spec_from_file_location("app", app_path)
app_module = importlib.util.module_from_spec(spec_app)
spec_app.loader.exec_module(app_module)
# Now you can use functions from utils_module
result = app_module.main()