File size: 2,062 Bytes
d3d8124 e43df9f de3a711 eaf89d5 b4444af eaf89d5 de3a711 e43df9f de3a711 9ee4000 e43df9f 30dcf91 9ee4000 e43df9f de3a711 30dcf91 9ee4000 30dcf91 e43df9f 30dcf91 e43df9f 30dcf91 d3d8124 e43df9f de3a711 e43df9f 30dcf91 eaf89d5 30dcf91 9ee4000 30dcf91 eaf89d5 30dcf91 9ee4000 30dcf91 9ee4000 30dcf91 d3d8124 0a4b91b |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 |
# app.py
import sys
from pathlib import Path
import os
# --- CR脥TICO: ELIMINAR ESTA L脥NEA ---
# os.system("pip install --upgrade gradio")
# --- FIN DE CR脥TICO ---
CURRENT_DIR = Path(__file__).parent
if str(CURRENT_DIR) not in sys.path:
sys.path.insert(0, str(CURRENT_DIR))
try:
import decorators
from UI import create_interface
import interface as app_interface_module
except ImportError as e:
print(f"Error cr铆tico de importaci贸n en app.py: {e}. Aseg煤rate de que todos los archivos .py est茅n en el mismo directorio o en PYTHONPATH.")
print(f"sys.path actual: {sys.path}")
sys.exit(1)
if decorators.was_real_spaces_gpu_imported():
print("INFO (app.py): El decorador GPU de 'spaces' parece estar disponible.")
print("INFO (app.py): Se definir谩 una funci贸n dummy decorada para satisfacer el chequeo de Gradio si es necesario.")
@decorators.gpu_decorator(duration=1)
def _app_py_dummy_gpu_function_for_gradio_startup():
pass
else:
print("INFO (app.py): El decorador GPU real de 'spaces' no fue importado. No se necesita funci贸n dummy para GPU.")
def main():
print("INFO (app.py): Creando la interfaz Gradio...")
demo_instance = create_interface(process_function_for_button=app_interface_module.process_and_plot)
print("INFO (app.py): Lanzando la interfaz Gradio localmente...")
try:
demo_instance.launch(debug=True) # Habilitar debug=True para ver m谩s logs de Gradio
except ValueError as ve:
if "shareable link must be created" in str(ve).lower() or "localhost is not accessible" in str(ve).lower():
print("ADVERTENCIA (app.py): Fall贸 el lanzamiento local directo, intentando con share=True...")
demo_instance.launch(share=True, debug=True)
else:
print(f"Error inesperado de ValueError durante launch(): {ve}")
raise ve
except Exception as e_launch:
print(f"Error inesperado durante demo.launch(): {e_launch}")
raise e_launch
if __name__ == "__main__":
main() |