Megosztás a következőn keresztül:


Könyvtár segédprogram (dbutils.library) (örökölt)

Feljegyzés

dbutils.library.install és dbutils.library.installPyPI az API-k törlődnek a Databricks Runtime 11.0-s és újabb verziókban. A legtöbb kódtár-segédprogram parancsa elavult. A legtöbb kódtár-segédprogram nem érhető el a Databricks Runtime ML-ben. További információ dbutils.library.restartPython: Python-folyamat újraindítása az Azure Databricksben.

Ez a dokumentáció ki lett állítva, és lehet, hogy nem frissül. A tartalomban említett termékek, szolgáltatások vagy technológiák már nem támogatottak.

A Databricks határozottan javasolja a magic parancsok használatát %pip a jegyzetfüzet-hatókörű kódtárak telepítéséhez. Lásd: Jegyzetfüzet-hatókörön belüli Python-kódtárak.

A Databricks segédprogramok funkcióinak teljes dokumentációját a Databricks Utilities (dbutils) referenciájában találja.

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

A kódtár segédprogram segítségével Python-kódtárakat telepíthet, és létrehozhat egy jegyzetfüzet-munkamenetre hatókörrel rendelkező környezetet. A kódtárak az illesztőprogramon és a végrehajtókon is elérhetők, így a felhasználó által definiált függvényekben hivatkozhat rájuk. Ez a következőket teszi lehetővé:

  • A jegyzetfüzetek könyvtárfüggőségei, hogy a jegyzetfüzeten belül legyenek rendszerezve.
  • A különböző erőforrástár-függőségekkel rendelkező jegyzetfüzet-felhasználók interferencia nélkül oszthatnak meg egy fürtöt.

A jegyzetfüzet leválasztása elpusztítja ezt a környezetet. A tár install API-parancsainak újrafuttatásával azonban újra létrehozhatja azt a jegyzetfüzetben. Tekintse meg az restartPython API-t, amelyből megtudhatja, hogyan állíthatja alaphelyzetbe a jegyzetfüzet állapotát a környezet elvesztése nélkül.

A kódtár segédprogramok alapértelmezés szerint engedélyezve vannak. Ezért alapértelmezés szerint az egyes jegyzetfüzetekhez tartozó Python-környezet külön Python-végrehajtható fájl használatával van elkülönítve, amely akkor jön létre, amikor a jegyzetfüzet hozzá van kapcsolva, és örökli a fürt alapértelmezett Python-környezetét. Az Azure Databricks Python-környezetbe init szkripttel telepített kódtárak továbbra is elérhetők. Ezt a funkciót letilthatja a következő beállítással spark.databricks.libraryIsolation.enabledfalse: .

Ez az API kompatibilis a meglévő fürtszintű kódtár telepítésével a felhasználói felületen és a Könyvtárak API-val. Az API-val telepített kódtárak nagyobb prioritással rendelkeznek, mint a fürtszintű kódtárak.

Az elérhető parancsok listázásához futtassa a parancsot 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

install command (dbutils.library.install)

Ha egy tár elérési útját adja meg, telepíti a tárat az aktuális jegyzetfüzet-munkameneten belül. A parancs meghívásával telepített kódtárak csak az aktuális jegyzetfüzet számára érhetők el.

A parancs súgójának megjelenítéséhez futtassa a parancsot dbutils.library.help("install").

Ez a példa egy vagy .whl több .egg tárat telepít egy jegyzetfüzeten belül.

Fontos

dbutils.library.install a Databricks Runtime 11.0-s vagy újabb verziója törlődik.

A Databricks azt javasolja, hogy helyezze az összes kódtár telepítési parancsát a jegyzetfüzet első cellájába, és hívja restartPython meg a cella végén. A Python-jegyzetfüzet állapota a futtatás restartPythonután alaphelyzetbe áll; a jegyzetfüzet elveszíti az összes állapotot, beleértve a helyi változókat, az importált kódtárakat és az egyéb rövid élettartamú állapotokat is. Ezért javasoljuk, hogy telepítse a kódtárakat, és állítsa alaphelyzetbe a jegyzetfüzet állapotát az első jegyzetfüzetcellában.

