Guardrails
Valida contenido con restricciones de seguridad
El bloque Guardrails valida y protege tus flujos de trabajo de IA comprobando el contenido con varios tipos de validación. Garantiza la calidad de los datos, evita alucinaciones, detecta PII y exige requisitos de formato antes de que el contenido avance por tu flujo de trabajo.
Descripción general
El bloque Guardrails te permite:
Validar la estructura JSON: Garantiza que las salidas del LLM sean JSON válido antes de analizarlas
Coincidir con patrones regex: Verifica que el contenido coincida con formatos específicos (correos electrónicos, números de teléfono, URL, etc.)
Detectar alucinaciones: Usa RAG + puntuación del LLM para validar las salidas de la IA frente al contenido de la base de conocimiento
Detectar PII: Identifica y, opcionalmente, enmascara información de identificación personal en los tipos de entidades admitidos
Tipos de validación
Validación de JSON
Valida que el contenido sea JSON con el formato correcto. Ideal para garantizar que las salidas estructuradas del LLM se puedan analizar de forma segura.
Casos de uso:
- Validar las respuestas JSON de los bloques Agent antes de analizarlas
- Garantizar que los payloads de la API tengan el formato correcto
- Comprobar la integridad de los datos estructurados
Salida:
passed:truesi el JSON es válido,falseen caso contrarioerror: Mensaje de error si la validación falla (p. ej., "Invalid JSON: Unexpected token...")
Validación con expresiones regulares
Comprueba si el contenido coincide con un patrón de expresión regular especificado.
Casos de uso:
- Validar direcciones de correo electrónico
- Comprobar formatos de números de teléfono
- Verificar URL o identificadores personalizados
- Aplicar patrones de texto específicos
Configuración:
- Patrón de expresión regular: La expresión regular con la que se compara (p. ej.,
^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$para correos electrónicos)
Salida:
passed:truesi el contenido coincide con el patrón,falseen caso contrarioerror: Mensaje de error si la validación falla
Detección de alucinaciones
Usa la generación aumentada por recuperación (RAG) con puntuación del LLM para detectar cuándo el contenido generado por IA contradice tu base de conocimiento o no se basa en ella.
Cómo funciona:
- Consulta tu base de conocimiento para obtener contexto relevante
- Envía tanto la salida de la IA como el contexto recuperado a un LLM
- El LLM asigna una puntuación de confianza (escala de 0 a 10)
- 0 = Alucinación total (completamente sin fundamento)
- 10 = Totalmente fundamentado (completamente respaldado por la base de conocimiento)
- La validación se supera si la puntuación ≥ umbral (predeterminado: 3)
Configuración:
- Base de conocimiento: Selecciona entre tus bases de conocimiento existentes
- Modelo: Elige el LLM para la puntuación (requiere razonamiento sólido; se recomiendan GPT-4o y Claude 3.7 Sonnet)
- Clave de API: Autenticación para el proveedor de LLM seleccionado (se oculta automáticamente en modelos alojados/Ollama)
- Umbral de confianza: Puntuación mínima para aprobar (0-10, predeterminado: 3)
- Top K (Avanzado): Número de fragmentos de la base de conocimiento que se recuperarán (predeterminado: 5)
Salida:
passed:truesi la puntuación de confianza ≥ umbralscore: Puntuación de confianza (0-10)reasoning: Explicación del LLM sobre la puntuaciónerror: Mensaje de error si la validación falla
Casos de uso:
- Valida las respuestas del agente con la documentación
- Garantiza que las respuestas de atención al cliente sean factualmente correctas
- Verifica que el contenido generado coincida con el material de origen
- Control de calidad para aplicaciones RAG
Detección de PII
Detecta información de identificación personal mediante Microsoft Presidio. Admite los tipos de entidades seleccionables en varios países e idiomas.
Cómo funciona:
- Escanea el contenido en busca de entidades de PII mediante coincidencia de patrones y NLP
- Devuelve las entidades detectadas con sus ubicaciones y puntuaciones de confianza
- Opcionalmente, enmascara la PII detectada en la salida
Configuración:
- Tipos de PII a detectar: Selecciona entre categorías agrupadas mediante el selector modal
- Comunes: Nombre de persona, Correo electrónico, Teléfono, Tarjeta de crédito, Dirección IP, etc.
- EE. UU.: SSN, Licencia de conducir, Pasaporte, etc.
- Reino Unido: Número de NHS, Número de seguro nacional
- España: NIF, NIE, CIF
- Italia: Código fiscal, Licencia de conducir, Código de IVA
- Polonia: PESEL, NIP, REGON
- Singapur: NRIC/FIN, UEN
- Australia: ABN, ACN, TFN, Medicare
- India: Aadhaar, PAN, Pasaporte, Número de votante
- Modo:
- Block: Detecta PII y establece
passedenfalsesi la encuentra (predeterminado). Conecta un bloque Condition para aplicar la decisión. - Enmascarar: Reemplaza la PII detectada por valores enmascarados
- Block: Detecta PII y establece
- Idioma: Idioma de detección (predeterminado: inglés)
Salida:
passed: en modo Block,falsesi se detecta PII seleccionada; en modo Mask,truetras enmascarar, aunque haya entidades detectadasdetectedEntities: Arreglo de PII detectada con tipo, ubicación y confianzamaskedText: Contenido con PII enmascarada (solo si mode = "Mask")error: Mensaje de error si la validación falla
Casos de uso:
- Bloquear contenido que contenga información personal sensible
- Enmascarar PII antes de registrar o almacenar datos
- Cumplimiento con GDPR, HIPAA y otras regulaciones de privacidad
- Sanear las entradas del usuario antes de procesarlas
Configuración
Contenido a validar
El contenido de entrada a validar. Normalmente proviene de:
- Salidas del bloque Agent:
<agent.content> - Resultados del bloque Function:
<function.result> - Respuestas de API:
<api.data> - Cualquier otra salida de bloque
Tipo de validación
Elige entre cuatro tipos de validación:
- JSON válido: Comprueba si el contenido tiene el formato JSON correcto
- Coincidencia Regex: Verifica si el contenido coincide con un patrón regex
- Comprobación de alucinaciones: Valida contra la base de conocimiento con puntuación LLM
- Detección de PII: Detecta y, opcionalmente, enmascara información personal identificable
Salidas
Todos los tipos de validación devuelven:
<guardrails.passed>: Booleano que indica si la validación fue exitosa<guardrails.validationType>: El tipo de validación realizada<guardrails.input>: La entrada original que se validó<guardrails.error>: Mensaje de error si la validación falló (opcional)
Salidas adicionales por tipo:
Comprobación de alucinaciones:
<guardrails.score>: Puntuación de confianza (0-10)<guardrails.reasoning>: Explicación del LLM
Detección de PII:
<guardrails.detectedEntities>: Arreglo de entidades PII detectadas<guardrails.maskedText>: Contenido con PII enmascarada (si mode = "Mask")
Ejemplos de casos de uso
Validar JSON antes de parsear
Escenario: Asegurar que la salida de Agent sea JSON válido
- Agent genera una respuesta JSON estructurada
- Guardrails valida el formato JSON
- El bloque Condition comprueba
<guardrails.passed> - Si pasa → Parsear y usar los datos, Si falla → Reintentar o manejar el error
Prevenir alucinaciones
Escenario: Validar respuestas de atención al cliente
- El agente genera una respuesta a la pregunta del cliente
- Guardrails verifica contra la base de conocimiento de documentación de soporte
- Si la puntuación de confianza ≥ 3 → Enviar respuesta
- Si la puntuación de confianza < 3 → Marcar para revisión humana
Bloquear PII en las entradas del usuario
Escenario: Sanitizar el contenido enviado por el usuario
- El usuario envía un formulario con contenido de texto
- Guardrails detecta PII (correos electrónicos, números de teléfono, SSN, etc.)
- Si se detecta PII → Rechazar el envío o enmascarar los datos sensibles
- Si no hay PII → Procesar con normalidad
Validar el formato de correo electrónico
Escenario: Verificar el formato de la dirección de correo electrónico
- El agente extrae el correo electrónico del texto
- Guardrails valida con un patrón regex
- Si es válido → Usar el correo electrónico para la notificación
- Si no es válido → Solicitar corrección
Buenas prácticas
- Encadenar con bloques Condition: Usa
<guardrails.passed>para ramificar la lógica del flujo de trabajo según los resultados de la validación - Usa la validación JSON antes de parsear: Valida siempre la estructura JSON antes de intentar parsear las salidas del LLM
- Elige los tipos de PII adecuados: Selecciona solo los tipos de entidad PII relevantes para tu caso de uso, para obtener un mejor rendimiento
- Define umbrales de confianza razonables: Para la detección de alucinaciones, ajusta el umbral según tus requisitos de precisión (más alto = más estricto)
- Usa modelos potentes para la detección de alucinaciones: GPT-4o o Claude 3.7 Sonnet ofrecen una puntuación de confianza más precisa
- Enmascara la PII para el registro: Usa el modo "Mask" cuando necesites registrar o almacenar contenido que pueda contener PII
- Prueba los patrones regex: Valida a fondo tus patrones regex antes de desplegarlos en producción
- Supervisa los fallos de validación: Haz seguimiento de los mensajes
<guardrails.error>para identificar problemas de validación comunes
La validación de Guardrails se realiza de forma síncrona en tu flujo de trabajo. Para la detección de alucinaciones, elige modelos más rápidos (como GPT-4o-mini) si la latencia es crítica.