⚙️ doQumentation 설정
튜토리얼에서 Python 코드를 실행하는 데 사용되는 Jupyter 서버를 구성하세요.
서버 백엔드
코드 실행에 사용할 백엔드를 선택하세요:
실행 모드
튜토리얼 페이지에서 실행을 클릭할 때 어떤 일이 일어날지 선택하세요. 이것은 이 사이트의 임베디드 코드 실행에만 적용됩니다 — JupyterLab에서 노트북을 열면 표준 Qiskit Runtime을 사용합니다.
IBM Quantum 계정
설정 안내 및 보안 참고 사항
save_account() 방법을 사용하는 것이 좋습니다.IBM Quantum 자격 증명을 여기에 한 번 입력하세요. 커널이 시작될 때 save_account()를 통해 자동으로 주입되므로 각 노트북에 입력할 필요가 없습니다. 이것은 이 웹사이트의 임베디드 코드 실행에만 적용됩니다 — JupyterLab에서 노트북을 열면 save_account()를 수동으로 호출해야 합니다.
- quantum.cloud.ibm.com/registration에서 가입 — 처음 30일은 신용카드 불필요
- 인스턴스에서 로그인
- 인스턴스 — 아직 없다면 홈 페이지에서 무료 Open Plan 인스턴스 생성
- API Token — 프로필 아이콘(오른쪽 상단)을 클릭한 다음 "API token"을 클릭합니다. 키를 복사합니다.
자세한 단계는 IBM의 인증 설정 가이드(2단계)를 참조하세요.
대안: 노트북 셀에서 save_account()를 수동으로 실행
이 브라우저에 자격 증명을 저장하지 않으려면 이것을 코드 셀에 붙여넣고 실행하세요. 자격 증명은 Binder 커널의 임시 메모리에 저장되며 세션 종료 시 사라집니다.
from qiskit_ibm_runtime import QiskitRuntimeService
QiskitRuntimeService.save_account(
token="YOUR_API_TOKEN",
instance="YOUR_CRN",
overwrite=True
)표시 설정
코드 글꼴 크기
from qiskit import QuantumCircuit사전 계산된 출력
각 노트북 페이지에는 IBM의 원래 실행에서 미리 계산된 출력(이미지, 표, 텍스트)이 표시됩니다. Run을(를) 클릭하여 코드를 실시간으로 실행하면 원래 출력과 새 실시간 결과가 모두 표시됩니다. 이 토글을 끄면 실시간 실행 중 원래 출력이 숨겨지고 내 결과만 표시됩니다.
Python 경고
기본적으로 Python 경고(deprecation 알림, 런타임 경고)는 더 깔끔한 노트북 출력을 위해 억제됩니다. 비활성화하면 모든 경고를 볼 수 있습니다 — 디버깅 또는 API 변경 사항 학습에 유용합니다.
내 데이터 관리
모든 데이터는 브라우저에 남아 있습니다. doqumentation.org에서는 진행 상황, 북마크, 설정이 localStorage와, 이를 언어 사이트 간에 공유하는 작은 쿠키에 저장됩니다. 이 쿠키는 페이지를 요청할 때마다 정적 웹 호스트로 전송될 뿐, doQumentation 서버로는 전송되지 않습니다. IBM Quantum 자격 증명은 쿠키에 저장되지 않으며, 입력한 언어 사이트의 localStorage에만 남습니다. 브라우저 데이터를 삭제하거나 다른 브라우저/기기를 사용하면 처음부터 다시 시작됩니다.
학습 진도
방문한 페이지는 사이드바에 ✓이(가) 표시됩니다. 노트북 페이지는 </>이(가) 표시되며, 방문 전에는 회색, 방문 후에는 파란색, 해당 페이지에서 코드를 실행하면 녹색이 됩니다.
아직 추적된 진도가 없습니다. 튜토리얼과 가이드를 방문하여 추적을 시작하세요.
북마크
아직 북마크가 없습니다. 모든 페이지의 북마크 버튼을 사용하여 여기에 저장하세요.
디스플레이 및 UI
세션 및 자격 증명
모두 초기화
진도, 북마크, 디스플레이 설정, 자격 증명을 포함한 모든 저장된 데이터를 삭제합니다.
고급 설정
IBM Cloud Code Engine
IBM Cloud Code Engine은 IBM Cloud 계정 기반의 빠른 서버리스 Jupyter 커널을 제공합니다. 시작이 분 단위가 아닌 초 단위로 빠릅니다. 무료 티어는 월 약 14시간을 제공합니다.
설정 안내
- cloud.ibm.com에서 IBM Cloud 계정 만들기 (무료 티어 제공)
- IBM Cloud Code Engine console로 이동하여 원하는 지역에 새 프로젝트 만들기
- 이미지
ghcr.io/janlahmann/doqumentation-codeengine:latest, 포트 8080으로 새 애플리케이션 만들기
사이징: 단일 사용자는 1 vCPU / 2 GB, 워크숍(최대 80명)은 8 vCPU / 16 GB - 환경 변수 설정:
JUPYTER_TOKEN을 안전한 토큰(최소 32자)으로,CORS_ORIGIN를 도메인(예:https://doqumentation.org)으로 설정
워크숍 사이징 세부 사항은 워크숍 설정 문서를 참조하세요.
Binder 패키지
GitHub Pages에서 실행할 때 코드는 MyBinder를 통해 실행됩니다. Binder 환경에는 Qiskit 핵심 패키지가 미리 설치되어 있습니다:
qiskit[visualization], qiskit-aer,
qiskit-ibm-runtime, pylatexenc,
qiskit-ibm-catalog, qiskit-addon-utils, pyscf일부 노트북은 추가 패키지가 필요합니다. 코드 셀에서 다음을 실행하여 필요에 따라 설치할 수 있습니다:
!pip install -q <package>또는 모든 선택적 패키지를 한 번에 설치:
!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설정 도움말
RasQberry 설정
RasQberry는 doQumentation 컨테이너를 실행합니다(아래 Docker 설정 참조). Pi의 주소와 포트 8080으로 사이트를 열면 추가 설정 없이 코드가 Pi에서 실행됩니다.
오프라인 워크숍 가이드: Raspberry Pi 한 대로 수업 진행하기
로컬 Jupyter 설정
이 사이트만 허용하는 Jupyter 서버를 원하는 토큰으로 시작한 다음, 위의 맞춤 서버에 해당 URL과 토큰을 입력하세요:
jupyter server --ServerApp.token='choose-a-long-token' \
--ServerApp.allow_origin='https://doqumentation.org' \
--ServerApp.disable_check_xsrf=TrueDocker 설정
Docker 컨테이너는 시작 시 임의의 Jupyter 토큰을 생성합니다. 웹사이트를 통한 코드 실행(포트 8080)은 자동으로 작동합니다 — 토큰이 필요 없습니다. 토큰은 포트 8888의 JupyterLab 직접 액세스에만 필요합니다.
컨테이너 로그에서 토큰을 가져오려면:
podman logs doq | grep "Jupyter token"고정 토큰을 설정하려면:
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:jupyter원격 서버
원격 서버의 경우 CORS가 이 웹사이트에서의 연결을 허용하도록 구성되어 있는지 확인하세요. jupyter_server_config.py에 다음을 추가하세요:
c.ServerApp.allow_origin = 'https://doqumentation.org'
c.ServerApp.allow_credentials = True