Saltar al contenido principal
Cada regla de guardrail responde tres preguntas — qué buscar (un tipo), dónde buscar (una etapa) y qué hacer al respecto (una acción). Esta página trata de esa tercera elección. La acción de una regla es el campo más consecuente de ella: decide si una coincidencia detiene la solicitud, la reescribe silenciosamente o solo deja una miga de pan. El constructor de reglas presenta cinco acciones en total — block, mask, flag, annotate y spotlight. Esta página cubre las tres elecciones de aplicación a las que recurres primero: block, mask y flag. Elige una por regla (o, para una regla PII, enruta diferentes entidades a diferentes acciones; ver §5). Las otras dos son acciones de modelado de prompt, no bloqueantes: annotate inyecta una nota de seguridad upstream (ver seguridad de código), y spotlight envuelve la entrada no confiable coincidente en delimitadores para que el modelo la trate como datos, no como instrucciones. El roster completo vive en la Visión general de guardrails. Para el motor más amplio — tipos de regla, etapas, vincular una política a una clave — empieza en la Visión general de guardrails o la referencia completa de Guardrails.

1. La decisión block mask flag de guardrail en una línea

block

Rechaza la llamada con HTTP 400 guardrail_blocked. El modelo nunca se ejecuta (etapa de entrada) o su respuesta nunca regresa (etapa de salida).

mask

Redacta cada coincidencia — p. ej. jane@acme.com[EMAIL] — y deja pasar el texto saneado. La solicitud continúa.

flag

