C2MV commited on
Commit
6613451
verified
1 Parent(s): 29fefec

Upload app.py

Browse files
Files changed (1) hide show
  1. app.py +53 -14
app.py CHANGED
@@ -1,31 +1,70 @@
1
- # app.py
2
  import sys
3
  from pathlib import Path
4
  import os
 
 
5
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6
  CURRENT_DIR = Path(__file__).parent
7
  if str(CURRENT_DIR) not in sys.path:
8
  sys.path.insert(0, str(CURRENT_DIR))
9
 
10
  try:
11
- # No necesitamos decorators ni interface para esta prueba simple
12
- from UI import create_interface # Importa la UI.py simplificada
 
13
  except ImportError as e:
14
  print(f"Error cr铆tico de importaci贸n en app.py: {e}.")
15
  sys.exit(1)
16
 
17
- # No se necesita la l贸gica del decorador dummy para esta prueba
18
- print("INFO (app.py - Prueba Simplificada): Saltando chequeo de decorador GPU.")
 
 
 
 
 
19
 
20
  def main():
21
- print("INFO (app.py - Prueba Simplificada): Creando la interfaz Gradio simplificada...")
22
-
23
- # La UI simplificada define su propia funci贸n de callback simple (simple_greet)
24
- # por lo que no necesitamos pasar process_and_plot aqu铆.
25
- # create_interface ya conecta su propio bot贸n a su propia funci贸n.
26
- demo_instance = create_interface(process_function_for_button=None) # Pasamos None o una dummy
27
 
28
- print("INFO (app.py - Prueba Simplificada): Lanzando la interfaz Gradio localmente...")
29
  try:
30
  demo_instance.launch(debug=True)
31
  except ValueError as ve:
@@ -34,10 +73,10 @@ def main():
34
  demo_instance.launch(share=True, debug=True)
35
  else:
36
  print(f"Error inesperado de ValueError durante launch(): {ve}")
37
- raise ve # Relanzar para ver el error completo
38
  except Exception as e_launch:
39
  print(f"Error inesperado durante demo.launch(): {e_launch}")
40
- raise e_launch # Relanzar
41
 
42
  if __name__ == "__main__":
43
  main()
 
1
+ # app.py (con verificaci贸n despu茅s de forzar)
2
  import sys
3
  from pathlib import Path
4
  import os
5
+ import subprocess
6
+ import pkg_resources # Para verificar la versi贸n instalada
7
 
8
+ # --- CR脥TICO: L脥NEA PARA FORZAR LA VERSI脫N DE GRADIO Y GRADIO-CLIENT CORRECTA ---
9
+ print("INFO (app.py): Intentando forzar la instalaci贸n de Gradio 4.29.0 y gradio-client 0.16.1...")
10
+ GRADIO_TARGET_VERSION = "4.29.0"
11
+ GRADIO_CLIENT_TARGET_VERSION = "0.16.1"
12
+ try:
13
+ subprocess.check_call([sys.executable, "-m", "pip", "uninstall", "-y", "gradio", "gradio-client"], stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
14
+ print(f"INFO (app.py): Intentando instalar gradio=={GRADIO_TARGET_VERSION} y gradio-client=={GRADIO_CLIENT_TARGET_VERSION}...")
15
+ subprocess.check_call([sys.executable, "-m", "pip", "install", f"gradio=={GRADIO_TARGET_VERSION}", f"gradio-client=={GRADIO_CLIENT_TARGET_VERSION}"])
16
+
17
+ # Verificar la versi贸n instalada
18
+ installed_gradio_version = pkg_resources.get_distribution("gradio").version
19
+ installed_client_version = pkg_resources.get_distribution("gradio_client").version
20
+
21
+ print(f"INFO (app.py): Versi贸n de Gradio instalada: {installed_gradio_version}")
22
+ print(f"INFO (app.py): Versi贸n de Gradio-Client instalada: {installed_client_version}")
23
+
24
+ if installed_gradio_version != GRADIO_TARGET_VERSION or installed_client_version != GRADIO_CLIENT_TARGET_VERSION:
25
+ print(f"ERROR (app.py): No se pudo forzar la versi贸n correcta de Gradio/Gradio-Client.")
26
+ print(f"Se esperaba Gradio {GRADIO_TARGET_VERSION}, se obtuvo {installed_gradio_version}")
27
+ print(f"Se esperaba Gradio-Client {GRADIO_CLIENT_TARGET_VERSION}, se obtuvo {installed_client_version}")
28
+ # sys.exit(1) # Salir si la versi贸n no es la correcta, opcional
29
+ else:
30
+ print(f"INFO (app.py): Gradio {GRADIO_TARGET_VERSION} y Gradio-Client {GRADIO_CLIENT_TARGET_VERSION} instalados y verificados correctamente.")
31
+
32
+ except subprocess.CalledProcessError as e:
33
+ print(f"ERROR (app.py): Fallo al forzar la instalaci贸n de Gradio: {e}")
34
+ sys.exit(1)
35
+ except pkg_resources.DistributionNotFound:
36
+ print("ERROR (app.py): Gradio o Gradio-Client no se encontr贸 despu茅s del intento de instalaci贸n.")
37
+ sys.exit(1)
38
+ # --- FIN DE L脥NEA CR脥TICA ---
39
+
40
+ # ... (resto de tu app.py, importando UI, interface, etc.) ...
41
+ # Aseg煤rate de que estas importaciones ocurran DESPU脡S del bloque de instalaci贸n.
42
  CURRENT_DIR = Path(__file__).parent
43
  if str(CURRENT_DIR) not in sys.path:
44
  sys.path.insert(0, str(CURRENT_DIR))
45
 
46
  try:
47
+ import decorators
48
+ from UI import create_interface # Usa la UI simplificada para esta prueba
49
+ import interface as app_interface_module
50
  except ImportError as e:
51
  print(f"Error cr铆tico de importaci贸n en app.py: {e}.")
52
  sys.exit(1)
53
 
54
+ # Comentar la l贸gica del decorador dummy por ahora, ya que no es el error principal
55
+ # if decorators.was_real_spaces_gpu_imported():
56
+ # print("INFO (app.py): El decorador GPU de 'spaces' parece estar disponible.")
57
+ # @decorators.gpu_decorator(duration=1)
58
+ # def _app_py_dummy_gpu_function_for_gradio_startup(): pass
59
+ # else:
60
+ # print("INFO (app.py): El decorador GPU real de 'spaces' no fue importado.")
61
 
62
  def main():
63
+ print("INFO (app.py): Creando la interfaz Gradio simplificada...")
64
+ # Usa la UI simplificada
65
+ demo_instance = create_interface(process_function_for_button=None)
 
 
 
66
 
67
+ print("INFO (app.py): Lanzando la interfaz Gradio localmente...")
68
  try:
69
  demo_instance.launch(debug=True)
70
  except ValueError as ve:
 
73
  demo_instance.launch(share=True, debug=True)
74
  else:
75
  print(f"Error inesperado de ValueError durante launch(): {ve}")
76
+ raise ve
77
  except Exception as e_launch:
78
  print(f"Error inesperado durante demo.launch(): {e_launch}")
79
+ raise e_launch
80
 
81
  if __name__ == "__main__":
82
  main()