Spaces:
Sleeping
Sleeping
| from huggingface_hub import hf_hub_download, snapshot_download, login | |
| import pandas as pd | |
| import importlib | |
| import importlib.util | |
| import streamlit as st | |
| import sys | |
| import os | |
| from pathlib import Path | |
| from transformers import AutoModelForCausalLM, AutoTokenizer | |
| from peft import PeftModel | |
| #login(token=os.environ.get("HF_TOKEN_LLAMA")) | |
| HF_TOKEN = os.environ.get("HF_TOKEN") #get HF_TOKEN | |
| login(token=HF_TOKEN) | |
| USER_NAME = os.getenv("USER_NAME", "").strip().strip('"') | |
| PRIVATE_SPACE_NAME = os.getenv("PRIVATE_SPACE_NAME", "").strip().strip('"') | |
| #Construct the repo ID | |
| REPO_ID = f"{USER_NAME}/{PRIVATE_SPACE_NAME}" | |
| REPO_TYPE = "space" | |
| # sys.path.append(repo_dir) | |
| # Download the entire space, including the fine-tuned model folder | |
| repo_dir = snapshot_download( | |
| repo_id=REPO_ID, | |
| repo_type=REPO_TYPE, | |
| token=HF_TOKEN, | |
| cache_dir="private_space_cache", | |
| force_download=True # Forces redownload | |
| ) | |
| # Change the working directory to the downloaded snapshot directory | |
| # This step is very imporptant | |
| os.chdir(repo_dir) | |
| # # 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_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() | |