Lewati ke konten utama

Inisialisasi akun layanan Qiskit Runtime kamu

Sebelum menggunakan Qiskit Runtime, kamu harus menginisialisasi (membuat instance) akunmu dengan mengirimkan (memuat) kredensial. Kredensial ini bisa dikirimkan secara manual setiap kali kamu menginisialisasi layanan Qiskit Runtime, atau kamu bisa menyimpannya untuk digunakan kembali.

Catatan

Sebelum memulai​

Pastikan kamu sudah menyelesaikan langkah-langkah berikut:

  1. Pastikan kamu adalah anggota akun IBM Cloud. Lihat Siapkan akun IBM Cloud kamu untuk petunjuknya.
  2. Buat (atau miliki akses ke) setidaknya satu instance. Ikuti langkah-langkah ini untuk memverifikasi:
    1. Login ke IBM Quantum Platform.
    2. Pastikan akun dan wilayah yang benar sudah dipilih di pemilih akun di header.
    3. Jika kamu sudah memiliki satu atau lebih instance yang ditampilkan, langkah ini selesai. Jika belum, buat sebuah instance.
  3. Pastikan kamu bekerja di lingkungan Python aktif dengan Qiskit SDK dan Qiskit Runtime yang sudah terinstal.
  4. Aktifkan virtual environment Python dan jalankan Python di virtual environment tersebut.

Temukan kredensial akses kamu​

  1. Temukan API key kamu (juga disebut sebagai API token). Dari dashboard, buat API key kamu, lalu salin ke lokasi yang aman agar bisa digunakan untuk autentikasi. Token ini tidak akan terlihat lagi. Perlu diketahui bahwa kamu bisa menggunakan satu API key untuk terhubung ke wilayah mana pun.
  2. Opsional: Temukan instance yang ingin kamu gunakan dari halaman Instances. Arahkan kursor ke CRN-nya, klik ikon untuk menyalinnya, lalu simpan di lokasi yang aman agar bisa digunakan untuk mengidentifikasi instance tersebut.

Hubungkan Qiskit dengan instance layanan Qiskit Runtime kamu​

catatan

Petunjuk ini dirancang untuk qiskit_ibm_runtime v0.42 atau lebih baru. Beberapa fitur tidak tersedia di versi qiskit_ibm_runtime yang lebih lama. Dalam kasus seperti ini, kamu harus selalu memberikan nilai untuk channel, token, dan instance, baik secara eksplisit maupun melalui akun yang tersimpan.

Berikut adalah kode dasar untuk menghubungkan Qiskit dengan instance layanan Qiskit Runtime kamu. Namun, ada beberapa cara berbeda untuk menyesuaikan opsi QiskitRuntimeService, tergantung kebutuhanmu. Opsi-opsi ini dijelaskan di bagian berikut.

from qiskit_ibm_runtime import QiskitRuntimeService

service = QiskitRuntimeService(channel=<channel>,
token=<your-API_KEY>, # Use the 44-character API_KEY you created and saved from the IBM Quantum Platform Home dashboard
instance=<instance_CRN>)
catatan

Channel default adalah ibm_quantum_platform. Karena ini hampir selalu merupakan channel yang tepat, channel ini tidak disertakan dalam contoh-contoh.

Jalur cepat: Tentukan kredensial secara eksplisit​

Cara tercepat untuk menjalankan instance QiskitRuntimeService adalah metode instansiasi langsung: berikan API token (key) dan CRN (identifier instance) secara eksplisit setiap kali kamu perlu menginisialisasi layanan Qiskit Runtime. Lihat Temukan kredensial akses kamu jika perlu.

from qiskit_ibm_runtime import QiskitRuntimeService

service = QiskitRuntimeService(token=<cloud_api_key>, # Use the 44-character API_KEY you created and saved from the IBM Quantum Platform Home dashboard
instance=<instance_CRN>)

