Configuration pour l'utilisation de IBM Quantum Platform avec REST API
Vous pouvez accéder aux processeurs quantiques avec des API REST, ce qui vous permet de travailler avec des QPU à l'aide de n'importe quel langage de programmation ou cadre.
1. Obtenir l'accès
- Si vous n'avez pas encore de compte utilisateur, créez-en un sur la page de connexion IBM Quantum.
- Créez une clé API (également appelée jeton) sur le tableau de bord. Notez que la même clé API peut être utilisée pour les deux régions.
- Générer un jeton de support IBM Cloud Identity and Access Management (IAM). Il s'agit d'un jeton de courte durée utilisé pour authentifier les demandes adressées à l'API REST. Pour en générer un, appelez l' API des services d'identité IAM, comme indiqué dans l'exemple de demande suivant :
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'Réponse prévue
{
"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-urlencoded',
}
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. Choisissez une méthode d'authentification
Choisissez la méthode d'authentification appropriée, en fonction de votre environnement de travail :
- Créez une variable d'environnement pour votre clé API (environnements de confiance Python )
- Utiliser directement votre clé API (environnement non fiable)
Créer une variable d'environnement (environnement fiable)
-
Pour définir la variable d'environnement IQP\API_TOKEN dans votre système, vous pouvez ajouter la ligne suivante à votre profil shell (par exemple,.bashrc ou.zshrc) ou la définir directement dans votre terminal :
export IQP_API_TOKEN=<your-API_KEY> # Use the 44-character API_KEY you created and saved # from the IBM Quantum Platform Home dashboardLorsque vous invoquez la variable d'environnement dans votre code, incluez
import os, comme dans cet exemple :import os api_token = os.environ['IQP_API_TOKEN']Notez que lorsque vous créez une variable d'environnement, votre clé API est toujours stockée localement en texte clair et doit être protégée.
-
Authentifiez les requêtes adressées à l'API REST en incluant l' CRN e et le jeton « bearer » dans les en-têtes de la requête.
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. Facultatif : configurez votre pare-feu
Si nécessaire, utilisez ces informations pour permettre l'accès aux points d'extrémité de l'API IBM Quantum.
Etapes suivantes
- Aperçu des forfaits disponibles.
- Configurez l' Qiskit SDK ement localement.
- Suivez les étapes décrites dans le guide Exécutez votre premier circuit sur du matériel pour écrire et exécuter un programme quantique.
- Essayez un tutoriel.