Pular para o conteúdo principal

gerenciar biblioteca com %conda comando (legacy)

important

Essa documentação foi descontinuada e pode não estar atualizada. O produto, serviço ou tecnologia mencionados neste conteúdo não são mais suportados. NotebookConsulte -scoped Pythonbiblioteca.

important

%conda comando estão obsoletos e são suportados apenas para Databricks Runtime 7.3 LTS ML. Databricks recomenda o uso de %pip para gerenciar a biblioteca com escopo de Notebook. Se precisar de Python uma biblioteca que só possa ser instalada usando o conda, poderá usar Docker os contêineres baseados no conda para pré-instalar a biblioteca necessária.

A Anaconda Inc. atualizou seus termos de serviço para o canal anaconda.org em setembro de 2020. Com base nos novos termos de serviço, o senhor pode precisar de uma licença comercial se depender do empacotamento e da distribuição do Anaconda. Para obter mais informações, consulte as Perguntas frequentes sobre o Anaconda Commercial Edition. Seu uso de qualquer canal do Anaconda é regido pelos termos de serviço.

Como resultado dessa alteração, o Databricks removeu a configuração de canais padrão para o gerenciador de pacotes Conda. Essa é uma mudança radical.

Para instalar ou atualizar o pacote usando o comando %conda, o senhor deve especificar um canal usando -c. O senhor também deve atualizar todos os usos de %conda install e %sh conda install para especificar um canal usando -c. Se o senhor não especificar um canal, o conda comando falhará com PackagesNotFoundError.

O comando %conda é equivalente ao comando conda e é compatível com a mesma API, com algumas restrições mencionadas abaixo. As seções a seguir contêm exemplos de como usar o %conda comando para gerenciar seu ambiente. Para obter mais informações sobre a instalação do Python pacote com conda, consulte a documentação de instalação do conda.

Observe que o comando mágico %conda não está disponível em Databricks Runtime. Eles estão disponíveis apenas no Databricks Runtime 7.3 LTS ML. Databricks recomenda o uso de pip para instalar a biblioteca. Para obter mais informações, consulte Entendendo o conda e o pip.

Se precisar usar tanto %pip quanto %conda comando em um Notebook, consulte Interações entre pip e conda comando.

nota

Os seguintes comandos do conda não são suportados quando usados com o %conda:

  • activate
  • create
  • init
  • run
  • env create
  • env remove

Instale uma biblioteca com %conda

Python
%conda install matplotlib -c conda-forge

Desinstale uma biblioteca com %conda

Python
%conda uninstall matplotlib

Salve e reutilize ou compartilhe um ambiente

Quando você desconecta um Notebook de um clusters, o ambiente não é salvo. Para salvar um ambiente para reutilizá-lo mais tarde ou compartilhá-lo com outra pessoa, siga estas passos.

Databricks Recomenda que os ambientes sejam compartilhados apenas entre clusters que executam a mesma versão do Databricks Runtime ML.

  1. Salve o ambiente como uma especificação conda YAML.

    Python
    %conda env export -f /dbfs/myenv.yml
  2. Importe o arquivo para outro Notebook usando conda env update.

    Python
    %conda env update -f /dbfs/myenv.yml

Liste o ambiente Python de um Notebook

Para mostrar o ambiente Python associado a um Notebook, use %conda list:

Python
%conda list

Interações entre pip e conda comando

Para evitar conflitos, siga estas diretrizes ao usar pip ou conda para instalar Python pacote e biblioteca.

  • biblioteca instaladas usando a biblioteca API ou usando a UI de clustering são instaladas usando pip. Se alguma biblioteca tiver sido instalada a partir do site API ou da UI de clustering, o senhor deverá usar apenas o comando %pip ao instalar a biblioteca com escopo de Notebook.
  • Se o senhor usar o biblioteca com escopo de Notebook em um cluster, a execução do script de inicialização nesse cluster pode usar o comando conda ou pip para instalar o biblioteca. Entretanto, se o site init script incluir pip comando, use apenas %pip comando no Notebook (e não %conda).
  • É melhor usar exclusivamente o pip comando ou o conda comando. Se o senhor precisar instalar alguns pacotes usando conda e outros usando pip, execute primeiro o comando conda e, em seguida, execute o comando pip. Para obter mais informações, consulte Uso do pip em um ambiente Conda.

Perguntas frequentes (FAQ)

Como as bibliotecas instaladas a partir da UI de clustering/API interagem com as bibliotecas com escopo de Notebook?

biblioteca instalada a partir da UI do clustering ou do site API estão disponíveis para todos os Notebooks no clustering. Essas bibliotecas são instaladas usando pip; portanto, se as bibliotecas forem instaladas usando a UI de agrupamento, use apenas %pip comando no Notebook.

Como as bibliotecas instaladas usando o site init script interagem com as bibliotecas com escopo de Notebook?

biblioteca instalada usando um init script estão disponíveis para todos os Notebooks no clustering.

Se o senhor usar o Notebook-scoped biblioteca em um clustering que esteja executando Databricks Runtime ML, a execução do script de inicialização no clustering poderá usar o comando conda ou pip para instalar o biblioteca. No entanto, se o site init script incluir pip comando, use apenas %pip comando no Notebook.

Por exemplo, este snippet de código do Notebook gera um script que instala o pacote fast.AI em todos os nós de clustering.

Python
dbutils.fs.put("dbfs:/home/myScripts/fast.ai", "conda install -c pytorch -c fastai fastai -y", True)

Posso usar %pip e %conda comando no Job Notebook?

Sim

Posso usar os comandos %pip e %conda no R ou no Scala Notebook?

Sim, em uma célula mágica Python.

Posso usar %sh pip, !pip ou pip? Qual é a diferença?

%sh e ! executam um shell comando em um Notebook; o primeiro é um Databricks comando mágico auxiliar e o último é um recurso do IPython. pip é uma abreviação de %pip quando a automagia está ativada, que é o default em Databricks Python Notebook.

No Databricks Runtime 11.0e acima,, %pip``%sh pip, e !pip todos instalam uma biblioteca como uma biblioteca Python com escopo para notebooks. No Databricks Runtime 10.4 LTS e versões anteriores, a Databricks recomenda usar somente %pip ou instalar bibliotecas com escopo para notebooks. pip O comportamento de %sh pip e !pip não é consistente no Databricks Runtime 10,4 LTS eabaixo.

Posso atualizar o pacote R usando o %conda comando?

Não.

Problemas conhecidos

  • Quando o senhor usa o site %conda env update para atualizar um ambiente de notebook, a ordem de instalação do pacote não é garantida. Isso pode causar problemas para o pacote horovod, que exige que tensorflow e torch sejam instalados antes de horovod para que o senhor possa usar horovod.tensorflow ou horovod.torch, respectivamente. Se isso acontecer, desinstale o pacote horovod e reinstale-o depois de verificar se as dependências estão instaladas.
  • No site Databricks Runtime 9.1 LTS, a biblioteca com escopo de notebook é incompatível com o trabalho de transmissão de lotes. Databricks recomenda usar a biblioteca de clustering ou o kernel IPython.