Pular para o conteúdo principal

Utilidades da biblioteca (dbutils.biblioteca) (legado)

nota

dbutils.library.install e dbutils.library.installPyPI APIs foram removidos em Databricks Runtime 11.0 e acima. A maioria das utilidades da biblioteca comando está obsoleta. A maioria das utilidades da biblioteca não está disponível em Databricks Runtime ML. Para obter informações sobre dbutils.library.restartPython, consulte Reiniciar o processo Python em Databricks.

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.

Databricks recomenda fortemente o uso do comando mágico %pip para instalar a biblioteca com escopo de Notebook. NotebookConsulte -scoped Pythonbiblioteca.

Para obter a documentação completa da funcionalidade Databricks utilidades, consulte a referênciaDatabricks utilidades (dbutils).

comando : install, installPyPI, list, restartPython), updateCondaEnv

A biblioteca utilidades permite que o senhor instale a Python biblioteca e crie um ambiente com escopo para uma sessão do Notebook. As bibliotecas estão disponíveis tanto no driver quanto no executor, de modo que o senhor pode fazer referência a elas em funções definidas pelo usuário. Isso permite:

  • As dependências da biblioteca de um Notebook devem ser organizadas dentro do próprio Notebook.
  • Notebook usuários com diferentes dependências de biblioteca para compartilhar um clustering sem interferência.

A remoção de um notebook destrói esse ambiente. No entanto, o senhor pode recriá-lo executando novamente a biblioteca install API comando no Notebook. Consulte restartPython API para saber como o senhor pode redefinir o estado do Notebook sem perder o ambiente.

As utilidades da biblioteca são ativadas por default. Portanto, em default, o ambiente Python de cada Notebook é isolado com o uso de um executável Python separado que é criado quando o Notebook é anexado e herda o ambiente default Python no clustering. biblioteca instalada por meio de um init script no ambiente Databricks Python ainda estão disponíveis. O senhor pode desativar esse recurso definindo spark.databricks.libraryIsolation.enabled como false.

Este API é compatível com a instalação da biblioteca existente em todo o cluster por meio da UI e da biblioteca API. As bibliotecas instaladas por meio deste site API têm prioridade mais alta do que as bibliotecas de todo o cluster.

Para listar os comandos disponíveis, execute dbutils.library.help().

install(path: String): boolean -> Install the library within the current notebook session
installPyPI(pypiPackage: String, version: String = "", repo: String = "", extras: String = ""): boolean -> Install the PyPI library within the current notebook session
list: List -> List the isolated libraries added for the current notebook session via dbutils
restartPython: void -> Restart python process for the current notebook session
updateCondaEnv(envYmlContent: String): boolean -> Update the current notebook's Conda environment based on the specification (content of environment

instalar comando (dbutils.biblioteca.install)

Se o senhor receber um caminho para uma biblioteca, instalará essa biblioteca na sessão atual do Notebook. biblioteca instalados ao chamar esse comando estão disponíveis apenas para o Notebook atual.

Para exibir ajuda para este comando, execute dbutils.library.help("install").

Este exemplo instala uma biblioteca .egg ou .whl em um Notebook.

important

dbutils.library.install foi removido em Databricks Runtime 11.0 e acima.

Databricks recomenda que o senhor coloque toda a sua biblioteca install comando na primeira célula do Notebook e chame restartPython no final dessa célula. O estado do Python Notebook é redefinido após a execução de restartPython; o Notebook perde todo o estado, incluindo, entre outros, variáveis locais, biblioteca importada e outros estados efêmeros. Portanto, recomendamos que o senhor instale o biblioteca e redefina o estado do Notebook na primeira célula do Notebook.

As fontes de biblioteca aceitas são dbfs e gs.

Python
dbutils.library.install("dbfs:/path/to/your/library.egg")
dbutils.library.restartPython() # Removes Python state, but some libraries might not work without calling this command.
Python
dbutils.library.install("dbfs:/path/to/your/library.whl")
dbutils.library.restartPython() # Removes Python state, but some libraries might not work without calling this command.
nota

Você pode instalar diretamente arquivos de roda personalizados usando %pip. No exemplo a seguir, supomos que o senhor tenha feito upload do arquivo biblioteca wheel para DBFS:

%pip install /dbfs/path/to/your/library.whl

Os arquivos Egg não são suportados pelo pip, e os arquivos wheel são considerados o padrão para compilação e empacotamento binário do Python. No entanto, se quiser usar um arquivo egg de forma compatível com %pip, você pode usar a seguinte solução alternativa:

