AIdeaText commited on
Commit
4adc748
verified
1 Parent(s): 82bf6fc

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +105 -104
app.py CHANGED
@@ -1,105 +1,106 @@
1
- import gradio as gr
2
- import os
3
- import logging
4
-
5
- from modules.auth.auth import (
6
- # Autenticaci贸n
7
- authenticate_user,
8
- authenticate_student,
9
- authenticate_admin,
10
- # Manejo de contrase帽as
11
- hash_password,
12
- verify_password,
13
- # Manejo de usuarios
14
- register_student,
15
- update_student_info,
16
- delete_student,
17
- # Interfaz de Gradio
18
- create_auth_interface,
19
- create_user_page
20
- )
21
-
22
- from modules.database.database_init import initialize_database_connections
23
- import spaces
24
- import torch
25
-
26
- zero = torch.Tensor([0]).cuda()
27
- print(zero.device) # <-- 'cpu' 馃
28
-
29
- @spaces.GPU
30
- def greet(n):
31
- print(zero.device) # <-- 'cuda:0' 馃
32
- return f"Hello {zero + n} Tensor"
33
-
34
- # Configuraci贸n b谩sica
35
- logging.basicConfig(level=logging.INFO)
36
- logger = logging.getLogger(__name__)
37
-
38
- # Verificar variables de entorno
39
- COSMOS_ENDPOINT = os.getenv("COSMOS_ENDPOINT")
40
- COSMOS_KEY = os.getenv("COSMOS_KEY")
41
- if not COSMOS_ENDPOINT or not COSMOS_KEY:
42
- raise ValueError("Faltan variables de entorno: COSMOS_ENDPOINT y COSMOS_KEY.")
43
-
44
- # Inicializar la conexi贸n a la base de datos
45
- if not initialize_database_connections():
46
- raise ValueError("No se pudo inicializar la conexi贸n a la base de datos.")
47
-
48
- # Crear la interfaz de login
49
- # app = create_auth_interface()
50
-
51
- # Crear la interfaz de usuario y login
52
- def main_interface():
53
- """
54
- Crea la interfaz principal con redirecci贸n al login o user page.
55
- """
56
- with gr.Blocks() as app_interface:
57
- # Contenedores para manejo de redirecci贸n
58
- login_container = gr.Group(visible=True)
59
- user_container = gr.Group(visible=False)
60
-
61
- # Crear login_page y user_page
62
- login_page = create_auth_interface()
63
- user_page = create_user_page()
64
-
65
- # Manejo de login exitoso
66
- def handle_login_redirect(username=None, role=None):
67
- """
68
- Redirige entre la p谩gina de login y la p谩gina de usuario.
69
- Args:
70
- username (str): Nombre de usuario.
71
- role (str): Rol del usuario.
72
- Returns:
73
- dict: Actualizaci贸n de visibilidad de los contenedores.
74
- """
75
- if username and role:
76
- return {
77
- login_container: gr.update(visible=False),
78
- user_container: gr.update(visible=True)
79
- }
80
- return {
81
- login_container: gr.update(visible=True),
82
- user_container: gr.update(visible=False)
83
- }
84
-
85
- # Contenedor de Login
86
- with login_container:
87
- login_page.render() # Renderiza la p谩gina de login
88
-
89
- # Contenedor de Usuario
90
- with user_container:
91
- user_page.render() # Renderiza la p谩gina de usuario
92
-
93
- # Conectar el manejo del login al evento `load`
94
- login_page.load(
95
- fn=handle_login_redirect,
96
- inputs=[],
97
- outputs=[login_container, user_container]
98
- )
99
-
100
- return app_interface
101
-
102
- # Lanzar la aplicaci贸n
103
- if __name__ == "__main__":
104
- app = main_interface()
 
105
  app.launch(server_name="0.0.0.0", server_port=7860, auth=None)
 
