guia de depuração para manutenção do modelo
Este artigo demonstra a depuração dos passos para problemas comuns que os usuários podem encontrar ao trabalhar com o modelo de endpoint servindo. Os problemas comuns podem incluir erros que os usuários encontram quando o endpoint não consegue inicializar ou começar, falhas de construção relacionadas ao contêiner ou problemas durante as operações ou a execução do modelo no endpoint.
Registros de acesso e revisão
Databricks recomenda revisar a compilação logs para depuração e solução de problemas de erros em suas cargas de trabalho de modelo de serviço. Consulte Monitorar a qualidade do modelo e a endpoint saúde para obter informações sobre logs e como view corrigi-las.
Verifique o evento logs para o modelo na UI workspace e verifique se há uma mensagem de criação de contêiner bem-sucedida. Se o senhor não vir uma mensagem de compilação após uma hora, entre em contato com o suporte da Databricks para obter ajuda.
Se a compilação for bem-sucedida, mas o senhor encontrar outros erros, consulte depuração após a compilação bem-sucedida do contêiner. Se a compilação falhar, consulte depuração após falha na compilação do contêiner.
Versões instaladas da biblioteca pacote
Em sua compilação logs, o senhor pode confirmar as versões do pacote que estão instaladas.
Para as versões do MLflow, se o senhor não tiver uma versão especificada, o servindo modelo usará a versão mais recente.
Para o serviço personalizado de GPU, o servindo modelo instala as versões recomendadas de
cuda
ecuDNN
de acordo com a documentação pública do PyTorch e do Tensorflow.
depuração após o sucesso da construção do contêiner
Mesmo que o contêiner seja criado com sucesso, pode haver problemas quando o modelo for executado ou durante as operações do próprio endpoint. As subseções a seguir detalham problemas comuns e como solucionar problemas e depurar
Dependência ausente
Você pode receber um erro como An error occurred while loading the model. No module named <module-name>.
. Esse erro pode indicar que uma dependência está ausente do contêiner. Verifique se você indicou corretamente todas as dependências que devem ser incluídas na construção do contêiner. Preste atenção especial à biblioteca personalizada e certifique-se de que os arquivos .whl
sejam incluídos como artefatos.
Logs de serviço em loop
Se a compilação do contêiner falhar, verifique os logs de serviço para ver se há um looping quando o endpoint tenta carregar o modelo. Se o senhor observar esse comportamento, tente os seguintes passos:
Abra um Notebook e anexe a um clusters todo-propósito que usa uma versão Databricks Runtime, não Databricks Runtime para Machine Learning.
Carregue o modelo usando MLflow e tente a depuração a partir daí.
Você também pode carregar o modelo localmente no seu PC e depurar a partir daí. Carregue seu modelo localmente usando o seguinte:
import os
import mlflow
os.environ["MLFLOW_TRACKING_URI"] = "databricks://PROFILE"
ARTIFACT_URI = "model_uri"
if '.' in ARTIFACT_URI:
mlflow.set_registry_uri('databricks-uc')
local_path = mlflow.artifacts.download_artifacts(ARTIFACT_URI)
print(local_path)
conda env create -f local_path/artifact_path/conda.yaml
conda activate mlflow-env
mlflow.pyfunc.load_model(local_path/artifact_path)
O modelo falha quando as solicitações são enviadas ao endpoint
Você pode receber um erro como Encountered an unexpected error while evaluating the model. Verify that the input is compatible with the model for inference.
quando predict()
é chamado em seu modelo.
Há um problema de código na função predict()
. Databricks recomenda que o senhor carregue o modelo do site MLflow em um notebook e o chame. Isso destaca os problemas na função predict()
e você pode ver onde a falha está acontecendo no método.
o espaço de trabalho excede a simultaneidade de provisionamento
Você pode receber um erro Workspace exceeded provisioned concurrency quota
.
Você pode aumentar a simultaneidade dependendo da disponibilidade da região. Entre em contato com a equipe Databricks account e forneça seu ID workspace para solicitar um aumento de concorrência.
depuração após falha na construção do contêiner
Esta seção detalha os problemas que podem ocorrer quando sua compilação falha.