Jupyter - Allgemeine Informationen

ZIM HilfeWiki - das Wiki

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.



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

Übersicht über die Notebook Images


Nach dem Login kann zwischen 5 verschiedenen Entwicklungsumgebungen ausgewählt werden:

  1. 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
  2. Java-Notebook / Java and python environment
    • Unterstützt Python und Java
    • Enthält alles aus dem Basis-Notebook
    • Enthält einen Java Compiler und die Basisumgebung
  3. Scipy-Notebook / Scientific python environment
    • 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
  4. Datascience-Notebook / Datascience environment
    • 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
  5. Tensorflow-Notebook / Tensorflow environment
    • Enthält:
      • Alles aus dem Scipy-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.

Unter „more options“ können für die Entwicklungsumgebung noch Einstellungen für Version, CPU-Cores und RAM vorgenommen werden. Zurzeit stehen nur die default Varianten zur Auswahl zur Verfügung. Falls mehr Performance erwünscht ist, kann dies beim ZIM mit Begründung beantragt werden.              

Außerdem kann ein Link zum Notebook Server generiert werden („Generate link“), der direkten Zugriff auf den Server erlaubt, ohne die oben genannten Einstellungen erneut vornehmen zu müssen. Bei Änderungen muss dieser Link aktualisiert werden („Update link“).

Optionen für Notebook Images


Eigenes Image beantragen[Bearbeiten | Quelltext bearbeiten]

Um eigene Images nutzen zu können, sind Kenntnisse in Git und Docker Voraussetzung.

Um ein Image zu beantragen, muss eine entsprechende Anfrage an das ZIM gesendet werden. Weitere Informationen zu Eigenen Images sind hier zu finden:


In der Anfrage beim ZIM für die Nutzung dieses Images müssen dann die folgenden Informationen enthalten sein, um eine möglichst schnelle Bearbeitung und Freischaltung zu ermöglichen:

  • Verantwortlicher für das Image
  • Anzeigename
  • Beschreibung
  • Name, Repository und Version des Images
  • LDAP-Gruppe mit Personen, welche das Image benutzen dürfen
  • Wird mehr RAM bzw. CPU-Leistung benötigt? Bitte inklusive Begründung!


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

Wichtig: Das ZIM übernimmt keinerlei Pflege von eigenen Images. Ebenso kann nicht garantiert werden, dass nach einem JupyterHub Update eigene Images noch kompatibel sind. Dies gilt nicht für oben aufgeführten ZIM-Notebook-Images, hier wird für Kompatibilität garantiert.

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 Notebook setzt sich aus einer Folge von Zellen zusammen. Eine Zelle ist ein mehrzeiliges Texteingabefeld, dessen Inhalt durch Drücken von "Shift+Enter", durch Klicken auf die Schaltfläche „Run the selected cells and advance“ in der Toolbar oder über das Menü ("Run -> Run selected cells") ausgeführt werden kann. Es gibt drei Arten von Zellen: Code-Zellen, Markdown-Zellen und Raw-Zellen. Jede Zelle ist per Default eine Code-Zelle, aber der Typ kann über ein Dropdown-Menü in der Toolbar (anfangs „Code“) geändert werden.

Code[Bearbeiten | Quelltext bearbeiten]

In einer Code-Zelle kann neuer Code bearbeitet und geschrieben werden. Die Programmiersprache hängt vom Kernel ab, und dieser ist wiederum von der anfangs ausgewählten Umgebung abhängig. Dies bedeutet, dass die anfangs ausgewählte Umgebung festlegt, 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.

Wenn eine Code-Zelle ausgeführt wird, wird der darin enthaltene Code an den mit dem Notebook verbundenen Kernel gesendet. Die von dieser Berechnung zurückgegebenen Ergebnisse werden dann im Notebook als Ausgabe der Zelle angezeigt. Die Ausgabe ist nicht auf Text beschränkt, sondern es sind auch viele andere Formen der Ausgabe möglich, einschließlich Abbildungen oder HTML-Tabellen.

Beispiel einer ausgeführten Code-Zelle


Vor den Code-Zellen sind eckige Klammern, die die Reihenfolge anzeigen, in der der Code ausgeführt wurde. Leere eckige Klammern zeigen an, dass der Code noch nicht ausgeführt wurde und ein Sternchen in eckigen Klammern [*] zeigt an, dass die Ausführung noch nicht abgeschlossen ist.

Zu beachten ist, dass die Ergebnisse von ausgeführten Zellen je nach Code später auch in anderen Zellen verwendet werden kann. Daher ist das Ergebnis von der Reihenfolge abhängig.

Markdown-Zelle[Bearbeiten | Quelltext bearbeiten]

Diese Zellen enthalten mit Markdown formatierten Text. Wenn eine Markdown-Zelle ausgeführt wird, wird der Markdown-Code in den entsprechenden formatierten Text umgewandelt. Es stehen alle Arten von Formatierungsfunktionen zur Verfügung, z. B. Fett- und Kursivdruck, geordnete oder ungeordnete Listen, Tabellendarstellung usw. Dies kann sehr nützlich sein, wenn bspw. eine ausführliche Erklärung eines Codeteils gegeben oder der Prozess dokumentiert werden soll.

Es können z.B. auch Markdown-Überschriften zum Strukturieren des Notebooks verwendet werden. Markdown-Überschriften bestehen aus Rautenzeichen #, gefolgt von einem Leerzeichen und dem Titel des Abschnitts:

  • # für Titel
  • ## für Überschriften
  • ### für Zwischenüberschriften


Beispiel: Überschriften mit Markdown


Raw-Zelle[Bearbeiten | Quelltext bearbeiten]

Inhalte in Raw-Zellen werden vom Notebook-Kernel nicht ausgewertet. Der Zellentyp "Raw NBConvert" kann verwendet werden, um Code darzustellen, der nicht interpretiert werden soll.

Nach dem Arbeiten 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). In diesem Kontroll-Panel kann nicht nur der eigene Server gestoppt und auf den Server zugegriffen werden. Über den Menüpunkt „Services“ sind zusätzlich noch unter „ngshare“ Hinweise für Lehrende und Kursmanagement Optionen zu finden.

Das Hub Control Panel


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-Do Fr
Vor-Ort-Support 08:30 - 16:00 08:30 - 14:00
Telefonsupport 08:30 - 16:00 08:30 - 14:00


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

Mo-Do Fr
08:00 - 16:00 08:00 - 14:30
Cookies helfen uns bei der Bereitstellung des ZIM HilfeWikis. Bei der Nutzung vom ZIM HilfeWiki werden die in der Datenschutzerklärung beschriebenen Cookies gespeichert.