⚙️ Pengaturan doQumentation
Konfigurasi Jupyter server yang digunakan untuk menjalankan kode Python dalam tutorial.
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.
Akun IBM Quantum
Instruksi setup & catatan keamanan
save_account() 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.
- Daftar di quantum.cloud.ibm.com/registration — tidak perlu kartu kredit untuk 30 hari pertama
- Masuk di Instansi
- Instans — Buat instans Open Plan gratis di halaman beranda jika belum punya
- 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
from qiskit import QuantumCircuitOutput yang dihitung sebelumnya
Setiap halaman notebook menampilkan output yang dihitung sebelumnya (gambar, tabel, teks) dari eksekusi asli IBM. Saat kamu mengklik Run untuk menjalankan kode secara langsung, output asli dan hasil langsung barumu sama-sama ditampilkan. Matikan sakelar ini untuk menyembunyikan output asli selama eksekusi langsung, sehingga hanya hasilmu yang terlihat.
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 tetap berada di browser kamu. Di doqumentation.org, kemajuan, bookmark, dan pengaturan kamu disimpan di localStorage dan di cookie kecil yang membagikannya antar situs bahasa; cookie tersebut dikirim ke web host statis pada setiap permintaan halaman, tidak pernah ke server doQumentation. IBM Quantum credentials kamu tidak pernah disimpan di cookie: credentials tetap berada di localStorage pada situs bahasa tempat kamu memasukkannya. Menghapus data browser atau memakai browser/perangkat lain berarti mulai dari awal.
Kemajuan Belajar
Halaman yang sudah dikunjungi menampilkan ✓ di sidebar. Halaman notebook menampilkan </>: abu-abu sebelum dikunjungi, biru setelah dikunjungi, hijau setelah kamu menjalankan kode di dalamnya.
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
- Buat akun IBM Cloud di cloud.ibm.com (tier gratis tersedia)
- Buka IBM Cloud Code Engine console dan buat proyek baru di region yang kamu inginkan
- 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) - Atur variabel lingkungan:
JUPYTER_TOKENke token yang aman (min 32 karakter) danCORS_ORIGINke 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, pyscfBeberapa 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-satBantuan setup
Setup RasQberry
RasQberry menjalankan container doQumentation (lihat Setup Docker di bawah). Buka situs dari alamat Pi, port 8080, dan kode berjalan di Pi tanpa setup tambahan.
Panduan workshop offline: jalankan kelas dari satu Raspberry Pi
Setup Jupyter Lokal
Mulai Jupyter server yang hanya menerima situs ini, dengan token pilihanmu, lalu masukkan URL dan tokennya di Custom Server di atas:
jupyter server --ServerApp.token='choose-a-long-token' \
--ServerApp.allow_origin='https://doqumentation.org' \
--ServerApp.disable_check_xsrf=TrueSetup 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:
podman logs doq | grep "Jupyter token"Untuk menetapkan token tetap:
podman run -d --name doq --restart unless-stopped \
-e JUPYTER_TOKEN=choose-a-token \
-p 8080:80 -p 127.0.0.1:8888:8888 \
ghcr.io/janlahmann/doqumentation:jupyterServer 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 = 'https://doqumentation.org'
c.ServerApp.allow_credentials = True