สร้างและจัดการ Instance
การเข้าถึงบริการ IBM Quantum Platform ถูกควบคุมโดย instance ที่ถูกกำหนดให้กับผู้ใช้ ผู้ใช้สามารถเป็นสมาชิกของหลาย instance พร้อมกันได้
Instance คือเซิร์ฟเวอร์เสมือน (การ deploy ของ Qiskit Runtime) ที่จัดการการ execute workload ของผู้ใช้ รวมถึงการรันโปรแกรม quantum และงาน classical compute (เช่น การประมวลผล error mitigation) Instance ถูกระบุด้วย Cloud Resource Name (CRN) ซึ่ง CRN นี้สามารถใช้เมื่อส่ง workload จากโปรแกรม Qiskit ของผู้ใช้
ดู instance ที่มีสิทธิ์เข้าถึงได้ที่ dashboard หรือคลิกแท็บ "Instances" จาก dashboard แต่ละ instance จะแสดงพร้อม CRN identifier
ต้องการ instance แยกต่างหากสำหรับทุก service plan (เช่น Open หรือ Pay-As-You-Go) ที่ใช้ในแต่ละ region ที่ต้องการใช้งาน account manager และผู้ที่มีสิทธิ์เพียงพอสามารถสร้าง instance และกำหนดการตั้งค่าได้ เช่น การจัดสรรทรัพยากร, usage limit, quantum computer, และสิทธิ์ผู้ใช้
dashboard ของ IBM Quantum Platform จะแสดง instance ที่มีสิทธิ์เข้าถึง ขึ้นอยู่กับสิทธิ์ของผู้ใช้ สามารถดูรายละเอียดเต็ม, แก้ไข, และลบ instance ได้ที่ หน้า Instances
สิ่งสำคัญคือต้องรู้ว่ากำลังใช้ instance ใด เพราะ instance ทั้งหมดที่ไม่ได้เชื่อมโยงกับ Open Plan จะมีค่าใช้จ่าย (หรือนับเข้า alloted time ของแผน)
งานที่รันและงานที่รันโดยผู้ร่วมงานคนอื่นใน instance เดียวกันจะนับรวมต่อการรายงาน usage ของ instance นั้น
ดู usage ของ instance ได้ที่หน้า Instances หรือสำหรับผู้มีสิทธิ์ที่เหมาะสม ที่หน้า Analytics โปรดทราบว่าหน้าต่างๆ อาจแสดงตัวเลข usage ที่ต่างกัน เนื่องจากหน้า Instance แสดง usage รวมก่อน timestamp ปัจจุบัน ขณะที่หน้า Analytics ใช้ขอบเขตวันแบบเต็มวัน
Instance แบบ Open Plan
ผู้ใช้ Open Plan สามารถรัน quantum circuit บน QPU ชั้นนำของโลกได้ฟรี (สูงสุด 10 นาทีต่อช่วง 28 วันแบบ rolling window) การใช้งาน QPU สามารถติดตามได้ที่ Platform dashboard และหน้า Workloads
Instance แบบ Pay-As-You-Go Plan
Pay-As-You-Go Plan เป็นแผนแบบชำระเงิน หากต้องการใช้แผนนี้ ต้องสร้าง instance และกำหนดให้กับแผนดังกล่าว workload ทั้งหมดที่ส่งไปยัง QPU โดยใช้แผนนี้จะมีค่าใช้จ่าย Pay-as-you-go instances สามารถกำหนด total cost limit ได้ (ไม่บังคับ)
Instance แบบ Flex Plan
Flex Plan เป็นแผนแบบชำระเงิน หากต้องการใช้แผนนี้ ต้อง ติดต่อ IBM เพื่อลงทะเบียนก่อน จากนั้นสร้าง instance และกำหนดให้กับแผนดังกล่าว workload ทั้งหมดที่ส่งไปยัง QPU โดยใช้แผนนี้จะนับเข้า alloted subscription ของผู้ใช้
administrator สามารถกำหนด usage limit บน Flex Plan instance ที่มีผลตลอดระยะเวลาของสัญญา หาก instance ถูกทำเครื่องหมายว่า "limited" โดย administrator (จะเห็นคอลัมน์ "Remaining" ในส่วน usage) และ instance เกิน allocation (ที่กำหนดโดย administrator) workload ที่กำลังทำงานอยู่จะทำงานต่อไป (รวมถึง Session) แต่ workload ที่รอคิวจะยังคงอยู่ในคิวจนกว่าจะมีเวลาว่างมากขึ้น หาก instance ไม่ได้ถูก limited และเกิน allocation งานที่รันด้วย instance นั้นมีแนวโน้มที่จะทำงานด้วย priority ต่ำกว่าและใช้เวลารอคิวนานขึ้น
การแจ้งเตือนจะแสดงบน usage ของ instance เมื่อเกิน allocation
Instance แบบ Premium Plan
Premium Plan เป็นแผนแบบชำระเงิน หากต้องการใช้แผนนี้ ต้อง ติดต่อ IBM เพื่อลงทะเบียนก่อน จากนั้นสร้าง instance และกำหนดให้กับแผนดังกล่าว workload ทั้งหมดที่ส่งไปยัง QPU โดยใช้แผนนี้จะนับเข้า alloted subscription ของผู้ใช้
administrator สามารถกำหนด usage limit บน Premium Plan instance ที่มีผลสำหรับ 28-day rolling usage window ของแผน หาก instance ถูกทำเครื่องหมายว่า "limited" โดย administrator (จะเห็นคอลัมน์ "Remaining" ในส่วน usage) และ instance เกิน allocation (ที่กำหนดโดย administrator) workload ที่กำลังทำงานอยู่จะทำงานต่อไป (รวมถึง Session) แต่ workload ที่รอคิวจะยังคงอยู่ในคิวจนกว่าจะมีเวลาว่างมากขึ้น หาก instance ไม่ได้ถูก limited และเกิน allocation งานที่รันด้วย instance นั้นมีแนวโน้มที่จะทำงานด้วย priority ต่ำกว่าและใช้เวลารอคิวนานขึ้น
การแจ้งเตือนจะแสดงบน usage ของ instance เมื่อเกิน allocation
ระบุ Instance ในโค้ด
สามารถใช้ CRN หรือชื่อ instance เพื่อระบุ instance ที่ต้องการใช้ได้ ไม่ว่าจะตอน initialize service หรือตอนส่ง workload ไปยัง QPU (เช่น ด้วย `QiskitRuntimeService.backend()) สำหรับวิธีการระบุ instance ในโค้ด ดูที่ Initialize your account
เมื่อส่ง instance เข้ามา จะมีเฉพาะ Backend และงานจาก instance นั้นเท่านั้นที่พร้อมใช้งาน (รองรับใน Qiskit Runtime v0.40.1 และใหม่กว่า)
หากไม่ได้ระบุ instance ตอน initialize service Backend และงานทั้งหมดจากทุก instance ในบัญชีจะพร้อมใช้งาน ในกรณีนี้ เมื่อระบุ Backend จะมีการค้นหาและใช้ instance ที่สามารถเข้าถึง Backend นั้นได้ตามที่อธิบายใน Automatically select the instance
Qiskit Runtime v0.40.1 หรือใหม่กว่าเป็นสิ่งจำเป็นสำหรับ:
- การใช้ชื่อ instance เพื่อระบุ instance
- การไม่ส่ง instance เข้ามา
- การตั้งค่า instance type และ region ที่ต้องการ
สำหรับ Qiskit Runtime v0.42 หรือใหม่กว่า แผนฟรีจะถูกให้ priority ก่อนโดยค่าเริ่มต้นเมื่อใช้ automatic instance selection
สร้าง Instance
ทำตามขั้นตอนเหล่านี้เพื่อสร้าง instance และเพิ่มลงในบัญชี หากเป็น administrator ที่ต้องการตั้งค่า Qiskit Runtime บน Cloud สำหรับองค์กร ให้ดูที่ Plan Qiskit Runtime for an organization
-
หากต้องการเพิ่ม instance ในบัญชี ให้ตรวจสอบก่อนว่าได้เลือกบัญชีและ region ที่ถูกต้องใน account switcher ในส่วนหัว
- สามารถมี (หรือเป็นส่วนหนึ่งของ) หลาย IBM Cloud account ได้ หากไม่เห็น instance หรืองานที่คาดไว้ ให้ลองเปลี่ยนบัญชี
- สามารถเข้าถึงทั้งสอง region ได้โดยใช้ API key เดียวกัน แต่จะมองเห็นและเข้าถึงได้เฉพาะ instance ที่สร้างขึ้นใน region ที่กำลัง login อยู่
- หากต้องการสร้าง Open instance ต้องเลือก region us-east
เกี่ยวกับ Regioninstance จะถูกสร้างใน region ที่เลือก region นี้กำหนดลักษณะสำคัญเหล่านี้:
- QPU ที่พร้อมใช้งาน
- ตำแหน่งที่ classical computation ของงาน เช่น compilation เกิดขึ้น
- ตำแหน่งที่ข้อมูล workflow ของผู้ใช้ถูกเก็บไว้
ข้อมูล workflow รวมถึง Circuit อินพุต, Circuit parameter, และผลลัพธ์ quantum computation ไม่รวม metadata เช่น จำนวน shot, ขนาดของ Circuit, หรือสถิติงานอื่นๆ
เพื่อหลีกเลี่ยงการเปิดเผยข้อมูล workflow ของผู้ใช้ต่อ global Distributed Denial of Service protection layer สามารถใช้ Virtual Private Endpoints
qiskit-ibm-runtimeรองรับสิ่งนี้ผ่านprivate_endpointparameter -
จากแผง Instances ใน dashboard คลิก View all หรือไปที่หน้า Instances จากเมนูหลัก
-
จากหน้า Instances คลิก Create instance
- ป้อนชื่อและเพิ่ม tag ได้ตามต้องการ
- หากมีสิทธิ์เข้าถึงมากกว่าหนึ่ง resource group ใน IBM Cloud® สามารถเลือกเปลี่ยน resource group ที่ instance นี้อยู่ได้ ดูข้อมูลเพิ่มเติมที่ Managing resource groups และ Giving access to resources in resource groups
-
เลือก pricing plan ที่ instance นี้เชื่อมโยงด้วย (เช่น Pay-As-You-Go) ขึ้นอยู่กับ pricing plan ที่เลือก สามารถระบุตัวเลือกอื่นๆ ได้ เช่น cost limit หรือจำนวนนาทีที่จัดสรรให้ instance นี้ โปรดทราบว่าหาก instance นี้ไม่ได้เชื่อมโยงกับแผนฟรี จะมีค่าใช้จ่ายเมื่อใช้ instance นี้รัน workload
-
คลิก Next จะแสดงรายการ QPU ที่ instance สามารถเข้าถึงได้
- หากต้องการให้ instance เข้าถึง QPU ทั้งหมดในรายการ (และ QPU ทั้งหมดที่จะเพิ่มในแผนนี้ในอนาคต) คลิก Next
- หากไม่ได้ตั้งค่า open instance สามารถกำหนดว่า QPU ใดสามารถเข้าถึงได้ด้วย instance นี้ คลิก toggle "Customize allocated compute resources" เลือก QPU ที่ต้องการให้ instance นี้เข้าถึง แล้วคลิก Next
หมายเหตุ
หากกำหนด allocated compute resources เอง QPU ที่พร้อมใช้งานจะไม่ถูกอัปเดตโดยอัตโนมัติ ไม่ว่าจะมีการเปลี่ยนแปลงใดกับแผนหลัก อย่างไรก็ตาม สามารถเพิ่มหรือลบ QPU ด้วยตนเองในภายหลังได้ หากไม่ได้กำหนดเอง จะมีสิทธิ์เข้าถึง QPU ทุกตัวที่บัญชีมีสิทธิ์เข้าถึงบนแผนเสมอ ดังนั้นหากมี QPU ใหม่ถูกเพิ่มในแผนในอนาคต instance จะมีสิทธิ์เข้าถึงโดยอัตโนมัติ
-
แผง Access group จะเปิดขึ้น access group ชื่อ "collaborators" จะถูกสร้างโดยอัตโนมัติสำหรับ instance นี้ ผู้ใช้ที่เพิ่มเข้า access group นี้สามารถใช้เวลาที่จัดสรรให้ instance นี้ได้ สามารถ แก้ไขหรือสร้าง access group เพิ่มเติม ได้โดยใช้ IBM Cloud console ดู Setting up access groups สำหรับวิธีการ
-
คลิก Create instance จะเห็น instance บนหน้า Instances หากตั้งค่าหลาย plan ในบัญชี แต่ละประเภท plan จะมี tab ของตัวเองในตาราง Instances
คอลัมน์ Pending workloads ในตาราง Instances แสดงจำนวน workload ที่รอคิวอยู่ใน instance นี้ในทุก QPU
แก้ไข Instance และการจัดสรร
ค้นหา instance บนหน้า Instances คลิก overflow menu ที่ปลายแถวของ instance แล้วเลือก Edit details
เฉพาะ administrator และเจ้าของเท่านั้นที่สามารถแก้ไข instance ได้ ดูข้อมูลเกี่ยวกับการกำหนดสิทธิ์เข้าถึงได้ที่คู่มือ Create access policies and access groups
Instance ที่ถูก Archive
Instance ที่ถูก archive เกิดจากสถานการณ์ใดสถานการณ์หนึ่งต่อไปนี้
ผู้ใช้ที่มีสิทธิ์ได้ archive บัญชีแล้ว
ผู้ใช้ที่มีสิทธิ์เพียงพอสำหรับบัญชีได้ archive instance นั้นแล้ว
- งานที่รอดำเนินการใน instance จะถูกยกเลิก
- Instance ที่ถูก archive จะปรากฏในส่วน "Archive" แยกต่างหากบนหน้า Instances
- ยังสามารถดึงงานได้
- ผู้ใช้ไม่สามารถส่งงานใหม่ไปยัง instance ที่ถูก archive
- Instance ที่ถูก archive ไม่นับเข้า allocation ของแผน
- ผู้ใช้ที่มีสิทธิ์เพียงพอสามารถเปิดใช้งาน instance ที่ตนเอง (หรือผู้ใช้ที่มีสิทธิ์คนอื่น) ได้ archive ไว้ใหม่ได้ทุกเมื่อ
หากต้องการ archive instance ที่จัดการอยู่ ให้ไปที่หน้า Instances ที่ปลายแถวของ instance นั้น คลิกเมนูสามจุด (overflow menu) ทางขวา แล้วเลือก Archive instance
บัญชีไม่มีสิทธิ์เข้าถึงแผนของ instance อีกต่อไป
บัญชีไม่มีสิทธิ์เข้าถึงแผนที่สร้าง instance นั้นอีกต่อไป
- Instance ที่ถูก archive จะปรากฏในส่วน "Archive" แยกต่างหากบนหน้า Instances
- ยังสามารถดึงงานได้
- ผู้ใช้ไม่สามารถส่งงานใหม่ไปยัง instance ที่ถูก archive
- Instance ที่ถูก archive ไม่นับเข้า allocation ของแผน
- Instance ที่ถูก archive เนื่องจากไม่สามารถมองเห็นแผนของ instance ได้อีกต่อไปไม่สามารถเปิดใช้งานใหม่ได้
ขั้นตอนถัดไป
- ทำงานกับ access group
- จัดการผู้ใช้
- บันทึกข้อมูล login
- Initialize Qiskit Runtime service ในสภาพแวดล้อม Python ที่เชื่อถือได้
- Initialize Qiskit Runtime service ใน สภาพแวดล้อมที่ไม่น่าเชื่อถือ