Neste documento, mostramos como resolver erros que podem ocorrer ao implantar um app.
Erros no modelo predefinido
Ao encontrar erros no modelo LangchainAgent durante a implantação, isso pode ser devido a um dos problemas nesta seção.
Erros do Model Builder ou do Runnable Builder
Problema:
Você recebe uma mensagem de erro semelhante a esta:
AttributeError: 'LangchainAgent' object has no attribute '_model_builder'
ou
AttributeError: 'LangchainAgent' object has no attribute '_runnable_builder'
Possível causa:
Isso pode acontecer se você usou uma versão de google-cloud-aiplatform
mais recente que 1.50.0
para definir LangchainAgent
no ambiente
de desenvolvimento, mas está fazendo a implantação com uma versão anterior a 1.51.0
em requirements=
. Para verificar qual versão você está usando no ambiente
de desenvolvimento, execute o seguinte comando no terminal:
pip show google-cloud-aiplatform
Solução recomendada:
Ao usar uma versão de google-cloud-aiplatform
anterior à versão 1.51.0
,
especifique uma versão de google-cloud-aiplatform
que seja anterior à versão 1.51.0
em
requirements=
ao implantar o mecanismo de
raciocínio.
Ao usar uma versão de google-cloud-aiplatform
posterior à versão 1.50.0
,
especifique uma versão de google-cloud-aiplatform
posterior à versão 1.50.0
em
requirements=
ao implantar o mecanismo de
raciocínio.
Erros internos do servidor
Problema:
Você recebe uma mensagem de erro semelhante a esta:
InternalServerError: 500 Revision XXX is not ready and cannot serve traffic.
Infelizmente, esse é um erro geral relacionado a problemas com o contêiner no ambiente de execução, e a causa possível pode consistir em muitos erros diferentes.
Causas possíveis:
- Estado sujo em
LangchainAgent
. Isso pode acontecer quando.set_up()
é chamado em umLangchainAgent
antes da implantação no mecanismo de raciocínio. - Versões de pacote inconsistentes. Isso pode acontecer quando os pacotes instalados no ambiente de desenvolvimento são diferentes daqueles instalados no ambiente remoto no mecanismo de raciocínio.
Soluções recomendadas:
- Estado sujo em
LangchainAgent
. Crie outra instância deLangchainAgent
ou removaagent.set_up()
do código antes da implantação no mecanismo de raciocínio. - Especificações de pacote inconsistentes. Consulte a seção sobre como solucionar problemas de erros de serialização.
Erros de serialização
Em geral, é importante garantir que os ambientes locais e remotos
estejam sincronizados ao realizar a implantação no mecanismo de raciocínio. Para isso, especifique
requirements=
ao fazer a
implantação no mecanismo de raciocínio.
Quando erros ocorrem na serialização (erros relacionados a pickle ou pickling são sinônimos de erros de serialização), isso pode ser devido a um dos problemas descritos nesta seção.
Versão do Pydantic
Problema:
Você recebe uma mensagem de erro semelhante a esta:
PicklingError: Can't pickle <cyfunction str_validator at 0x7ca030133d30>: it's
not the same object as pydantic.validators.str_validator
Possível causa:
Isso pode acontecer quando a versão do pacote pydantic
é anterior à 2.6.4
. Para
verificar a versão em uso, execute o seguinte comando no terminal:
pip show pydantic
Solução recomendada:
Atualize o pacote executando o seguinte comando no terminal:
pip install pydantic --upgrade
Execute o seguinte comando no terminal para verificar se você está usando a versão
2.6.4
ou mais recente:
pip show pydantic
No caso de uma instância de notebook (por exemplo, Jupyter, Colab ou Workbench), talvez seja necessário reiniciar o ambiente de execução para usar os pacotes atualizados.
Versão do Cloudpickle
Problema:
Você recebe uma mensagem de erro semelhante a esta:
AttributeError: Can't get attribute '_class_setstate' on <module 'cloudpickle.cloudpickle'
from '/usr/local/lib/python3.10/site-packages/cloudpickle/cloudpickle.py'>
Possível causa:
Isso pode acontecer quando a versão do pacote cloudpickle
é diferente nos
ambientes de desenvolvimento e de implantação. Para verificar qual
versão você está usando no ambiente de desenvolvimento, execute o seguinte comando no terminal:
pip show cloudpickle
Solução recomendada:
Implante a mesma versão do Cloudpickle tanto no ambiente de desenvolvimento local quanto no
ambiente do mecanismo de raciocínio implantado remotamente
especificando requirements=
ao fazer a implantação do mecanismo de raciocínio.
Erros internos do servidor
Problema:
Você recebe uma mensagem de erro semelhante a esta:
InternalServerError: 500 Revision XXX is not ready and cannot serve traffic.
Possível causa:
Isso pode acontecer quando sys_version=
é diferente do ambiente de desenvolvimento ao fazer a
implantação no mecanismo de raciocínio.
Solução recomendada:
Considere remover sys_version=
dos argumentos de entrada ao fazer a implantação no
mecanismo de raciocínio. Se você ainda tiver
problemas, envie um relatório de bug.
Erros de bucket do Cloud Storage
Em caso de erros no bucket de preparação do Cloud Storage usado no momento da implantação para coletar e fazer upload do agente, isso pode ser devido a um dos seguintes problemas:
Erros de permissão
Solução recomendada:
Para usar um bucket atual: verifique se o principal autenticado para usar a Vertex AI (você ou uma
conta de serviço) tem acesso Storage Admin
ao bucket e
conceda permissões à conta de serviço do
mecanismo de raciocínio gerenciado pelo Google.
Como alternativa, é possível especificar um novo bucket ao fazer a implantação no mecanismo de raciocínio e o SDK do cliente do mecanismo cria o bucket com as permissões necessárias.
Se você ainda tiver problemas, envie um relatório de bug.
O subdiretório do bucket do Cloud Storage não foi criado
Problema:
Você recebe uma mensagem de erro semelhante a esta:
NotFound: 404 Can not copy from \"gs://[LOCATION]-*/reasoning_engine/reasoning_engine.pkl\" to \"gs://*/code.pkl\", check if the source object and target bucket exist.
O erro 404 ocorre quando o sistema tenta fazer uma cópia em uma pasta que não existe.
Possível causa:
Isso provavelmente se deve a um problema com a interpolação de strings em versões de
google-cloud-aiplatform
anteriores à 1.49.0
. Isso foi corrigido
em versões mais recentes. Para verificar qual versão de google-cloud-aiplatform
você está
usando, execute o seguinte comando no terminal:
pip show google-cloud-aiplatform
Solução recomendada:
Atualize o pacote executando o seguinte comando no terminal:
pip install google-cloud-aiplatform --upgrade
Verifique se você está usando a versão 1.49.0
ou mais recente de google-cloud-aiplatform
executando o seguinte comando no terminal:
pip show google-cloud-aiplatform
No caso de uma instância de notebook (por exemplo, Jupyter, Colab ou Workbench), talvez seja necessário reiniciar o ambiente de execução para usar os pacotes atualizados.