ข้ามไปยังเนื้อหาหลัก

⚙️ การตั้งค่า doQumentation

ตั้งค่า Jupyter server ที่ใช้สำหรับรัน Python code ในบทเรียน

สภาพแวดล้อมปัจจุบัน: ไม่ตรวจพบ

Server Backend

เลือก backend ที่จะใช้สำหรับการรันโค้ด:


โหมดการรัน

เลือกสิ่งที่เกิดขึ้นเมื่อคลิกรันในหน้า tutorial การดำเนินการนี้ใช้กับโค้ดฝังตัวในไซต์นี้เท่านั้น — การเปิด notebook ใน JupyterLab ใช้ Qiskit runtime มาตรฐาน

การเปลี่ยนแปลงจะมีผลในเซสชันเคอร์เนลถัดไป หากโค้ดกำลังรัน คลิกกลับแล้วรันเพื่อใช้

บัญชี IBM Quantum

คำแนะนำการตั้งค่าและหมายเหตุด้านความปลอดภัย
หมายเหตุความปลอดภัย: Credentials ถูกจัดเก็บใน localStorage ของเบราว์เซอร์เป็นข้อความธรรมดา ไม่ได้เข้ารหัสและสามารถอ่านได้โดย browser extensions หรือผู้ที่มีสิทธิ์เข้าถึงอุปกรณ์นี้ ใช้การตั้งค่าวันหมดอายุด้านล่างเพื่อจำกัดการเปิดเผย และลบ credentials เมื่อใช้เสร็จ สำหรับคอมพิวเตอร์ที่ใช้ร่วมกันหรือสาธารณะ แนะนำวิธี save_account() ด้วยตนเองที่อธิบายด้านล่างแทน

ป้อน IBM Quantum credentials ครั้งเดียวที่นี่ จะถูกฉีดเข้าอัตโนมัติผ่าน save_account() เมื่อ kernel เริ่มต้น ไม่ต้องป้อนในทุก notebook ใช้กับการรันโค้ดแบบฝังบนเว็บไซต์เท่านั้น — การเปิด notebook ใน JupyterLab ต้องเรียก save_account() ด้วยตนเอง

  1. ลงทะเบียน ที่ quantum.cloud.ibm.com/registration — ไม่ต้องใช้บัตรเครดิตสำหรับ 30 วันแรก
  2. เข้าสู่ระบบ ที่ อินสแตนซ์
  3. อินสแตนซ์ — สร้างอินสแตนซ์ Open Plan ฟรีที่ หน้าแรก หากยังไม่มี
  4. API Token — คลิกที่ไอคอนโปรไฟล์ (ขวาบน) แล้ว "API token" คัดลอกคีย์

สำหรับขั้นตอนโดยละเอียด ดูคู่มือ ตั้งค่าการยืนยันตัวตน ของ IBM (ขั้นตอนที่ 2)

ทางเลือก: รัน save_account() ด้วยตนเองในเซลล์ notebook

หากไม่ต้องการบันทึก credentials ในเบราว์เซอร์นี้ ให้วางโค้ดในเซลล์โค้ดใดก็ได้แล้วรัน Credentials จะถูกจัดเก็บในหน่วยความจำชั่วคราวของ Binder kernel และหายไปเมื่อสิ้นสุดเซสชัน

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

การตั้งค่าการแสดงผล

ขนาดตัวอักษรโค้ด

14px
from qiskit import QuantumCircuit

ผลลัพธ์ที่คำนวณล่วงหน้า

หน้า notebook แต่ละหน้าแสดงผลลัพธ์ที่คำนวณล่วงหน้า (ภาพ ตาราง ข้อความ) จากการรันต้นฉบับของ IBM เมื่อคลิก Run เพื่อรันโค้ดสด ผลลัพธ์ต้นฉบับและผลลัพธ์ใหม่จะแสดงควบคู่กัน เปิดใช้งานตัวสลับนี้เพื่อซ่อนผลลัพธ์ต้นฉบับระหว่างการรันสดและแสดงเฉพาะผลลัพธ์ของคุณ

คำเตือน Python

ค่าเริ่มต้นจะระงับคำเตือน Python (การแจ้งเตือน deprecation คำเตือน runtime) เพื่อผลลัพธ์ notebook ที่สะอาดขึ้น ปิดใช้งานเพื่อดูคำเตือนทั้งหมด — มีประโยชน์สำหรับการดีบั๊กหรือเรียนรู้เกี่ยวกับการเปลี่ยนแปลง API


