Kj97jdk commited on
Commit
f808443
·
verified ·
1 Parent(s): e523887

Delete apps_demo.py

Browse files
Files changed (1) hide show
  1. apps_demo.py +0 -212
apps_demo.py DELETED
@@ -1,212 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
- """Apps Demo.ipynb
3
-
4
- Automatically generated by Colab.
5
-
6
- Original file is located at
7
- https://colab.research.google.com/drive/1cNgL1-QuBX_LR-XGoioKhFaqMM6zF7rL
8
-
9
- # **1. Mejor hueco en tu horario para hacer ejercicio**
10
- Según estudios, los mejores momentos suelen ser temprano en la mañana (entre 5 y 9 a.m.) o tarde en la tarde (entre 4 y 7 p.m.), dependiendo de los objetivos personales.
11
- """
12
-
13
- !pip install gradio
14
- !pip install transformers
15
- !pip install torch
16
-
17
- import gradio as gr
18
- from datetime import datetime, timedelta
19
- import re
20
-
21
- def calcular_duracion(hora_inicio, hora_fin):
22
- """Calcula la duración en minutos entre dos horas."""
23
- inicio = datetime.strptime(hora_inicio, "%H:%M")
24
- fin = datetime.strptime(hora_fin, "%H:%M")
25
- duracion = int((fin - inicio).total_seconds() / 60)
26
- return duracion
27
-
28
- def encontrar_mejor_hueco(horario, suenno):
29
- """Encuentra el hueco más largo en el día sin traslaparse con los horarios dados."""
30
-
31
- # Validación del formato de los horarios ingresados
32
- for bloque in horario.split(';'):
33
- if not re.match(r'^\s*(\d{2}:\d{2})-(\d{2}:\d{2})\s*$', bloque.strip()):
34
- return "Formato de horario inválido. Ejemplo: 09:00-10:00; 12:00-14:00"
35
- if not re.match(r'^\s*(\d{2}:\d{2})-(\d{2}:\d{2})\s*$', suenno.strip()):
36
- return "Formato de horario de sueño inválido. Ejemplo: 22:00-06:00"
37
-
38
- # Añadir los horarios ocupados y de sueño al bloque de tiempo
39
- bloques_tiempo = []
40
- for bloque in (horario + ";" + suenno).split(';'):
41
- hora_inicio, hora_fin = bloque.split('-')
42
- bloques_tiempo.append((hora_inicio.strip(), hora_fin.strip()))
43
-
44
- # Ordenar y añadir los extremos del día para facilitar el cálculo de huecos
45
- bloques_tiempo.sort()
46
- bloques_tiempo.insert(0, ("00:00", bloques_tiempo[0][0])) # Desde medianoche hasta el primer bloque
47
- bloques_tiempo.append((bloques_tiempo[-1][1], "23:59")) # Desde el último bloque hasta el final del día
48
-
49
- # Encontrar el hueco más largo sin superposición
50
- max_duracion = 0
51
- mejor_hueco = None
52
- for i in range(len(bloques_tiempo) - 1):
53
- inicio = bloques_tiempo[i][1]
54
- fin = bloques_tiempo[i + 1][0]
55
- duracion = calcular_duracion(inicio, fin)
56
- if duracion > max_duracion:
57
- max_duracion = duracion
58
- mejor_hueco = f"{inicio}-{fin}"
59
-
60
- # Evaluar si el mejor hueco se encuentra en los horarios recomendados científicamente
61
- recomendacion = "No se encontró un hueco en tu horario para hacer ejercicio que coincida con los horarios recomendados según la ciencia."
62
- hora_inicio_ejercicio = datetime.strptime("05:00", "%H:%M")
63
- hora_fin_ejercicio = datetime.strptime("09:00", "%H:%M")
64
- hora_inicio_tarde = datetime.strptime("16:00", "%H:%M")
65
- hora_fin_tarde = datetime.strptime("19:00", "%H:%M")
66
-
67
- # Convertir el mejor hueco en datetime para comparación
68
- if mejor_hueco:
69
- inicio_hueco, fin_hueco = mejor_hueco.split('-')
70
- inicio_hueco = datetime.strptime(inicio_hueco, "%H:%M")
71
- fin_hueco = datetime.strptime(fin_hueco, "%H:%M")
72
-
73
- if (hora_inicio_ejercicio <= inicio_hueco <= hora_fin_ejercicio) or (hora_inicio_tarde <= inicio_hueco <= hora_fin_tarde):
74
- recomendacion = f"El mejor momento para hacer ejercicio según la ciencia es dentro de tu mejor hueco: {mejor_hueco}. Recuerda escoger cuánto tiempo quieres ejercitar según tus necesidades y objetivos"
75
- else:
76
- recomendacion += f" Sin embargo, podrías ejercitar en el espacio {mejor_hueco}."
77
-
78
- return f"El mejor hueco es de {max_duracion} minutos: {mejor_hueco}. {recomendacion}"
79
-
80
- # Crear la interfaz de Gradio
81
- demo = gr.Interface(
82
- fn=encontrar_mejor_hueco,
83
- inputs=[gr.Textbox(label="Horarios no disponibles (ej. 09:00-10:00; 12:00-14:00; incluyendo transporte, trabajo, etc.)"),
84
- gr.Textbox(label="Horario de sueño (ej. 22:00-06:00)")],
85
- outputs=gr.Textbox(label="Resultado"),
86
- title="Encuentra tu mejor hueco para hacer ejercicio",
87
- description="Ingresa tus horarios no disponibles, como los de sueño, transporte y trabajo, en formato 'HH:MM-HH:MM; HH:MM-HH:MM'. Las horas deben estar entre 00:00 y 23:59."
88
- )
89
-
90
- demo.launch()
91
-
92
- !pip install gradio
93
- !pip install transformers
94
- !pip install torch
95
-
96
- import gradio as gr
97
- from datetime import datetime, timedelta
98
- import re
99
-
100
- def calcular_duracion(hora_inicio, hora_fin):
101
- """Calcula la duración en minutos entre dos horas."""
102
- inicio = datetime.strptime(hora_inicio, "%H:%M")
103
- fin = datetime.strptime(hora_fin, "%H:%M")
104
- duracion = int((fin - inicio).total_seconds() / 60)
105
- return duracion
106
-
107
- def encontrar_mejor_hueco(horario, suenno):
108
- """Encuentra el hueco más largo en el día sin traslaparse con los horarios dados."""
109
-
110
- # Validación del formato de los horarios ingresados
111
- for bloque in horario.split(';'):
112
- if not re.match(r'^\s*(\d{2}:\d{2})-(\d{2}:\d{2})\s*$', bloque.strip()):
113
- return "Formato de horario inválido. Ejemplo: 09:00-10:00; 12:00-14:00"
114
- if not re.match(r'^\s*(\d{2}:\d{2})-(\d{2}:\d{2})\s*$', suenno.strip()):
115
- return "Formato de horario de sueño inválido. Ejemplo: 22:00-06:00"
116
-
117
- # Añadir los horarios ocupados y de sueño al bloque de tiempo
118
- bloques_tiempo = []
119
- for bloque in (horario + ";" + suenno).split(';'):
120
- hora_inicio, hora_fin = bloque.split('-')
121
- bloques_tiempo.append((hora_inicio.strip(), hora_fin.strip()))
122
-
123
- # Ordenar y añadir los extremos del día para facilitar el cálculo de huecos
124
- bloques_tiempo.sort()
125
- bloques_tiempo.insert(0, ("00:00", bloques_tiempo[0][0])) # Desde medianoche hasta el primer bloque
126
- bloques_tiempo.append((bloques_tiempo[-1][1], "23:59")) # Desde el último bloque hasta el final del día
127
-
128
- # Encontrar el hueco más largo sin superposición
129
- max_duracion = 0
130
- mejor_hueco = None
131
- for i in range(len(bloques_tiempo) - 1):
132
- inicio = bloques_tiempo[i][1]
133
- fin = bloques_tiempo[i + 1][0]
134
- duracion = calcular_duracion(inicio, fin)
135
- if duracion > max_duracion:
136
- max_duracion = duracion
137
- mejor_hueco = f"{inicio}-{fin}"
138
-
139
- # Evaluar si el mejor hueco se encuentra en los horarios recomendados científicamente
140
- recomendacion = "No se encontró un hueco para hacer ejercicio en los horarios recomendados según la ciencia."
141
- hora_inicio_ejercicio = datetime.strptime("05:00", "%H:%M")
142
- hora_fin_ejercicio = datetime.strptime("09:00", "%H:%M")
143
- hora_inicio_tarde = datetime.strptime("16:00", "%H:%M")
144
- hora_fin_tarde = datetime.strptime("19:00", "%H:%M")
145
-
146
- # Convertir el mejor hueco en datetime para comparación
147
- if mejor_hueco:
148
- inicio_hueco, fin_hueco = mejor_hueco.split('-')
149
- inicio_hueco = datetime.strptime(inicio_hueco, "%H:%M")
150
- fin_hueco = datetime.strptime(fin_hueco, "%H:%M")
151
-
152
- if (hora_inicio_ejercicio <= inicio_hueco <= hora_fin_ejercicio) or (hora_inicio_tarde <= inicio_hueco <= hora_fin_tarde):
153
- recomendacion = f"El mejor momento para hacer ejercicio según la ciencia es dentro de tu mejor hueco: {mejor_hueco}."
154
- else:
155
- recomendacion += f" Sin embargo, podrías ejercitar en el espacio {mejor_hueco}."
156
-
157
- # Incluir redireccionamiento a ChatGPT
158
- link_chatgpt = "https://chat.openai.com/?utm_source=gradio"
159
- consulta_chatgpt = f"\n\nPara saber cuánto tiempo deberías ejercitar en este hueco según tus objetivos, consulta en ChatGPT: {link_chatgpt}"
160
-
161
- return f"El mejor hueco es de {max_duracion} minutos: {mejor_hueco}. {recomendacion}{consulta_chatgpt}"
162
-
163
- # Crear la interfaz de Gradio
164
- demo = gr.Interface(
165
- fn=encontrar_mejor_hueco,
166
- inputs=[gr.Textbox(label="Horarios no disponibles (ej. 09:00-10:00; 12:00-14:00; incluyendo transporte, trabajo, etc.)"),
167
- gr.Textbox(label="Horario de sueño (ej. 22:00-06:00)")],
168
- outputs=gr.Textbox(label="Resultado"),
169
- title="Encuentra tu mejor hueco para hacer ejercicio",
170
- description="Ingresa tus horarios no disponibles, como los de sueño, transporte y trabajo, en formato 'HH:MM-HH:MM; HH:MM-HH:MM'. Las horas deben estar entre 00:00 y 23:59."
171
- )
172
-
173
- demo.launch()
174
-
175
- """# **2. Ayuda Bogotá: ¿debo llevar sombrilla?**
176
- El clima de Bogotá es impredecible. ¿Debería llevar sombrilla?
177
- """
178
-
179
- !pip install gradio
180
- !pip install transformers
181
- !pip install torch
182
-
183
- import gradio as gr
184
- import random
185
-
186
- # Función que determina si necesitas llevar sombrilla
187
- def necesitas_sombrilla(clima):
188
- if clima == "lluvioso":
189
- return "Sí, necesitas llevar sombrilla."
190
- elif clima == "nublado":
191
- return "Podría llover, es mejor que lleves sombrilla."
192
- else:
193
- return "No, no necesitas llevar sombrilla."
194
-
195
- # Interfaz de la aplicación
196
- with gr.Blocks() as demo:
197
- gr.Markdown("# ¿Necesitas llevar sombrilla?")
198
-
199
- with gr.Row():
200
- with gr.Column():
201
- clima_input = gr.Radio(["soleado", "nublado", "lluvioso"], label="¿Cómo está el clima?")
202
- submit_btn = gr.Button("Comprobar")
203
- with gr.Column():
204
- sombrilla_output = gr.Textbox(label="Resultado")
205
-
206
- submit_btn.click(
207
- fn=necesitas_sombrilla,
208
- inputs=clima_input,
209
- outputs=sombrilla_output
210
- )
211
-
212
- demo.launch()