Hyppää sisältöön

Docs CSC now features an automatic Finnish translation. Click here for more information.

Warning!

Puhti and Mahti will be decommissioned after Roihu becomes available. Users should clean up unnecessary files and move any required data by the end of August 2026. See the Roihu data preparation instructions for details.

Puhti scratch is very full: keep only active data there and move or delete everything else. No new Puhti scratch quota will be granted.

Puuttuvien Python-kirjastojen lisääminen Pythioniin SD Desktopissa

Oletusarvoisesti Ubuntu 22.04:ään perustuvissa SD Desktop -virtuaalikoneissa on asennettuna Python 3.10.12 (python3).

SD Desktopin Python3 sisältää yli 300 yleisesti käytettyä kirjastoa, kuten pandas, numpy ja scipy. Voit tarkistaa asennettujen kirjastojen täydellisen luettelon komennolla:

pip list

Koska Python-kirjastoja on saatavilla valtava määrä, saatat melko usein haluta käyttää kirjastoa, jota ei ole saatavilla SD Desktopissa.

Tavallisissa tietokoneissa ongelma voidaan ratkaista helposti lisäämällä puuttuva kirjasto komennolla pip install. Kuitenkin, koska SD Desktop -virtuaalikoneilla ei ole internetyhteyttä, et voi suorittaa pip install -komentoa sillä tavoin kuin sitä normaalisti käytetään.

Jos aiot käyttää SD Desktopissa monimutkaista Python-ympäristöä, paras ratkaisu on rakentaa Apptainer-säiliö, joka sisältää kaikki tarvitsemasi Python-kirjastot, ja tuoda säiliö SD Desktopiin.

Jos sinun kuitenkin tarvitsee lisätä vain muutama puuttuva kirjasto, voit luoda Pythonin virtuaaliympäristön puuttuvien kirjastojen lisäämiseksi. Tämä ohje esittelee kaksi tapaa lisätä puuttuvia Python-kirjastoja olemassa olevaan Python-ympäristöön SD Desktopissa. Esimerkkikirjastona käytämme SciKit-Optimize-kirjastoa.

Vaihtoehto 1: add-python-lib-työkalu

Add-python-lib on aputyökalu, jota voidaan käyttää Python-kirjastojen lisäämiseen Pythonin virtuaaliympäristöön SD Desktop -virtuaalikoneessa. Tämä työkalu voidaan lisätä virtuaalikoneellesi SD Software installer -työkalulla

Komennon perussyntaksi on:

add-python-lib search_term 

Komento etsii vastaavia paketteja niiden Python-kirjastojen joukosta, jotka CSC on esiladannut SD Connectiin. Huomaa, että esiladattu kirjastovalikoima on hyvin pieni (joitakin satoja) verrattuna yli 300 000 kirjastoon, jotka ovat saatavilla pipin kautta. Lähetä pyyntö CSC:n asiakastukeen, jos tarvitset kirjaston lisättäväksi valikoimaan. Huomaa, että kaikki Python-kirjastot eivät ole yhteensopivia tämän lähestymistavan kanssa.

Valittu kirjasto lisätään Pythonin virtuaaliympäristöön, joka sijaitsee hakemistossa /shared-directory/sd-tools/python3-venv. Tämä virtuaaliympäristö luodaan automaattisesti, kun add-python-lib otetaan käyttöön ensimmäisen kerran.

SciKit-Optimizen tapauksessa voit tehdä asennuksen komennolla:

add-python-lib scikit 

tai

add-python-lib scikit_optimize 

Huomaa, että hakutermi SciKit-Optimize ei löydä yhtään vastaavaa kirjastoa, koska hakuprosessi perustuu pip-asennustiedostojen nimiin, joissa käytetään vain pieniä kirjaimia ja joissa väliviivat (-) on korvattu alaviivoilla (_).

Jos käyttämäsi hakutermi vastaa useita Python-kirjastoja, työkalu näyttää luettelon kirjastoista, joista voit valita asennettavan kirjaston.

