JeCabrera commited on
Commit
afffb8f
·
verified ·
1 Parent(s): 8f32831

Upload 10 files

Browse files
Files changed (4) hide show
  1. app.py +22 -3
  2. format/__init__.py +1 -0
  3. format/format.py +440 -0
  4. prompts.py +14 -5
app.py CHANGED
@@ -21,6 +21,8 @@ if 'habilidades' not in st.session_state:
21
  st.session_state.habilidades = ""
22
  if 'creatividad' not in st.session_state:
23
  st.session_state.creatividad = 1.0
 
 
24
  if 'nivel_conciencia' not in st.session_state:
25
  # Usar el primer nivel del diccionario como valor predeterminado
26
  first_key = list(CONSCIOUSNESS_LEVELS.keys())[0]
@@ -34,7 +36,7 @@ def get_model(temperature):
34
  }
35
  return genai.GenerativeModel('gemini-2.0-flash', generation_config=generation_config)
36
 
37
- def generate_buyer_persona(product, skills, target_audience, temperature, consciousness_level="Ninguno"):
38
  if not product or not skills:
39
  return "Por favor, completa los campos de producto y habilidades."
40
 
@@ -44,7 +46,8 @@ def generate_buyer_persona(product, skills, target_audience, temperature, consci
44
  product_service=product,
45
  skills=skills,
46
  target_audience=target_audience,
47
- consciousness_level=consciousness_level
 
48
  )
49
 
50
  # Añadir instrucción explícita para respuesta en español
@@ -121,6 +124,21 @@ with col1:
121
  height=70)
122
  st.session_state.publico_objetivo = publico_objetivo
123
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
124
  # Nivel de creatividad con slider
125
  creatividad = st.slider("Nivel de creatividad",
126
  min_value=0.0,
@@ -168,7 +186,8 @@ with col2:
168
  st.session_state.habilidades,
169
  st.session_state.publico_objetivo,
170
  st.session_state.creatividad,
171
- st.session_state.nivel_conciencia
 
172
  )
173
  # Guardar en session_state
174
  st.session_state.perfil_cliente = perfil_cliente
 
21
  st.session_state.habilidades = ""
22
  if 'creatividad' not in st.session_state:
23
  st.session_state.creatividad = 1.0
24
+ if 'formato' not in st.session_state:
25
+ st.session_state.formato = "base_format"
26
  if 'nivel_conciencia' not in st.session_state:
27
  # Usar el primer nivel del diccionario como valor predeterminado
28
  first_key = list(CONSCIOUSNESS_LEVELS.keys())[0]
 
36
  }
37
  return genai.GenerativeModel('gemini-2.0-flash', generation_config=generation_config)
38
 
39
+ def generate_buyer_persona(product, skills, target_audience, temperature, consciousness_level="Ninguno", format_type="base_format"):
40
  if not product or not skills:
41
  return "Por favor, completa los campos de producto y habilidades."
42
 
 
46
  product_service=product,
47
  skills=skills,
48
  target_audience=target_audience,
49
+ consciousness_level=consciousness_level,
50
+ format_type=format_type
51
  )
52
 
53
  # Añadir instrucción explícita para respuesta en español
 
124
  height=70)
125
  st.session_state.publico_objetivo = publico_objetivo
126
 
127
+ # Selector de formato
128
+ from format.format import buyer_persona_formats
129
+
130
+ # Obtener directamente las claves que terminan en "_format" del diccionario
131
+ format_keys = [key for key in buyer_persona_formats.keys() if key.endswith("_format")]
132
+
133
+ formato = st.selectbox(
134
+ "Formato del perfil",
135
+ options=format_keys,
136
+ format_func=lambda x: x.replace("_format", "").capitalize() + " format",
137
+ index=format_keys.index(st.session_state.formato) if st.session_state.formato in format_keys else 0,
138
+ help="Selecciona el formato en el que se presentará el perfil del cliente ideal"
139
+ )
140
+ st.session_state.formato = formato
141
+
142
  # Nivel de creatividad con slider