จัดการข้อมูลของคุณ

ข้อมูลทั้งหมดเก็บไว้ในเบราว์เซอร์ของคุณในเครื่อง (localStorage) ไม่มีการส่งข้อมูลไปยังเซิร์ฟเวอร์ของเรา การล้างข้อมูลเบราว์เซอร์หรือใช้เบราว์เซอร์/อุปกรณ์อื่นจะเริ่มใหม่

ความก้าวหน้าการเรียนรู้

ความก้าวหน้าการอ่านและการรันจะถูกติดตามในเบราว์เซอร์ของคุณ หน้าที่เข้าชมแสดง ในแถบด้านข้าง notebook ที่รันแล้วแสดง

ยังไม่มีความก้าวหน้าที่ติดตาม เข้าชมบทเรียนและคู่มือเพื่อเริ่มติดตาม

บุ๊กมาร์ก

ยังไม่มีบุ๊กมาร์ก ใช้ปุ่มบุ๊กมาร์กในหน้าใดก็ได้เพื่อบันทึกที่นี่

การแสดงผลและ UI

เซสชันและข้อมูลประจำตัว

รีเซ็ตทุกอย่าง

ลบข้อมูลที่บันทึกทั้งหมด รวมถึงความก้าวหน้า บุ๊กมาร์ก การตั้งค่าการแสดงผล และข้อมูลประจำตัว


การตั้งค่าขั้นสูง

IBM Cloud Code Engine

IBM Cloud Code Engine ให้เคอร์เนล Jupyter แบบ serverless ที่รวดเร็วบนบัญชี IBM Cloud ของคุณ การเริ่มต้นใช้เวลาเป็นวินาทีแทนนาที ระดับฟรีครอบคลุม ~14 ชั่วโมง/เดือน

คำแนะนำการตั้งค่า
  1. สร้างบัญชี IBM Cloud ที่ cloud.ibm.com (มีระดับฟรี)
  2. ไปที่ IBM Cloud Code Engine console และสร้างโปรเจกต์ใหม่ในภูมิภาคที่ต้องการ
  3. สร้างแอปพลิเคชันใหม่ด้วย image ghcr.io/janlahmann/doqumentation-codeengine:latest port การฟัง 8080
    ขนาด: 1 vCPU / 2 GB สำหรับผู้ใช้คนเดียว 8 vCPU / 16 GB สำหรับ workshop (สูงสุด 80 ผู้ใช้)
  4. ตั้งค่าตัวแปรสภาพแวดล้อม: JUPYTER_TOKEN เป็น token ที่ปลอดภัย (ขั้นต่ำ 32 ตัวอักษร) และ CORS_ORIGIN เป็นโดเมนของคุณ (เช่น https://doqumentation.org)

สำหรับรายละเอียดขนาด workshop ดูเอกสารการตั้งค่า workshop

แพ็กเกจ Binder

เมื่อรันบน GitHub Pages โค้ดจะรันผ่าน MyBinder สภาพแวดล้อม Binder มีแพ็กเกจ Qiskit หลักที่ติดตั้งไว้ล่วงหน้า:

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

notebook บางอันต้องการแพ็กเกจเพิ่มเติม ติดตั้งได้ตามต้องการโดยรันในเซลล์โค้ด:

!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 Pi Jupyter server ควรถูกตรวจพบอัตโนมัติ หากไม่ใช่ ตรวจสอบว่า jupyter-tutorials service กำลังทำงาน:

sudo systemctl status jupyter-tutorials

การตั้งค่า Jupyter ในเครื่อง

เริ่ม Jupyter server พร้อม CORS ที่เปิดใช้งาน:

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

การตั้งค่า Docker

Docker container สร้าง Jupyter token แบบสุ่มเมื่อเริ่มต้น การรันโค้ดผ่านเว็บไซต์ (พอร์ต 8080) ทำงานอัตโนมัติ — ไม่ต้องใช้ token Token ใช้เฉพาะสำหรับเข้าถึง JupyterLab โดยตรงที่พอร์ต 8888

เพื่อดึง token จาก container logs:

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

เพื่อตั้งค่า token แบบคงที่:

JUPYTER_TOKEN=mytoken docker compose --profile jupyter up

Server ระยะไกล

สำหรับ server ระยะไกล ตรวจสอบว่า CORS ถูกตั้งค่าเพื่ออนุญาตการเชื่อมต่อจากเว็บไซต์นี้ เพิ่มสิ่งต่อไปนี้ใน jupyter_server_config.py:

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