#!/usr/bin/env python3 """ Script para inicializar los datasets de Hugging Face con datos vacíos. Ejecutar SOLO UNA VEZ para crear los datasets iniciales. """ import os from datasets import Dataset from huggingface_hub import HfApi from dotenv import load_dotenv load_dotenv() # Configuración HF_TOKEN = os.getenv("HF_TOKEN") USERNAME = "Edoruin" # Tu usuario de Hugging Face # Datasets a crear DATASETS = { "users": { "name": f"{USERNAME}/makerpage-users", "data_key": "users", "initial_data": [] }, "classrooms": { "name": f"{USERNAME}/makerpage-classrooms", "data_key": "classrooms", "initial_data": [] }, "loans": { "name": f"{USERNAME}/makerpage-loans", "data_key": "loans", "initial_data": [] }, "faces": { "name": f"{USERNAME}/makerpage-faces", "data_key": "faces", "initial_data": [] } } def create_dataset(dataset_name, data_key, initial_data): """Crea un dataset vacío en Hugging Face Hub.""" try: # Crear dataset con estructura inicial dataset_dict = {data_key: [initial_data]} dataset = Dataset.from_dict(dataset_dict) # Subir a Hugging Face Hub dataset.push_to_hub( dataset_name, token=HF_TOKEN, private=True # Dataset privado ) print(f"✅ Dataset creado: {dataset_name}") return True except Exception as e: print(f"❌ Error creando {dataset_name}: {e}") return False def main(): if not HF_TOKEN: print("❌ ERROR: No se encontró HF_TOKEN en las variables de entorno") print(" Asegúrate de tener un archivo .env con HF_TOKEN=tu_token") return print(f"🚀 Iniciando creación de datasets para usuario: {USERNAME}\n") for key, config in DATASETS.items(): print(f"📦 Creando dataset: {config['name']}") create_dataset( config['name'], config['data_key'], config['initial_data'] ) print() print("✨ Proceso completado!") print("\n📋 Próximos pasos:") print("1. Ve a Hugging Face Spaces → Settings → Repository secrets") print("2. Verifica que estos secretos estén configurados:") print(f" - HF_TOKEN = {HF_TOKEN[:10]}...") print(f" - HF_DATASET_USERS = {DATASETS['users']['name']}") print(f" - HF_DATASET_CLASSROOMS = {DATASETS['classrooms']['name']}") print(f" - HF_DATASET_LOANS = {DATASETS['loans']['name']}") print(f" - HF_DATASET_FACES = {DATASETS['faces']['name']}") print("\n3. Reinicia tu Space (NO factory rebuild todavía)") print("4. Verifica que los logs muestren 'HF Datasets: ENABLED'") if __name__ == "__main__": main()