1
resposta

Motivação para usar o Virtual Env

Para mim não está claro qual a necessidade de utilizar um ambiente virtual para desenvolver o modelo.

Eu entendi perfeitamente a questão do conflito das versões, porém na minha concepção, uma vez que meu modelo está pronto e salvo em binário pelo Pickle, qual o motivo de eu precisar importar a biblioteca do sklearn no arquivo main.py sendo que não irei utilizá-la?

O objetivo desse arquivo main.py não seria apenas executar o flask, carregar os arquivos pickle necessários e usá-los sem ter a necessidade de importar as bibliotecas em que eles foram desenvolvidos?

Exemplo: supondo que a variável modeloé meu objeto LinearRegression já "fitado", quando for usar o comando modelo.predict([[valor]]), não há necessidade de ter no arquivo main a linha de importação from sklearn.linear_model import LinearRegression

1 resposta

Olá tudo bem ? Espero que sim.

Você está correto.

É importante criar um environment para isolar seu projeto do restante do computador e salvar as versões das bibliotecas utilizadas.

Então mesmo que não seja necessário fazer o import é importante criar o environment para quando colocar o projeto em produção você conseguir instalar as mesma versões utilizadas no desenvolvimento.

Então se seu objeto for mais complexo como por exemplo um pipeline você consegue garantir que o Pipeline vai utilizar as mesmas versões nas suas dependências.

Espero ter ajudado e qualquer duvida não hesite em perguntar.

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!