Knihovny Pythonu v rámci poznámkových bloků
Knihovny s vymezeným poznámkovým blokem umožňují vytvářet, upravovat, ukládat, opakovaně používat a sdílet vlastní prostředí Pythonu, která jsou specifická pro poznámkový blok. Když nainstalujete knihovnu s vymezeným poznámkovým blokem, budou mít k této knihovně přístup jenom aktuální poznámkový blok a všechny úlohy přidružené k danému poznámkovému bloku. Jiné poznámkové bloky připojené ke stejnému clusteru nejsou ovlivněné.
Knihovny s vymezeným poznámkovým blokem se neuchovávají napříč relacemi. Knihovny s oborem poznámkového bloku je nutné přeinstalovat na začátku každé relace nebo při každém odpojení poznámkového bloku od clusteru.
Databricks doporučuje použít %pip
příkaz magic k instalaci knihoven Pythonu s vymezeným poznámkovým blokem.
V poznámkových blocích, které jsou naplánované jako úlohy, můžete použít %pip
. Pokud potřebujete spravovat prostředí Pythonu v poznámkovém bloku Scala, SQL nebo R, použijte %python
příkaz magic ve spojení s %pip
.
Při práci s instalacemi knihoven s vymezeným poznámkovým blokem můžete zaznamenat větší provoz do uzlu ovladače. Podívejte se , jak velký by měl být uzel ovladače při práci s knihovnami v oboru poznámkových bloků?.
Pokud chcete nainstalovat knihovny pro všechny poznámkové bloky připojené ke clusteru, použijte knihovny clusteru. Viz Knihovny clusterů.
Komplexní přehled možností dostupných pro instalaci knihoven Pythonu v Databricks najdete v tématu Správa prostředí Pythonu.
Poznámka:
V Databricks Runtime 10.4 LTS a níže můžete použít nástroj knihovny Azure Databricks (starší verze). Nástroj knihovny je podporován pouze v Databricks Runtime, nikoli v Databricks Runtime ML. Viz Nástroj knihovny (dbutils.library) (starší verze).
Správa knihoven pomocí %pip
příkazů
Příkaz %pip
je ekvivalentní příkazu pip a podporuje stejné rozhraní API. Následující části ukazují příklady použití %pip
příkazů ke správě prostředí. Další informace o instalaci balíčků Pythonu pomocí pip
nástroje pip najdete v dokumentaci k instalaci pip a souvisejících stránkách.
Důležité
- Počínaje příkazy Databricks Runtime 13.0
%pip
automaticky nerestartují proces Pythonu. Pokud nainstalujete nový balíček nebo aktualizujete existující balíček, možná budete muset použítdbutils.library.restartPython()
k zobrazení nových balíčků. Viz Restartování procesu Pythonu v Azure Databricks. - Databricks Runtime 12.2 LTS a níže doporučuje umístit všechny
%pip
příkazy na začátek poznámkového bloku. Stav poznámkového bloku se resetuje po každém%pip
příkazu, který upraví prostředí. Pokud v poznámkovém bloku vytvoříte metody nebo proměnné Pythonu a pak použijete%pip
příkazy v pozdější buňce, metody nebo proměnné se ztratí. - Upgrade, úprava nebo odinstalace základních balíčků Pythonu (například IPython) může
%pip
způsobit, že některé funkce přestanou fungovat podle očekávání. Pokud narazíte na takové problémy, resetujte prostředí odpojením a opětovným připojením poznámkového bloku nebo restartováním clusteru.
Instalace knihovny pomocí %pip
%pip install matplotlib
Instalace balíčku kolečka Pythonu pomocí %pip
%pip install /path/to/my_package.whl
Odinstalace knihovny pomocí %pip
Poznámka:
Knihovnu, která je součástí verzí a kompatibility s poznámkami k verzi Databricks Runtime, nemůžete odinstalovat nebo knihovnu nainstalovanou jako knihovnu clusteru. Pokud jste nainstalovali jinou verzi knihovny, než je ta, která je součástí databricks Runtime nebo ta, která je nainstalovaná v clusteru, můžete použít %pip uninstall
k vrácení knihovny na výchozí verzi modulu Databricks Runtime nebo verze nainstalované v clusteru, ale nemůžete použít %pip
příkaz k odinstalaci verze knihovny zahrnuté v Databricks Runtime nebo nainstalované v clusteru.
%pip uninstall -y matplotlib
Tato možnost je povinná -y
.
Instalace knihovny ze systému správy verzí pomocí %pip
%pip install git+https://github.com/databricks/databricks-cli
Do adresy URL můžete přidat parametry, které určují například verzi nebo podadresář Git. Další informace a příklady použití jiných systémů správy verzí najdete v podpoře VCS.
Instalace privátního balíčku s přihlašovacími údaji spravovanými tajnými kódy Databricks pomocí %pip
Pip podporuje instalaci balíčků z privátních zdrojů se základním ověřováním, včetně systémů správy privátních verzí a úložišť privátních balíčků, jako je Nexus a Artifactory. Správa tajných kódů je dostupná prostřednictvím rozhraní API pro tajné kódy Databricks, které umožňuje ukládat ověřovací tokeny a hesla. K přístupu k tajným kódům z poznámkového bloku použijte rozhraní DBUtils API. Všimněte si, že můžete použít $variables
v příkazech magic.
Chcete-li nainstalovat balíček z privátního úložiště, zadejte adresu URL úložiště s --index-url
možností nebo %pip install
ji přidejte do konfiguračního pip
souboru na adrese ~/.pip/pip.conf
.
token = dbutils.secrets.get(scope="scope", key="key")
%pip install --index-url https://<user>:$token@<your-package-repository>.com/<path/to/repo> <package>==<version> --extra-index-url https://pypi.org/simple/
Podobně můžete použít správu tajných kódů pomocí příkazů magic k instalaci privátních balíčků ze systémů správy verzí.
token = dbutils.secrets.get(scope="scope", key="key")
%pip install git+https://<user>:$token@<gitprovider>.com/<path/to/repo>
Instalace balíčku z DBFS pomocí %pip
Důležité
Každý uživatel pracovního prostoru může upravovat soubory uložené v DBFS. Azure Databricks doporučuje ukládat soubory do pracovních prostorů nebo na svazcích katalogu Unity.
Můžete použít %pip
k instalaci privátního balíčku, který byl uložen v DBFS.
Když soubor nahrajete do DBFS, automaticky soubor přejmenuje, nahradí mezery, tečky a pomlčky podtržítky. U souborů s kolečkem Pythonu je nutné, pip
aby název souboru používal tečky ve verzi (například 0.1.0) a pomlčky místo mezer nebo podtržítka, takže se tyto názvy souborů nezmění.
%pip install /dbfs/mypackage-0.0.1-py3-none-any.whl
Instalace balíčku ze svazku pomocí %pip
Důležité
Tato funkce je ve verzi Public Preview.
S Databricks Runtime 13.3 LTS a vyššími verzemi můžete nainstalovat %pip
privátní balíček, který byl uložen na svazek.
Když soubor nahrajete na svazek, automaticky soubor přejmenuje, nahradí mezery, tečky a pomlčky podtržítky. U souborů s kolečkem Pythonu je nutné, pip
aby název souboru používal tečky ve verzi (například 0.1.0) a pomlčky místo mezer nebo podtržítka, takže se tyto názvy souborů nezmění.
%pip install /Volumes/<catalog>/<schema>/<path-to-library>/mypackage-0.0.1-py3-none-any.whl
Instalace balíčku uloženého jako soubor pracovního prostoru pomocí %pip
S Modulem Databricks Runtime 11.3 LTS a novějším můžete nainstalovat %pip
privátní balíček uložený jako soubor pracovního prostoru.
%pip install /Workspace/<path-to-whl-file>/mypackage-0.0.1-py3-none-any.whl
Ukládání knihoven do souboru požadavků
%pip freeze > /Workspace/shared/prod_requirements.txt
Všechny podadresáře v cestě k souboru už musí existovat. Pokud spustíte %pip freeze > /Workspace/<new-directory>/requirements.txt
příkaz, příkaz selže, pokud /Workspace/<new-directory>
adresář ještě neexistuje.
Instalace knihoven pomocí souboru požadavků
Soubor požadavků obsahuje seznam balíčků, které se mají nainstalovat pomocí pip
. Příkladem použití souboru požadavků je:
%pip install -r /Workspace/shared/prod_requirements.txt
Další informace o requirements.txt
souborech najdete v tématu Formát souboru požadavků.
Jak velký by měl být uzel ovladače při práci s knihovnami v oboru poznámkových bloků?
Použití knihoven s vymezeným poznámkovým blokem může vést k většímu provozu do uzlu ovladače, protože funguje, aby prostředí bylo konzistentní napříč uzly exekutoru.
Pokud používáte cluster s 10 nebo více uzly, Databricks doporučuje tyto specifikace jako minimální požadavek na uzel ovladače:
- Pro cluster procesoru s 100 uzly použijte Standard_DS5_v2.
- Pro cluster GPU s 10 uzly použijte Standard_NC12.
U větších clusterů použijte větší uzel ovladače.
Můžu použít %sh pip
, !pip
nebo pip
? Jaký je rozdíl?
%sh
a !
spusťte příkaz prostředí v poznámkovém bloku. První příkaz je pomocný magický příkaz Databricks, zatímco druhý příkaz je funkcí IPythonu. pip
je zkratka pro %pip
to, kdy je povolená automatickámage , což je výchozí nastavení v poznámkových blocích Pythonu v Azure Databricks.
Ve službě Databricks Runtime 11.3 LTS a novějších , %pip
%sh pip
a !pip
všechny nainstalují knihovnu jako knihovnu Pythonu s oborem poznámkového bloku. Databricks Runtime 10.4 LTS a novější doporučuje používat pouze %pip
knihovny v rámci poznámkových bloků nebo pip
instalovat. Chování %sh pip
a !pip
není konzistentní v Databricks Runtime 10.4 LTS a níže.