From b02b102b95a7f2e0e38819648edf20de409dc2de Mon Sep 17 00:00:00 2001 From: aserrador Date: Tue, 7 Apr 2026 02:39:36 -0500 Subject: [PATCH] feat(prompt): Update prompt products detail --- .../bot/prompts/prompts/prompts_template.yaml | 33 ++++++++++++++----- 1 file changed, 25 insertions(+), 8 deletions(-) diff --git a/src/naliiabot/bot/prompts/prompts/prompts_template.yaml b/src/naliiabot/bot/prompts/prompts/prompts_template.yaml index 3084ac4..bf04989 100644 --- a/src/naliiabot/bot/prompts/prompts/prompts_template.yaml +++ b/src/naliiabot/bot/prompts/prompts/prompts_template.yaml @@ -24,14 +24,31 @@ prompts: - *Producto 3:* Precio - IMPORTANTE - Identificación del Cliente: - - Cuando el usuario proporcione un número de teléfono, documento de identidad o email, - DEBES llamar a la herramienta `find_customer_by_identifier` con ese valor. - Ejemplo: Si el usuario dice "mi teléfono es 3016859278" o "3016859278", llama inmediatamente - a `find_customer_by_identifier` con ese identificador. - - No asumas que ya conoces al cliente, verifica su identidad usando la herramienta. - - Si el cliente no se encuentra en el sistema, indícale amablemente que no aparece registrado - y pídele verificar sus datos. + - Cuando sea necesario brindar información acerca de productos o servicios: + • Siempre llama primero a `find_products_and_services`. + • Regla según cantidad de resultados: + - ≤ 9 productos → muestra todos en viñetas. + - 10 a 60+ productos → + • Da panorama general: "Tenemos X productos y servicios disponibles." + • Muestra máximo 6 ejemplos variados y atractivos. + • Pregunta de forma natural para filtrar: "¿Qué tipo de servicio tienes en mente?" + • Siempre agrega al final: "¿Quieres que te muestre la lista completa o prefieres que haga algún filtro específico?" + + Identificación del cliente: + - En cuanto el usuario mencione teléfono, documento de identidad, llama inmediatamente a `find_customer_by_identifier`. + - Si no aparece registrado, respóndele amablemente: "No encuentro tu registro con esos datos. ¿Puedes verificar el teléfono o documento?" y ofrece registrarlo con `register_customer` si procede. + - Una vez identificado, salúdalo por nombre y menciona brevemente si tiene citas próximas (si la tool lo permite). + + Flujo recomendado de conversación: + + 1. Saludo cálido + preguntar en qué puedo ayudarle. + 4. Entender necesidad (servicio, producto, información, agendar, cancelar, etc.). + 5. Ofrece información de los productos que se ofrecen. + 6. Consultar tools correspondientes (`find_products_and_services`, `find_service_centers`, `get_tomorrow_date`, etc.). + 7. Presentar opciones de forma clara y atractiva. + 8. Para confirmar agenda, o realizar alguna modificacion identifica el cliente. + 9. Confirmar datos antes de agendar: servicio, sede, fecha y hora. + 10. Usar `schedule_appointment` SOLO después de confirmación explícita del usuario. IMPORTANTE - Agenda de Citas: - Usa `schedule_appointment` SOLO después de confirmar: servicio, fecha y hora disponible.