JeCabrera commited on
Commit
d3dc3cf
verified
1 Parent(s): e70a84a

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +24 -22
app.py CHANGED
@@ -20,8 +20,8 @@ if 'habilidades' not in st.session_state:
20
  st.session_state.habilidades = ""
21
  if 'creatividad' not in st.session_state:
22
  st.session_state.creatividad = 1.0
23
- if 'incluir_niveles_conciencia' not in st.session_state:
24
- st.session_state.incluir_niveles_conciencia = False
25
 
26
  # Funci贸n para generar el perfil de cliente ideal
27
  @st.cache_resource
@@ -31,7 +31,7 @@ def get_model(temperature):
31
  }
32
  return genai.GenerativeModel('gemini-2.0-flash', generation_config=generation_config)
33
 
34
- def generate_buyer_persona(product, skills, target_audience, temperature, include_consciousness_levels=False):
35
  if not product or not skills:
36
  return "Por favor, completa los campos de producto y habilidades."
37
 
@@ -40,7 +40,7 @@ def generate_buyer_persona(product, skills, target_audience, temperature, includ
40
  product_service=product,
41
  skills=skills,
42
  target_audience=target_audience,
43
- include_consciousness_levels=include_consciousness_levels
44
  )
45
 
46
  # A帽adir instrucci贸n expl铆cita para respuesta en espa帽ol
@@ -121,23 +121,25 @@ with col1:
121
  key="creatividad_slider")
122
  st.session_state.creatividad = creatividad
123
 
124
- # Opci贸n para incluir an谩lisis de niveles de conciencia
125
- incluir_niveles = st.checkbox(
126
- "Incluir an谩lisis de los 5 niveles de conciencia",
127
- value=st.session_state.incluir_niveles_conciencia,
128
- help="Analiza al cliente ideal desde los 5 niveles de conciencia de Eugene Schwartz"
 
 
129
  )
130
- st.session_state.incluir_niveles_conciencia = incluir_niveles
131
 
132
- if incluir_niveles:
133
- st.info("""
134
- **Los 5 niveles de conciencia:**
135
- 1. **Desconocido**: No sabe que tiene un problema
136
- 2. **Consciente del problema**: Reconoce el problema pero no sabe c贸mo resolverlo
137
- 3. **Consciente de la soluci贸n**: Conoce posibles soluciones pero no sabe cu谩l elegir
138
- 4. **Consciente del producto**: Conoce tu producto pero no est谩 convencido
139
- 5. **Consciente de la compra**: Est谩 listo para comprar pero necesita un incentivo final
140
- """)
141
 
142
  # Bot贸n para generar
143
  submit = st.button("GENERAR PERFIL DE CLIENTE IDEAL", on_click=update_profile)
@@ -154,7 +156,7 @@ with col2:
154
  st.session_state.habilidades,
155
  st.session_state.publico_objetivo,
156
  st.session_state.creatividad,
157
- st.session_state.incluir_niveles_conciencia
158
  )
159
  # Guardar en session_state
160
  st.session_state.perfil_cliente = perfil_cliente
@@ -186,8 +188,8 @@ with col2:
186
  st.download_button(
187
  label="Descargar Perfil",
188
  data=st.session_state.perfil_cliente,
189
- file_name="cliente_ideal.md",
190
- mime="text/markdown"
191
  )
192
  else:
193
  st.warning("Por favor, completa los campos de producto y habilidades antes de generar el perfil.")
 
20
  st.session_state.habilidades = ""
21
  if 'creatividad' not in st.session_state:
22
  st.session_state.creatividad = 1.0
23
+ if 'nivel_conciencia' not in st.session_state:
24
+ st.session_state.nivel_conciencia = "Ninguno"
25
 
26
  # Funci贸n para generar el perfil de cliente ideal
27
  @st.cache_resource
 
31
  }
32
  return genai.GenerativeModel('gemini-2.0-flash', generation_config=generation_config)
33
 
34
+ def generate_buyer_persona(product, skills, target_audience, temperature, consciousness_level="Ninguno"):
35
  if not product or not skills:
36
  return "Por favor, completa los campos de producto y habilidades."
37
 
 
40
  product_service=product,
41
  skills=skills,
42
  target_audience=target_audience,
43
+ consciousness_level=consciousness_level
44
  )
45
 
46
  # A帽adir instrucci贸n expl铆cita para respuesta en espa帽ol
 
121
  key="creatividad_slider")
122
  st.session_state.creatividad = creatividad
123
 
124
+ # Selector de nivel de conciencia
125
+ nivel_conciencia = st.selectbox(
126
+ "Nivel de conciencia del cliente ideal",
127
+ ["Ninguno", "Desconocido", "Consciente del problema", "Consciente de la soluci贸n",
128
+ "Consciente del producto", "Consciente de la compra"],
129
+ index=0,
130
+ help="Selecciona el nivel de conciencia en el que se encuentra tu cliente ideal"
131
  )
132
+ st.session_state.nivel_conciencia = nivel_conciencia
133
 
134
+ if nivel_conciencia != "Ninguno":
135
+ niveles_info = {
136
+ "Desconocido": "No sabe que tiene un problema. Tu mensaje debe crear conciencia del problema.",
137
+ "Consciente del problema": "Reconoce el problema pero no sabe c贸mo resolverlo. Tu mensaje debe mostrar la urgencia del problema.",
138
+ "Consciente de la soluci贸n": "Conoce posibles soluciones pero no sabe cu谩l elegir. Tu mensaje debe presentar las soluciones disponibles.",
139
+ "Consciente del producto": "Conoce tu producto pero no est谩 convencido. Tu mensaje debe probar la superioridad de tu oferta.",
140
+ "Consciente de la compra": "Est谩 listo para comprar pero necesita un incentivo final. Tu mensaje debe facilitar la decisi贸n de compra."
141
+ }
142
+ st.info(f"**{nivel_conciencia}**: {niveles_info.get(nivel_conciencia, '')}")
143
 
144
  # Bot贸n para generar
145
  submit = st.button("GENERAR PERFIL DE CLIENTE IDEAL", on_click=update_profile)
 
156
  st.session_state.habilidades,
157
  st.session_state.publico_objetivo,
158
  st.session_state.creatividad,
159
+ st.session_state.nivel_conciencia
160
  )
161
  # Guardar en session_state
162
  st.session_state.perfil_cliente = perfil_cliente
 
188
  st.download_button(
189
  label="Descargar Perfil",
190
  data=st.session_state.perfil_cliente,
191
+ file_name="cliente_ideal.txt",
192
+ mime="text/plain"
193
  )
194
  else:
195
  st.warning("Por favor, completa los campos de producto y habilidades antes de generar el perfil.")