Jupyter - Allgemeine Informationen: Unterschied zwischen den Versionen

ZIM HilfeWiki - das Wiki
 
(48 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 2: Zeile 2:
 
|type=Anleitung
 
|type=Anleitung
 
|service=Service:Jupyter
 
|service=Service:Jupyter
|targetgroup=Angestellte,Studierende,Gäste
+
|targetgroup=Gäste, Angestellte, Studierende
 
|hasdisambig=Nein
 
|hasdisambig=Nein
}}
 
{{Search engine parameters‏‎}}
 
{{template caller‏‎
 
|marker=Stub
 
 
}}
 
}}
 
JupyterLab ist eine Webanwendung, mit der Notebooks erstellt und geteilt werden können, die die Entwicklung, Dokumentation und Ausführung von Code, Visualisierungen und erläuternden Text enthalten können. Die Notebooks ermöglichen die Entwicklung, Dokumentation und Ausführung von Code im Browser.
 
JupyterLab ist eine Webanwendung, mit der Notebooks erstellt und geteilt werden können, die die Entwicklung, Dokumentation und Ausführung von Code, Visualisierungen und erläuternden Text enthalten können. Die Notebooks ermöglichen die Entwicklung, Dokumentation und Ausführung von Code im Browser.
 +
 +
<br>Das Jupyter-System unterstützt verschiedene Programmiersprachen, darunter Python, Java, R und Julia.
 +
 +
{{ambox|type=content
 +
|text='''Der Jupyter-Dienst wurde aktualisiert.''' Mit diesem Update ging auch ein Hard- und Software-Stack Wechsel einher. Bedingt durch diesen Wechsel können leider '''keine Nutzerdaten''' in den neuen JupyterHub übernommen werden, daher wird es im Anschluss an das Update ein jupyter-old.uni-paderborn.de geben. Dort sind alle alten Nutzerdaten bis zum '''12. Dezember 2024''' abrufbar und müssen vom Nutzer '''eigenständig kopiert bzw. gesichert''' werden. Nach dem 12.12.24 ist eine Wiederherstellung der alten Nutzerdaten nicht mehr möglich!
 +
Eine '''Anleitung zur Sicherung''' Ihrer alten Daten und diese in das neue Jupyter importieren können finden Sie unter [https://hilfe.uni-paderborn.de/Jupyter_-_Allgemeine_Informationen#Sicherung_und_.C3.9Cbertragung_Ihrer_Daten_vom_alten_Jupyter-Dienst Sicherung und Übertragung Ihrer Daten vom alten Jupyter-Dienst].}}
 +
 +
== Zugang zur Jupyter Anwendung ==
 +
 +
* Rufen Sie das Serviceportal auf: https://serviceportal.uni-paderborn.de
 +
* Melden Sie sich mit Ihrem Uni-Account an.
 +
* Wählen Sie unter '''Benutzerverwaltung''' den Menüpunkt '''Weitere Dienste''' aus.
 +
 +
[[Datei:Webanwendungen Limesurvey einrichten 3.png|links|mini|ohne|350px]]
 
<br>
 
<br>
Das Jupyter-System unterstützt verschiedene Programmiersprachen, darunter Python, Java, R, Julia, Matlab viele mehr.
+
* Scrollen Sie zum Ende der Seite.
 +
* Schalten Sie  die '''Erweiterte Ansicht''' auf '''"An"'''.
 +
<br clear=all>
  
== Zugang ==
+
[[Datei:Jupyter-Notebook-00.png|links|mini|421x421px|Jupyter beantragen|alternativtext=]]
* Um Jupyter nutzen zu können, muss dies im Serviceportal unter Benutzerverwaltung -> Weitere Dienste in der Erweiterten Ansicht (unten links) beantragt werden. Wenn die erweiterte Ansicht eingeschaltet ist, kann der Dienst unter Lehre und Studium beantragt werden.
+
<br>
* Unter jupyter.upb.de kann sich dann mit den IMT Daten eingeloggt werden.
+
* Klicken Sie in der Zeile '''Jupyter''' auf '''Optionen'''.
 +
* Klicken Sie auf '''Beantragen'''.
 +
* Zusätzlich müssen Sie den Dienst '''Netzwerkspeicher''' beantragen, um Jupyter nutzen zu können.
 +
<br clear=all>
  
===Beschreibung der verschiedenen IMT-Notebook-Images===
+
* Anschließend können Sie sich mit dem Uni-Account bei Jupyter anmelden:
Bild: 1 Übersicht über die Notebook Images
+
** https://jupyter.upb.de
  
Nach dem Login kann zwischen 5 verschiedenen Entwicklungsumgebungen ausgewählt werden:
 
# Basis-Notebook / Default basic python environment
 
#* Diese Option enthält einen Jupyter Notebook-Server, der grundlegende Funktionen und Werkzeuge enthält und Python unterstützt.
 
#* Enthält:
 
#** Minimal funktionsfähiger Jupyter Notebook-Server
 
#** Miniforge Python 3.x in /opt/conda mit zwei Paketmanagern (conda, mamba)
 
#** Notebook-, Jupyterhub- und Jupyterlab-Pakete
 
#** start-singleuser.sh-Skript, zum Starten aus JupyterHub
 
#** Jupyter-Erweiterungen:
 
#*** nbgrader
 
#*** ngshare_exchange
 
#*** nbgitpuller
 
#*** Konfigurationen, um mit dem UPB-JupyterHub zu arbeiten
 
  
# Java-Notebook / Java and python environment
+
===Beschreibung der verschiedenen ZIM-Notebook-Images===
#* Unterstützt Python und Java
+
[[Datei:Übersicht Notebook Images.png|alternativtext=|links|mini|652x652px|Übersicht über die Notebook Images]]
#* Enthält alles aus dem Basis-Notebook
+
<br clear=all>
#* Enthält einen Java Compiler und die Basisumgebung
 
  
# Scipy-Notebook / Scientific python environment
+
Nach dem Login stehen verschiedene Entwicklungsumgebungen zur Auswahl. Jede dieser Umgebungen ist für unterschiedliche Anwendungsfälle optimiert und bietet die nötigen Werkzeuge für wissenschaftliche Forschung, Datenanalyse, maschinelles Lernen etc.
#* Enthält beliebte Pakete aus dem wissenschaftlichen Python-Ökosystem
 
#* Es enthält außerdem:
 
#** Alles aus dem Basis-Image
 
#** TeX Live für die Konvertierung von Notebook-Dokumenten
 
#** ipympl und ipywidgets für interaktive Visualisierungen und Diagramme in Python-Notebooks
 
#** Facets zur Visualisierung von Datensätzen für maschinelles Lernen
 
  
# Datascience-Notebook / Datascience environment
+
'''1. Basis-Notebook / Standard-Python-Umgebung'''
#* Enthält:
 
#** alles aus der Scientific python environment / dem Scipy-Notebook
 
#** Bibliotheken für die Datenanalyse aus den Communities Julia, Python und R
 
#** Die folgenden Pakete: rpy2, HDF5, Gadfly, RDatasets
 
#** Den Julia-Compiler und die Basisumgebung
 
#** IJulia zur Unterstützung von Julia-Code in Jupyter-Notebooks
 
  
# Tensorflow-Notebook / Tensorflow environment
+
Diese Option stellt eine minimalistische Jupyter Notebook-Umgebung bereit, die grundlegende Funktionen und Werkzeuge für die Python-Entwicklung unterstützt.
#* Enthält:
 
#** Bibliotheken für Datenanalyse und Deep Learning aus der Julia-, Python- und R-Community
 
#** Alles aus dem Datascience-Notebook
 
#** Das „tensorflow maschinelles Lernen“-Paket
 
  
Die anfangs ausgewählte Umgebung legt fest, welche Programmiersprache im Notebook angewendet werden kann. Wenn bspw. ein Notebook in der „Basis-Notebook / Default basic python environment“ erstellt wurde und mit Python gearbeitet wird, im nächsten Notebook aber mit Java gearbeitet werden soll, muss das Java-Notebook über die dementsprechende Umgebung gestartet werden (bspw. „Java-Notebook / Java and python environment“). Dafür wäre es sinnvoll verschiedene Ordner anzulegen, die jeweils Dateien verschiedener Umgebungen enthalten.
+
'''2. Scipy-Notebook / Scientific python environment'''
 +
 
 +
Diese Umgebung ist ideal für wissenschaftliche Anwendungen und fügt beliebte Pakete aus dem wissenschaftlichen Python-Ökosystem hinzu.
 +
 
 +
'''3. TensorFlow-Umgebung'''
 +
 
 +
Diese Umgebung bietet spezialisierte Werkzeuge für maschinelles Lernen mit TensorFlow und fügt beliebte Deep Learning Pakete hinzu.
 +
 
 +
'''4. Julia-Umgebung'''
 +
 
 +
Diese Umgebung ist speziell für die Entwicklung mit der Programmiersprache Julia konzipiert und fügt beliebte Pakete des Julia-Ökosystems und einen Julia-Kernel hinzu.
 +
 
 +
'''5. R-Umgebung'''
 +
 
 +
Diese Umgebung bietet Unterstützung für die Programmiersprache R und fügt beliebte Pakete des R-Ökosystems und einen R-Kernel hinzu.
 +
 
 +
'''6. Datascience Umgebung'''
 +
 
 +
Diese Umgebung ist speziell auf Datenwissenschaft ausgelegt und fügt beliebte Pakete aus dem wissenschaftlichen Python-Ökosystem hinzu.
 +
 
 +
'''7. UPB_all-Notebook'''
 +
 
 +
Das upb_all-notebook-Image fügt alle oben genannten Images zusammen.
 +
 
 +
<bootstrap_alert color="info">Details zu den Notebook-Images finden Sie unter: https://git.uni-paderborn.de/jupyter/basis-notebook-images#beschreibung-der-verschiedenen-zim-notebook-images
 +
</bootstrap_alert>
 +
 
 +
Die zu Beginn ausgewählte Umgebung legt fest, '''welche Programmiersprache im jeweiligen Notebook verwendet wird'''. Wenn beispielsweise ein Notebook in der „Basis-Notebook / Default basic python environment“ erstellt wurde und Python genutzt wird, aber im nächsten Notebook mit Julia gearbeitet werden soll, muss die „Julia-Umgebung“ ausgewählt werden. Es empfiehlt sich, separate Ordner für die unterschiedlichen Umgebungen anzulegen, um Dateien übersichtlich nach genutzter Programmiersprache und Umgebung zu organisieren.
 +
 
 +
Unter „More Options“ können '''zusätzliche Einstellungen''' für die Entwicklungsumgebung vorgenommen werden, wie die Auswahl der Version, der Anzahl der CPU-Cores sowie des verfügbaren Arbeitsspeichers (RAM). Derzeit stehen nur Standardkonfigurationen zur Verfügung. Sollte eine höhere Rechenleistung benötigt werden, kann dies mit entsprechender Begründung beim ZIM werden.
 +
 
 +
Zusätzlich kann über die Funktion „Generate link“ '''ein direkter Link zum Notebook-Server''' erstellt werden, der den Zugang zur bestehenden Umgebung ermöglicht, ohne die oben genannten Einstellungen erneut vornehmen zu müssen. Bei Änderungen an der Konfiguration muss dieser Link über die Option „Update link“ aktualisiert werden.[[Datei:Screenshot_Jupyter_Notebook_-_Optionen_für_Notebook_Images.png|links|mini|ohne|550px|Optionen für Notebook Images]]
 +
<br clear=all>
  
 
===Eigenes Image beantragen===
 
===Eigenes Image beantragen===
 +
'''Wichtig:''' Das ZIM übernimmt keine Wartung für eigene Images. Zudem kann nach einem JupyterHub-Update nicht garantiert werden, dass eigene Images weiterhin kompatibel sind. Dies gilt nicht für die oben genannten ZIM-Notebook-Images, bei denen die Kompatibilität gewährleistet wird.
 +
 +
Für die Nutzung eigener Images sind fundierte Kenntnisse in Git und Docker erforderlich.
 +
 +
Um ein eigenes Image zu beantragen, muss eine entsprechende Anfrage an das ZIM (zim(at)upb(dot)de) gesendet werden. Weitere Informationen zu eigenen Images finden Sie [https://git.uni-paderborn.de/jupyter/basis-notebook-images#eigene-notebook-images hier].
 +
 +
Für die Nutzung des GitLab-Systems des ZIM ist es erforderlich, diesen Dienst über das Serviceportal zu beantragen.
 +
 +
Die Anfrage zur Nutzung eines eigenen Images beim ZIM sollte die folgenden Informationen enthalten:
 +
 +
* Verantwortlicher für das Image
 +
* Anzeigename des Images
 +
* Kurze Beschreibung des Images
 +
* Name, Repository und Version des Images
 +
* LDAP-Gruppe der Personen, welche das Image benutzen dürfen
 +
* Benötigte zusätzliche Ressourcen (RAM, CPU) '''mit Begründung'''
 +
 +
Nachdem die Anfrage vom ZIM bestätigt und alle Anforderungen korrekt eingetragen wurden, kann das Image regulär über den JupyterHub genutzt werden.
 +
 +
'''Hinweis''': In eigenen Images ist die Nutzung der Erweiterung '''Grader Service''' nicht möglich.
 +
 +
==JupyterHub==
 +
Nach der Auswahl einer Entwicklungsumgebung wird die JupyterHub-Oberfläche geladen.  
 +
 +
Links befindet sich das '''Notebook-Dashboard''', das eine Übersicht aller erstellten Notebooks und Ordner bietet, während auf der rechten Seite der '''Notebook-Editor''' angezeigt wird.
 +
 +
'''Hinweis:''' Es besteht die Möglichkeit, zur klassischen Jupyter Notebook-Ansicht zu wechseln. Dies kann über das Menü ''Help'' → ''Launch Classic Notebook'' erfolgen. Die folgenden Erklärungen gelten sowohl für JupyterLab als auch für die klassische Jupyter Notebook-Oberfläche.
 +
 +
===Das Notebook-Dashboard===
 +
Das Dashboard enthält vier Registerkarten.
 +
<br>
 +
[[Datei:Jupyter-Notebook-2.png|links|mini|ohne|450px|Notebook Dashboard]]
 +
<br clear=all>
 +
 +
====Der File Browser Tab====
 +
Im '''File Browser''' (1) werden Dateien und Ordner des aktuellen Verzeichnisses angezeigt. Mit einem Klick '''New Launcher''' (a) können neue Dateien erstellt oder Konsolen gestartet werden. Über '''New Folder''' (b) wird ein neuer Ordner angelegt, während mit '''Upload Files''' (c) Dateien auf den Notebook-Server hochgeladen werden können. Dateien können zudem per Drag-and-Drop in das Dashboard gezogen werden. Mit '''Refresh File List''' (d) lässt sich die Dateiliste aktualisieren.
 +
 +
Per Doppelklick auf eine Datei wird diese in einem neuen Tab auf der rechten Seite geöffnet. Mittels Rechtsklick in den File Browser können neue Ordner und Dateien angelegt werden. Mit Rechtsklick auf die Dateien selbst, können diese bspw. über ''Rename'' im Kontextmenü umbenannt werden.<br>[[Datei:Jupyter-Notebook-3.png|links|mini|ohne|450px|Rechtsklick im File Browser Tab]]
 +
<br clear=all>
 +
 +
====Der Running Terminals and Kernels Tab====
 +
Dieser Tab (2) zeigt alle aktuell laufenden Notebooks, Terminals und Kernels an. Hier können Notebooks und Terminals geschlossen bzw. die Kernels gestoppt werden.
 +
<br>
 +
 +
[[Datei:Jupyter-Notebook-4.png|mini|450px|Der Running Terminals and Kernels Tab|alternativtext=|ohne]]
 +
 +
==== Der Table of Contents Tab ====
 +
<br>Im '''Table of Contents'''-Tab (3) wird ein Inhaltsverzeichnis aller im Notebook vorhandenen Überschriften angezeigt, was die Navigation in umfangreichen Notebooks erleichtern kann.
 +
<br>
 +
 +
[[Datei:Jupyter-Notebook-5.png|mini|450px|Auflistung von Überschriften im "Table of Contents" Tab|alternativtext=|ohne]]
 +
 +
==== Extension Manager ====
 +
<br>
 +
Der '''Extension Manager''' (4) kann verwendet werden, um Erweiterungen für JupyterHub zu verwalten.
 +
<br>
 +
 +
===Der Notebook-Editor===
 +
Im '''Notebook-Editor''' können Benutzer*innen in Notebooks arbeiten. Ein geöffnetes Notebook ist mit einem Kernel verbunden, der den geschriebenen Code ausführt. Wenn dasselbe Notebook erneut geöffnet wird, verbindet es sich automatisch wieder mit dem ursprünglichen Kernel. Über den Tab '''Running Terminals and Kernels''' im Dashboard können alle Notebooks mit aktivem Kernel angezeigt und verwaltet werden.
 +
<br>
 +
 +
[[Datei:Jupyter-Notebook-6.png|center|mini|ohne|850px|Die Notebook-Oberfläche]]
 +
<br clear=all>Der Editor besteht aus mehreren Bereichen: '''Dashboard''', '''Menüleiste''', '''Toolbar''' und einer '''leeren Zelle''', in der entweder Code oder Markdown-Text eingegeben werden kann.
 +
 +
'''Menüleiste'''
 +
 +
Die Menüleiste bietet folgende Optionen:
 +
 +
* '''File''':
 +
** ''New'': Erstellen eines neuen Notebooks oder      einer anderen Datei
 +
** ''Save      Notebook/Save All'':      Speichern des aktuellen bzw. aller Notebooks
 +
** ''Download'': Herunterladen des Notebooks als .ipynb-Datei
 +
** ''Save and      Export Notebook As...'':      Exportieren des Notebooks in verschiedenen Dateiformaten
 +
* '''Edit''':
 +
** Bearbeiten von Zellen (Ausschneiden, Kopieren, Einfügen), Löschen oder Teilen/Zusammenführen von Zellen sowie Verschieben nach oben oder unten.
 +
* '''View''':
 +
** Anpassung des Erscheinungsbilds von Jupyter, wie z. B. das Anzeigen oder Verbergen von Toolbars.
 +
* '''Run''':
 +
** Ausführen von ausgewählten oder allen Zellen.
 +
* '''Kernel''':
 +
** Optionen zur Verwaltung des Kernels, wie Neustart, Unterbrechen oder Herunterfahren.
 +
* '''Tabs''':
 +
** Zeigt geöffnete Dokumente und Aktivitäten an.
 +
* '''Settings''':
 +
** Allgemeine Einstellungen
 +
* '''Help''':
 +
** Bietet Links zur JupyterLab-Hilfe.
 +
 +
<br>'''Toolbar'''
 +
 +
Die Toolbar ermöglicht den schnellen Zugriff auf häufig genutzte Funktionen der Menüleiste. Die Funktionen der Toolbar sind folgende:
 +
 +
* ''Save and create checkpoint:'' Speichern des Notebooks
 +
* ''Insert a cell below:'' Einfügen einer neuen Zelle unterhalb der aktuellen Zelle
 +
* ''Cut this cell:'' Ausschneiden von Zellen
 +
* ''Copy this cell:'' Kopieren von Zellen
 +
* ''Paste this cell from the clipboard:'' Einfügen von Zellen
 +
* ''Run this cell and advance:'' Ausführen der ausgewählten Zellen
 +
* ''Interrupt the kernel:'' Unterbrechen des Kernels
 +
* ''Restart the kernel:'' Neustart des Kernels
 +
* ''Restart the kernel and run all cells:'' Neustart des Kernels und Ausführung aller Zellen
 +
* ''Select the cell type:'' Auswahl des Zelltyps, z. B. Code oder Markdown
 +
 +
Außerdem findet sich oben rechts im Editor der '''Kernel-Indikator''', der den Status des Kernels anzeigt: Ein leerer Kreis bedeutet, dass der Kernel inaktiv ist, während ein gefüllter Kreis anzeigt, dass der Kernel gerade arbeitet.[[Datei:Jupyter-Notebook-7.png|links|mini|ohne|450px|Kernel-Indikator]]
 +
<br clear=all>
 +
 +
==Die verschiedenen Zell-Typen==
 +
Ein Jupyter Notebook besteht aus einer Abfolge von Zellen, die verschiedene Inhalte enthalten können. Eine Zelle ist ein mehrzeiliges Texteingabefeld, dessen Inhalt auf verschiedene Weise ausgeführt wird: durch Drücken von Shift + Enter, über die Schaltfläche „''Run this cell and advance''“ in der Toolbar oder über das Menü (Run -> Run selected cells).
 +
 +
Es gibt drei Haupttypen von Zellen: '''Code-Zellen''', '''Markdown-Zellen''' und '''Raw-Zellen'''. Standardmäßig ist jede neue Zelle eine Code-Zelle, aber der Zelltyp kann über ein Dropdown-Menü in der Toolbar (anfangs mit „Code“ beschriftet) geändert werden.
 +
 +
===Code===
 +
In Code-Zellen kann Programmcode bearbeitet und ausgeführt werden. Die verwendete '''Programmiersprache''' hängt vom Kernel ab, der durch die bei der Erstellung des Notebooks '''gewählte Umgebung''' bestimmt wird. Dies bedeutet, dass die anfangs ausgewählte Umgebung festlegt, welche Programmiersprache im Notebook angewendet werden kann.
 +
 +
Bei der Ausführung einer Code-Zelle wird der enthaltene Code an den verbundenen Kernel gesendet. Der Kernel verarbeitet den Code und liefert das Ergebnis zurück, das im Notebook als Ausgabe angezeigt wird. Diese Ausgabe kann Text, Abbildungen, HTML-Tabellen oder andere Formen umfassen.
 +
<br>
 +
 +
[[Datei:Jupyter-Notebook-8.png|links|mini|ohne|650px|Beispiel einer ausgeführten Code-Zelle]]
 +
<br clear=all>
 +
 +
Vor jeder Code-Zelle werden eckige Klammern angezeigt, die die Reihenfolge der Ausführung markieren. Leere eckige Klammern ([]) bedeuten, dass die Zelle noch nicht ausgeführt wurde, während ein Sternchen ([*]) darauf hinweist, dass die Zelle aktuell ausgeführt wird. Sobald der Code ausgeführt ist, zeigt die Nummer in den Klammern an, in welcher Reihenfolge die Zelle im Vergleich zu anderen ausgeführt wurde.
 +
 +
Zu beachten ist, dass die Ergebnisse von Code-Zellen später in anderen Zellen verwendet werden können. Daher ist das Ergebnis von der Reihenfolge der Ausführung abhängig.
 +
 +
===Markdown-Zelle===
 +
Markdown-Zellen enthalten formatierten Text, der mit der Auszeichnungssprache '''Markdown''' geschrieben wird. Wird eine Markdown-Zelle ausgeführt, wird der Markdown-Text in formatierten Text umgewandelt. Mit Markdown lassen sich vielfältige Formatierungen realisieren, wie z. B. '''fettgedruckter''' oder ''kursiver'' Text, geordnete und ungeordnete Listen sowie Tabellen.      
 +
 +
Markdown-Zellen sind besonders nützlich, um Kommentare oder Erklärungen im Notebook einzufügen oder den Arbeitsablauf zu dokumentieren. Sie können auch verwendet werden, um Überschriften und Unterüberschriften zu erstellen und das Notebook zu strukturieren. Überschriften werden mit Rautenzeichen (#) markiert, gefolgt von einem Leerzeichen und dem Titel:
 +
 +
* # für Hauptüberschriften
 +
* ## für Unterüberschriften
 +
* ### für Zwischenüberschriften<br>
 +
 +
[[Datei:Jupyter-Notebook-9.png|links|mini|ohne|650px|Beispiel: Überschriften mit Markdown]]
 +
<br clear=all>
 +
 +
===Raw-Zelle===
 +
In '''Raw-Zellen''' wird der eingegebene Inhalt vom Kernel nicht ausgeführt oder verarbeitet. Dieser Zellentyp eignet sich für Inhalte, die unverändert bleiben sollen, wie z. B. Beispielcode, der nicht ausgeführt werden soll.
 +
 +
==Beenden der Sitzung im JupyterHub (Stoppen des Servers)==
 +
Sobald die Arbeit im JupyterHub beendet ist, sollte stets die Entwicklungsumgebung ausgeschaltet werden, um Ressourcen für andere Nutzer*innen freizugeben.    
 +
 +
Der eigene Server kann dazu über das „Hub Control Panel“ gestoppt werden (''File -> Hub Control Panel'').
 +
 +
Alternativ wird der Server automatisch heruntergefahren, wenn der/die Nutzer/in sich abmeldet. Zudem erfolgt nach 2 Stunden Inaktivität ein automatisches Logout.
 +
<br>
 +
 +
[[Datei:Jupyter-Notebook-10.png|links|mini|ohne|650px|Das Hub Control Panel]]
 +
<br clear=all>
 +
 +
== Sicherung und Übertragung Ihrer Daten vom alten Jupyter-Dienst ==
 +
Um Ihre alten Daten zu sichern (und falls gewünscht in das neue Jupyter hochzuladen), befolgen Sie bitte folgende Schritte:
  
 +
* Rufen Sie [https://jupyter-old.uni-paderborn.de/hub/login jupyter-old.uni-paderborn.de] auf, um auf Ihre alten Daten zuzugreifen.
 +
* Loggen Sie sich ein.
 +
* Erstellen Sie einen Ordner namens „'''download'''“.
 +
* Kopieren Sie alle Notebooks und Dateien, die Sie sichern wollen, in den Ordner „download“.
 +
* Starten Sie ein Terminal.
 +
[[Datei:Ordner_download_erstellen.png|links|mini|ohne|650px]]
 +
* Geben Sie den Befehl <code>tar -czvf download.tar.gz download</code> ein.
 +
** Durch diesen Befehl werden alle Dateien im „download“-Ordner in einer tar.gz-Datei zusammengefasst.
 +
** Die Datei „download.tar.gz“ wird nach Ausführung des Befehls links im File Browser angezeigt. Dies kann einen Moment dauern.
 +
[[Datei:Tar.gz_Datei_erstellen.png|links|mini|ohne|650px]]
 +
* Laden Sie die Datei „download.tar.gz“ mit ''Rechtsklick -> Download'' herunter.
 +
* Entpacken Sie die Datei am gewünschten Ort.
 +
* Falls gewünscht, können Sie die Dateien nun im neuen Jupyter-Dienst (<nowiki>https://jupyter.uni-paderborn.de/</nowiki>) hochladen. Dafür ziehen Sie die jeweiligen Dateien einfach per Drag & Drop in den File Browser.<br />
 
== Siehe auch ==
 
== Siehe auch ==
Weitere interessante Artikel zum gleichen Themenfeld verlinken
+
* [[Jupyter]]

Aktuelle Version vom 19. September 2024, 10:45 Uhr

Allgemeine Informationen
Anleitung
Informationen
BetriebssystemAlle
ServiceJupyter
Interessant fürGäste, Angestellte und Studierende
HilfeWiki des ZIM der Uni Paderborn

no displaytitle found: Jupyter - Allgemeine Informationen

JupyterLab ist eine Webanwendung, mit der Notebooks erstellt und geteilt werden können, die die Entwicklung, Dokumentation und Ausführung von Code, Visualisierungen und erläuternden Text enthalten können. Die Notebooks ermöglichen die Entwicklung, Dokumentation und Ausführung von Code im Browser.


Das Jupyter-System unterstützt verschiedene Programmiersprachen, darunter Python, Java, R und Julia.

Zugang zur Jupyter Anwendung[Bearbeiten | Quelltext bearbeiten]

Webanwendungen Limesurvey einrichten 3.png


  • Scrollen Sie zum Ende der Seite.
  • Schalten Sie die Erweiterte Ansicht auf "An".


Jupyter beantragen


  • Klicken Sie in der Zeile Jupyter auf Optionen.
  • Klicken Sie auf Beantragen.
  • Zusätzlich müssen Sie den Dienst Netzwerkspeicher beantragen, um Jupyter nutzen zu können.



Beschreibung der verschiedenen ZIM-Notebook-Images[Bearbeiten | Quelltext bearbeiten]

Übersicht über die Notebook Images


Nach dem Login stehen verschiedene Entwicklungsumgebungen zur Auswahl. Jede dieser Umgebungen ist für unterschiedliche Anwendungsfälle optimiert und bietet die nötigen Werkzeuge für wissenschaftliche Forschung, Datenanalyse, maschinelles Lernen etc.

1. Basis-Notebook / Standard-Python-Umgebung

Diese Option stellt eine minimalistische Jupyter Notebook-Umgebung bereit, die grundlegende Funktionen und Werkzeuge für die Python-Entwicklung unterstützt.

2. Scipy-Notebook / Scientific python environment

Diese Umgebung ist ideal für wissenschaftliche Anwendungen und fügt beliebte Pakete aus dem wissenschaftlichen Python-Ökosystem hinzu.

3. TensorFlow-Umgebung

Diese Umgebung bietet spezialisierte Werkzeuge für maschinelles Lernen mit TensorFlow und fügt beliebte Deep Learning Pakete hinzu.

4. Julia-Umgebung

Diese Umgebung ist speziell für die Entwicklung mit der Programmiersprache Julia konzipiert und fügt beliebte Pakete des Julia-Ökosystems und einen Julia-Kernel hinzu.

5. R-Umgebung

Diese Umgebung bietet Unterstützung für die Programmiersprache R und fügt beliebte Pakete des R-Ökosystems und einen R-Kernel hinzu.

6. Datascience Umgebung

Diese Umgebung ist speziell auf Datenwissenschaft ausgelegt und fügt beliebte Pakete aus dem wissenschaftlichen Python-Ökosystem hinzu.

7. UPB_all-Notebook

Das upb_all-notebook-Image fügt alle oben genannten Images zusammen.

Die zu Beginn ausgewählte Umgebung legt fest, welche Programmiersprache im jeweiligen Notebook verwendet wird. Wenn beispielsweise ein Notebook in der „Basis-Notebook / Default basic python environment“ erstellt wurde und Python genutzt wird, aber im nächsten Notebook mit Julia gearbeitet werden soll, muss die „Julia-Umgebung“ ausgewählt werden. Es empfiehlt sich, separate Ordner für die unterschiedlichen Umgebungen anzulegen, um Dateien übersichtlich nach genutzter Programmiersprache und Umgebung zu organisieren.

Unter „More Options“ können zusätzliche Einstellungen für die Entwicklungsumgebung vorgenommen werden, wie die Auswahl der Version, der Anzahl der CPU-Cores sowie des verfügbaren Arbeitsspeichers (RAM). Derzeit stehen nur Standardkonfigurationen zur Verfügung. Sollte eine höhere Rechenleistung benötigt werden, kann dies mit entsprechender Begründung beim ZIM werden.

Zusätzlich kann über die Funktion „Generate link“ ein direkter Link zum Notebook-Server erstellt werden, der den Zugang zur bestehenden Umgebung ermöglicht, ohne die oben genannten Einstellungen erneut vornehmen zu müssen. Bei Änderungen an der Konfiguration muss dieser Link über die Option „Update link“ aktualisiert werden.

Optionen für Notebook Images


Eigenes Image beantragen[Bearbeiten | Quelltext bearbeiten]

Wichtig: Das ZIM übernimmt keine Wartung für eigene Images. Zudem kann nach einem JupyterHub-Update nicht garantiert werden, dass eigene Images weiterhin kompatibel sind. Dies gilt nicht für die oben genannten ZIM-Notebook-Images, bei denen die Kompatibilität gewährleistet wird.

Für die Nutzung eigener Images sind fundierte Kenntnisse in Git und Docker erforderlich.

Um ein eigenes Image zu beantragen, muss eine entsprechende Anfrage an das ZIM (zim(at)upb(dot)de) gesendet werden. Weitere Informationen zu eigenen Images finden Sie hier.

Für die Nutzung des GitLab-Systems des ZIM ist es erforderlich, diesen Dienst über das Serviceportal zu beantragen.

Die Anfrage zur Nutzung eines eigenen Images beim ZIM sollte die folgenden Informationen enthalten:

  • Verantwortlicher für das Image
  • Anzeigename des Images
  • Kurze Beschreibung des Images
  • Name, Repository und Version des Images
  • LDAP-Gruppe der Personen, welche das Image benutzen dürfen
  • Benötigte zusätzliche Ressourcen (RAM, CPU) mit Begründung

Nachdem die Anfrage vom ZIM bestätigt und alle Anforderungen korrekt eingetragen wurden, kann das Image regulär über den JupyterHub genutzt werden.

Hinweis: In eigenen Images ist die Nutzung der Erweiterung Grader Service nicht möglich.

JupyterHub[Bearbeiten | Quelltext bearbeiten]

Nach der Auswahl einer Entwicklungsumgebung wird die JupyterHub-Oberfläche geladen.  

Links befindet sich das Notebook-Dashboard, das eine Übersicht aller erstellten Notebooks und Ordner bietet, während auf der rechten Seite der Notebook-Editor angezeigt wird.

Hinweis: Es besteht die Möglichkeit, zur klassischen Jupyter Notebook-Ansicht zu wechseln. Dies kann über das Menü HelpLaunch Classic Notebook erfolgen. Die folgenden Erklärungen gelten sowohl für JupyterLab als auch für die klassische Jupyter Notebook-Oberfläche.

Das Notebook-Dashboard[Bearbeiten | Quelltext bearbeiten]

Das Dashboard enthält vier Registerkarten.

Notebook Dashboard


Der File Browser Tab[Bearbeiten | Quelltext bearbeiten]

Im File Browser (1) werden Dateien und Ordner des aktuellen Verzeichnisses angezeigt. Mit einem Klick New Launcher (a) können neue Dateien erstellt oder Konsolen gestartet werden. Über New Folder (b) wird ein neuer Ordner angelegt, während mit Upload Files (c) Dateien auf den Notebook-Server hochgeladen werden können. Dateien können zudem per Drag-and-Drop in das Dashboard gezogen werden. Mit Refresh File List (d) lässt sich die Dateiliste aktualisieren.

Per Doppelklick auf eine Datei wird diese in einem neuen Tab auf der rechten Seite geöffnet. Mittels Rechtsklick in den File Browser können neue Ordner und Dateien angelegt werden. Mit Rechtsklick auf die Dateien selbst, können diese bspw. über Rename im Kontextmenü umbenannt werden.

Rechtsklick im File Browser Tab


Der Running Terminals and Kernels Tab[Bearbeiten | Quelltext bearbeiten]

Dieser Tab (2) zeigt alle aktuell laufenden Notebooks, Terminals und Kernels an. Hier können Notebooks und Terminals geschlossen bzw. die Kernels gestoppt werden.

Der Running Terminals and Kernels Tab

Der Table of Contents Tab[Bearbeiten | Quelltext bearbeiten]


Im Table of Contents-Tab (3) wird ein Inhaltsverzeichnis aller im Notebook vorhandenen Überschriften angezeigt, was die Navigation in umfangreichen Notebooks erleichtern kann.

Auflistung von Überschriften im "Table of Contents" Tab

Extension Manager[Bearbeiten | Quelltext bearbeiten]


Der Extension Manager (4) kann verwendet werden, um Erweiterungen für JupyterHub zu verwalten.

Der Notebook-Editor[Bearbeiten | Quelltext bearbeiten]

Im Notebook-Editor können Benutzer*innen in Notebooks arbeiten. Ein geöffnetes Notebook ist mit einem Kernel verbunden, der den geschriebenen Code ausführt. Wenn dasselbe Notebook erneut geöffnet wird, verbindet es sich automatisch wieder mit dem ursprünglichen Kernel. Über den Tab Running Terminals and Kernels im Dashboard können alle Notebooks mit aktivem Kernel angezeigt und verwaltet werden.

Die Notebook-Oberfläche


Der Editor besteht aus mehreren Bereichen: Dashboard, Menüleiste, Toolbar und einer leeren Zelle, in der entweder Code oder Markdown-Text eingegeben werden kann.

Menüleiste

Die Menüleiste bietet folgende Optionen:

  • File:
    • New: Erstellen eines neuen Notebooks oder einer anderen Datei
    • Save Notebook/Save All: Speichern des aktuellen bzw. aller Notebooks
    • Download: Herunterladen des Notebooks als .ipynb-Datei
    • Save and Export Notebook As...: Exportieren des Notebooks in verschiedenen Dateiformaten
  • Edit:
    • Bearbeiten von Zellen (Ausschneiden, Kopieren, Einfügen), Löschen oder Teilen/Zusammenführen von Zellen sowie Verschieben nach oben oder unten.
  • View:
    • Anpassung des Erscheinungsbilds von Jupyter, wie z. B. das Anzeigen oder Verbergen von Toolbars.
  • Run:
    • Ausführen von ausgewählten oder allen Zellen.
  • Kernel:
    • Optionen zur Verwaltung des Kernels, wie Neustart, Unterbrechen oder Herunterfahren.
  • Tabs:
    • Zeigt geöffnete Dokumente und Aktivitäten an.
  • Settings:
    • Allgemeine Einstellungen
  • Help:
    • Bietet Links zur JupyterLab-Hilfe.


Toolbar

Die Toolbar ermöglicht den schnellen Zugriff auf häufig genutzte Funktionen der Menüleiste. Die Funktionen der Toolbar sind folgende:

  • Save and create checkpoint: Speichern des Notebooks
  • Insert a cell below: Einfügen einer neuen Zelle unterhalb der aktuellen Zelle
  • Cut this cell: Ausschneiden von Zellen
  • Copy this cell: Kopieren von Zellen
  • Paste this cell from the clipboard: Einfügen von Zellen
  • Run this cell and advance: Ausführen der ausgewählten Zellen
  • Interrupt the kernel: Unterbrechen des Kernels
  • Restart the kernel: Neustart des Kernels
  • Restart the kernel and run all cells: Neustart des Kernels und Ausführung aller Zellen
  • Select the cell type: Auswahl des Zelltyps, z. B. Code oder Markdown

Außerdem findet sich oben rechts im Editor der Kernel-Indikator, der den Status des Kernels anzeigt: Ein leerer Kreis bedeutet, dass der Kernel inaktiv ist, während ein gefüllter Kreis anzeigt, dass der Kernel gerade arbeitet.

Kernel-Indikator


Die verschiedenen Zell-Typen[Bearbeiten | Quelltext bearbeiten]

Ein Jupyter Notebook besteht aus einer Abfolge von Zellen, die verschiedene Inhalte enthalten können. Eine Zelle ist ein mehrzeiliges Texteingabefeld, dessen Inhalt auf verschiedene Weise ausgeführt wird: durch Drücken von Shift + Enter, über die Schaltfläche „Run this cell and advance“ in der Toolbar oder über das Menü (Run -> Run selected cells).

Es gibt drei Haupttypen von Zellen: Code-Zellen, Markdown-Zellen und Raw-Zellen. Standardmäßig ist jede neue Zelle eine Code-Zelle, aber der Zelltyp kann über ein Dropdown-Menü in der Toolbar (anfangs mit „Code“ beschriftet) geändert werden.

Code[Bearbeiten | Quelltext bearbeiten]

In Code-Zellen kann Programmcode bearbeitet und ausgeführt werden. Die verwendete Programmiersprache hängt vom Kernel ab, der durch die bei der Erstellung des Notebooks gewählte Umgebung bestimmt wird. Dies bedeutet, dass die anfangs ausgewählte Umgebung festlegt, welche Programmiersprache im Notebook angewendet werden kann.

Bei der Ausführung einer Code-Zelle wird der enthaltene Code an den verbundenen Kernel gesendet. Der Kernel verarbeitet den Code und liefert das Ergebnis zurück, das im Notebook als Ausgabe angezeigt wird. Diese Ausgabe kann Text, Abbildungen, HTML-Tabellen oder andere Formen umfassen.

Beispiel einer ausgeführten Code-Zelle


Vor jeder Code-Zelle werden eckige Klammern angezeigt, die die Reihenfolge der Ausführung markieren. Leere eckige Klammern ([]) bedeuten, dass die Zelle noch nicht ausgeführt wurde, während ein Sternchen ([*]) darauf hinweist, dass die Zelle aktuell ausgeführt wird. Sobald der Code ausgeführt ist, zeigt die Nummer in den Klammern an, in welcher Reihenfolge die Zelle im Vergleich zu anderen ausgeführt wurde.

Zu beachten ist, dass die Ergebnisse von Code-Zellen später in anderen Zellen verwendet werden können. Daher ist das Ergebnis von der Reihenfolge der Ausführung abhängig.

Markdown-Zelle[Bearbeiten | Quelltext bearbeiten]

Markdown-Zellen enthalten formatierten Text, der mit der Auszeichnungssprache Markdown geschrieben wird. Wird eine Markdown-Zelle ausgeführt, wird der Markdown-Text in formatierten Text umgewandelt. Mit Markdown lassen sich vielfältige Formatierungen realisieren, wie z. B. fettgedruckter oder kursiver Text, geordnete und ungeordnete Listen sowie Tabellen.      

Markdown-Zellen sind besonders nützlich, um Kommentare oder Erklärungen im Notebook einzufügen oder den Arbeitsablauf zu dokumentieren. Sie können auch verwendet werden, um Überschriften und Unterüberschriften zu erstellen und das Notebook zu strukturieren. Überschriften werden mit Rautenzeichen (#) markiert, gefolgt von einem Leerzeichen und dem Titel:

  • # für Hauptüberschriften
  • ## für Unterüberschriften
  • ### für Zwischenüberschriften
Beispiel: Überschriften mit Markdown


Raw-Zelle[Bearbeiten | Quelltext bearbeiten]

In Raw-Zellen wird der eingegebene Inhalt vom Kernel nicht ausgeführt oder verarbeitet. Dieser Zellentyp eignet sich für Inhalte, die unverändert bleiben sollen, wie z. B. Beispielcode, der nicht ausgeführt werden soll.

Beenden der Sitzung im JupyterHub (Stoppen des Servers)[Bearbeiten | Quelltext bearbeiten]

Sobald die Arbeit im JupyterHub beendet ist, sollte stets die Entwicklungsumgebung ausgeschaltet werden, um Ressourcen für andere Nutzer*innen freizugeben.    

Der eigene Server kann dazu über das „Hub Control Panel“ gestoppt werden (File -> Hub Control Panel).

Alternativ wird der Server automatisch heruntergefahren, wenn der/die Nutzer/in sich abmeldet. Zudem erfolgt nach 2 Stunden Inaktivität ein automatisches Logout.

Das Hub Control Panel


Sicherung und Übertragung Ihrer Daten vom alten Jupyter-Dienst[Bearbeiten | Quelltext bearbeiten]

Um Ihre alten Daten zu sichern (und falls gewünscht in das neue Jupyter hochzuladen), befolgen Sie bitte folgende Schritte:

  • Rufen Sie jupyter-old.uni-paderborn.de auf, um auf Ihre alten Daten zuzugreifen.
  • Loggen Sie sich ein.
  • Erstellen Sie einen Ordner namens „download“.
  • Kopieren Sie alle Notebooks und Dateien, die Sie sichern wollen, in den Ordner „download“.
  • Starten Sie ein Terminal.
Ordner download erstellen.png
  • Geben Sie den Befehl tar -czvf download.tar.gz download ein.
    • Durch diesen Befehl werden alle Dateien im „download“-Ordner in einer tar.gz-Datei zusammengefasst.
    • Die Datei „download.tar.gz“ wird nach Ausführung des Befehls links im File Browser angezeigt. Dies kann einen Moment dauern.
Tar.gz Datei erstellen.png
  • Laden Sie die Datei „download.tar.gz“ mit Rechtsklick -> Download herunter.
  • Entpacken Sie die Datei am gewünschten Ort.
  • Falls gewünscht, können Sie die Dateien nun im neuen Jupyter-Dienst (https://jupyter.uni-paderborn.de/) hochladen. Dafür ziehen Sie die jeweiligen Dateien einfach per Drag & Drop in den File Browser.

Siehe auch[Bearbeiten | Quelltext bearbeiten]


Bei Fragen oder Problemen wenden Sie sich bitte telefonisch oder per E-Mail an uns:

Tel. IT: +49 (5251) 60-5544 Tel. Medien: +49 (5251) 60-2821 E-Mail: zim@uni-paderborn.de

Das Notebook-Café ist die Benutzerberatung des ZIM - Sie finden uns in Raum I0.401

Wir sind zu folgenden Zeiten erreichbar:


Mo Di - Fr
Vor-Ort-Support Geschlossen Über die Feiertage geschlossen
Telefonsupport 08:30 - 13:00 Über die Feiertage geschlossen


Das ZIM:Servicecenter Medien auf H1 hat aktuell zu folgenden Zeiten geöffnet:

Mo Di - Fr
08:00 - 16:00 Über die Feiertage geschlossen


Cookies helfen uns bei der Bereitstellung des ZIM HilfeWikis. Bei der Nutzung vom ZIM HilfeWiki werden die in der Datenschutzerklärung beschriebenen Cookies gespeichert.