
    )j                     n    U d dl Z d dlmZmZ g dZee   ed<   dZdede	e
ef   fdZd	ede	e
ef   fd
Zy)    N)MSG_BLOCKEDMSG_FALLBACK)z*ignora\s+(tus|todas\s+tus)\s+instruccionesz)ignore\s+(your|all\s+your)\s+instructionsu5   act[uú]a\s+como\s+si\s+no\s+tuvieras\s+restricciones	jailbreakz
dan\s+modez0pretend\s+you\s+have\s+no\s+(rules|restrictions)BLOCKED_PATTERNSi  user_messagereturnc                     | j                         }t        D ]"  }t        j                  ||      sdt        fc S  d| fS )z4Valida un mensaje de entrada antes de llamar al LLM.FT)lowerr   researchr   )r   
text_lowerpatterns      >/var/www/vps2.regionflexible.com/ChatbotSencillo/guardrails.pycheck_inputr      sE    ##%J# &99Wj)+%%&     bot_responsec                     | j                         }|rt        |      dk  rdt        fS t        |      t        kD  rdt        fS d|fS )z(Valida la respuesta generada por el LLM.   FT)striplenr   MAX_RESPONSE_LENGTH)r   strippeds     r   check_outputr      sK    !!#Hs8}q(l""
8}**l"">r   )r   configr   r   r   liststr__annotations__r   tupleboolr   r    r   r   <module>r!      s^    	 , $s)   c eD#I&6 
s 
uT3Y'7 
r   