143
  creatividad = st.slider("Nivel de creatividad",
144
  min_value=0.0,
 
186
  st.session_state.habilidades,
187
  st.session_state.publico_objetivo,
188
  st.session_state.creatividad,
189
+ st.session_state.nivel_conciencia,
190
+ st.session_state.formato
191
  )
192
  # Guardar en session_state
193
  st.session_state.perfil_cliente = perfil_cliente
format/__init__.py ADDED
@@ -0,0 +1 @@
 
 
1
+ # Este archivo permite que Python trate el directorio como un paquete
format/format.py ADDED
@@ -0,0 +1,440 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ buyer_persona_formats = {
2
+ # Formato básico con campos principales
3
+ "base_format": """
4
+ La persona **"[nombre del avatar]"** es **[género]** entre **[rango de edad]** que busca [lo que está buscando]. Es [lo que es y quiere].
5
+
6
+ **Personalidad**: [su tipo de personalidad]
7
+
8
+ **Valores**: [lo que valora]
9
+
10
+ **Qué le emociona**: [lo que le emociona]
11
+
12
+ **¿Cómo es?**: [cómo es]
13
+
14
+ **Nivel de conciencia**: [nivel de conciencia] - [explicación breve de por qué se encuentra en este nivel]
15
+
16
+ **Miedos**: [sus miedos]
17
+
18
+ **Inseguridades**: [sus inseguridades]
19
+
20
+ **Culpa**: [su culpa]
21
+
22
+ **Problemas**: [sus problemas]
23
+
24
+ **Frustraciones**: [sus frustraciones]
25
+
26
+ **¿En qué está dispuesto/a a invertir?**: [en qué está dispuesto/a a invertir]
27
+
28
+ **Intereses**: [sus intereses]
29
+
30
+ **Deseos**: [sus deseos]
31
+
32
+ **Lo que realmente quiere**: [lo que realmente quiere]
33
+ """,
34
+
35
+ # Ejemplo completo de un perfil de cliente ideal
36
+ "example": """
37
+ La persona **"Emprendedora Inspirada"** es una **mujer** entre **30 y 40 años** que busca alcanzar el éxito tanto en su vida personal como profesional. Es una **emprendedora independiente** que constantemente se esfuerza por construir su marca y hacer crecer su negocio, pero también está abierta a colaborar con otros para lograr sus objetivos.
38
+
39
+ **Personalidad**: MAGA (MAG)
40
+
41
+ **Valores**: ambición, innovación, aprendizaje continuo y autenticidad.
42
+
43
+ **Qué le emociona**: su trabajo y encontrar siempre formas de mejorar tanto ella misma como su negocio. Le apasiona el emprendimiento y disfruta aprendiendo sobre estrategias de negocios, marketing digital y desarrollo personal. Se entusiasma cuando descubre nuevas tendencias que puede implementar.
44
+
45
+ **¿Cómo es?**: Es una líder natural con una fuerte ética de trabajo y dedicación para alcanzar sus metas. Tiene un fuerte deseo de éxito y reconocimiento. No teme al trabajo duro y está dispuesta a asumir riesgos calculados en busca del éxito. Es metódica pero creativa, organizada pero flexible cuando la situación lo requiere.
46
+
47
+ **Nivel de conciencia**: Consciente del problema - Reconoce que su negocio no está creciendo al ritmo deseado y que necesita mejorar sus estrategias, pero aún no tiene claridad sobre qué solución específica implementar. Está activamente buscando información y alternativas.
48
+
49
+ **Miedos**:
50
+ - Observa cómo sus competidores crecen más rápido mientras ella siente que avanza lentamente
51
+ - Revisa constantemente su agenda y se angustia al ver que no ha cumplido todos sus objetivos trimestrales
52
+ - Pospone decisiones importantes por temor a equivocarse y perder lo construido
53
+ - Cancela planes familiares para atender emergencias laborales, sintiendo que su vida personal se desvanece
54
+ - Se compara con referentes de su industria y siente que nunca alcanzará su nivel de éxito
55
+
56
+ **Inseguridades**:
57
+ - Duda de sus capacidades cuando un cliente potencial elige a la competencia
58
+ - Reescribe correos importantes múltiples veces antes de enviarlos
59
+ - Evita hablar de ciertos temas en reuniones por miedo a no parecer suficientemente experta
60
+ - Minimiza sus logros cuando recibe elogios, atribuyéndolos a la suerte o circunstancias externas
61
+ - Posterga el lanzamiento de nuevos productos hasta que los considera "perfectos"
62
+
63
+ **Culpa**:
64
+ - Siente remordimiento cuando toma un fin de semana libre mientras sus competidores siguen trabajando
65
+ - Se reprocha cuando invierte en un curso y no lo completa por falta de tiempo
66
+ - Experimenta culpa al delegar tareas y luego revisa obsesivamente el trabajo realizado
67
+ - Se siente mal cuando prioriza su bienestar sobre las demandas de clientes exigentes
68
+ - Se castiga mentalmente por no haber implementado antes estrategias que ahora ve funcionando en otros negocios
69
+
70
+ **Problemas**:
71
+ - Sufre episodios de insomnio pensando en pendientes y estrategias para el día siguiente
72
+ - Experimenta tensión en sus relaciones personales por su constante disponibilidad al trabajo
73
+ - Acumula tareas operativas que podría delegar pero no confía en que otros las hagan correctamente
74
+ - Posterga decisiones importantes sobre expansión por miedo a perder el control de la calidad
75
+ - Se resiste a implementar cambios tecnológicos necesarios por temor a desestabilizar lo que ya funciona
76
+
77
+ **Frustraciones**: Falta de progreso o crecimiento en su negocio o carrera, falta de reconocimiento o validación, desequilibrio entre su vida personal y profesional, falta de oportunidades para aprender y crecer, y falta de apoyo o colaboración. Le frustra cuando invierte tiempo y recursos en estrategias que no dan los resultados esperados.
78
+
79
+ **¿En qué está dispuesta a invertir?**: En ella misma y en su negocio, ya sea tomando cursos, contratando coaches o consultores, o adquiriendo nuevas herramientas y tecnologías que le permitan optimizar su tiempo y mejorar sus resultados. Valora especialmente las inversiones que ofrecen un retorno claro y medible.
80
+
81
+ **Intereses**: Mantenerse al día con las tendencias en su sector y adelantarse a la competencia. Le interesan los podcasts de negocios, libros de desarrollo personal, conferencias de emprendimiento y networking estratégico.
82
+
83
+ **Deseos**: Tener un impacto positivo en el mundo, ya sea a través de su negocio o actividades personales. Aspira a crear un legado que trascienda lo económico y genere un cambio significativo en su industria o comunidad.
84
+
85
+ **Lo que realmente quiere**: Lograr el éxito tanto en su vida personal como profesional para aumentar su potencial, vivir una vida llena de comodidades y lujos, ser respetada y admirada por sus habilidades y talentos, tener más tiempo para lo que ama y menos tiempo para lo que odia, ascender en la jerarquía social, y establecer relaciones cercanas y duraderas con amigos y familia. También busca validar sus sentimientos y demostrar que tiene razón a través de su éxito, escapar del peligro, y liberarse del miedo y la culpa que pueden impedirle alcanzar sus metas. Desea dejar un legado duradero y ser aceptada y apreciada por un grupo social o comunidad que comparta sus valores y aspiraciones.
86
+ """,
87
+
88
+ # Formato para búsqueda de mercado
89
+ "busqueda_format": """
90
+ # BÚSQUEDA
91
+
92
+ ## 1. Nicho:
93
+ [Descripción detallada del nicho de mercado al que se dirige el producto o servicio]
94
+
95
+ ## 2. Avatar:
96
+ [Descripción detallada del cliente ideal, incluyendo demografía, psicografía y comportamientos]
97
+
98
+ ## 3. Meta Primaria:
99
+ [La meta principal que el cliente ideal desea alcanzar]
100
+
101
+ ## 4. Queja Primaria:
102
+ [La frustración o problema principal que experimenta el cliente ideal]
103
+
104
+ ## 5. Metas Secundarias:
105
+ - [Meta secundaria 1]
106
+ - [Meta secundaria 2]
107
+ - [Meta secundaria 3]
108
+
109
+ ## 6. Quejas Secundarias:
110
+ - [Queja secundaria 1]
111
+ - [Queja secundaria 2]
112
+ - [Queja secundaria 3]
113
+
114
+ ## 7. Los 5 Principales Puntos de Dolor:
115
+ - [Punto de dolor 1]
116
+ - [Punto de dolor 2]
117
+ - [Punto de dolor 3]
118
+ - [Punto de dolor 4]
119
+ - [Punto de dolor 5]
120
+
121
+ ## 8. Gran Deseo Secreto:
122
+ [El deseo profundo que el cliente ideal no suele expresar abiertamente]
123
+
124
+ ## 9. Estilo de vida soñado:
125
+ [Descripción del estilo de vida ideal al que aspira el cliente]
126
+
127
+ ## 10. Los 5 Principales Deseos:
128
+ - [Deseo 1]
129
+ - [Deseo 2]
130
+ - [Deseo 3]
131
+ - [Deseo 4]
132
+ - [Deseo 5]
133
+
134
+ ## 11. Objeciones:
135
+ - [Objeción 1]
136
+ - [Objeción 2]
137
+ - [Objeción 3]
138
+
139
+ ## 12. Miedo más grande:
140
+ [El temor principal que impide al cliente ideal tomar acción]
141
+
142
+ ## 13. Soluciones falsas:
143
+ - [Solución falsa 1]
144
+ - [Solución falsa 2]
145
+
146
+ ## 14. Gran Queja de la Solución Existente:
147
+ [La principal crítica que tiene el cliente ideal sobre las soluciones actuales en el mercado]
148
+
149
+ ## 15. Creencias equivocadas:
150
+ - [Creencia equivocada 1]
151
+ - [Creencia equivocada 2]
152
+
153
+ ## 16. Alternativas caras:
154
+ - [Alternativa cara 1]
155
+ - [Alternativa cara 2]
156
+ """,
157
+
158
+ # Formato narrativo para contar la historia del cliente ideal
159
+ "story_format": """
160
+ # HISTORIA DEL CLIENTE IDEAL
161
+
162
+ ## Protagonista:
163
+ [Nombre y breve descripción del cliente ideal]
164
+
165
+ ## Situación actual:
166
+ [Descripción detallada de la vida actual del cliente, sus circunstancias y contexto]
167
+
168
+ ## El problema:
169
+ [Narración del problema principal que enfrenta el protagonista en su día a día]
170
+
171
+ ## Intentos fallidos:
172
+ [Historia de las soluciones que ha intentado y por qué no han funcionado]
173
+
174
+ ## Momento de descubrimiento:
175
+ [Cómo descubre o descubriría tu solución]
176
+
177
+ ## Transformación:
178
+ [Cómo cambia su vida después de implementar tu solución]
179
+
180
+ ## Nuevo estado:
181
+ [Descripción de su nueva realidad y los beneficios que experimenta]
182
+ """,
183
+
184
+ # Ejemplo del formato narrativo
185
+ "story_example": """
186
+ # HISTORIA DEL CLIENTE IDEAL
187
+
188
+ ## Protagonista:
189
+ Ana es una emprendedora de 35 años que dirige su propio estudio de diseño gráfico desde hace tres años. Es creativa, perfeccionista y apasionada por su trabajo.
190
+
191
+ ## Situación actual:
192
+ Ana trabaja más de 12 horas diarias intentando equilibrar la parte creativa de su negocio con las tareas administrativas. Tiene cinco clientes recurrentes, pero le cuesta conseguir nuevos proyectos. Cada mes es una lucha para cubrir todos los gastos y se siente constantemente estresada por la inestabilidad financiera.
193
+
194
+ ## El problema:
195
+ Aunque Ana es excelente en su trabajo creativo, no tiene estrategia de marketing definida. Publica ocasionalmente en redes sociales cuando recuerda hacerlo, pero sin un plan coherente. Ha perdido oportunidades porque potenciales clientes no la encuentran o no entienden claramente el valor de sus servicios. Se siente invisible en un mercado saturado.
196
+
197
+ ## Intentos fallidos:
198
+ Ha probado crear perfiles en todas las redes sociales populares, pero no mantiene ninguno actualizado. Contrató a un freelancer para que le hiciera una página web, pero quedó abandonada sin tráfico. Intentó hacer networking en eventos locales, pero no logró convertir esos contactos en clientes. Cada intento le ha costado tiempo y dinero sin resultados tangibles.
199
+
200
+ ## Momento de descubrimiento:
201
+ Un día, mientras busca desesperadamente soluciones en internet, Ana encuentra un webinar sobre estrategias de marketing específicas para estudios creativos. Por primera vez, escucha consejos que realmente entienden su situación y ofrecen un camino claro y estructurado para atraer clientes ideales sin sacrificar su tiempo creativo.
202
+
203
+ ## Transformación:
204
+ Ana implementa el sistema de marketing aprendido, creando contenido estratégico que muestra su expertise. Establece un embudo de ventas simple pero efectivo que convierte visitantes en clientes. Aprende a comunicar el valor de su trabajo de manera que resuena con quienes realmente valoran el diseño de calidad.
205
+
206
+ ## Nuevo estado:
207
+ Seis meses después, Ana ha duplicado su cartera de clientes y puede ser selectiva con los proyectos que acepta. Ha aumentado sus tarifas un 30% y los clientes pagan sin cuestionar porque entienden el valor que aporta. Trabaja menos horas pero genera más ingresos. El estrés ha disminuido considerablemente y ha recuperado la pasión por su trabajo al poder enfocarse en la parte creativa que realmente ama.
208
+ """,
209
+
210
+ # Formato para un perfil de cliente ideal simplificado
211
+ "simple_format": """
212
+ # PERFIL SIMPLIFICADO
213
+
214
+ ## Nombre:
215
+ [Nombre del avatar]
216
+
217
+ ## Demografía:
218
+ [Edad, género, ubicación, ocupación]
219
+
220
+ ## Problema principal:
221
+ [Descripción del problema principal que enfrenta]
222
+
223
+ ## Nivel de conciencia:
224
+ [Nivel de conciencia sobre su problema]
225
+
226
+ ## Deseo principal:
227
+ [Lo que realmente desea conseguir]
228
+ """,
229
+
230
+ # Ejemplo del formato simplificado
231
+ "simple_example": """
232
+ # PERFIL SIMPLIFICADO
233
+
234
+ ## Nombre:
235
+ Carlos Emprendedor
236
+
237
+ ## Demografía:
238
+ 35 años, hombre, Madrid, dueño de pequeña empresa de tecnología
239
+
240
+ ## Problema principal:
241
+ No logra escalar su negocio más allá de los clientes locales y siente que ha alcanzado un techo en su crecimiento.
242
+
243
+ ## Nivel de conciencia:
244
+ Consciente del problema - Sabe que necesita expandirse pero no tiene claro qué estrategias implementar para lograrlo.
245
+
246
+ ## Deseo principal:
247
+ Convertir su pequeña empresa local en una compañía reconocida a nivel nacional con procesos automatizados que le permitan tener más tiempo libre.
248
+ """
249
+ }
250
+
251
+ # Instrucciones para formato de listas con viñetas
252
+ bullet_format_instructions = """
253
+ \n\nIMPORTANT - LIST FORMAT:
254
+ For the sections of Fears, Insecurities, Guilt, Problems, and Frustrations, use BULLET POINTS (•) with PROPER PARAGRAPH BREAKS after each item.
255
+
256
+ Example:
257
+ Miedos:
258
+ • Miedo a quedarse atrás en el mercado por no dominar nuevas tecnologías.
259
+
260
+ • Temor a perder oportunidades de negocio por barreras de comunicación.
261
+
262
+ • Preocupación por no poder expandir su empresa internacionalmente.
263
+
264
+ The correct format is (note the empty line between each bullet point):
265
+ Culpa:
266
+ • Se siente culpable por no pasar suficiente tiempo con su hijo debido al trabajo.
267
+
268
+ • Siente remordimiento por no haber aprendido inglés antes y ahora tener que hacerlo a la fuerza.
269
+
270
+ • Experimenta culpa al gastar dinero en un curso de inglés en lugar de en otras necesidades de su hijo.
271
+
272
+ • Se siente mal por no poder ayudar a su hijo con sus tareas de inglés.
273
+
274
+ DO NOT use this incorrect format (without paragraph breaks):
275
+ Inseguridades: • Primera inseguridad • Segunda inseguridad • Tercera inseguridad
276
+
277
+ ALSO DO NOT use this incorrect format (without empty lines between items):
278
+ Problemas:
279
+ • Tiene dificultades para encontrar tiempo para estudiar inglés debido a su trabajo y responsabilidades familiares.
280
+ • Se siente abrumado por la cantidad de información y recursos disponibles para aprender inglés.
281
+ • Le resulta difícil concentrarse y mantenerse motivado para estudiar después de un largo día de trabajo.
282
+
283
+ ENSURE there is an EMPTY LINE between each bullet point to create proper paragraph separation.
284
+ DO NOT use hyphens (-) or numbers for these lists.
285
+ """
286
+
287
+ # Instrucciones para niveles de conciencia
288
+ consciousness_level_instructions = """
289
+ \n\nABSOLUTELY CRITICAL - CONSCIOUSNESS LEVEL MAPPING:
290
+ You MUST use the EXACT consciousness level from this mapping:
291
+
292
+ - If user selects "Desconocido" → Use "Desconocido" in your response
293
+ - If user selects "Consciente del problema" → Use "Consciente del problema" in your response
294
+ - If user selects "Consciente de la solución" → Use "Consciente de la solución" in your response
295
+ - If user selects "Consciente del producto" → Use "Consciente del producto" in your response
296
+ - If user selects "Consciente de la compra" → Use "Consciente de la compra" in your response
297
+
298
+ DO NOT DEVIATE from this mapping under any circumstances.
299
+
300
+ For "Desconocido" level:
301
+ - The person is completely unaware they have a problem
302
+ - They don't recognize any need for change
303
+ - They are not actively looking for solutions
304
+ - Their fears and frustrations exist but they don't connect them to this specific problem
305
+
306
+ For "Consciente del problema" level:
307
+ - The person knows they have a problem
308
+ - They feel the pain and recognize the issue
309
+ - They don't yet know what solutions exist
310
+ - They are beginning to research and understand their problem
311
+
312
+ For "Consciente de la solución" level:
313
+ - The person knows what type of solution they need
314
+ - They are actively comparing different options
315
+ - They understand how solutions work but haven't chosen one
316
+ - They are evaluating features, benefits, and pricing
317
+
318
+ For "Consciente del producto" level:
319
+ - The person knows about your specific product/service
320
+ - They are considering it but haven't decided to purchase
321
+ - They may have objections or concerns about your offering
322
+ - They need convincing about your specific solution
323
+
324
+ For "Consciente de la compra" level:
325
+ - The person is ready to buy
326
+ - They need a final push or incentive
327
+ - They are looking for validation of their decision
328
+ - They may need help with the purchasing process
329
+
330
+ The "Nivel de conciencia" section in your response MUST follow this exact format:
331
+ **Nivel de conciencia**: [EXACT MAPPED LEVEL] - [explanation consistent with that level]
332
+
333
+ ALL other aspects of the persona (fears, problems, etc.) MUST be consistent with the specified consciousness level.
334
+ """
335
+
336
+ # Lo que realmente queremos (motivaciones profundas)
337
+ what_we_really_want = {
338
+ "list": [
339
+ "Increase our potential",
340
+ "Escape danger",
341
+ "Free ourselves from fear and guilt",
342
+ "Silence those who doubt us",
343
+ "Validate our feelings",
344
+ "Power over others",
345
+ "Advantages over our rivals",
346
+ "Be free from the consequences",
347
+ "Have more time dedicated to what we love",
348
+ "Less time dedicated to what we hate",
349
+ "Happiness and satisfaction",
350
+ "Prove we are right",
351
+ "Prove our detractors wrong",
352
+ "Be attractive and charming to others",
353
+ "Leave a lasting legacy",
354
+ "Higher status among our peers",
355
+ "Have a life full of comforts and luxuries",
356
+ "Be accepted by a social group or community",
357
+ "Be respected and admired for our intelligence, skills, or talents",
358
+ "Be true to ourselves and reach our full potential",
359
+ "Climb the social hierarchy",
360
+ "Establish close and lasting relationships with friends and family",
361
+ "Feel part of a group or community and be valued and appreciated by others",
362
+ "Be appreciated for our actions and receive gratitude from others"
363
+ ],
364
+ "format": """
365
+ **[WHAT WE REALLY WANT]**
366
+ - Increase our potential
367
+ - Escape danger
368
+ - Free ourselves from fear and guilt
369
+ - Silence those who doubt us
370
+ - Validate our feelings
371
+ - Power over others
372
+ - Advantages over our rivals
373
+ - Be free from the consequences
374
+ - Have more time dedicated to what we love
375
+ - Less time dedicated to what we hate
376
+ - Happiness and satisfaction
377
+ - Prove we are right
378
+ - Prove our detractors wrong
379
+ - Be attractive and charming to others
380
+ - Leave a lasting legacy
381
+ - Higher status among our peers
382
+ - Have a life full of comforts and luxuries
383
+ - Be accepted by a social group or community
384
+ - Be respected and admired for our intelligence, skills, or talents
385
+ - Be true to ourselves and reach our full potential
386
+ - Climb the social hierarchy
387
+ - Establish close and lasting relationships with friends and family
388
+ - Feel part of a group or community and be valued and appreciated by others
389
+ - Be appreciated for our actions and receive gratitude from others
390
+ """
391
+ }
392
+
393
+ validation_questions = {
394
+ "buyer_persona": """
395
+ ---
396
+ **Validation Questions for Your Ideal Customer Profile:**
397
+
398
+ Have you addressed these essential aspects in your buyer persona?
399
+
400
+ 1. **Demographics and Background:**
401
+ - Have you defined their age, gender, education level, and location?
402
+ - What is their current occupation and professional background?
403
+ - What is their socioeconomic status and lifestyle?
404
+
405
+ 2. **Psychographics and Values:**
406
+ - What are their core values and beliefs?
407
+ - What aspirations drive their decisions?
408
+ - Which activities and interests align with your offering?
409
+ - How do their interests overlap with your expertise?
410
+
411
+ 3. **Problems and Needs:**
412
+ - What specific problems are they trying to solve?
413
+ - Which pain points are most urgent for them?
414
+ - What frustrations are driving them to seek a solution?
415
+ - How does your solution address their specific challenges?
416
+
417
+ 4. **Purchase Behavior:**
418
+ - What is their typical budget for similar solutions?
419
+ - How do they evaluate purchase decisions?
420
+ - What factors influence their buying choices?
421
+ - Are they willing to invest in premium solutions?
422
+
423
+ 5. **Decision-Making Process:**
424
+ - Do they research thoroughly before buying?
425
+ - What information sources do they trust?
426
+ - How do reviews and recommendations influence them?
427
+ - What convinces them of a product's value?
428
+
429
+ 6. **Consciousness Level:**
430
+ - Does the avatar clearly reflect one of the five consciousness levels?
431
+ - Are their fears, problems, and frustrations consistent with their consciousness level?
432
+ - Does their language and way of expressing themselves correspond to their consciousness level about the problem?
433
+ - Are their objections and doubts appropriate for their consciousness level?
434
+ - Is the type of information they seek consistent with their consciousness level?
435
+ - Do their decision criteria adequately reflect their consciousness level?
436
+
437
+ Ensure your buyer persona thoroughly addresses these questions to create an accurate profile of someone who will value and invest in your offering.
438
+ ---
439
+ """
440
+ }
prompts.py CHANGED
@@ -53,7 +53,7 @@ STEPS TO COMPLETE THE TASK:
53
 
