regex te permite coincidir con esa forma en cada llamada y luego
bloquearla, enmascararla o marcarla, antes de que el prompt llegue
al modelo y antes de que la respuesta llegue a tu usuario.
Este es un aterrizaje enfocado para el caso de uso de patrón estructurado. Para
el motor de guardrails completo — cada tipo de regla, campo y ruta — ver la
referencia de Guardrails.
api.orcarouter.ai). Creas el guardrail bajo tu propia sesión; solo la llamada
final /v1/* usa una clave de relay sk-orca-.... Crear y editar guardrails
requiere Developer+ en el espacio de trabajo.1. Cuándo necesitas un control de guardrail regex para llm
Una reglaregex es la herramienta correcta cuando lo que quieres capturar tiene
estructura que una denylist literal no puede expresar pero no es una
identidad estándar que el detector pii ya
cubre.
Códigos estructurados
Tokens con forma de formato
Patrones de fuga en la salida
Verificaciones baratas y deterministas
2. RE2 — tiempo lineal, sin backreferences
Elpattern de una regla regex es un regex RE2 de Go. RE2 es el motor que
hace que una regla regex sea segura de ejecutar en cada solicitud:
Coincidencia en tiempo lineal — sin backtracking catastrófico
Coincidencia en tiempo lineal — sin backtracking catastrófico
Sin backreferences, sin lookaround
Sin backreferences, sin lookaround
\1), lookahead ni lookbehind. Si estás
portando un patrón PCRE que depende de esos, reescríbelo sin ellos. Las
clases de caracteres, anclas, cuantificadores, alternación y grupos sin
captura funcionan todos como se espera.La insensibilidad a mayúsculas y los flags van en el patrón
La insensibilidad a mayúsculas y los flags van en el patrón
(?i) para insensible a mayúsculas, (?m) para
multilínea. Ejemplo: (?i)\bproject-orca\b.El patrón debe compilar — verificado al guardar
El patrón debe compilar — verificado al guardar
3. Anatomía de una regla regex
Una reglaregex es la regla más pequeña del motor después de keyword: un
patrón, una etapa y una acción.
| Campo | Qué hace |
|---|---|
pattern | Un regex RE2 de Go (tiempo lineal, sin backreferences). Debe compilar. |
stage | input (solicitud), output (respuesta) o both. |
action | block, mask o flag. |
[REDACTED] — una regla regex no es tipada, así que no
renderiza una etiqueta por entidad como [EMAIL]. Si quieres una etiqueta
tipada o un token de reemplazo personalizado, modela la forma como una
entidad PII personalizada en su
lugar.
4. Un ejemplo concreto
Supón que tus números de pedido internos se ven comoORD- seguido de ocho
dígitos, y nunca quieres uno repetido en la respuesta de un modelo. Añade una
sola regla regex en la etapa output:
Crea un guardrail
order-id-filter.Añade una regla regex
ORD-\d{8}. Guarda.Pruébalo en el sandbox
output y ejecuta
la política actual localmente — sin llamada upstream, sin cuota:Vincula una clave
order-id-filter del desplegable Guardrail
(establece guardrail_id en la clave), o marca el guardrail como valor por
defecto del espacio de trabajo. Ver
Vincular a una clave y
Valor por defecto de cuenta.5. Cobertura de etapa y streaming
La acción que eliges interactúa con si la respuesta hace streaming:| Acción | Sin streaming | Con streaming |
|---|---|---|
block (salida) | Aplicado | Aplicado — el escáner corta el stream |
mask (salida) | Aplicado | Aplicado — el escáner reescribe el buffer |
6. Elige una acción
Una reglaregex elige una acción por regla:
Block — rechaza la llamada
Block — rechaza la llamada
guardrail_blocked. Una solicitud bloqueada no cuesta cuota — un bloqueo
en la etapa de entrada se dispara antes de la medición; un bloqueo en la
etapa de salida reembolsa la cuota preconsumida — y se marca como
skip-retry. Ver el
error guardrail_blocked.Mask — redacta la coincidencia
Mask — redacta la coincidencia
[REDACTED] y la solicitud
continúa con el texto saneado — el modelo upstream (etapa de entrada) o tu
usuario (etapa de salida) nunca ve el original. Ver
Acciones.Flag — solo observar
Flag — solo observar
flag, observa el feed de
Matches, luego promuévelo a mask/block una vez que confíes en él.Annotate — adjunta una nota
Annotate — adjunta una nota
Spotlight — envuelve como datos no confiables
Spotlight — envuelve como datos no confiables
⟦UNTRUSTED⟧…⟦/UNTRUSTED⟧) que le dicen al modelo que
trate el texto como datos, no instrucciones — una mitigación de inyección
de prompts. Ver Acciones.7. Ve qué se disparó — y afina la precisión
Cada regla que se dispara registra una coincidencia — tipo de regla, acción, etapa y una cadena de detalle — en el feed Matches del espacio de trabajo. Un patrón demasiado amplio es la trampa clásica del regex —\d{8} coincide con
cada serie de ocho dígitos, no solo tus números de pedido. Áncalo (un prefijo
fijo como ORD-, límites de palabra \b), observa el feed de Matches, y marca
falsos positivos para acotar a medida que avanzas. Para una rejilla A/B contra un
corpus — probando que un patrón captura lo que debe sin marcar tráfico benigno —
el arnés de Eval vive una pestaña al
lado. Ver
Afinar falsos positivos.
8. Dónde ir a continuación
Entidades PII personalizadas
[REDACTED] desnudo.Palabras sensibles
Acciones
Referencia de Guardrails
regex gobierna contenido. Para gobernar las llamadas a
herramienta de un agente — denegar acciones destructivas, redactar argumentos
de llamada a herramienta, requerir aprobación — usa el
Firewall y sus
matchers de regla. Para políticas difusas que
ningún patrón puede expresar (toxicidad, fuera de tema, intención de inyección),
una regla llm_judge ejecuta una verificación semántica contra un modelo del
espacio de trabajo. Para ver dónde encaja el regex en el diseño general, lee
Guardrails vs Firewall.