# This step is only needed if no %pip commands have been run yet.
# It will trigger setting up the isolated notebook environment
%pip install <any-lib> # This doesn't need to be a real library; for example "%pip install any-lib" would work
Python
import sys
# Assuming the preceding step was completed, the following command
# adds the egg file to the current notebook environment
sys.path.append("/local/path/to/library.egg")

installPyPI comando (dbutils.biblioteca.installPyPI)

Dado um pacote Python pacote Index (PyPI) pacote, instale esse pacote na sessão atual do Notebook. A biblioteca instalada ao chamar esse comando é isolada no Notebook.

Para exibir ajuda para este comando, execute dbutils.library.help("installPyPI").

Este exemplo instala um pacote PyPI em um Notebook. version, repo e extras são opcionais. Use o argumento extras para especificar o recurso Extras (requisitos extras).

Python
dbutils.library.installPyPI("pypipackage", version="version", repo="repo", extras="extras")
dbutils.library.restartPython() # Removes Python state, but some libraries might not work without calling this command.
important

dbutils.library.installPyPI foi removido em Databricks Runtime 11.0 e acima.

As teclas version e extras não podem fazer parte das cadeias de caracteres do pacote PyPI. Por exemplo: dbutils.library.installPyPI("azureml-sdk[databricks]==1.19.0") não é válido. Use os argumentos version e extras para especificar a versão e as informações extras da seguinte forma:

Python
dbutils.library.installPyPI("azureml-sdk", version="1.19.0", extras="databricks")
dbutils.library.restartPython() # Removes Python state, but some libraries might not work without calling this command.
nota

Ao substituir dbutils.library.installPyPI comando por %pip comando, o interpretador Python é reiniciado automaticamente. O senhor pode executar o comando de instalação da seguinte forma:

%pip install azureml-sdk[databricks]==1.19.0

Este exemplo especifica os requisitos da biblioteca em um Notebook e os instala usando %run no outro. Para fazer isso, primeiro defina a biblioteca a ser instalada em um Notebook. Este exemplo usa um Notebook chamado InstallDependencies.

Python
dbutils.library.installPyPI("torch")
dbutils.library.installPyPI("scikit-learn", version="1.19.1")
dbutils.library.installPyPI("azureml-sdk", extras="databricks")
dbutils.library.restartPython() # Removes Python state, but some libraries might not work without calling this command.

Em seguida, instale-os no Notebook que precisa dessas dependências.

Bash
%run /path/to/InstallDependencies # Install the dependencies in the first cell.
Python
import torch
from sklearn.linear_model import LinearRegression
import azureml
...

Este exemplo redefine o estado do notebook Python enquanto mantém o ambiente. Essa técnica está disponível apenas no site Python Notebook. Por exemplo, o senhor pode usar essa técnica para recarregar a biblioteca Databricks pré-instalada com uma versão diferente:

Python
dbutils.library.installPyPI("numpy", version="1.15.4")
dbutils.library.restartPython()
Python
# Make sure you start using the library in another cell.
import numpy

O senhor também pode usar essa técnica para instalar bibliotecas, como o tensorflow, que precisam ser carregadas na inicialização do processo:

Python
dbutils.library.installPyPI("tensorflow")
dbutils.library.restartPython()
Python
# Use the library in another cell.
import tensorflow

comando de lista (dbutils.biblioteca.list)

Lista a biblioteca isolada adicionada para a sessão atual do Notebook por meio da biblioteca utilidades. Isso não inclui as bibliotecas que estão anexadas ao agrupamento.

Para exibir ajuda para este comando, execute dbutils.library.help("list").

Este exemplo lista a biblioteca instalada em um Notebook.

Python
dbutils.library.list()
nota

O equivalente a esse comando usando %pip é:

%pip freeze

updateCondaEnv comando (dbutils.biblioteca.updateCondaEnv)

Atualiza o ambiente Conda do Notebook atual com base no conteúdo de environment.yml. Esse método é compatível apenas com o Databricks Runtime no Conda.

Para exibir ajuda para este comando, execute dbutils.library.help("updateCondaEnv").

Este exemplo atualiza o ambiente Conda do Notebook atual com base no conteúdo da especificação fornecida.

Python
dbutils.library.updateCondaEnv(
"""
channels:
- anaconda
dependencies:
- gensim=3.4
- nltk=3.4
""")