Saltar al contenido

¿Cómo soluciono los errores al refinar los modelos en Amazon Bedrock?

7 minutos de lectura
0

Quiero solucionar un error que recibo al refinar los modelos en Amazon Bedrock.

Solución

Nota: Si se muestran errores al ejecutar comandos de la Interfaz de la línea de comandos de AWS (AWS CLI), consulta Solución de problemas de AWS CLI. Además, asegúrate de utilizar la versión más reciente de la AWS CLI.

Problemas de acceso y disponibilidad

Requisito previo: Solicita acceso al modelo base.

Amazon Bedrock admite el refinamiento en determinados modelos básicos y regiones de AWS. Asegúrate de utilizar una región de AWS compatible con tu modelo con capacidades de refinamiento. Si tu región no admite tu modelo, el selector de modelos de Amazon Bedrock se carga de forma continua. Si no puedes crear un trabajo de refinamiento, es posible que recibas el siguiente mensaje de error:

«Unable to Create a fine-tuning job ("The provided model identifier is invalid" error)»

Para resolver el error de acceso, confirma que el modelo y las capacidades de refinamiento son compatibles en tu región de AWS preferida.

Si ves una pantalla en blanco o no puedes seleccionar un modelo, significa que tu modelo no está disponible en esa región o tu cuenta de AWS no tiene acceso al modelo. Para resolverlo, selecciona un modelo en diferentes redes y navegadores. Al seleccionar modelos, captura un archivo HAR. A continuación, comprueba que no tienes restricciones para la VPN, el firewall o la infraestructura de escritorio virtual (VDI). Si aún no puedes acceder a la consola de Amazon Bedrock, ponte en contacto con el administrador de la red.

Problemas de permisos de IAM

Para acceder al bucket de Amazon Simple Storage Service (Amazon S3) y personalizar un modelo, debes adjuntar los permisos correctos a tu rol de AWS Identity and Access Management (IAM). Si no has configurado correctamente los permisos para el rol de IAM, recibirás el siguiente mensaje de error:

«Encountered an unexpected error when processing the request, please try again,"AccessDenied"».

Para resolver este error, concede permisos de IAM a Amazon Bedrock para la personalización del modelo.

Errores de acceso entre regiones

Los trabajos de refinamiento solo pueden acceder a los datos de Amazon S3 en la misma región en la que se ejecuta el trabajo. Si intentas acceder a los datos de entrenamiento almacenados en un bucket de S3 que se encuentra en una región diferente a la de tu trabajo de refinamiento, recibirás el siguiente mensaje de error:

«Could not validate GetObject permissions to access S3 bucket»

Para resolver este error, confirma que tu bucket de S3 y el trabajo de refinamiento de Amazon Bedrock se encuentran en la misma región. A continuación, traslada tus datos de entrenamiento a un bucket de S3 en la misma región que Amazon Bedrock.

Errores de formato y validación de datos

Tus conjuntos de datos deben cumplir con los requisitos del modelo de entrenamiento y validación. Si envías un conjunto de datos de entrenamiento con una estructura o un formato JSON incorrectos, es posible que recibas uno de los siguientes errores:

«The provided S3 URI is invalid", ";validation error detected: Value 's3://..' failed to satisfy constraint:" Member must satisfy regular expression pattern».

«Invalid training input data configuration. Check the input data S3 Uris(Uri should be a file, not a directory) and retry request»

Para resolverlos, asegúrate de usar identificadores de recursos (URI) uniformes de archivos y confirma que no usas URI de directorio.

Ejemplo de URL: s3://bucket-name/datasets/train/train.jsonl

Ejemplo de URL de directorio: s3://bucket-name/datasets/train/

A continuación, comprueba que la ruta apunta a la ubicación exacta del archivo. Si la ruta no apunta a la ubicación exacta del archivo, verifica la estructura de rutas completa en tu bucket de S3. Actualiza el URI del archivo para que coincida con la ubicación exacta y el nombre del archivo en el que guardas los datos de entrenamiento.

Validación de la estructura del conjunto de datos

Los diferentes modelos de texto tienen diferentes requisitos de datos y esquemas JSON esperados. Si envías un conjunto de datos de entrenamiento con una estructura o formato JSON incorrectos, es posible que recibas el siguiente error:

«JSON structure is not supported: JSON schema error: JSON does not match JSON schema at line».

Para resolver este error, prepara los datos para ajustar los modelos de texto a texto.

Problemas de refinamiento de imágenes

Amazon Bedrock debe tener acceso al archivo de imagen en la dimensión especificada. Si cargas imágenes que no cumplen los requisitos dimensionales específicos del modelo que estás ajustando, es posible que recibas el siguiente error:

«Image Dimensions are Invalid. Check that the images conform to accepted dimensions».

Comprueba que las dimensiones de la imagen cumplen con los requisitos del modelo específico. A continuación, valida que has preparado los conjuntos de datos de imágenes para el modelo específico.

Nota: Algunos modelos solo admiten el refinamiento de textos y no de imágenes.

Errores de validación

Los archivos deben ser compatibles con el modelo. Si envías datos de entrenamiento que no cumplen con los requisitos de formato del modelo o contienen problemas estructurales, es posible que recibas el siguiente error:

«Validation error: failed during preprocessing»

Para resolver este error, comprueba el formato de los datos:

  • Asegúrate de que tu archivo JSONL tenga un objeto JSON válido por línea.
  • Comprueba que has incluido los campos obligatorios en cada ejemplo.
  • Comprueba que tus ejemplos no superen las cuotas máximas de tokens del modelo.
  • Confirma que el archivo utiliza la codificación UTF-8 sin problemas de caracteres especiales.

Supervisión del estado de los trabajos

Puedes utilizar la consola de Amazon Bedrock o la AWS CLI para supervisar el estado de los trabajos. La supervisión del progreso en tiempo real no está disponible en Amazon Bedrock.

Para usar la consola, consulta Supervisión del trabajo de personalización del modelo.

Para usar la AWS CLI, ejecuta el siguiente comando get-model-customization-job:

aws bedrock get-model-customization-job -job-identifier "jobARN"

Nota: Sustituye jobARN por el nombre de recurso de Amazon (ARN) de tu trabajo.

Luego, puedes estimar el tiempo que lleva completar cada trabajo como punto de referencia en comparación con el tiempo de finalización real del modelo. Cuando hagas una estimación, ten en cuenta los siguientes factores:

  • La duración del refinamiento depende del tamaño de los datos, la cantidad de épocas y el tamaño del lote.
  • Los primeros errores aparecen en los primeros minutos.
  • Para conjuntos de datos más grandes, el refinamiento puede tardar varias horas en completarse.
  • El tiempo de entrenamiento dura entre 3 y 4 horas, hasta 24 horas, según la configuración y el tráfico.

Si se produce un error en un trabajo, consulta Solución de problemas de personalización de modelos.

Si un trabajo ha estado en estado de entrenamiento durante más de 24 horas, ponte en contacto con AWS Support.

Inferencia para modelos refinados

En el caso de los modelos refinados y personalizados, debes comprar rendimiento aprovisionado para modelos distintos de Amazon Nova a fin de crear un ARN de modelo aprovisionado independiente que se utilice en lugar del ARN del modelo original.

Si intentas usar el ARN del modelo original directamente en las llamadas a la API, es posible que recibas el siguiente error:

«An error occurred (ValidationException) when calling the xxxx operation: 1 validation error detected: Value 'arn:aws:bedrock:xxxxx' at 'modelId' failed to satisfy constraint: Member must satisfy regular expression pattern: ...»

Para resolver este error, sigue estos pasos:

  1. Crea un rendimiento aprovisionado para tu modelo refinado.
  2. Anota el ARN del modelo aprovisionado de la respuesta.
  3. Cuando llames a modelos refinados a través de la API, utiliza el siguiente formato de ARN de modelo específico para los modelos personalizados:
    arn:aws:bedrock:[region]:[account]:provisioned-model/[name]
    Nota: Sustituye region por tu región, account por la información de tu cuenta y name por el nombre de tu modelo.
  4. Comprueba que el modelo aprovisionado esté en estado InService antes de usar la llamada a la API GetProvisionedModelThroughput.

Información relacionada

Configuración de la inferencia para un modelo personalizado

Personalización del modelo para mejorar su rendimiento según el caso de uso

OFICIAL DE AWSActualizada hace 3 meses