Az elfogadott erőforrástár-források a következőkdbfs: , abfssadlés wasbs.

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

Feljegyzés

Egyéni kerékfájlokat közvetlenül is telepíthet a következő használatával %pip: . Az alábbi példában feltételezzük, hogy feltöltötte a kódtár kerékfájlját a DBFS-be:

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

A pip nem támogatja a tojásfájlokat, a kerékfájlok pedig a Python buildelési és bináris csomagolási szabványának minősülnek. Ha azonban egy tojásfájlt a kompatibilis %pipmódon szeretne használni, az alábbi kerülő megoldást használhatja:

# 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
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 parancs (dbutils.library.installPyPI)

Python-csomagindex (PyPI) esetén telepítse a csomagot az aktuális jegyzetfüzet-munkameneten belül. A parancs meghívásával telepített kódtárak elkülönítve vannak a jegyzetfüzetek között.

A parancs súgójának megjelenítéséhez futtassa a parancsot dbutils.library.help("installPyPI").

Ez a példa egy PyPI-csomagot telepít egy jegyzetfüzetbe. version, repoés extras nem kötelező. extras Az argumentum használatával adja meg az Extras funkciót (extra követelmények).

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.

Fontos

dbutils.library.installPyPI a Databricks Runtime 11.0-s vagy újabb verziója törlődik.

A version kulcsok és extras a kulcsok nem lehetnek a PyPI-csomag sztringjének részei. Például: dbutils.library.installPyPI("azureml-sdk[databricks]==1.19.0") érvénytelen. Az alábbi módon adja meg a versionextras verzióra és az extrákra vonatkozó információkat az és az argumentumok használatával:

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.

Feljegyzés

Parancsok parancsokkal való %pip cseréjekor dbutils.library.installPyPI a Python-értelmező automatikusan újraindul. A telepítési parancsot a következőképpen futtathatja:

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

Ez a példa az egyik jegyzetfüzet könyvtárkövetelményeit határozza meg, és a másikban való használatával %run telepíti őket. Ehhez először határozza meg a jegyzetfüzetben telepíteni kívánt kódtárakat. Ez a példa egy .InstallDependencies

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.

Ezután telepítse őket a függőségeket igénylő jegyzetfüzetbe.

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

Ez a példa alaphelyzetbe állítja a Python-jegyzetfüzet állapotát a környezet fenntartása közben. Ez a technika csak Python-jegyzetfüzetekben érhető el. Ezt a technikát használhatja például egy másik verzióval előre telepített Azure Databricks-kódtárak újratöltésére:

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

Ezzel a technikával olyan kódtárakat is telepíthet, mint például a tensorflow, amelyeket be kell tölteni a folyamat indításakor:

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

list parancs (dbutils.library.list)

Az aktuális jegyzetfüzet-munkamenethez a tár segédprogramon keresztül hozzáadott izolált kódtárakat sorolja fel. Ez nem tartalmazza a fürthöz csatolt kódtárakat.

A parancs súgójának megjelenítéséhez futtassa a parancsot dbutils.library.help("list").

Ez a példa a jegyzetfüzetben telepített kódtárakat sorolja fel.

dbutils.library.list()

Feljegyzés

Ennek a parancsnak a megfelelője %pip a következő:

%pip freeze

updateCondaEnv parancs (dbutils.library.updateCondaEnv)

Frissítések az aktuális jegyzetfüzet Conda-környezetét a tartalom environment.ymlalapján. Ez a módszer csak a Condán futó Databricks Runtime esetében támogatott.

A parancs súgójának megjelenítéséhez futtassa a parancsot dbutils.library.help("updateCondaEnv").

Ez a példa frissíti az aktuális jegyzetfüzet Conda-környezetét a megadott specifikáció tartalma alapján.

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