1
resposta

Problema para execeutar mlflow ui

Eu comecei o curso esses dias e tentei criar o ambiente usado no curso, criei um ambiente no anaconda em minha wsl, com python 3.8 e a versão 1.13.1 do mlflow, instalei as dependências, resolvi alguns erros, mas agora simplesmente o mlflow ui não funciona mais e eu não sei porquê. Eu até havia criado um environment.yml do ambiente que funcionava, aí criei o ambiente em outra máquina ubuntu (uma EC2) e lá funciona. Na minha wsl local, não. E nela não funciona nada, se eu instalar tudo do mais recente, igual criei um outro ambiente com o python 3.11.5, a última versão do mlflow (2.7.1), mas nada funciona. O erro atual é esse, no ambiente similar ao do curso:

[2023-09-28 18:20:42 -0300] [3003] [INFO] Starting gunicorn 21.2.0
[2023-09-28 18:20:42 -0300] [3003] [INFO] Listening at: http://127.0.0.1:5000 (3003)
[2023-09-28 18:20:42 -0300] [3003] [INFO] Using worker: sync
[2023-09-28 18:20:42 -0300] [3005] [INFO] Booting worker with pid: 3005
[2023-09-28 18:20:42 -0300] [3005] [ERROR] Exception in worker process
Traceback (most recent call last):
  File "/home/vagnerresende/.local/lib/python3.8/site-packages/gunicorn/arbiter.py", line 609, in spawn_worker
    worker.init_process()
  File "/home/vagnerresende/.local/lib/python3.8/site-packages/gunicorn/workers/base.py", line 134, in init_process
    self.load_wsgi()
  File "/home/vagnerresende/.local/lib/python3.8/site-packages/gunicorn/workers/base.py", line 146, in load_wsgi
    self.wsgi = self.app.wsgi()
  File "/home/vagnerresende/.local/lib/python3.8/site-packages/gunicorn/app/base.py", line 67, in wsgi
    self.callable = self.load()
  File "/home/vagnerresende/.local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py", line 58, in load
    return self.load_wsgiapp()
  File "/home/vagnerresende/.local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py", line 48, in load_wsgiapp
    return util.import_app(self.app_uri)
  File "/home/vagnerresende/.local/lib/python3.8/site-packages/gunicorn/util.py", line 371, in import_app
    mod = importlib.import_module(module)
  File "/usr/lib/python3.8/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 961, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 973, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'mlflow'
[2023-09-28 18:20:42 -0300] [3005] [INFO] Worker exiting (pid: 3005)
[2023-09-28 18:20:42 -0300] [3003] [ERROR] Worker (pid:3005) exited with code 3
[2023-09-28 18:20:42 -0300] [3003] [ERROR] Shutting down: Master
[2023-09-28 18:20:42 -0300] [3003] [ERROR] Reason: Worker failed to boot.
Running the mlflow server failed. Please see the logs above for details.

Alguém consegue me ajudar? Não faço ideia do que está rolando.

Garanta sua matrícula hoje e ganhe + 2 meses grátis

Continue sua jornada tech com ainda mais tempo para aprender e evoluir

Quero aproveitar agora
1 resposta

Oii, Vagner! Tudo bem?

Segundo o erro apresentado ModuleNotFoundError: No module named 'mlflow' ele indica que o Python não está conseguindo encontrar o módulo mlflo. Isso pode ocorrer a várias razões, como o ambiente Python não estar configurado corretamente ou o módulo mlflow não estar instalado no ambiente em que precisa ser executado.

Veja algumas soluções que pode-se testar:

  • Verifique se o módulo 'mlflow' está instalado no ambiente correto, com o comando:
pip show mlflow

Caso não retorne nada quer dizer que o mesmo não foi instalado. E para instalá-lo no ambiente, use o comando:

pip install mlflow
  • Se ele estiver instalado, retornará informações sobre o módulo mlflow. Então podemos considerar que o Python não está encontrando o caminho para o módulo. Para verfificar, você pode comparar o caminho do Python ( wich python) com o caminho do módulo mlflow ( pip show mlflow | grep location).

Obs: Caso os caminhos forem diferentes, adicione o caminho do módulo mlflow ao PYTHONPATH, usando o comando:

export PYTHONPATH=$PYTHONPATH:/caminho/para/o/módulo/mlflow

Após realizar todas as sugestões acima e nenhuma dar certo, é possível que o problema esteja na instalação do módulo. Então, tente desinstalar e reinstalar novamente o mlflow, usando os seguintes comandos:

pip uninstall mlflow
pip install mlflow

É bem comum ocorrer alguns bugs na instalação de algum pacote e isso pode resolver caso haja uma instabilidade.

Espero que umas das dicas te ajude. Continue interagindo no fórum compartilhando suas dúvidas, projetos e feedback.

Bons estudos, Vagner!