WIP: feature: Add before Guardrail #26
2 Participants
Notifications
Due Date
No due date set.
Blocks
Reference: va/agent#26
Reference in New Issue
Block a user
Delete Branch "feature/before-guardrail"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Resumen
Se agrega el guardrail previo sobre cada conversación para clasificar prompts y devolver respuestas de bloqueo personalizadas, reforzando el filtro de emojis y su documentación.
Cambios principales
✨ GovernancePlugin invoca un LLM con salida estructurada y puede responder con
blocking_responsemientras escribe el contexto de bloqueo.🛡️ Agent registra
before_model_callbackpara cortar la generación principal cuando la decisión esunsafe.🧼 Regex +
FORBIDDEN_EMOJIScubren combinaciones con tonos/ZWJ y se validan víatests/test_governance_emojis.py.📝 README documenta cómo ejecutar el suite específico para el filtro de emojis.
Características destacadas / Detalles técnicos
GenerateContentConfigobliga JSON (GuardrailOutput) con temperature=0.1 y hasta 1000 tokens.CallbackContext.stateahora guardaguardrail_blocked,guardrail_messageyguardrail_reasoningpara auditoría.settings.agent_modelen el guardrail LLM, sin configuraciones extras fuera degoogle_cloud_project/location.Pruebas / Checklist
uv run ruff checkuv run ty checkuv run pytest tests/test_governance_emojis.pyEjemplo de bloqueo
feature: Add before Guardrailto WIP: feature: Add before GuardrailView command line instructions
Checkout
From your project repository, check out a new branch and test the changes.