En esta página, se muestra cómo resolver problemas con Model Armor.
En esta sección, se incluyen pasos para solucionar problemas que pueden resultarte útiles si tienes problemas a la hora de usar Model Armor.
Todas las llamadas a la API de Model Armor devuelven un error 404 No encontrado
Establece una conexión de Private Service Connect a las APIs de Model Armor. Este error suele ocurrir cuando se accede a los extremos regionales (REP) de Model Armor con el Acceso privado a Google o sin un Private Service Connect. Para obtener más información, consulta Información sobre el acceso a extremos regionales con los extremos de Private Service Connect.
El filtro de Sensitive Data Protection muestra un error o se omite
Verifica la siguiente información:
- La plantilla de Sensitive Data Protection se encuentra en la misma región que el extremo de Model Armor al que se llama.
- El agente de servicio que hace la solicitud de Model Armor tiene los
roles
dlp.Userydlp.Readeren el proyecto que contiene la plantilla de Sensitive Data Protection.
Este error se produce debido a errores del cliente en las solicitudes SanitizeUserPrompt o
SanitizeModelResponse, o bien a problemas con la plantilla de Sensitive Data Protection.
Errores del extremo global de Model Armor
Asegúrate de hacer las solicitudes a la API en el extremo regional adecuado en lugar del extremo global.
Model Armor solo admite las siguientes operaciones en sus extremos regionales:
- Operaciones de creación, lectura, actualización, eliminación y enumeración en plantillas.
- Solicitudes a las APIs de
SanitizeUserPromptySanitizeModelResponse.
Si haces las solicitudes a la API para esas operaciones en el extremo global, verás el siguiente error:
{
"error": {
"code": 403,
"message": "Write access to project '<PROJECT_ID>' was denied",
"status": "PERMISSION_DENIED"
}
}
Errores de certificado cuando se accede a los extremos regionales de Model Armor
Este error suele ocurrir cuando se accede a los extremos regionales de Model Armor desde una red de VPC con el Acceso privado a Google o los Controles del servicio de VPC, y falla la verificación del certificado.
Por ejemplo, es posible que veas un mensaje de error similar al siguiente:
curl: (60) SSL: no alternative certificate subject name matches target host name 'modelarmor.europe-west4.rep.googleapis.com'
Para resolver este problema, crea un extremo de Private Service Connect a las APIs de Model Armor. Para obtener más información, consulta Información sobre el acceso a extremos regionales con los extremos de Private Service Connect.
La región no admite las capacidades solicitadas
Es posible que veas un mensaje de error similar al siguiente:
Region '<var>REGION</var>' does not support the requested capabilities: '<var>CAPABILITIES</var>'
Este error se produce cuando intentas crear o actualizar una plantilla en una región con restricciones de funciones, y la solicitud habilita funciones que no se admiten en esa región.
Para solucionar este problema, sigue estos pasos:
- Identifica las capacidades no compatibles que se indican en el mensaje de error.
- Revisa la disponibilidad de las funciones por región para confirmar cuáles no están disponibles en tu región de destino.
- Quita las funciones no compatibles de la plantilla que estás creando o actualizando.
Como alternativa, usa una región de Model Armor diferente que admita las funciones, si tus requisitos de residencia de datos lo permiten.
Se requiere el cumplimiento de la residencia de datos de la plantilla
Es posible que veas un mensaje de error 400 (FAILED_PRECONDITION) similar al
siguiente:
Template data residency compliance is required. The 'Enforce data residency' field must not be set to false.
Este error se produce cuando se aplica la restricción administrada del servicio de políticas de la organización Exigir el cumplimiento de la residencia de datos de la plantilla de Model Armor (constraints/modelarmor.managed.requireTemplateDataResidencyCompliance) y creas o actualizas una plantilla de Model Armor con el cumplimiento de la residencia de datos inhabilitado.
El cumplimiento de la residencia de datos se inhabilita cuando configuras data_residency_compliant
como false o borras la opción Aplicar residencia de datos. Debido a que esta
restricción se aplica de forma predeterminada, editar cualquier parámetro de configuración, como un filtro, en una
plantilla existente que ya tiene data_residency_compliant configurado como false
también activa este error. Las plantillas y solicitudes existentes para limpiar instrucciones
y respuestas no se ven afectadas, a menos que actualices la plantilla.
Para solucionar este problema, realiza una de las siguientes acciones:
- Habilita el cumplimiento de la residencia de datos en la plantilla configurando
data_residency_compliantcomotrueo seleccionando la opción Aplicar residencia de datos. - Si necesitas mantener inhabilitado el cumplimiento de la residencia de datos para la plantilla, sigue los pasos que se indican en Inhabilita la restricción de la política de la organización para la residencia de datos para que el administrador de políticas de la organización inhabilite la restricción.
Se omiten los controles o filtros de políticas para las cargas útiles o instrucciones grandes
Cuando se analizan instrucciones o respuestas grandes, como cargas útiles de generación aumentada por recuperación (RAG) o historiales de conversaciones de agentes de varios pasos, es posible que no se ejecuten filtros individuales o que el resultado de la limpieza devuelva EXECUTION_SKIPPED con uno de los siguientes mensajes de advertencia en el campo messageItems:
Detection skipped as token limit exceeded.
Input size exceeded the limit of 4194304 bytes.
Este problema se produce cuando una solicitud de limpieza unaria o una solicitud de transmisión
con búfer supera el límite del sistema de tokens de un filtro
(65,536 tokens para la inyección de instrucciones
y la detección de jailbreak, la IA responsable y el CSAM; 130,000
tokens para Sensitive Data Protection) o el límite de tamaño de entrada de 4 MB. Cuando una entrada supera el límite de tokens de un filtro
y no se detecta ninguna coincidencia, el filtro devuelve EXECUTION_SKIPPED y
NO_MATCH_FOUND, lo que permite que la solicitud continúe en las integraciones intercaladas.
Para verificar si se omitió un filtro debido a los límites de tamaño de los tokens o de las entradas, consulta
tus registros de SanitizeOperation en Cloud Logging:
jsonPayload.@type="type.googleapis.com/google.cloud.modelarmor.logging.v1.SanitizeOperationLogEntry"
"EXECUTION_SKIPPED"
Para solucionar este problema, sigue estos pasos:
- Para las cargas de trabajo de transmisión o las interacciones de agentes de larga duración, usa la limpieza de transmisión en tiempo real (
StreamSanitizeUserPromptyStreamSanitizeModelResponse). UsastreamQuerypara los agentes del Kit de desarrollo de agentes que usan Agent Gateway, que procesa la entrada en fragmentos y admite tokens ilimitados. - Para las solicitudes unarias, divide las cargas útiles de RAG grandes o recorta los historiales de conversaciones de agentes de varios pasos antes de enviarlos a Model Armor, de modo que cada solicitud se mantenga dentro de los límites del sistema de tokens y el límite de tamaño de entrada de 4 MB.