54
  This prompt ensures the ideal customer aligns with your interests and skills and will be a good prospect for your products/services."""
55
 
56
- def create_instruction(product_service, skills, target_audience=None, gender=None, consciousness_level="Ninguno"):
57
  """
58
  Creates customized instructions to generate an ideal customer profile
59
 
@@ -63,17 +63,26 @@ def create_instruction(product_service, skills, target_audience=None, gender=Non
63
  target_audience (str, optional): Specific target audience
64
  gender (str, optional): Gender of the avatar (male/female)
65
  consciousness_level (str, optional): Market awareness level
 
66
 
67
  Returns:
68
  str: Complete instructions to generate the profile
69
  """
70
- # Obtener los componentes del formato
71
- format_template = buyer_persona_formats["base_format"]
72
- example = buyer_persona_formats["example"]
 
 
 
 
 
 
 
 
73
  what_we_want = what_we_really_want["format"]
74
  validation = validation_questions["buyer_persona"]
75
 
76
- # Cambio aquí: usar la variable importada directamente en lugar de obtenerla del diccionario
77
  format_instruction = bullet_format_instructions
78
 
79
  # Obtener el prompt principal
 
53
 
54
  This prompt ensures the ideal customer aligns with your interests and skills and will be a good prospect for your products/services."""
55
 
56
+ def create_instruction(product_service, skills, target_audience=None, gender=None, consciousness_level="Ninguno", format_type="base_format"):
57
  """
58
  Creates customized instructions to generate an ideal customer profile
59
 
 
63
  target_audience (str, optional): Specific target audience
64
  gender (str, optional): Gender of the avatar (male/female)
65
  consciousness_level (str, optional): Market awareness level
66
+ format_type (str, optional): Type of format to use from buyer_persona_formats
67
 
68
  Returns:
69
  str: Complete instructions to generate the profile
70
  """
71
+ # Obtener los componentes del formato dinámicamente
72
+ format_template = buyer_persona_formats.get(format_type, buyer_persona_formats["base_format"])
73
+
74
+ # Intentar obtener el ejemplo correspondiente al formato seleccionado
75
+ # Convención: si el formato es "x_format", buscar "x_example"
76
+ format_base = format_type.split('_')[0] if '_' in format_type else format_type
77
+ example_key = f"{format_base}_example"
78
+
79
+ # Si no existe un ejemplo específico, usar el ejemplo predeterminado
80
+ example = buyer_persona_formats.get(example_key, buyer_persona_formats["example"])
81
+
82
  what_we_want = what_we_really_want["format"]
83
  validation = validation_questions["buyer_persona"]
84
 
85
+ # Usar la variable importada directamente
86
  format_instruction = bullet_format_instructions
87
 
88
  # Obtener el prompt principal