Saltar al contenido

¿Cómo soluciono el error ModelNotReadyException cuando uso modelos importados en Amazon Bedrock?

3 minutos de lectura
0

Quiero usar modelos importados en Amazon Bedrock, pero recibo el error ModelNotReadyException.

Descripción breve

Amazon Bedrock utiliza una política de expulsión interna para administrar los recursos de manera eficiente. Esta política elimina los modelos que Amazon Bedrock no ha utilizado durante un periodo determinado, normalmente una hora. Si intentas usar un modelo que no ha estado activo, es posible que aparezca el error ModelNotReadyException.

Si intentas utilizar un modelo importado en Amazon Bedrock que la política ha eliminado para optimizar la utilización del hardware, es posible que recibas un mensaje de error ModelNotReadyException similar al siguiente:

«errorMessage»: «Model is not ready for inference. Wait and try your request again».

Nota: No hay ningún equivalente al rendimiento aprovisionado para los modelos importados.

Se recomienda programar las tareas para mantener una carga constante en el modelo. Además, puedes procesar solicitudes similares por lotes para minimizar el tiempo de inactividad entre las invocaciones de modelos.

Resolución

Comprobación de que hayas importado el modelo correctamente

Uso de la consola de Amazon Bedrock o la API de AWS para comprobar que has importado el modelo

Uso de la consola de Amazon Bedrock

Sigue estos pasos:

  1. Abre la consola de Amazon Bedrock.
  2. En el panel de navegación, expande Foundation models (Modelos fundacionales) y, a continuación, selecciona Imported models (Modelos importados).
  3. Selecciona la pestaña Jobs (Trabajos).
  4. Selecciona el nombre del trabajo y, a continuación, comprueba que el valor de Status (Estado) sea Complete (Completo).

Uso de la API de AWS

Para comprobar que has importado el modelo, llama a la API GetModelImportJob. Para confirmar que has importado e implementado correctamente el modelo, comprueba que su estado sea Complete (Completo) en el campo Status (Estado) del resultado.

Configuración de los reintentos

El proceso de restauración comienza cuando invocas el modelo por primera vez después de la expulsión. El tiempo de restauración depende de la disponibilidad de la flota bajo demanda y del tamaño del modelo. Si la solicitud a la API InvokeModel o InvokeModelWithResponseStream devuelve ModelNotReadyException cuando el modelo se restaura, la solicitud se reintenta automáticamente con un retroceso exponencial de forma predeterminada.

Para configurar el número máximo de reintentos, consulta Handling ModelNotReadyException (Gestión de ModelNotReadyException).

Implementación de una estrategia de latidos

Implementa una estrategia de latidos para enviar una solicitud de ping al modelo a intervalos regulares. La solicitud de ping indica a Amazon Bedrock que el modelo sigue en uso. Se recomienda ejecutar una solicitud de calentamiento antes de las operaciones críticas para evitar un arranque en frío después de que Amazon Bedrock expulse el modelo.

Para implementar una estrategia de latidos, sigue estos pasos:

  1. Crea una función de AWS Lambda que llame a la API InvokeModel en el modelo importado.
  2. Crea una programación de reglas en Amazon EventBridge para activarla en un plazo de 30 a 50 minutos a partir de la última invocación del modelo.
  3. Implementa y prueba la función de Lambda.
  4. Envía los registros de funciones de Lambda a Registros de Amazon CloudWatch.
  5. Analiza las métricas de uso de su modelo en Amazon CloudWatch para determinar la frecuencia de latidos ideal.

Contacto con el equipo de soporte

Si sigues teniendo problemas, crea un ticket de soporte en Support Center en la Consola de administración de AWS.

Información relacionada

Calculate the cost of running a custom model (Cálculo del coste de ejecución de un modelo personalizado)

OFICIAL DE AWSActualizada hace 6 meses