1. Por qué examinar la salida insegura de la IA en la etapa de salida
El examen de entrada captura un prompt malo. No puede capturar una respuesta mala: un modelo persuadido fuera de política, un fine-tune con guardrails integrados más débiles, o un prompt perfectamente razonable que produjo una completación irrazonable. La etapa de salida es donde afirmas “sin importar el porqué, este texto no sale del gateway”. Una regla de gateway se dispara de forma determinista y aplica por igual a través de cada modelo detrás de tu clave. Y cada regla que se dispara aterriza en el feed de Matches del espacio de trabajo — tipo de regla, acción, etapa — así que tienes un rastro de auditoría de qué se capturó y qué se dejó pasar.La defensa vive en el gateway, no en tu aplicación. Edita el guardrail y
el cambio surte efecto en la siguiente llamada para cada clave adjunta a él —
sin redespliegue, sin cambio de SDK. Tu aplicación sigue llamando a
/v1/chat/completions exactamente como antes.2. Las dos formas de capturarla
Empareja una denylist determinista con un juez semántico para defensa en profundidad.Literal — keyword / regex (latencia cero)
Literal — keyword / regex (latencia cero)
Una regla
keyword es una coincidencia de subcadena insensible a
mayúsculas; una regla regex es un patrón RE2 (tiempo lineal, sin
referencias hacia atrás). Ambas se ejecutan en la ruta caliente sin
llamada de red — ideal para una lista conocida de palabras prohibidas,
una denylist de competidores, o un patrón estructural (un token de
plantilla de chat filtrado, una frase definitiva de “tienes derecho a
daños”).Semántico — llm_judge (captura lo que ninguna regex puede)
Semántico — llm_judge (captura lo que ninguna regex puede)
Una regla
llm_judge evalúa la respuesta contra una rúbrica que escribes
usando un modelo en tu espacio de trabajo — toxicidad, tono fuera de
marca, consejo fuera de política que ninguna lista literal captura. Lleva
un judge_timeout_ms, es fail-open por defecto (un error del juez se
registra y la respuesta continúa), y sus tokens se facturan como una
sub-línea de juez. Ver la
referencia del juez LLM.3. Un ejemplo concreto — bloquea lo tóxico, enmascara lo fuera de marca
Un único guardrail de etapa de salida que bloquea una respuesta tóxica semánticamente y enmascara términos de marca prohibidos en lo que quede:/console/guardrails → New guardrail,
añade las dos reglas, y adjúntalo a una clave desde el editor de Token (la
vinculación vive en la clave como guardrail_id). La configuración se ejecuta
sobre tu sesión de consola, no tu clave de relay; solo la llamada /v1/* de
abajo usa una clave sk-orca-....
guardrail_blocked. Si está limpio pero menciona un término prohibido, ese
tramo se renderiza como una redacción tipada y el resto fluye.
4. Empieza desde un preset
La biblioteca de plantillas de New guardrail entrega puntos de partida listos en las categorías Safety, Brand y Compliance. Un preset es una semilla — aplícalo, luego edita libremente.| Categoría | Preset de etapa de salida desde el que empezar |
|---|---|
| Safety | System-Prompt Leak Detector (output), Strong System Prompt Leak — marca/bloquea respuestas que devuelven tokens de prompt de sistema o de plantilla de chat. |
| Brand | Profanity Filter (mask) — se ejecuta en ambas etapas y enmascara palabras en denylist en la respuesta. (Los presets estilo bloqueo Profanity / Brand Safety y Competitor Mentions son semillas de etapa de entrada; reapunta una copia a output si quieres que examinen la respuesta.) |
| Compliance | Legal Disclaimer Enforce — marca respuestas que dan consejo legal/financiero definitivo para revisión del equipo. |
5. Streaming: la advertencia que importa
Si una regla de salida se aplica en vivo depende de la acción y de si transmites.| Acción | Sin streaming | Con streaming |
|---|---|---|
block | Respuesta retenida; HTTP 400 guardrail_blocked | El escáner corta el stream en pleno vuelo y emite un mensaje de reemplazo — el contenido bloqueado nunca llega al cliente |
mask | Coincidencia redactada en el texto devuelto | Solo sin streaming hoy; la reescritura de stream en línea está en la hoja de ruta |
flag | Registra una coincidencia, no cambia nada | Registra una coincidencia, no cambia nada |
6. Forma de política recomendada
Apila tres reglas en un guardrail
-
keyword/regexenoutput— captura de latencia cero para términos prohibidos conocidos y patrones estructurales. -
llm_judgeenoutput— captura semántica de toxicidad / fuera de marca / fuera de política para lo que la lista literal omite. -
Lanza vía
flagprimero, observa el feed de Matches, luego promueve ablockuna vez que la tasa de falsos positivos sea aceptable. Ver Modos de aplicación.
Referencia de Guardrails
Referencia completa de tipos de regla, acciones, etapas, el juez LLM,
presets, el arnés de eval y el feed de Matches.
Exfiltración de datos
Impedir que los datos sensibles salgan en la respuesta de un modelo o una
llamada a herramienta.
