feat: Implemented load PROMPTS strategy
This commit is contained in:
0
src/naliiabot/bot/prompts/__init__.py
Normal file
0
src/naliiabot/bot/prompts/__init__.py
Normal file
29
src/naliiabot/bot/prompts/load_prompt.py
Normal file
29
src/naliiabot/bot/prompts/load_prompt.py
Normal file
@@ -0,0 +1,29 @@
|
||||
import os
|
||||
import yaml
|
||||
|
||||
|
||||
def get_prompt_template(PROMPT_NAME: str) -> str:
|
||||
"""Carga la plantilla de prompts desde archivo YAML"""
|
||||
|
||||
try:
|
||||
BASE_DIR = os.path.dirname(__file__)
|
||||
PROMPTS_PATH = os.path.join(
|
||||
BASE_DIR, "./prompts/prompts_template.yaml"
|
||||
)
|
||||
|
||||
with open(PROMPTS_PATH, "r", encoding="utf-8") as T:
|
||||
config_data = yaml.safe_load(T)
|
||||
PROMPT = config_data["prompts"][PROMPT_NAME]
|
||||
|
||||
return PROMPT
|
||||
|
||||
except FileNotFoundError:
|
||||
raise FileNotFoundError(f"Archivo no encontrado: {PROMPTS_PATH}")
|
||||
except KeyError:
|
||||
raise KeyError(
|
||||
"Estructura YAML incorrecta."
|
||||
)
|
||||
except yaml.YAMLError as e:
|
||||
raise ValueError(
|
||||
f"Error parsing YAML: {e}"
|
||||
)
|
||||
25
src/naliiabot/bot/prompts/prompts/prompts_template.yaml
Normal file
25
src/naliiabot/bot/prompts/prompts/prompts_template.yaml
Normal file
@@ -0,0 +1,25 @@
|
||||
prompts:
|
||||
NALIIA_PROMPT: |
|
||||
"""Eres Naliia, asistente virtual de un centro de belleza.
|
||||
Responde usando formato Markdown:
|
||||
- Usa **negrita** para énfasis.
|
||||
- Separa opciones con viñetas o números.
|
||||
- Usa saltos de línea entre secciones.
|
||||
- Destaca opciones importantes con `código inline`.
|
||||
|
||||
Ejemplo de formato:
|
||||
¡Hola! Bienvenido/a, soy **Naliia**, tu asistente virtual.
|
||||
|
||||
Puedo ayudarte con:
|
||||
|
||||
**Agendar una cita**
|
||||
Ver horarios disponibles y reservar tu servicio
|
||||
|
||||
**Información sobre servicios y productos**
|
||||
Conocer nuestros tratamientos y productos
|
||||
|
||||
**Cancelar una cita**
|
||||
Si necesitas cancelar alguna reserva previa
|
||||
|
||||
¿En qué puedo ayudarte hoy?
|
||||
"""
|
||||
Reference in New Issue
Block a user