⚙️ doQumentation-Einstellungen
Konfigurieren Sie den Jupyter-Server, der für die Ausführung von Python-Code in Tutorials verwendet wird.
Server-Backend
Wähle, welches Backend für die Code-Ausführung verwendet werden soll:
Ausführungsmodus
Wähle, was passiert, wenn du auf Tutorial-Seiten auf Ausführen klickst. Dies gilt nur für eingebettete Code-Ausführung auf dieser Website — das Öffnen eines Notebooks in JupyterLab verwendet die Standard-Qiskit-Laufzeit.
IBM Quantum-Konto
Einrichtungsanleitung & Sicherheitshinweise
save_account()-Methode, die unten beschrieben ist.Geben Sie Ihre IBM Quantum-Anmeldedaten einmal hier ein. Sie werden automatisch über save_account() eingefügt, wenn der Kernel startet, sodass Sie sie nicht in jedem Notebook eingeben müssen. Dies gilt nur für die eingebettete Code-Ausführung auf dieser Website — das Öffnen eines Notebooks in JupyterLab erfordert das manuelle Aufrufen von save_account().
- Registrieren unter quantum.cloud.ibm.com/registration — keine Kreditkarte erforderlich für die ersten 30 Tage
- Anmelden unter Instanzen
- Instanz — Erstellen Sie eine kostenlose Open Plan-Instanz unter Startseite, falls Sie noch keine haben
- API Token — Klicken Sie auf Ihr Profilsymbol (oben rechts), dann "API token". Kopieren Sie den Schlüssel.
Für detaillierte Schritte siehe IBMs Authentifizierung einrichten-Leitfaden (Schritt 2).
Alternative: save_account() manuell in einer Notebook-Zelle ausführen
Wenn Sie es vorziehen, keine Anmeldedaten in diesem Browser zu speichern, fügen Sie dies in eine beliebige Codezelle ein und führen Sie sie aus. Anmeldedaten werden im temporären Speicher des Binder-Kernels gespeichert und gehen verloren, wenn die Sitzung endet.
from qiskit_ibm_runtime import QiskitRuntimeService
QiskitRuntimeService.save_account(
token="YOUR_API_TOKEN",
instance="YOUR_CRN",
overwrite=True
)Anzeigeeinstellungen
Code-Schriftgröße
from qiskit import QuantumCircuitVorberechnete Ausgaben
Jede Notebook-Seite zeigt vorberechnete Ausgaben (Bilder, Tabellen, Text) aus IBMs Originalläufen. Wenn Sie auf Run klicken, um Code live auszuführen, werden sowohl die Originalausgaben als auch Ihre neuen Live-Ergebnisse nebeneinander angezeigt. Aktivieren Sie diese Umschaltung, um die Originalausgaben während der Live-Ausführung auszublenden und nur Ihre Ergebnisse sichtbar zu halten.
Python-Warnungen
Standardmäßig werden Python-Warnungen (Deprecation-Hinweise, Laufzeit-Hinweise) für eine sauberere Notebook-Ausgabe unterdrückt. Deaktivieren Sie dies, um alle Warnungen zu sehen — nützlich zum Debuggen oder zum Lernen über API-Änderungen.
Deine Daten verwalten
Alle Daten werden lokal in deinem Browser (localStorage) gespeichert. Nichts wird an unsere Server gesendet. Wenn du deine Browserdaten löschst oder einen anderen Browser/ein anderes Gerät verwendest, fängst du neu an.
Lernfortschritt
Ihr Lese- und Ausführungsfortschritt wird lokal in Ihrem Browser verfolgt. Besuchte Seiten zeigen ein ✓ in der Seitenleiste; ausgeführte Notebooks zeigen ein ▶.
Noch kein Fortschritt verfolgt. Besuchen Sie Tutorials und Leitfäden, um mit der Verfolgung zu beginnen.
Lesezeichen
Noch keine Lesezeichen. Verwende die Lesezeichen-Schaltfläche auf einer beliebigen Seite, um sie hier zu speichern.
Anzeige & UI
Sitzungen & Zugangsdaten
Alles zurücksetzen
Alle gespeicherten Daten einschließlich Fortschritt, Lesezeichen, Anzeigeeinstellungen und Zugangsdaten entfernen.
Erweiterte Einstellungen
IBM Cloud Code Engine
IBM Cloud Code Engine stellt einen schnellen, serverlosen Jupyter-Kernel bereit, der von deinem eigenen IBM Cloud-Konto betrieben wird. Der Start dauert Sekunden statt Minuten. Der kostenlose Tarif deckt ca. 14 Stunden/Monat ab.
Einrichtungsanleitung
- Erstelle ein IBM Cloud-Konto unter cloud.ibm.com (kostenloser Tarif verfügbar)
- Gehe zur IBM Cloud Code Engine console und erstelle ein neues Projekt in deiner bevorzugten Region
- Erstelle eine neue Anwendung mit dem Image
ghcr.io/janlahmann/doqumentation-codeengine:latest, Listening-Port 8080
Dimensionierung: 1 vCPU / 2 GB für Einzelnutzer, 8 vCPU / 16 GB für Workshops (bis zu 80 Nutzer) - Setze Umgebungsvariablen:
JUPYTER_TOKENauf einen sicheren Token (mindestens 32 Zeichen) undCORS_ORIGINauf deine Domain (z. B.https://doqumentation.org)
Details zur Workshop-Dimensionierung findest du in der Workshop-Einrichtungsdokumentation.
Binder-Pakete
Beim Ausführen auf GitHub Pages wird Code über MyBinder ausgeführt. Die Binder-Umgebung enthält vorinstallierte Qiskit-Kernpakete:
qiskit[visualization], qiskit-aer,
qiskit-ibm-runtime, pylatexenc,
qiskit-ibm-catalog, qiskit-addon-utils, pyscfEinige Notebooks benötigen zusätzliche Pakete. Sie können sie bei Bedarf installieren, indem Sie dies in einer Codezelle ausführen:
!pip install -q <package>Oder alle optionalen Pakete auf einmal installieren:
!pip install -q scipy scikit-learn qiskit-ibm-transpiler \
qiskit-experiments plotly sympy qiskit-serverless \
qiskit-addon-sqd qiskit-addon-mpf \
qiskit-addon-aqc-tensor[aer,quimb-jax] \
qiskit-addon-obp qiskit-addon-cutting ffsim \
gem-suite python-satEinrichtungshilfe
RasQberry-Einrichtung
Wenn Sie auf einem RasQberry Pi ausführen, sollte der Jupyter-Server automatisch erkannt werden. Falls nicht, stellen Sie sicher, dass der jupyter-tutorials-Service läuft:
sudo systemctl status jupyter-tutorialsLokale Jupyter-Einrichtung
Starten Sie einen Jupyter-Server mit aktiviertem CORS:
jupyter server --ServerApp.token='rasqberry' \
--ServerApp.allow_origin='*' \
--ServerApp.disable_check_xsrf=TrueDocker-Einrichtung
Der Docker-Container generiert beim Start ein zufälliges Jupyter-Token. Die Code-Ausführung über die Website (Port 8080) funktioniert automatisch — kein Token erforderlich. Das Token wird nur für den direkten JupyterLab-Zugriff auf Port 8888 benötigt.
Um das Token aus den Container-Logs abzurufen:
docker compose --profile jupyter logs | grep "Jupyter token"Um ein festes Token festzulegen:
JUPYTER_TOKEN=mytoken docker compose --profile jupyter upRemote-Server
Stellen Sie für Remote-Server sicher, dass CORS konfiguriert ist, um Verbindungen von dieser Website zuzulassen. Fügen Sie Folgendes zu Ihrer jupyter_server_config.py hinzu:
c.ServerApp.allow_origin = '*'
c.ServerApp.allow_credentials = True