Lewati ke konten utama

βš™οΈ Pengaturan doQumentation

Konfigurasi Jupyter server yang digunakan untuk menjalankan kode Python dalam tutorial.

Lingkungan saat ini: Tidak terdeteksi

Backend Server

Pilih backend yang digunakan untuk eksekusi kode:


Mode Eksekusiβ“˜

Pilih apa yang terjadi saat kamu klik Jalankan di halaman tutorial. Ini hanya berlaku untuk eksekusi kode tertanam di situs ini β€” membuka notebook di JupyterLab menggunakan Qiskit Runtime standar.

Perubahan berlaku pada sesi kernel berikutnya. Jika kode sedang berjalan, klik Kembali lalu Jalankan untuk menerapkan.

Akun IBM Quantum

Instruksi setup & catatan keamanan
Catatan Keamanan: Credentials disimpan di localStorage browser kamu sebagai teks biasa. Tidak dienkripsi dan bisa dibaca oleh ekstensi browser atau siapa pun yang memiliki akses ke perangkat ini. Gunakan pengaturan kedaluwarsa di bawah untuk membatasi paparan, dan hapus credentials saat selesai. Untuk komputer bersama atau publik, lebih baik gunakan metode save_account() manual yang dijelaskan di bawah.

Masukkan IBM Quantum credentials kamu sekali di sini. Akan disuntikkan otomatis melalui save_account() saat kernel mulai, jadi kamu tidak perlu memasukkannya di setiap notebook. Ini hanya untuk eksekusi kode tertanam di website ini β€” membuka notebook di JupyterLab memerlukan panggilan save_account() secara manual.

  1. Daftar di quantum.cloud.ibm.com/registration β€” tidak perlu kartu kredit untuk 30 hari pertama
  2. Masuk di Instansi
  3. Instans β€” Buat instans Open Plan gratis di halaman beranda jika belum punya
  4. API Token β€” Klik ikon profil kamu (kanan atas), lalu "API token". Salin kuncinya.

Untuk langkah terperinci, lihat panduan Siapkan autentikasi IBM (Langkah 2).

Alternatif: jalankan save_account() secara manual di sel notebook

Jika kamu lebih suka tidak menyimpan credentials di browser ini, tempel ini ke sel kode mana saja dan jalankan. Credentials disimpan dalam memori sementara kernel Binder dan hilang saat sesi berakhir.

from qiskit_ibm_runtime import QiskitRuntimeService
QiskitRuntimeService.save_account(
    token="YOUR_API_TOKEN",
    instance="YOUR_CRN",
    overwrite=True
)

Pengaturan tampilan

Ukuran font kode

14px
from qiskit import QuantumCircuit

Output yang dihitung sebelumnya

Setiap halaman notebook menampilkan output yang telah dihitung sebelumnya (gambar, tabel, teks) dari jalankan asli IBM. Saat kamu klik Run untuk menjalankan kode secara langsung, output asli dan output langsung baru kamu ditampilkan berdampingan. Aktifkan toggle ini untuk menyembunyikan output asli selama eksekusi langsung dan hanya menampilkan hasilmu.

Peringatan Python

Secara default, peringatan Python (notis deprecation, peringatan runtime) ditekan untuk output notebook yang lebih bersih. Nonaktifkan untuk melihat semua peringatan β€” berguna untuk debugging atau mempelajari perubahan API.


Kelola Data Kamu

Semua data disimpan secara lokal di browser kamu (localStorage). Tidak ada yang dikirim ke server kami. Menghapus data browser atau menggunakan browser/perangkat lain akan memulai dari awal.

Kemajuan Belajar

Kemajuan membaca dan eksekusi kamu dilacak secara lokal di browser kamu. Halaman yang dikunjungi menampilkan βœ“ di sidebar; notebook yang dijalankan menampilkan β–Ά.

Belum ada kemajuan yang dilacak. Kunjungi tutorial dan panduan untuk mulai melacak.

Bookmark

Belum ada bookmark. Gunakan tombol bookmark di halaman mana saja untuk menyimpannya di sini.

Tampilan & UI

Sesi & Credentials

Reset Semua

Hapus semua data tersimpan termasuk kemajuan, bookmark, preferensi tampilan, dan credentials.


Pengaturan Lanjutan

IBM Cloud Code Engine

IBM Cloud Code Engine menyediakan Jupyter kernel tanpa server yang cepat bertenaga akun IBM Cloud kamu. Startup memakan detik, bukan menit. Tier gratis mencakup ~14 jam/bulan.

Instruksi Setup
  1. Buat akun IBM Cloud di cloud.ibm.com (tier gratis tersedia)
  2. Buka IBM Cloud Code Engine console dan buat proyek baru di region yang kamu inginkan
  3. Buat aplikasi baru dengan image ghcr.io/janlahmann/doqumentation-codeengine:latest, port 8080
    Sizing: 1 vCPU / 2 GB untuk pengguna tunggal, 8 vCPU / 16 GB untuk workshop (hingga 80 pengguna)
  4. Atur variabel lingkungan: JUPYTER_TOKEN ke token yang aman (min 32 karakter) dan CORS_ORIGIN ke domain kamu (mis. https://doqumentation.org)

Untuk detail sizing workshop, lihat dokumentasi setup workshop.

Paket Binder

Saat berjalan di GitHub Pages, kode dijalankan melalui MyBinder. Lingkungan Binder berisi paket inti Qiskit yang sudah terpasang:

qiskit[visualization], qiskit-aer,
qiskit-ibm-runtime, pylatexenc,
qiskit-ibm-catalog, qiskit-addon-utils, pyscf

Beberapa notebook memerlukan paket tambahan. Kamu bisa menginstalnya sesuai kebutuhan dengan menjalankan ini di sel kode:

!pip install -q <package>

Atau instal semua paket opsional sekaligus:

!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

Bantuan setup

Setup RasQberry

Saat berjalan di RasQberry Pi, Jupyter server seharusnya terdeteksi otomatis. Jika tidak, pastikan layanan jupyter-tutorials sedang berjalan:

sudo systemctl status jupyter-tutorials

Setup Jupyter Lokal

Mulai Jupyter server dengan CORS diaktifkan:

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

Setup Docker

Kontainer Docker menghasilkan token Jupyter acak saat startup. Eksekusi kode melalui website (port 8080) berfungsi otomatis β€” tidak perlu token. Token hanya diperlukan untuk akses JupyterLab langsung di port 8888.

Untuk mengambil token dari log kontainer:

docker compose --profile jupyter logs | grep "Jupyter token"

Untuk menetapkan token tetap:

JUPYTER_TOKEN=mytoken docker compose --profile jupyter up

Server Jarak Jauh

Untuk server jarak jauh, pastikan CORS dikonfigurasi untuk mengizinkan koneksi dari website ini. Tambahkan yang berikut ke jupyter_server_config.py kamu:

c.ServerApp.allow_origin = '*'
c.ServerApp.allow_credentials = True