Vai al contenuto principale

Salvare le credenziali di accesso

Se stai lavorando in un ambiente Python attendibile (ad esempio su un laptop o una workstation personale), puoi usare il metodo save_account() per salvare le tue credenziali in locale e poi utilizzarle per inizializzare il servizio.

Note

Prima di iniziare​

  1. Assicurati di avere un account IBM Cloud.
  2. Assicurati di lavorare in un ambiente Python attivo con Qiskit SDK e Qiskit Runtime installati.
  3. Attiva l'ambiente virtuale Python ed esegui Python al suo interno.
  4. Accedi a IBM Quantum Platform con un IBMid o un account Google.

Trovare le credenziali di accesso​

  1. Assicurati che l'account e la regione corretti siano selezionati nel selettore di account nell'intestazione.
  2. Trova la tua chiave API. Dal dashboard, crea la tua chiave API, quindi copiala in una posizione sicura per poterla usare per l'autenticazione. Nota che puoi usare la stessa chiave API per connetterti a qualsiasi regione.
  3. Facoltativo: trova l'istanza che desideri usare dalla pagina Istanze. Passa il cursore sul suo CRN, fai clic sull'icona per copiarlo, quindi salvalo in una posizione sicura per poterlo usare per identificare l'istanza.

Salvare le credenziali di accesso​

Salva le tue credenziali eseguendo il codice appropriato una volta per ogni account che vuoi salvare. Dopo aver salvato le credenziali, caricale seguendo i passaggi in Inizializzare il servizio Qiskit Runtime.

Salvare credenziali che accedono a un'istanza specifica:​

Se hai più istanze e vuoi indicare facilmente a Qiskit Runtime quale usare, salva credenziali che includono un CRN di istanza.

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
)

Salvare credenziali per la selezione automatica dell'istanza:​

Se non fornisci un CRN di istanza e passi queste credenziali a Qiskit Runtime, verrà scelta automaticamente un'istanza appropriata in base alle opzioni specificate.

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
)

Opzioni disponibili​

  • token: chiave API di IBM Cloud. Il tuo token è riservato. Non condividere il token in codice pubblico.
  • instance: specifica facoltativamente l'istanza da usare tramite il suo CRN IBM Cloud o il nome dell'istanza.
  • plans_preference: imposta facoltativamente i tipi di piani da privilegiare. Viene ignorato se l'istanza è specificata. Le opzioni disponibili sono open, pay-as-you-go, flex, premium e on-prem. Le istanze di un determinato tipo di piano vengono escluse se il nome del piano non è specificato. Ad esempio, se viene passato [open], sono disponibili solo le istanze del Piano Open. Viene ignorato se instance è specificato.
  • region: imposta facoltativamente la regione da usare. I valori accettati sono us-east e eu-de. Viene ignorato se instance è specificato.
  • tags: specifica facoltativamente i tag dell'istanza. Accetta un elenco di stringhe con i nomi dei tag. Viene ignorato se instance è specificato.
  • name: assegna facoltativamente un nome a questo insieme di credenziali dell'account.
  • set_as_default: imposta il valore a True per salvare queste come credenziali predefinite. Se salvi un solo account, viene automaticamente impostato come predefinito.
  • overwrite: imposta questo valore a True per aggiornare le tue credenziali predefinite.

Esempi​

Esempio 1​

Questo esempio salva le credenziali per istanze specifiche, che consentono l'accesso open e premium. Le credenziali open vengono impostate come predefinite.

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)

Esempio 2​

Questo esempio salva le credenziali per la selezione automatica dell'istanza. Qiskit Runtime considererà solo le istanze premium nella regione EU disponibili per l'account. Queste credenziali diventano il nuovo predefinito.

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"]
)

Visualizzare le credenziali salvate​

Per visualizzare tutte le credenziali salvate, esegui service.saved_accounts(). Nota che se hai salvato le credenziali predefinite senza assegnare loro un nome, vengono denominate default-ibm-quantum-platform. Se hai assegnato un nome alle tue credenziali predefinite, vedrai "is_default_account": true nell'output.

Considerazioni​

  • Se stai salvando più account, usa il parametro name per distinguerli.
  • Le credenziali vengono salvate in $HOME/.qiskit/qiskit-ibm.json. Non modificare questo file manualmente.
  • Se non salvi le credenziali, dovrai specificarle ogni volta che avvii una nuova sessione (istanziando il servizio Qiskit Runtime).
  • Se specifichi manualmente le tue credenziali, un account salvato non verrà utilizzato.

Passi successivi