JeCabrera commited on
Commit
8ac4d65
·
verified ·
1 Parent(s): 52fe894

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +38 -17
app.py CHANGED
@@ -193,29 +193,49 @@ st.markdown("<h3 style='text-align: center;'>Teje historias inolvidables en segu
193
 
194
  # Acordeón para elegir la fórmula
195
  with st.expander("Selecciona la fórmula para generar tu historia"):
196
- formula = st.radio("Selecciona la fórmula para generar tu historia:", ["P.A.S.A.", "A.D.P.", "G.H.A."])
 
 
 
 
 
 
 
 
 
197
 
198
  # Crear las columnas para el diseño (40% para la izquierda, 60% para la derecha)
199
  col1, col2 = st.columns([2, 3])
200
 
201
- # Cambiar el comportamiento del slider cuando se seleccione "G.H.A."
202
  with col1:
203
- target_audience = st.text_input("Público objetivo", placeholder="¿A quién está dirigido tu mensaje?")
204
- product = st.text_input("Producto/Servicio", placeholder="¿Qué estás ofreciendo?")
205
- action = st.text_area("Llamado a la acción", placeholder="¿Qué acción específica debe tomar tu audiencia?")
 
 
 
206
 
207
  # Personalización adicional
208
  with st.expander("Personaliza tu historia"):
209
- mood = st.selectbox("Tono de la historia:", ["Emocional", "Triste", "Feliz", "Horror", "Comedia", "Romántico"])
 
210
 
211
  # Ajustar el slider según la fórmula seleccionada
212
- if formula == "G.H.A.":
213
- length = st.slider("Longitud de la historia (palabras):", min_value=50, max_value=200, value=150, step=10)
 
214
  else:
215
- length = st.slider("Longitud de la historia (palabras):", min_value=50, max_value=150, value=100, step=10)
 
216
 
217
- if formula == "G.H.A.":
218
- story_topic = st.text_area("De qué quieres que trate la historia", placeholder="Explica si hay algo específico sobre lo que te gustaría contar (puede ser una vivencia personal, película, cuento, personaje ficticio, etc.).")
 
 
 
 
 
219
 
220
  # Botón para generar contenido
221
  submit = st.button("Generar mi historia")
@@ -225,16 +245,17 @@ with col2:
225
  if submit:
226
  if target_audience and product and action:
227
  try:
228
- if formula == "P.A.S.A.":
229
- response = generate_story("PASA", target_audience, product, action, mood, length)
230
- elif formula == "A.D.P.":
231
- response = generate_story("ADP", target_audience, product, action, mood, length)
232
- elif formula == "G.H.A.":
233
  if story_topic:
234
- response = generate_story("GHA", target_audience, product, action, mood, length, story_topic)
 
235
  else:
236
  st.error("Por favor, completa todos los campos requeridos para la fórmula G.H.A.")
237
  response = ""
 
 
 
238
 
239
  if response:
240
  st.subheader("Historia generada:")
 
193
 
194
  # Acordeón para elegir la fórmula
195
  with st.expander("Selecciona la fórmula para generar tu historia"):
196
+ # Obtener las fórmulas disponibles del diccionario story_formulas
197
+ available_formulas = list(story_formulas.keys())
198
+
199
+
200
+ formula = st.radio(
201
+ "Selecciona la fórmula para generar tu historia:",
202
+ formula_display_names
203
+ )
204
+ # Convertir el nombre de presentación de vuelta a la clave del diccionario
205
+ selected_formula = ''.join(formula.split('.'))
206
 
207
  # Crear las columnas para el diseño (40% para la izquierda, 60% para la derecha)
208
  col1, col2 = st.columns([2, 3])
209
 
210
+ # Cambiar el comportamiento del slider cuando se seleccione "GHA"
211
  with col1:
212
+ target_audience = st.text_input("Público objetivo",
213
+ placeholder="¿A quién está dirigido tu mensaje?")
214
+ product = st.text_input("Producto/Servicio",
215
+ placeholder="¿Qué estás ofreciendo?")
216
+ action = st.text_area("Llamado a la acción",
217
+ placeholder="¿Qué acción específica debe tomar tu audiencia?")
218
 
219
  # Personalización adicional
220
  with st.expander("Personaliza tu historia"):
221
+ mood = st.selectbox("Tono de la historia:",
222
+ ["Emocional", "Triste", "Feliz", "Horror", "Comedia", "Romántico"])
223
 
224
  # Ajustar el slider según la fórmula seleccionada
225
+ if selected_formula == "GHA":
226
+ length = st.slider("Longitud de la historia (palabras):",
227
+ min_value=50, max_value=200, value=150, step=10)
228
  else:
229
+ length = st.slider("Longitud de la historia (palabras):",
230
+ min_value=50, max_value=150, value=100, step=10)
231
 
232
+ # Mostrar campo adicional solo para GHA
233
+ story_topic = None
234
+ if selected_formula == "GHA":
235
+ story_topic = st.text_area(
236
+ "De qué quieres que trate la historia",
237
+ placeholder="Explica si hay algo específico sobre lo que te gustaría contar (puede ser una vivencia personal, película, cuento, personaje ficticio, etc.)."
238
+ )
239
 
240
  # Botón para generar contenido
241
  submit = st.button("Generar mi historia")
 
245
  if submit:
246
  if target_audience and product and action:
247
  try:
248
+ # Verificar si es GHA y necesita story_topic
249
+ if selected_formula == "GHA":
 
 
 
250
  if story_topic:
251
+ response = generate_story(selected_formula, target_audience, product,
252
+ action, mood, length, story_topic)
253
  else:
254
  st.error("Por favor, completa todos los campos requeridos para la fórmula G.H.A.")
255
  response = ""
256
+ else:
257
+ response = generate_story(selected_formula, target_audience, product,
258
+ action, mood, length)
259
 
260
  if response:
261
  st.subheader("Historia generada:")