ข้ามไปยังเนื้อหาหลัก
โครงการนี้อยู่ในช่วงเบต้า พบข้อผิดพลาด? สร้าง GitHub Issue มีคำถามหรือไอเดีย? ถามใน Discussions — ยินดีรับฟังความคิดเห็น!
คุณภาพการแปลในหน้านี้เป็นอย่างไร?

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

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

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

แบ็กเอนด์เซิร์ฟเวอร์

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


โหมดการรัน

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

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

บัญชี IBM Quantum

คำแนะนำการตั้งค่าและหมายเหตุด้านความปลอดภัย
หมายเหตุความปลอดภัย: Credentials ถูกเก็บเป็นข้อความธรรมดาใน localStorage ของเบราว์เซอร์นี้ สำหรับเว็บไซต์ภาษานี้เท่านั้น (ถ้าใช้เว็บไซต์ภาษาอื่นต้องกรอกใหม่) จะไม่ถูกใส่ในคุกกี้ จึงไม่ถูกส่งไปยังเว็บโฮสต์ ข้อมูลไม่ได้เข้ารหัส และส่วนขยายของเบราว์เซอร์หรือใครก็ตามที่เข้าถึงอุปกรณ์เครื่องนี้อ่านได้ ใช้การตั้งค่าวันหมดอายุด้านล่างเพื่อลดความเสี่ยง และลบ 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


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

ข้อมูลทั้งหมดอยู่ในเบราว์เซอร์ของคุณ บน doqumentation.org ความก้าวหน้า บุ๊กมาร์ก และการตั้งค่าของคุณจะถูกเก็บไว้ใน localStorage และในคุกกี้ขนาดเล็กที่ใช้แชร์ข้อมูลเหล่านี้ระหว่างเว็บไซต์แต่ละภาษา คุกกี้เหล่านั้นจะถูกส่งไปยังเว็บโฮสต์แบบสถิตพร้อมกับทุกคำขอหน้าเว็บ และไม่เคยถูกส่งไปยังเซิร์ฟเวอร์ของ doQumentation IBM Quantum credentials ของคุณไม่เคยถูกใส่ในคุกกี้ แต่จะอยู่ใน 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 รันคอนเทนเนอร์ doQumentation (ดูการตั้งค่า Docker ด้านล่าง) เปิดเว็บไซต์จากที่อยู่ของ Pi พอร์ต 8080 แล้วโค้ดจะรันบน Pi โดยไม่ต้องตั้งค่าเพิ่มเติม

คู่มือเวิร์กช็อปแบบออฟไลน์: สอนทั้งชั้นเรียนจาก Raspberry Pi เครื่องเดียว

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

เริ่ม Jupyter server ที่ยอมรับเฉพาะเว็บไซต์นี้ โดยใช้โทเคนที่คุณเลือก จากนั้นใส่ URL และโทเคนของเซิร์ฟเวอร์นั้นใต้ Custom Server ด้านบน:

jupyter server --ServerApp.token='choose-a-long-token' \
  --ServerApp.allow_origin='https://doqumentation.org' \
  --ServerApp.disable_check_xsrf=True

การตั้งค่า Docker

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

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

podman logs doq | grep "Jupyter token"

เพื่อตั้งค่า 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

Server ระยะไกล

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

c.ServerApp.allow_origin = 'https://doqumentation.org'
c.ServerApp.allow_credentials = True