Cara menggunakan IBM Quantum Platform dengan REST API
Kamu bisa mengakses prosesor kuantum dengan REST API, sehingga kamu bisa bekerja dengan QPU menggunakan bahasa pemrograman atau framework apa pun.
1. Dapatkan aksesβ
- Kalau belum punya akun pengguna, daftarkan diri di halaman login IBM Quantum.
- Buat API key (disebut juga token) di dashboard. API key yang sama bisa digunakan untuk kedua region.
- Buat bearer token IBM Cloud Identity and Access Management (IAM). Ini adalah token berumur pendek yang digunakan untuk mengautentikasi permintaan ke REST API. Untuk membuatnya, panggil IAM Identity Services API seperti contoh permintaan berikut:
- Curl
- Python
curl -X POST 'https://iam.cloud.ibm.com/identity/token' \
-H 'Content-Type: application/x-www-form-urlencoded' \
-d 'grant_type=urn:ibm:params:oauth:grant-type:apikey&apikey=MY_APIKEY'
Respons yang Diharapkan
{
"access_token": "eyJhbGciOiJIUz......sgrKIi8hdFs",
"refresh_token": "SPrXw5tBE3......KBQ+luWQVY=",
"token_type": "Bearer",
"expires_in": 3600,
"expiration": 1473188353
}
# Use 'service' to invoke operations.
import requests
import json
url = 'https://iam.cloud.ibm.com/identity/token'
api_key = 'MY_APIKEY'
headers = {
'Content-Type': 'application/x-www-form-urlendcoded',
}
data = f'grant_type=urn:ibm:params:oauth:grant-type:apikey&apikey={api_key}'
response = requests.post(url, headers=headers, data=data)
# Bearer token to authorize requests to the REST API
bearer_token = response.json()['access_token']
2. Pilih metode autentikasiβ
Pilih metode autentikasi yang sesuai, tergantung lingkungan kerjamu:
- Buat variabel lingkungan untuk API key kamu (lingkungan Python tepercaya)
- Gunakan API key langsung (lingkungan tidak tepercaya)
Buat variabel lingkungan (lingkungan tepercaya)β
-
Untuk mengatur variabel lingkungan IQP_API_TOKEN di sistemmu, kamu bisa menambahkan baris berikut ke profil shell (misalnya .bashrc atau .zshrc) atau langsung mengaturnya di terminal:
export IQP_API_TOKEN=<your-API_KEY> # Use the 44-character API_KEY you created and saved from the IBM Quantum Platform Home dashboardSaat memanggil variabel lingkungan di kode, sertakan
import os, seperti contoh ini:import os
api_token = os.environ['IQP_API_TOKEN']Perlu diingat bahwa saat membuat variabel lingkungan, API key kamu masih tersimpan secara lokal dalam teks biasa dan harus dijaga keamanannya.
-
Autentikasi permintaan ke Qiskit Runtime REST API dengan menyertakan CRN dan bearer token di header permintaan.
curl -X 'GET' \
'https://quantum.cloud.ibm.com/api/v1/usage' \
'-H accept: application/json' \
'-H authorization: Bearer <BEARER_TOKEN>' \
'-H Service-CRN: <INSTANCE_CRN>'
3. Opsional: Konfigurasi firewall-muβ
Jika perlu, gunakan informasi ini untuk mengaktifkan akses ke endpoint IBM Quantum API.
Langkah selanjutnyaβ
- Gambaran umum paket yang tersedia.
- Konfigurasi Qiskit SDK secara lokal.
- Ikuti langkah-langkah di Hello world untuk menulis dan menjalankan program kuantum.
- Coba sebuah tutorial.