Ir para o conteúdo

Como soluciono o erro ModelNotReadyException ao usar modelos importados no Amazon Bedrock?

3 minuto de leitura
0

Quero usar modelos importados no Amazon Bedrock, mas recebo o erro ModelNotReadyException.

Breve descrição

O Amazon Bedrock usa uma política interna de remoção para gerenciar recursos com eficiência. Essa política remove modelos que o Amazon Bedrock não usa há um determinado período, normalmente uma hora. Se você tentar usar um modelo que não esteja ativo, poderá receber o erro ModelNotReadyException.

Se você tentar usar um modelo importado no Amazon Bedrock que a política removeu para otimizar a utilização do hardware, você poderá receber uma mensagem de erro ModelNotReadyException com a seguinte aparência:

“errorMessage”: “Model is not ready for inference. Wait and try your request again.”

Observação: não há equivalente ao Throughput provisionado para modelos importados.

É uma prática recomendada programar tarefas para manter uma carga constante no modelo. Além disso, é possível agrupar solicitações semelhantes para minimizar o tempo ocioso entre as invocações do modelo.

Resolução

Verifique se você importou corretamente o modelo

Use o console Amazon Bedrock ou a API da AWS para verificar se você importou o modelo

Usar o console do Amazon Bedrock

Conclua as etapas a seguir:

  1. Abra o console do Amazon Bedrock.
  2. No painel de navegação, expanda os Modelos de base e escolha Modelos importados.
  3. Escolha a guia Trabalhos.
  4. Selecione o Nome do trabalho e, em seguida, revise o Status para Concluído.

Use a API da AWS

Para verificar se você importou o modelo, chame a API GetModelImportJob. Para confirmar que você importou e implantou o modelo com sucesso, verifique se você tem um status Concluído no campo Status da saída.

Configure novas tentativas

Um processo de restauração começa quando você invoca seu modelo pela primeira vez após a remoção. O tempo de restauração depende da disponibilidade da frota sob demanda e do tamanho do modelo. Se sua solicitação da API InvokeModel ou InvokeModelWithResponseStream retornar ModelNotReadyException quando o modelo for restaurado, a solicitação tentará automaticamente de novo com recuo exponencial por padrão.

Para configurar o número máximo de novas tentativas, consulte Como lidar com ModelNotReadyException.

Implemente uma estratégia de pulsação

Implemente uma estratégia de pulsação para enviar uma solicitação de ping ao modelo em intervalos regulares. A solicitação de ping informa à Amazon Bedrock que o modelo ainda está em uso. É uma prática recomendada executar uma solicitação de aquecimento antes de operações críticas para evitar uma partida a frio depois que o Amazon Bedrock remover o modelo.

Para implementar uma estratégia de pulsação, conclua as seguintes etapas:

  1. Crie uma função do AWS Lambda que chame a API InvokeModel no modelo importado.
  2. Crie uma regra que é executada de acordo com um cronograma na Amazon EventBridge para ativar dentro de 30 a 50 minutos após a última invocação do modelo.
  3. Implante e teste a função do Lambda.
  4. Envie logs de função do Lambda para o Amazon CloudWatch Logs.
  5. Analise as métricas de uso do seu modelo no Amazon CloudWatch para determinar a frequência de pulsação ideal.

Entre em contato com o suporte

Se você ainda tiver problemas, crie um ticket no Centro de Suporte do Console de Gerenciamento da AWS.

Informações relacionadas

Calcule o custo da execução de um modelo personalizado