Jalur ini andal tetapi bisa membosankan jika kamu perlu memuat detail yang sama berulang kali. Untuk menghindari memuat kredensial berkali-kali, jika kamu bekerja di lingkungan Python yang terpercaya (seperti di laptop atau workstation pribadi), kamu bisa menggunakan kredensial akun yang tersimpan, seperti yang dijelaskan di bagian berikut.

Meskipun parameter input instance bersifat opsional, disarankan agar kamu selalu memberikan informasi ini, kecuali jika kamu ingin menggunakan satu layanan untuk bekerja dengan beberapa instance. Dalam situasi ini, lihat bagian pemilihan instance otomatis.

Jalur cepat: Tentukan kredensial yang tersimpan​

Jika kamu sudah menyimpan kredensial, gunakan kode berikut untuk menerapkan kredensial default kamu. Untuk petunjuk menyimpan kredensial, lihat Simpan kredensial akses kamu.

from qiskit_ibm_runtime import QiskitRuntimeService

# run every time you need the service
service = QiskitRuntimeService()
...

Jika kamu memberi nama satu atau lebih set kredensial - misalnya, untuk akses open dan premium - gunakan kode berikut untuk menggunakan set kredensial yang dinamai.

from qiskit_ibm_runtime import QiskitRuntimeService

# run every time you need the service
service = QiskitRuntimeService(name="<name_of_saved_credentials>")
...

Pertimbangan saat memuat kredensial yang tersimpan​

  • Jika kamu menginisialisasi layanan dengan token dan name, token diabaikan dan detail yang tersimpan dari akun name dimuat.

    Pada contoh berikut, layanan memuat detail dari account_A dan tidak menggunakan token_B:

    from qiskit_ibm_runtime import QiskitRuntimeService

    service = QiskitRuntimeService(token="token_B", name="account_A")
  • Jika kamu memberikan name dan instance saat menginisialisasi layanan, layanan akan mencoba memuat akun name dan terhubung ke instance yang ditentukan. Jika ada konflik, peringatan akan muncul.

    Pada contoh berikut, layanan mencoba memuat kredensial untuk account_A dan menggunakan instance CRN_B - meskipun ada instance berbeda yang ditentukan di account_A:

    from qiskit_ibm_runtime import QiskitRuntimeService

    service = QiskitRuntimeService(instance="CRN_B", name="account_A")
  • Layanan mencoba memuat akun tersimpan default hanya jika kamu tidak memberikan token atau name saat menginisialisasi layanan. Namun, jika instance diberikan secara eksplisit, layanan mencoba terhubung ke instance tersebut menggunakan kredensial default. Jika ada konflik, peringatan akan muncul.

    Pada contoh berikut, layanan mencoba memuat kredensial default dan menggunakan instance CRN_B - meskipun ada instance berbeda yang ditentukan di akun default:

    from qiskit_ibm_runtime import QiskitRuntimeService

    service = QiskitRuntimeService(instance="CRN_B")
  • Jika kamu menyimpan beberapa set kredensial tetapi tidak menentukan salah satunya saat menginisialisasi layanan dan tidak ada akun tersimpan default, maka yang namanya paling akhir secara alfabetis yang akan digunakan.

    Pada contoh berikut, pengguna menyimpan akun bernama "my_premium" dan "my_open" tetapi tidak menandai salah satunya sebagai default. Kemudian mereka menginisialisasi layanan menggunakan kode berikut. Dalam kasus ini, kredensial "my_premium" yang digunakan:

    from qiskit_ibm_runtime import QiskitRuntimeService

    service = QiskitRuntimeService()
  • Jika kamu terus-menerus mendapatkan error "401 Unauthorized", mungkin kamu sedang mencoba menggunakan bearer token alih-alih API key kamu.

Pilih instance secara otomatis​

