Aller au contenu principal

Sauvegarder tes identifiants de connexion

Si tu travailles dans un environnement Python de confiance (par exemple sur un ordinateur portable personnel ou un poste de travail), tu peux utiliser la méthode save_account() pour sauvegarder tes identifiants localement, puis les utiliser pour initialiser le service.

Remarques

Avant de commencer

  1. Assure-toi de disposer d'un compte IBM Cloud.
  2. Assure-toi de travailler dans un environnement Python actif avec le SDK Qiskit et Qiskit Runtime installés.
  3. Active l'environnement virtuel Python et exécute Python dans cet environnement.
  4. Connecte-toi à IBM Quantum Platform avec un IBMid ou un compte Google.

Trouver tes identifiants d'accès

  1. Assure-toi que le bon compte et la bonne région sont sélectionnés dans le sélecteur de compte dans l'en-tête.
  2. Trouve ta clé API. Depuis le tableau de bord, crée ta clé API, puis copie-la dans un emplacement sécurisé afin de pouvoir l'utiliser pour l'authentification. Note que tu peux utiliser la même clé API pour te connecter à n'importe quelle région.
  3. Facultatif : Trouve l'instance que tu souhaites utiliser depuis la page Instances. Survole son CRN, clique sur l'icône pour le copier, puis sauvegarde-le dans un emplacement sécurisé afin de pouvoir l'utiliser pour identifier l'instance.

Sauvegarder tes identifiants d'accès

Sauvegarde tes identifiants en exécutant le code approprié une fois par compte que tu souhaites enregistrer. Après avoir sauvegardé tes identifiants, charge-les en suivant les étapes de la page Initialiser le service Qiskit Runtime.

Sauvegarder des identifiants qui accèdent à une instance spécifique :

Si tu as plusieurs instances et que tu veux indiquer facilement à Qiskit Runtime laquelle utiliser, sauvegarde des identifiants incluant un CRN d'instance.

from qiskit_ibm_runtime import QiskitRuntimeService

QiskitRuntimeService.save_account(
token="<your-api-key>", # Use the 44-character API_KEY you created and saved from the IBM Quantum Platform Home dashboard
name="<account-name>", # Optional
instance="<IBM Cloud CRN or instance name>", # Optional
set_as_default=True, # Optional
overwrite=True, # Optional
)

Sauvegarder des identifiants pour la sélection automatique d'instance :

Si tu ne fournis pas de CRN d'instance et que tu transmets ces identifiants à Qiskit Runtime, une instance appropriée sera automatiquement choisie pour toi en fonction des options spécifiées.

from qiskit_ibm_runtime import QiskitRuntimeService

QiskitRuntimeService.save_account(
token="<your=api-key>", # Use the 44-character API_KEY you created and saved from the IBM Quantum Platform Home dashboard
name="<account-name>", # Optional
instance="<instance-to-use>", # Optional
plans_preference="<plan_types>", # Optional
region="<region>", # Optional
tags="<instance-tags>", # Optional
set_as_default=True, # Optional
overwrite=True, # Optional
)

Options disponibles

  • token : Clé API IBM Cloud. Ton token est confidentiel. Ne partage pas ton token dans du code public.
  • instance : Spécifie facultativement l'instance à utiliser via son CRN IBM Cloud ou son nom d'instance.
  • plans_preference : Définit facultativement les types de plans à prioriser. Cette option est ignorée si l'instance est spécifiée. Les options disponibles sont open, pay-as-you-go, flex, premium et on-prem. Les instances d'un certain type de plan sont exclues si le nom du plan n'est pas spécifié. Par exemple, si [open] est transmis, seules les instances du Plan Open sont disponibles. Cette option est ignorée si instance est spécifié.
  • region : Définit facultativement la région à utiliser. Les valeurs acceptées sont us-east et eu-de. Cette option est ignorée si instance est spécifié.
  • tags : Spécifie facultativement les tags de l'instance. Accepte une liste de chaînes de noms de tags. Cette option est ignorée si instance est spécifié.
  • name : Donne facultativement un nom à cet ensemble d'identifiants de compte.
  • set_as_default : Définis la valeur à True pour sauvegarder ces identifiants comme identifiants par défaut. Si tu ne sauvegardes qu'un seul compte, il est automatiquement défini comme compte par défaut.
  • overwrite : Définis cette valeur à True pour mettre à jour tes identifiants par défaut.

Exemples

Exemple 1

Cet exemple sauvegarde des identifiants pour des instances spécifiques, qui permettent un accès open et premium. Les identifiants open sont définis comme identifiants par défaut.

from qiskit_ibm_runtime import QiskitRuntimeService

QiskitRuntimeService.save_account(token="<API_TOKEN>", instance="<CRN_for_premium_instance>",
name="premium")
QiskitRuntimeService.save_account(token="<API_TOKEN>", instance="<CRN_for_open_instance>",
name="open", set_as_default=True)

Exemple 2

Cet exemple sauvegarde des identifiants pour la sélection automatique d'instance. Qiskit Runtime ne prendra en compte que les instances premium dans la région EU disponibles pour le compte. Ces identifiants deviennent le nouveau défaut.

QiskitRuntimeService.save_account(
token="your-api-key",
set_as_default=True,
overwrite = True,

# Set instance "filters" instead of specifying the instance:
region="eu-de",
plans_preference=["premium"]
)

Voir les identifiants sauvegardés

Pour voir tous les identifiants que tu as sauvegardés, exécute service.saved_accounts(). Note que si tu as sauvegardé des identifiants par défaut sans les nommer, ils portent le nom default-ibm-quantum-platform. Si tu as nommé tes identifiants par défaut, tu verras "is_default_account": true dans le résultat.

Considérations

  • Si tu sauvegardes plusieurs comptes, utilise le paramètre name pour les différencier.
  • Les identifiants sont sauvegardés dans $HOME/.qiskit/qiskit-ibm.json. Ne modifie pas ce fichier manuellement.
  • Si tu ne sauvegardes pas tes identifiants, tu devras les spécifier à chaque fois que tu démarres une nouvelle session (instanciation du service Qiskit Runtime).
  • Si tu spécifies manuellement tes identifiants, un compte sauvegardé ne sera pas utilisé.

Étapes suivantes