1
+ /app.py
2
+ import gradio as gr
3
+ import os
4
+ import logging
5
+
6
+ from modules.auth.auth import (
7
+ # Autenticaci贸n
8
+ authenticate_user,
9
+ authenticate_student,
10
+ authenticate_admin,
11
+ # Manejo de contrase帽as
12
+ hash_password,
13
+ verify_password,
14
+ # Manejo de usuarios
15
+ register_student,
16
+ update_student_info,
17
+ delete_student,
18
+ # Interfaz de Gradio
19
+ create_auth_interface,
20
+ create_user_page
21
+ )
22
+
23
+ from modules.database.database_init import initialize_database_connections
24
+ import spaces
25
+ import torch
26
+
27
+ zero = torch.Tensor([0]).cuda()
28
+ print(zero.device) # <-- 'cpu' 馃
29
+
30
+ @spaces.GPU
31
+ def greet(n):
32
+ print(zero.device) # <-- 'cuda:0' 馃
33
+ return f"Hello {zero + n} Tensor"
34
+
35
+ # Configuraci贸n b谩sica
36
+ logging.basicConfig(level=logging.INFO)
37
+ logger = logging.getLogger(__name__)
38
+
39
+ # Verificar variables de entorno
40
+ COSMOS_ENDPOINT = os.getenv("COSMOS_ENDPOINT")
41
+ COSMOS_KEY = os.getenv("COSMOS_KEY")
42
+ if not COSMOS_ENDPOINT or not COSMOS_KEY:
43
+ raise ValueError("Faltan variables de entorno: COSMOS_ENDPOINT y COSMOS_KEY.")
44
+
45
+ # Inicializar la conexi贸n a la base de datos
46
+ if not initialize_database_connections():
47
+ raise ValueError("No se pudo inicializar la conexi贸n a la base de datos.")
48
+
49
+ # Crear la interfaz de login
50
+ # app = create_auth_interface()
51
+
52
+ # Crear la interfaz de usuario y login
53
+ def main_interface():
54
+ """
55
+ Crea la interfaz principal con redirecci贸n al login o user page.
56
+ """
57
+ with gr.Blocks() as app_interface:
58
+ # Contenedores para manejo de redirecci贸n
59
+ login_container = gr.Group(visible=True)
60
+ user_container = gr.Group(visible=False)
61
+
62
+ # Crear login_page y user_page
63
+ login_page = create_auth_interface()
64
+ user_page = create_user_page()
65
+
66
+ # Manejo de login exitoso
67
+ def handle_login_redirect(username=None, role=None):
68
+ """
69
+ Redirige entre la p谩gina de login y la p谩gina de usuario.
70
+ Args:
71
+ username (str): Nombre de usuario.
72
+ role (str): Rol del usuario.
73
+ Returns:
74
+ dict: Actualizaci贸n de visibilidad de los contenedores.
75
+ """
76
+ if username and role:
77
+ return {
78
+ login_container: gr.update(visible=False),
79
+ user_container: gr.update(visible=True)
80
+ }
81
+ return {
82
+ login_container: gr.update(visible=True),
83
+ user_container: gr.update(visible=False)
84
+ }
85
+
86
+ # Contenedor de Login
87
+ with login_container:
88
+ login_page.render() # Renderiza la p谩gina de login
89
+
90
+ # Contenedor de Usuario
91
+ with user_container:
92
+ user_page.render() # Renderiza la p谩gina de usuario
93
+
94
+ # Conectar el manejo del login al evento `load`
95
+ login_page.load(
96
+ fn=handle_login_redirect,
97
+ inputs=[],
98
+ outputs=[login_container, user_container]
99
+ )
100
+
101
+ return app_interface
102
+
103
+ # Lanzar la aplicaci贸n
104
+ if __name__ == "__main__":
105
+ app = main_interface()
106
  app.launch(server_name="0.0.0.0", server_port=7860, auth=None)