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 canais anaconda.org em setembro de 2020. Com base nos novos termos de serviço, você pode precisar de uma licença comercial se depender do empacotamento e da distribuição da Anaconda. Consulte Perguntas frequentes sobre o Anaconda Commercial Edition para obter mais informações. Seu uso de quaisquer canais da Anaconda é regido por seus 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.