Jika kamu memberikan token tetapi tidak memberikan CRN instance saat membuat instance layanan, QiskitRuntimeService mengautentikasi ke akun yang diidentifikasi oleh token tersebut dan menggunakan pemilihan instance otomatis untuk memilih instance yang paling relevan untuk tugas yang diminta. Jika kamu memiliki beberapa instance yang tersedia dalam akunmu, layanan secara otomatis memilih dari instance yang tersedia, tergantung pada sumber daya yang diminta dan opsi QiskitRuntimeService ini (jika diatur): plans_preference, region, tags.

  • plans_preference: Jenis paket instance yang diprioritaskan. Misalnya, jika [open] dimasukkan, hanya instance Open Plan yang tersedia. Nilai yang diterima adalah open, premium, pay-as-you-go, flex, dan on-prem. Jika plans_preference tidak ditentukan, paket gratis diprioritaskan di atas paket berbayar.
  • region: Wilayah instance. Nilai yang diterima adalah us-east dan eu-de.
  • tags: Tag instance. Menerima daftar string nama tag.
catatan

Kamu bisa mengatur kredensial tersimpan untuk memilih instance secara otomatis.

Instance ditemukan dan digunakan dalam urutan ini:

  1. Jika akunmu hanya memiliki akses ke satu instance, instance tersebut dipilih secara default.
  2. Jika kredensial yang tersimpan sedang digunakan dan sebuah instance ditentukan bersama kredensial tersebut, instance itu yang digunakan. Lihat Pertimbangan saat memuat kredensial yang tersimpan.
  3. Jika akunmu memiliki beberapa instance yang bisa mengakses QPU yang diminta, sistem menggunakan preferensi paket yang kamu tentukan untuk memilih paket dan instance. Untuk Qiskit Runtime v0.42 ke atas, paket gratis diprioritaskan secara default.
  4. Jika akunmu memiliki akses ke beberapa instance tetapi hanya satu yang bisa mengakses QPU yang diminta, instance yang memiliki akses dipilih. Jika instance ini tidak terkait dengan paket gratis, biaya akan dikenakan.

Contoh​

Pada contoh ini, layanan mencari semua instance yang tersedia untuk akun guna menemukan yang bisa mengakses Backend yang ditentukan:

service = QiskitRuntimeService(token=<your-API_KEY>)

Pada contoh ini, layanan mencari semua instance yang tersedia untuk akun di wilayah EU guna menemukan yang bisa mengakses Backend yang ditentukan:

service = QiskitRuntimeService(token=<your-API_KEY>, region="eu-de")

Pada contoh ini, layanan mencari semua instance yang tersedia untuk akun dan diberi tag services guna menemukan yang bisa mengakses Backend yang ditentukan:

service = QiskitRuntimeService(token=<your-API_KEY>, tags=['services'])

Pada contoh ini, layanan mencari semua instance premium dan open yang tersedia untuk akun guna menemukan yang bisa mengakses Backend yang ditentukan. Jika sebuah Backend ada di instance paket Premium maupun Open, instance paket Premium diprioritaskan karena premium ditentukan lebih dulu di plans_preference.

service = QiskitRuntimeService(token=<your-API_KEY>, plans_preference=['premium', 'open'])

Tentukan instance mana yang dipilih​

Instance yang dipilih dikembalikan sebagai peringatan. Selain itu, kamu bisa menjalankan service.active_instance() untuk menentukan instance yang aktif.

Pengujian lokal dengan Qiskit Runtime​

Kelas QiskitRuntimeService bisa diinisialisasi dengan channel=local untuk melakukan simulasi lokal. Dalam kasus ini, autentikasi tidak diperlukan dan tidak perlu memberikan nilai untuk token atau instance. Oleh karena itu, tidak disarankan untuk menyimpan akun lokal. Sebagai gantinya, kamu bisa melakukan instansiasi langsung:

from qiskit_ibm_runtime import QiskitRuntimeService

# Initialize for local testing

service = QiskitRuntimeService(channel="local")

Langkah selanjutnya​

Source: IBM Quantum docs β€” updated 5 Mar 2026
English version on doQumentation β€” updated 7 Mei 2026
This translation based on the English version of 11 Mar 2026