Przejdź do głównej treści

⚙️ Ustawienia doQumentation

Skonfiguruj serwer Jupyter używany do wykonywania kodu Python w tutorialach.

Bieżące środowisko: Nie wykryto

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.

Zmiany wejdą w życie przy następnej sesji kernela. Jeśli kod jest uruchomiony, kliknij Wróć, a następnie Uruchom, aby zastosować.

Konto IBM Quantum

Instrukcje konfiguracji i uwagi dotyczące bezpieczeństwa
Uwaga dotycząca bezpieczeństwa: Dane uwierzytelniające są przechowywane w localStorage przeglądarki jako zwykły tekst. Nie są szyfrowane i mogą być odczytane przez rozszerzenia przeglądarki lub osoby z dostępem do tego urządzenia. Użyj ustawienia wygasania poniżej, aby ograniczyć ekspozycję, i usuń dane uwierzytelniające po zakończeniu. W przypadku współdzielonych lub publicznych komputerów preferuj ręczną metodę 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().

  1. Zarejestruj się na quantum.cloud.ibm.com/registration — karta kredytowa nie jest wymagana przez pierwsze 30 dni
  2. Zaloguj się na Instancje
  3. Instancja — Utwórz bezpłatną instancję Open Plan na strona główna, jeśli jej jeszcze nie masz
  4. 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

14px
from qiskit import QuantumCircuit

Wstę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
  1. Utwórz konto IBM Cloud na cloud.ibm.com (dostępny bezpłatny poziom)
  2. Utwórz projekt Code Engine w preferowanym regionie
  3. 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)
  4. 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, pyscf

Niektó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-sat

Pomoc 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-tutorials

Lokalna konfiguracja Jupyter

Uruchom serwer Jupyter z włączonym CORS:

jupyter server --ServerApp.token='rasqberry' \
  --ServerApp.allow_origin='*' \
  --ServerApp.disable_check_xsrf=True

Konfiguracja 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 up

Serwer 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