Tämän jälkeen työkalu kysyy, pitäisikö myös valitun kirjaston riippuvuudet asentaa. Yleensä sinun kannattaa yrittää asentaa myös riippuvuudet.

Kun asennus on valmis, voit siirtyä käyttämään Pythonin virtuaaliympäristöä komennoilla:

source /shared-directory/sd-tools/python3-venv/bin/activate
export PYTHONPATH=/usr/lib/python3/dist-packages:/usr/local/lib/python3.10/dist-packages

Vaihtoehto 2: Moduulin tuominen SD Connectin kautta

1. Asennustiedoston lataaminen SD Desktopia varten

Ensimmäinen tehtävä on ladata pip-asennuspakettitiedosto kirjastolle, jota haluat käyttää. Tämä täytyy tehdä SD Desktopin ulkopuolella. Voit etsiä paketin Pypi-repositoriosta tai käyttää komentoa pip download, jos koneellasi on asennettuna python3 (jos mahdollista, käytä Python-versiota, joka vastaa SD Desktopin Python-versiota).

1.1 Pypi-repositorio

SciKit-Optimizen tapauksessa haku Pypi-repositoriossa antaa sinulle projektiluettelon. SciKit-Optimize on luettelon ensimmäinen kohde. Voit jatkaa SciKit-Optimize-projektisivulle, jossa download-linkki tarjoaa luettelon ladattavista tiedostoista. Tässä voisimme ladata valmiiksi rakennetun kirjastotiedoston (scikit_optimize-0.10.2-py2.py3-none-any.whl ).

1.2 pip komentorivillä

Luo paikallisella koneellasi uusi hakemisto, käytä pip download -komentoa asennustiedostojen lataamiseen ja paketoi tämä hakemisto siirtämistä varten. Käyttäjän asund tapauksessa Linuxissa tai Macissa SciKit-Optimize-kirjasto voitaisiin paketoida komennoilla:

mkdir scikit-optimize
pip download scikit-optimize -d "/home/asund/scikit-optimize"
tar cvfz scikit-optimize.tgz scikit-optimize

1.3 Lataaminen

Seuraavaksi sinun tulee ladata asennuspaketti (scikit_optimize-0.10.2-py2.py3-none-any.whl tai scikit-optimize.tgz) yhteen dataämpäreistäsi SD Connectissa.

2. Kirjaston asentaminen

Kun olet ladannut asennuspaketin SD Connectiin, teet loput asennusvaiheista SD Desktop -ympäristössäsi.

  1. Avaa pääteistunto ja luo Pythonin virtuaaliympäristö komennolla (tämä tarvitsee tehdä vain kerran):

    python3 -m venv $HOME/my-python
    
  2. Aktivoi Pythonin virtuaaliympäristösi ja lisää oletus-Python-kirjastojen sijainti PYTHONPATH-ympäristömuuttujaan: (tämä täytyy tehdä aina, kun aloitat uuden pääteistunnon)

    source $HOME/my-python/bin/activate
    export PYTHONPATH=/usr/local/lib/python3.10/site-packages
    
  3. Avaa tai päivitä DataGateway-yhteytesi ja kopioi scikit-optimize.tgz paikalliselle levyllesi.

  4. Pura paketti

    tar zxvf scikit-optimize.tgz
    
  5. Siirry uuteen hakemistoon:

    cd scikit-optimize
    
  6. Asenna paketti:

    pip install scikit_optimize-0.9.0-py2.py3-none -any-whl -f ./ --no-index --no-deps
    

Nyt Pythonin (joka osoittaa sijaintiin $HOME/my-python/bin/python) pitäisi sisältää scikit_optimize-kirjasto.

Suomenkielinen tekoälykäännös

Sisällössä voi esiintyä virheellistä tietoa tekoälykäännöksestä johtuen.

Klikkaa tästä antaaksesi palautetta