⚙️ Ustawienia doQumentation
Skonfiguruj serwer Jupyter używany do wykonywania kodu Python w tutorialach.
Backend wykonania
Dostępnych jest kilka backendów wykonania. Wybierz, który z nich ma być używany do wykonywania kodu:
Tryb wykonania
Wybierz co się dzieje, gdy klikasz Uruchom na stronach samouczków. Dotyczy to tylko osadzonego wykonywania kodu na tej stronie — otwarcie notatnika w JupyterLab używa standardowego środowiska uruchomieniowego Qiskit.
Konto IBM Quantum
Instrukcje konfiguracji i uwagi dotyczące bezpieczeństwa
save_account() opisaną poniżej.Wprowadź tutaj raz swoje dane uwierzytelniające IBM Quantum. Zostaną automatycznie wstrzyknięte przez save_account() po uruchomieniu kernela, więc nie musisz ich wprowadzać w każdym notatniku. Dotyczy to tylko wykonania kodu osadzonego na tej stronie — otwieranie notatnika w JupyterLab wymaga ręcznego wywołania save_account().
- Zarejestruj się na quantum.cloud.ibm.com/registration — karta kredytowa nie jest wymagana przez pierwsze 30 dni
- Zaloguj się na Instancje
- Instancja — Utwórz bezpłatną instancję Open Plan na strona główna, jeśli jej jeszcze nie masz
- Token API — Kliknij ikonę profilu (prawy górny róg), a następnie „API token”. Skopiuj klucz.
Szczegółowe kroki znajdziesz w przewodniku IBM Konfiguracja uwierzytelniania (krok 2).
Alternatywa: ręczne uruchomienie save_account() w komórce notatnika
Jeśli wolisz nie przechowywać danych uwierzytelniających w tej przeglądarce, wklej to do dowolnej komórki kodu i uruchom. Dane uwierzytelniające są zapisywane w tymczasowej pamięci kernela Bindera i tracone po zakończeniu sesji.
from qiskit_ibm_runtime import QiskitRuntimeService
QiskitRuntimeService.save_account(
token="YOUR_API_TOKEN",
instance="YOUR_CRN",
overwrite=True
)Preferencje wyświetlania
Rozmiar czcionki kodu
from qiskit import QuantumCircuitWstępnie obliczone wyniki
Każda strona notatnika pokazuje wstępnie obliczone wyniki (obrazy, tabele, tekst) z oryginalnych przebiegów IBM. Gdy klikniesz Run, aby wykonać kod na żywo, oryginalne wyniki i nowe wyniki na żywo są pokazywane obok siebie. Włącz to przełączanie, aby ukryć oryginalne wyniki podczas wykonywania na żywo, wyświetlając tylko twoje wyniki.
Ostrzeżenia Pythona
Domyślnie ostrzeżenia Pythona (powiadomienia o deprecjacji, wskazówki uruchomieniowe) są wyciszane dla czystszego wyjścia notatnika. Wyłącz to, aby zobaczyć wszystkie ostrzeżenia — przydatne do debugowania lub uczenia się o zmianach API.
Zarządzaj swoimi danymi
Wszystkie dane są przechowywane lokalnie w twojej przeglądarce (localStorage). Nic nie jest wysyłane na nasze serwery. Wyczyszczenie danych przeglądarki lub użycie innej przeglądarki/urządzenia zaczyna od nowa.
Postępy nauki
Twój postęp w czytaniu i wykonywaniu jest śledzony lokalnie w przeglądarce. Odwiedzone strony pokazują ✓ na pasku bocznym; wykonane notatniki pokazują ▶.
Brak śledzonych postępów. Odwiedź tutoriale i przewodniki, aby rozpocząć śledzenie.
Zakładki
Brak zakładek. Użyj przycisku zakładki na dowolnej stronie, aby ją tutaj zapisać.
Wyświetlanie i interfejs
Sesje i dane uwierzytelniające
Resetuj wszystko
Usuń wszystkie zapisane dane, w tym postęp, zakładki, preferencje wyświetlania i dane uwierzytelniające.
Ustawienia zaawansowane
IBM Cloud Code Engine
Code Engine zapewnia szybki, bezserwerowy kernel Jupyter oparty na Twoim własnym koncie IBM Cloud. Start zajmuje sekundy zamiast minut. Bezpłatny poziom obejmuje ~14 godzin/miesiąc.
Instrukcje konfiguracji
- Utwórz konto IBM Cloud na cloud.ibm.com (dostępny bezpłatny poziom)
- Utwórz projekt Code Engine w preferowanym regionie
- Wdróż nową aplikację z obrazem
ghcr.io/janlahmann/doqumentation-codeengine:latest, port 8080
Rozmiarowanie: 1 vCPU / 2 GB dla jednego użytkownika, 8 vCPU / 16 GB dla warsztatów (do 80 użytkowników) - Ustaw zmienną środowiskową JUPYTER_TOKEN na bezpieczny token (min. 32 znaki) i CORS_ORIGIN na Twoją domenę
Szczegóły dotyczące rozmiarowania dla warsztatów znajdziesz w dokumentacji konfiguracji warsztatów.
Pakiety Binder
Podczas działania na GitHub Pages kod jest wykonywany przez MyBinder. Środowisko Binder zawiera preinstalowane podstawowe pakiety Qiskit:
qiskit[visualization], qiskit-aer,
qiskit-ibm-runtime, pylatexenc,
qiskit-ibm-catalog, qiskit-addon-utils, pyscfNiektóre notatniki wymagają dodatkowych pakietów. Możesz je zainstalować na żądanie, uruchamiając to w komórce kodu:
!pip install -q <package>Lub zainstaluj wszystkie opcjonalne pakiety naraz:
!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-satPomoc z konfiguracją
Konfiguracja RasQberry
Jeśli działasz na RasQberry Pi, serwer Jupyter powinien zostać automatycznie wykryty. Jeśli nie, upewnij się, że usługa jupyter-tutorials jest uruchomiona:
sudo systemctl status jupyter-tutorialsLokalna konfiguracja Jupyter
Uruchom serwer Jupyter z włączonym CORS:
jupyter server --ServerApp.token='rasqberry' \
--ServerApp.allow_origin='*' \
--ServerApp.disable_check_xsrf=TrueKonfiguracja Docker
Kontener Docker generuje losowy token Jupyter przy uruchomieniu. Wykonywanie kodu przez stronę (port 8080) działa automatycznie — token nie jest potrzebny. Token jest wymagany tylko do bezpośredniego dostępu do JupyterLab na porcie 8888.
Aby pobrać token z logów kontenera:
docker compose --profile jupyter logs | grep "Jupyter token"Aby ustawić stały token:
JUPYTER_TOKEN=mytoken docker compose --profile jupyter upSerwer zdalny
W przypadku serwerów zdalnych upewnij się, że CORS jest skonfigurowany, aby zezwolić na połączenia z tej strony. Dodaj poniższe do pliku jupyter_server_config.py:
c.ServerApp.allow_origin = '*'
c.ServerApp.allow_credentials = True