Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A jegyzetfüzet-hatókörű kódtárak lehetővé teszik a jegyzetfüzetekre jellemző egyéni Python-környezetek létrehozását, módosítását, mentését, újrafelhasználását és megosztását. Jegyzetfüzet-hatókörű tár telepítésekor csak az aktuális jegyzetfüzet és a jegyzetfüzethez társított feladatok férhetnek hozzá az adott tárhoz. Az ugyanahhoz a fürthöz csatolt többi notebookra nincsenek hatással.
A jegyzetfüzet-hatókörű kódtárak nem maradnak meg a munkamenetek között. A jegyzetfüzethez tartozó könyvtárakat minden munkamenet kezdetén újra kell telepítenie, illetve valahányszor a jegyzetfüzet leválik a fürtről.
A Databricks azt javasolja, hogy a %pip magic paranccsal telepítsen jegyzetfüzet-hatókörű Python-kódtárakat. Az 5-ös vagy újabb környezeti verziót futtató szerver nélküli jegyzetfüzetekben a gyorsabb telepítés érdekében a %uv pip is használhatja.
Feladatokként ütemezett jegyzetfüzetekben is használható %pip . Ha egy Scala-, SQL- vagy R-notebookban kell kezelnie a Python-környezetet, használja a %python varázsparancsot a %pip-vel együtt.
A jegyzetfüzetre korlátozott könyvtártelepítésekkel végzett munka során előfordulhat, hogy nagyobb forgalmat észlel a vezérlőcsomóponton. Lásd: Az illesztőcsomópont méretére vonatkozó javaslatok.
A fürthöz csatlakoztatott összes notebook könyvtárainak telepítéséhez használjon fürtkönyvtárakat. Lásd Számítási hatókörű könyvtárak.
A Python-kódtárak Databricksben való telepítéséhez elérhető lehetőségek átfogó áttekintéséért tekintse meg a Python-környezetkezelést.
Kódtárak kezelése parancsokkal %pip
A %pip parancs egyenértékű a pip paranccsal, és ugyanazt az API-t támogatja. Az alábbi szakaszok példákat mutatnak be arra, hogyan használhat %pip parancsokat a környezet kezeléséhez. A Python-csomagok telepítésével pipkapcsolatos további információkért tekintse meg a pip telepítési dokumentációját és a kapcsolódó oldalakat.
Fontos
-
%pipparancsok nem indítják újra automatikusan a Python folyamatot. Ha új csomagot telepít vagy frissít egy meglévő csomagot, előfordulhat, hogy az új csomagok megtekintéséhez kell használniadbutils.library.restartPython(). Lásd: A Python-folyamat újraindítása az Azure Databricksben. - Az alapvető Python-csomagok (például az IPython)
%pipfrissítése, módosítása vagy eltávolítása bizonyos funkcióknak a várt módon történő leállását okozhatja. Ha ilyen problémákat tapasztal, állítsa vissza a környezetet a fürt újraindításával vagy új munkamenet indításával.
Gyorsabb telepítés a %uv pip
Megjegyzés
%uv pip csak az 5-ös vagy újabb környezetverziót futtató kiszolgáló nélküli notebookokban érhető el. A klasszikus számítási környezetek és a kiszolgáló nélküli környezet korábbi verziói nem támogatják a(z) %uv pip elemet.
A %uv pip magic parancs gyorsabb alternatívája a %pip.
%uv pip működését a uv csomagkezelő biztosítja, és ugyanazt a notebook virtuális környezetet használja, mint %pip, így az egyik eszközzel telepített csomagok a másikban is elérhetők.
%uv pip gyorsabb, mint %pip az olyan telepítések és írásvédett műveletek esetében, mint a list. Ez kiválóan alkalmas az iterációhoz egy környezeti specifikáción felül.
A %uv pip támogatja a szabványos pip alparancsokat: install, uninstall, list, show, freeze, check és tree.
%uv pip install simplejson
%uv pip list
Ezen a lapon található egyéb telepítési minták (kötetek, munkaterületfájlok, követelményfájlok, verziókövetés, privát adattárak) együttműködnek.%uv pip A példák bármelyikében lecserélheti a(z) %pip elemet erre: %uv pip.
%uv pip Korlátozások
-
%uv pip uninstallA kiszolgáló nélküli környezetben előre telepített kódtárak nem távolíthatók el teljesen. Csak a csomag metaadatai törlődnek. A mögöttes fájlok a fájlrendszeren maradnak, és a csomag továbbra is importálható. -
%uv pipnem ellenőrzi az előre telepített kódtárak függőségi ütközéseit. - A(z)
%uv pipparancsok futtatása után előfordulhat, hogy a notebook Környezet oldalsó paneljén egyes előre telepített könyvtárak felhasználó által telepítettként jelennek meg. Ez egy megjelenítési probléma, és nincs hatással a csomag működésére. -
%uv pipgyors interaktív iterációhoz készült. A jegyzetfüzet reprodukálható környezetének beállításához adjon hozzá függőségeket a jegyzetfüzet Környezet oldali paneljén.
Egy könyvtár telepítése ezzel: %pip
%pip install matplotlib==3.8.4
Python wheel csomag telepítése ezzel: %pip
%pip install /path/to/my_package.whl
Kódtár eltávolítása a(z) %pip használatával
Megjegyzés
Nem távolíthat el olyan kódtárat, amely szerepel a Databricks Runtime kiadási megjegyzésekben: verziók és kompatibilitás között, illetve olyan kódtárat sem, amely fürtkódtárként lett telepítve. Ha a Databricks Runtime-ban vagy a fürtön telepített verziótól eltérő erőforrástár-verziót telepített, a tárat visszaállíthatja %pip uninstall a Databricks Runtime alapértelmezett verziójára vagy a fürtre telepített verzióra, de nem használhat %pip parancsot a Databricks Runtime-ban vagy a fürtön telepített tár verziójának eltávolításához.
%pip uninstall -y matplotlib
A -y beállítás megadása kötelező.
Kódtár telepítése verziókövetési rendszerből a %pip
%pip install git+https://github.com/databricks/databricks-cli
Paramétereket adhat hozzá az URL-címhez, hogy olyan dolgokat adjon meg, mint a verzió vagy a git alkönyvtár. További információkért és más verziókövetési rendszerek használatával kapcsolatos példákért tekintse meg a VCS támogatását .
Privát csomag telepítése a Databricks secrets által kezelt hitelesítő adatokkal %pip
A pip támogatja a magánforrásokból származó csomagok telepítését alapszintű hitelesítési, beleértve a privát verziókövetési rendszereket és a privát csomagtárakat, például Nexus és Artifactory. A titkos kódok kezelése a Databricks Titkos kódok API-val érhető el, amely lehetővé teszi a hitelesítési jogkivonatok és jelszavak tárolását.
A DBUtils API használatával hozzáférhet a jegyzetfüzet titkos kulcsaihoz. Vegye figyelembe, hogy varázsparancsokban is használható $variables .
Ha privát tárolóból szeretne csomagot telepíteni, adja meg a tároló URL-címét a --index-url%pip install kapcsolójával, vagy adja hozzá a(z) pip konfigurációs fájlhoz itt: ~/.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/
Hasonlóképpen használhat titkos kódkezelést varázsparancsokkal a privát csomagok verziókövetési rendszerekből való telepítéséhez.
token = dbutils.secrets.get(scope="scope", key="key")
%pip install git+https://<user>:$token@<gitprovider>.com/<path/to/repo>
Csomag telepítése a DBFS-ből a következővel: %pip
Fontos
A munkaterület bármely felhasználója módosíthatja a DBFS-ben tárolt fájlokat. Az Azure Databricks azt javasolja, hogy a fájlokat munkaterületeken vagy Unity Catalog-köteteken tárolja.
A DBFS-en mentett privát csomag telepítésére is használható %pip .
Amikor feltölt egy fájlt a DBFS-be, az automatikusan átnevezi a fájlt, és aláhúzásjelekre cseréli a szóközöket, az időszakokat és a kötőjeleket. Python wheel-fájlok esetén a pip megköveteli, hogy a fájlnév a verziószámban pontokat használjon (például 0.1.0), valamint szóközök vagy aláhúzásjelek helyett kötőjeleket, ezért ezek a fájlnevek nem változnak.
%pip install /Volumes/<catalog>/<schema>/<volume>/mypackage-0.0.1-py3-none-any.whl
Csomag telepítése egy kötetről a %pip használatával
Fontos
Ez a funkció a nyilvános előzetes verzióban érhető el.
A Databricks Runtime 13.3 LTS és újabb verzióiban a %pip elemet használhatja egy köteten tárolt privát csomag telepítésére.
Amikor feltölt egy fájlt egy kötetre, az automatikusan átnevezi a fájlt, szóközök, pontok és kötőjelek helyett aláhúzásjelekkel. Python wheel-fájlok esetén a pip megköveteli, hogy a fájlnév a verziószámban pontokat használjon (például 0.1.0), valamint szóközök vagy aláhúzásjelek helyett kötőjeleket, ezért ezek a fájlnevek nem változnak.
%pip install /Volumes/<catalog>/<schema>/<path-to-library>/mypackage-0.0.1-py3-none-any.whl
Munkaterületfájlként tárolt csomag telepítése a %pip
A Databricks Runtime 11.3 LTS és újabb verzióiban a %pip használatával telepíthet egy munkaterületfájlként mentett privát csomagot.
%pip install /Workspace/<path-to-whl-file>/mypackage-0.0.1-py3-none-any.whl
Kódtárak mentése egy követelményfájlba
%pip freeze > /Workspace/shared/prod_requirements.txt
A fájl elérési útjában szereplő alkönyvtáraknak már létezniük kell. Ha futtatja %pip freeze > /Workspace/<new-directory>/requirements.txt, a parancs meghiúsul, ha a könyvtár /Workspace/<new-directory> még nem létezik.
Kódtárak telepítéséhez használjon követelményfájlt
A követelmények fájlja tartalmazza a telepített pipcsomagok listáját. Egy követelményfájl használatára példa:
:::megjegyzés Kiszolgáló nélküli kompatibilitás
Javasoljuk, hogy távolodjon el a nem rögzített %pip install parancsoktól, mivel nem kompatibilisek a Databricks kiszolgáló nélküli számítási architektúrájával. A pin to ==<version> használható helyette.
:::
%pip install -r /Workspace/shared/prod_requirements.txt
A fájlokkal kapcsolatos további információkért lásd a requirements.txt című témakört.
Illesztőprogram-csomópont méretre vonatkozó javaslatok
A jegyzetfüzet-hatókörű kódtárak használata nagyobb forgalmat eredményezhet az illesztőprogram-csomópont felé, mivel úgy működik, hogy a környezet konzisztens legyen a végrehajtó csomópontok között.
Ha 10 vagy több csomópontot tartalmazó fürtöt használ, a Databricks az illesztőprogram-csomópont minimális követelményeként ezeket a specifikációkat javasolja:
- 100 csomópontos CPU-fürt esetén használja a Standard_D8ds_v5.
- 10 csomópontból álló GPU-fürt esetén használja a Standard_NC12 típust.
Nagyobb fürtök esetén használjon nagyobb illesztőcsomópontot.
A %pip, %sh pip és !pip közötti különbségek
%sh és ! végrehajt egy rendszerhéjparancsot egy jegyzetfüzetben; az előbbi egy Databricks segédvarázsló parancs , míg az utóbbi az IPython egyik funkciója. A pip a %pip rövidítése, ha a automagic engedélyezve van, ami alapértelmezés szerint így van az Azure Databricks Python-notebookokban.
A Databricks Runtime 11.3 LTS és újabb verzióiban a %pip, a %sh pip és a !pip egyaránt jegyzetfüzet-hatókörű Python-könyvtárként telepít egy könyvtárat. A Databricks Runtime 10.4 LTS és az annál korábbi verziók esetén a Databricks a notebook-hatókörű könyvtárak telepítéséhez csak a %pip vagy a pip használatát javasolja. A %sh pip és a !pip viselkedése nem következetes a Databricks Runtime 10.4 LTS-ben és az annál korábbi verziókban.
Ismert problémák
- A Databricks Runtime 9.1 LTS-en a jegyzetfüzet-hatókörű kódtárak nem kompatibilisek a kötegelt streamelési feladatokkal. A Databricks inkább fürtkódtárak vagy az IPython-kernel használatát javasolja.