No cambia nada del tráfico. Registra una coincidencia en el feed y sigue. Solo observar.
Estas son las tres acciones de aplicación. La que establezcas se honra en todas partes donde la regla se ejecuta — el constructor de reglas de la consola, el sandbox de Test y la ruta de relay en vivo /v1/* leen todos el mismo valor block / mask / flag.

2. Un ejemplo concreto — tres reglas, tres acciones

Aquí hay un solo guardrail cuyas tres reglas eligen cada una una acción diferente. Esto lo creas en la consola (/console/guardrails) en tu sesión — la clave de relay sk-orca-... es solo para llamadas /v1/*, nunca para editar política. Crear o editar un guardrail requiere el rol Developer+.
{
  "rules": [
    { "type": "keyword", "stage": "input",  "action": "block",
      "keywords": ["internal-only", "do-not-share"] },
    { "type": "pii",     "stage": "input",  "action": "mask",
      "entities": ["email", "phone"] },
    { "type": "regex",   "stage": "output", "action": "flag",
      "pattern": "(?i)acme\\s+confidential" }
  ]
}
Qué hace cada regla en una solicitud:
  • La regla block rechaza cualquier prompt que contenga uno de esos términos literales — HTTP 400, el modelo nunca se ejecuta.
  • La regla mask reescribe emails y números de teléfono a [EMAIL] / [PHONE] en el prompt antes de que el modelo lo vea.
  • La regla flag observa la salida del modelo buscando un marcador confidencial y registra una coincidencia sin alterar la respuesta — para que puedas medir con qué frecuencia aparece antes de decidir aplicar.
El motor ejecuta cada regla aplicable y pliega los resultados en un solo veredicto. Si alguna regla bloquea, la solicitud es bloqueada.

3. block — rechaza con HTTP 400

Una acción block rechaza toda la llamada. El llamador obtiene HTTP 400 con el código de error guardrail_blocked y un mensaje que nombra el guardrail y la regla que se disparó.
Un bloqueo en la etapa de entrada se dispara antes de la medición, así que nada se consume. Un bloqueo en la etapa de salida reembolsa la cuota preconsumida después de rechazar la respuesta. En cualquier caso el llamador no paga nada por una llamada bloqueada.
Un resultado guardrail_blocked es skip-retry — reejecutar el mismo prompt contra otro canal simplemente volvería a bloquear, así que el gateway no malgastará un reintento. Ver el error guardrail_blocked.
En una respuesta sin streaming la respuesta se examina antes de regresar. En una respuesta con streaming un escáner corta el stream en pleno vuelo y emite un mensaje de reemplazo antes de que cualquier contenido bloqueado llegue al cliente. Ver cobertura de streaming.
Recurre a block cuando una coincidencia significa que la solicitud no debe continuar — secretos en un prompt, un intento de jailbreak, una línea dura de cumplimiento.

4. mask — redacta y continúa

Una acción mask redacta cada coincidencia y deja pasar la solicitud con el texto saneado. El modelo upstream nunca ve el original. En una regla PII, cada coincidencia se reemplaza con una etiqueta tipada derivada de la entidad — un email se convierte en [EMAIL], un SSN en [SSN], una tarjeta de crédito [CREDIT_CARD], y así sucesivamente. (Puedes sobrescribir la cadena de reemplazo por entidad personalizada; ver formatos de enmascarado.)
El enmascarado en la etapa de entrada está activo en cada stream. Reescribe la solicitud antes de que el modelo se ejecute, con o sin streaming. El enmascarado en la etapa de salida se aplica solo a respuestas sin streaming — el texto enmascarado se reenvía después de que la respuesta completa se examina. En una respuesta con streaming el gateway computa el enmascarado pero aún no reenvía el texto redactado, así que una regla mask no redacta una respuesta con streaming hoy; el enmascarado de salida en el stream está en el roadmap. (Un block de salida todavía corta un stream en pleno vuelo — ver §3.) Prueba primero tu combinación exacta de etapa/stream en el sandbox. Ver cobertura de streaming.
Recurre a mask cuando el contenido está bien pero una subcadena no debería llegar al modelo — la redacción de PII es el caso canónico. El punto de partida llave en mano es el preset PII Shield; ver PII Shield.

5. flag — solo registra, no cambia nada

Una acción flag es solo observar: la solicitud es idéntica byte a byte a una sin regla alguna, salvo que se registra una coincidencia en el Feed de coincidencias. Nada se bloquea, nada se redacta.
flag es cómo mides una regla antes de aplicarla. Lanza un nuevo keyword o regex como flag, observa el feed de Matches durante unos días para ver su tasa real de verdaderos vs. falsos positivos sobre tráfico real, luego promuévelo a mask o block una vez que confíes en él. Afinar un patrón ruidoso con flag activado supera descubrir los falsos positivos en producción con block activado. Ver afinar falsos positivos.
Una coincidencia marcada registra el tipo de regla, acción, etapa y una cadena de detalle — y la subcadena coincidente solo si Log raw content está activado para ese guardrail (apagado por defecto, la postura conservadora con la privacidad). Ver registro y privacidad.

6. Sobrescrituras de acción por entidad

Una sola regla PII puede enrutar diferentes entidades a diferentes acciones vía entity_actions, en vez de apilar reglas solapadas. Cada valor de sobrescritura debe ser uno de block / mask / flag / annotate, y debe referenciar una entidad que la regla ya declara — el validador rechaza cualquier otra cosa.
{
  "type": "pii",
  "stage": "input",
  "action": "mask",
  "entities": ["email", "phone", "ip", "credit_card", "ssn"],
  "entity_actions": {
    "credit_card": "block",
    "ssn": "block"
  }
}
Esta única regla enmascara emails, teléfonos e IPs pero bloquea la solicitud directamente ante un número de tarjeta o SSN. Ver entidades PII personalizadas para superponer tus propios detectores bajo el mismo modelo de sobrescritura.

7. Elegir la acción correcta

Si quieres…UsaEfecto
Detener la solicitud por completoblockHTTP 400, sin cuota, skip-retry
Quitar una subcadena, mantener la llamadamaskTexto redactado reenviado
Observar sin tocar el tráficoflagSolo coincidencia registrada
Las acciones se componen con etapas. La misma acción se comporta de forma ligeramente diferente en entrada vs salida — un bloqueo de entrada ahorra cuota de antemano; un bloqueo de salida la reembolsa; el enmascarado de salida se aplica solo a respuestas sin streaming, mientras que un bloqueo de salida corta respuestas con y sin streaming por igual. Lee etapa de entrada y etapa de salida junto a esta página.

8. Dónde ir a continuación

El error guardrail_blocked

Cómo se ve un 400, por qué no cuesta cuota y cómo funciona skip-retry.

Formatos de enmascarado

Etiquetas tipadas, cadenas de reemplazo personalizadas y cómo lee un prompt enmascarado el modelo.

Cobertura de streaming

Exactamente qué combinaciones de acción × etapa × stream se aplican hoy.

Modos de aplicación

Cómo block / mask / flag se mapean al modelo de aplicación más amplio del gateway, incluido el veredicto audit del firewall.
El firewall tiene su propio vocabulario de veredictos (allow, audit, deny, sanitize y más) para política de herramientas — distinto de estas acciones de contenido. Ver guardrails vs. firewall.