Repro
import evalml
Causa raiz
get_importable_subclasses
tenta inicializar todos os componentesget_importable_subclasses
para gerar as listas estáticas de estimadores e componentesParece que devemos fazer o possível para evitar o aumento de avisos no momento da importação.
Ideias para uma solução
get_importable_subclasses
para serem geradas em tempo de execução, não em tempo de importação. Ou seja, em utilitários de componentesdef _all_estimators():
return get_importable_subclasses(Estimator, used_in_automl=False)
...
TextFeaturizer
para não levantar este aviso específico. Adicione teste de unidade para verificar se não há avisos.get_importable_subclasses
para suprimir quaisquer avisos provenientes da inicialização do componenteEu sugiro que façamos os itens 1 e 2.
Quando o # 1022 foi mesclado - o aviso de tempo de execução foi removido. No entanto, ainda estou vendo o seguinte aviso:
2020-08-11 12:17:34,559 featuretools - WARNING Featuretools failed to load plugin nlp_primitives from library nlp_primitives. For a full stack trace, set logging to debug.
@dsherry vou colocar o PR para fazer os itens 1 e 2 como você mencionou acima, mas @eccabay me informou que esse aviso não vem de nossa parte.
Depois de discutir com @rwedge , parece haver duas soluções para o aviso de
use o resolvedor de dependência beta
featuretools está em processo de tornar o tensorflow opcional e pode ser feito por EOD 12/08/2020
Sugiro que esperemos pelo lançamento do novo recurso de ferramentas e confirme se o aviso ainda é um problema.
Obrigado @jeremyliweishih ! Concordo que a opção 2 aqui é a melhor para lidar com o aviso de ferramentas de recursos.
Deixando isso de lado, meu entendimento é que você está trabalhando atualmente nas opções 1 e 2 do meu comentário da semana passada , correto? Eu acho que ambas as mudanças, particularmente a primeira, irão agregar valor aqui.
nlp-primitives 1.0 está disponível em pypi agora e tensorflow não é mais uma dependência necessária
Confirmado que o aviso não aparece com a versão mais recente de nlp-primitives
. Obrigado @rwedge! Você pode verificar aqui .
Incrível, obrigado a ambos!
Comentários muito úteis
nlp-primitives 1.0 está disponível em pypi agora e tensorflow não é mais uma dependência necessária