Para agentes de IA: hay un índice de documentación disponible en https://www.mongodb.com/es/docs/llms.txt — versiones en markdown de todas las páginas están disponibles agregando .md a cualquier ruta URL.
See how MongoDB 9.0 delivers up to 2x higher throughput.
MongoDB Branding Shape
Register now >
Docs Menu

Utilice límites de contenido

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.

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

block

Rechaza la llamada. La ejecución se detiene y devuelve un error a quien realizó la llamada.

modify

Elimina o transforma el contenido coincidente y permite que la ejecución continúe con el contenido modificado.

log_only

Registra que se activó la barrera de seguridad y permite que la ejecución continúe con el contenido original.

require_review

La ejecución queda suspendida para revisión humana. La ejecución solo se reanudará una vez que un revisor la apruebe.

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

llm_input

El contenido del usuario que llega al modelo

Antes de una llamada de modelo

llm_output

La respuesta del modelo

Antes de que la respuesta regrese al usuario

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

name

Cualquier cadena

(Obligatorio) Nombre para mostrar de la barandilla.

description

Cualquier cadena

Descripción de la finalidad de la barandilla de seguridad.

type

output_validation

(Obligatorio) Tipo de barandilla.

action

block, modify, log_only, require_review

(Obligatorio) Acción a tomar cuando se activa la barandilla de seguridad.

status

active, inactive

Si el motor del agente Atlas aplica la barrera de seguridad. El motor del agente Atlas aplica las barreras de seguridad cuyo estado es active.

stage_filter

llm_input, llm_output

Matriz de las etapas en las que el mecanismo de control evalúa el contenido. Para evaluar ambas etapas, enumere tanto llm_input como llm_output.

workspace_ids

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.

config.match_patterns

Conjunto de patrones de expresiones regulares

Matriz de los patrones con los que el guardabarrera compara el contenido. Cada patrón establece un type de regex y un value que contiene la expresión regular.

config.on_fail

fix, noop, log_only, block

Comportamiento que se aplicará al contenido que coincida con un patrón. Este campo se aplica solo cuando action se establece en modify.

Para ver un ejemplo del cuerpo de una solicitud que configura estos campos, consulte la pestaña REST API en la siguiente sección.

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

GET

/api/v1/projects/{projectId}/guardrails

POST

/api/v1/projects/{projectId}/guardrails

GET

/api/v1/projects/{projectId}/guardrails/{guardrailId}

PUT

/api/v1/projects/{projectId}/guardrails/{guardrailId}

DELETE

/api/v1/projects/{projectId}/guardrails/{guardrailId}

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"
}
}

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.

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

llm_input

El contenido del usuario se evalúa antes de realizar una llamada al modelo.

llm_output

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:

  1. block

  2. require_review

  3. modify

  4. log_only

Por ejemplo, si una barrera de seguridad devuelve modify y otra devuelve block, el OE bloquea la llamada.

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.