import os import gradio as gr from huggingface_hub import hf_hub_download import shutil import sys import importlib.util # ========================================== # APP LAUNCHER - UGC AUTO GENERATOR V2 # ========================================== print(">>> [INIT] Memulai Aplikasi UGC Auto Generator V2...") try: # Ambil token dari environment secret token_gudang = os.environ.get("KUNCI_GUDANG") if not token_gudang: raise ValueError("Secret 'KUNCI_GUDANG' belum diset di Settings Space!") # KONFIGURASI REPO MY_REPO_ID = "malikrf22/abcx" CORE_FILENAME = "ugc_auto.py" USERS_FILENAME = "datalogin.json" # ========== DOWNLOAD CORE SYSTEM ========== print(f">>> [DOWNLOAD] Mengunduh core system dari {MY_REPO_ID}...") path_core = hf_hub_download( repo_id=MY_REPO_ID, filename=CORE_FILENAME, repo_type="dataset", token=token_gudang, force_download=True ) # ========== IMPORT CORE MODULE ========== destination = "ugc_secret.py" shutil.copy(path_core, destination) spec = importlib.util.spec_from_file_location("ugc_secret", destination) module = importlib.util.module_from_spec(spec) sys.modules["ugc_secret"] = module spec.loader.exec_module(module) # ========== CREATE APP DENGAN CONFIG ========== demo_app = module.create_app( repo_id=MY_REPO_ID, users_filename=USERS_FILENAME, token=token_gudang ) print(">>> [SUCCESS] Aplikasi siap dijalankan!") except Exception as e: import traceback error_detail = traceback.format_exc() print(f">>> [ERROR] {str(e)}") print(error_detail) with gr.Blocks() as demo_app: gr.Markdown(f"# ⛔ System Error\n\n```\n{str(e)}\n```") gr.Markdown(f"### Detail:\n```\n{error_detail}\n```") if __name__ == "__main__": demo_app.queue(max_size=500, default_concurrency_limit=100).launch()