Overview
Las restricciones de Atlas Agent Engine permiten a los administradores de proyectos controlar el contenido que entra y sale de las llamadas al modelo de un agente. Los administradores establecen estas restricciones dentro de un proyecto, y Orchestration Engine (OE) las aplica bloqueando o modificando el contenido de entrada y salida correspondiente.
Para aplicar una restricción a uno o más espacios de trabajo, especifique los espacios de trabajo en el campo workspace_ids de la restricción. Si no especifica este campo, la restricción se aplicará a todos los espacios de trabajo del proyecto.
Las medidas de seguridad complementan el motor de políticas. Estas medidas controlan el contenido que entra y sale de un modelo, mientras que el motor de políticas controla las acciones que un agente puede realizar, como las herramientas y los modelos que puede utilizar.
Tipos de barandillas de seguridad
Cada barrera de seguridad tiene un tipo, que determina qué contenido evalúa, y una acción, que determina qué sucede cuando se activa.
Actualmente, el motor de agentes de Atlas solo admite el tipo de barrera output_validation. Puede usar barreras de este tipo para evaluar la salida de un agente con respecto a un conjunto de patrones de expresiones regulares. Defina estos patrones en el campo config.match_patterns de la barrera.
Cada barandilla de seguridad especifica una de las siguientes acciones:
Acción | Descripción |
|---|---|
| Rechaza la llamada. La ejecución se detiene y devuelve un error a quien realizó la llamada. |
| Elimina o transforma el contenido coincidente y permite que la ejecución continúe con el contenido modificado. |
| Registra que se activó la barrera de seguridad y permite que la ejecución continúe con el contenido original. |
| La ejecución queda suspendida para revisión humana. La ejecución solo se reanudará una vez que un revisor la apruebe. |
Etapas de la barandilla de seguridad
El filtro de etapa de una regla de seguridad determina si evalúa el contenido que entra al modelo, el que sale del modelo o ambos. Una regla de seguridad sin filtro de etapa se aplica a todas las etapas.
La siguiente tabla describe las etapas disponibles:
Etapa | Evalúa qué | Desencadenantes cuando |
|---|---|---|
| El contenido del usuario que llega al modelo | Antes de una llamada de modelo |
| La respuesta del modelo | Antes de que la respuesta regrese al usuario |
Campos de barandillas
La siguiente tabla describe los campos que definen una barrera de seguridad. Puede configurar estos campos en la interfaz de usuario de la plataforma o en el cuerpo de la solicitud JSON de una solicitud API create o update.
Campo | Possible values | Descripción |
|---|---|---|
| Cualquier cadena | (Obligatorio) Nombre para mostrar de la barandilla. |
| Cualquier cadena | Descripción de la finalidad de la barandilla de seguridad. |
|
| (Obligatorio) Tipo de barandilla. |
|
| (Obligatorio) Acción a tomar cuando se activa la barandilla de seguridad. |
|
| Si el motor del agente Atlas aplica la barrera de seguridad. El motor del agente Atlas aplica las barreras de seguridad cuyo estado es |
|
| Matriz de las etapas en las que el mecanismo de control evalúa el contenido. Para evaluar ambas etapas, enumere tanto |
| Matriz de identificadores de espacios de trabajo | Matriz que especifica los espacios de trabajo a los que se aplica la restricción. Para aplicar la restricción a todos los espacios de trabajo del proyecto, deje esta matriz vacía. |
| Conjunto de patrones de expresiones regulares | Matriz de los patrones con los que el guardabarrera compara el contenido. Cada patrón establece un |
|
| Comportamiento que se aplicará al contenido que coincida con un patrón. Este campo se aplica solo cuando |
Para ver un ejemplo del cuerpo de una solicitud que configura estos campos, consulte la pestaña REST API en la siguiente sección.
Crear y editar barandillas de seguridad
Puede crear y editar barandillas de seguridad mediante la interfaz de usuario de la plataforma o la API REST. Para ver las instrucciones, seleccione la pestaña correspondiente a su método preferido:
Navegue a Manage → Policies y luego seleccione la pestaña Guardrails.
A continuación, cree una barrera de seguridad haciendo clic en el botón Create guardrail y configurando los campos en el cuadro de diálogo Create guardrail. Para actualizar una barrera de seguridad, haga clic en su icono Edit. Para eliminar una barrera de seguridad, haga clic en su icono Delete.
Nota
La API REST orientada al cliente expone operaciones de seguridad. Las solicitudes requieren autenticación de portador y los permisos de proyecto adecuados. Para obtener más información sobre los roles de proyecto, consulte Gestionar organizaciones, proyectos y espacios de trabajo.
La siguiente tabla enumera los puntos finales disponibles:
Método | Endpoint | Referencia |
|---|---|---|
|
| |
|
| |
|
| |
|
| |
|
|
Al llamar a los puntos finales de creación y actualización, pase los campos de la regla de seguridad como cuerpo de solicitud JSON. El siguiente ejemplo de cuerpo de solicitud crea una regla de seguridad que oculta tres dígitos consecutivos del contenido que llega al modelo en un único espacio de trabajo:
{ "name": "Test guardrail", "description": "Redacts three-digit sequences", "type": "output_validation", "action": "modify", "status": "active", "stage_filter": ["llm_input"], "workspace_ids": ["ws-6a885deac97e9d280fa88cf3"], "config": { "match_patterns": [ { "type": "regex", "value": "\\d{3}" } ], "on_fail": "fix" } }
Propagación de la barandilla
Tras crear, actualizar o eliminar una regla de seguridad, el cambio surte efecto en la siguiente ejecución que gestione el OE. Al escribir en una regla de seguridad, se recargan las reglas de seguridad almacenadas en caché del OE, por lo que el cambio se aplica en la siguiente solicitud.
Los cambios en las medidas de seguridad no afectan a las ejecuciones en curso.
Aplicación
Durante cada ejecución, el OE evalúa el contenido de cada etapa en función de las directrices aplicables al proyecto en cuestión. La siguiente tabla describe las etapas y el contenido evaluado correspondiente:
Etapa | Contenido evaluado |
|---|---|
| El contenido del usuario se evalúa antes de realizar una llamada al modelo. |
| La respuesta del modelo se evalúa antes de que se envíe al usuario. |
Cuando se activa una barrera de protección con una acción block, el OE detiene la ejecución y devuelve un error al llamador. El error identifica la barrera de protección que provocó el bloqueo. Cuando se activa una barrera de protección con una acción modify, la ejecución continúa con el contenido modificado.
Cuando más de una barrera de seguridad coincide con el mismo contenido, se aplica la acción más restrictiva. Las acciones se clasifican en el siguiente orden, de la más a la menos restrictiva:
blockrequire_reviewmodifylog_only
Por ejemplo, si una barrera de seguridad devuelve modify y otra devuelve block, el OE bloquea la llamada.
Limitaciones
Las barandillas de seguridad tienen las siguientes limitaciones:
Solo para ejecuciones futuras: Los cambios en las medidas de seguridad se aplican únicamente a las ejecuciones que comiencen después de que el cambio entre en vigor. Las ejecuciones que ya estén en curso continuarán con las medidas de seguridad con las que comenzaron.
Controles de contenido únicamente: Las restricciones de seguridad controlan el contenido que entra y sale de un modelo. Para controlar las acciones que puede realizar un agente, como las herramientas y los modelos que puede llamar, utilice el Motor de políticas.