Zapisywanie danych logowania
Jeśli pracujesz w zaufanym środowisku Python (np. na własnym laptopie lub stacji roboczej), możesz użyć metody save_account(), aby zapisać swoje dane logowania lokalnie, a następnie użyć ich do inicjalizacji usługi.
- Jeśli używasz komputera publicznego lub innego niezaufanego środowiska, zamiast tego postępuj zgodnie z instrukcjami w Initialize the service in an untrusted environment.
- Postępuj zgodnie z tymi instrukcjami, jeśli chcesz połączyć się za pomocą REST API zamiast Qiskit.
- W razie potrzeby użyj tych informacji, aby skonfigurować zaporę sieciową umożliwiającą dostęp do punktów końcowych API IBM Quantum.
Przed rozpoczęciem
-
Upewnij się, że pracujesz w aktywnym środowisku Python z
qiskitiqiskit-ibm-runtimepakietami zainstalowanymi. -
Aktywuj wirtualne środowisko Python i uruchom Pythona w swoim wirtualnym środowisku.
-
Zaloguj się do IBM Quantum Platform.
Znajdowanie danych dostępowych
-
Upewnij się, że właściwe konto i region są wybrane w przełączniku kont w nagłówku.
-
Znajdź swój klucz API. Z pulpitu nawigacyjnego utwórz klucz API, a następnie skopiuj go w bezpieczne miejsce, abyś mógł go użyć do uwierzytelnienia. Pamiętaj, że tego samego klucza API możesz użyć do połączenia z dowolnym regionem.
-
Opcjonalnie: Znajdź instancję, której chcesz użyć, na stronie Instances. Najedź kursorem na jej CRN, kliknij ikonę kopiowania, a następnie zapisz go w bezpiecznym miejscu, abyś mógł go użyć do identyfikacji instancji.
Zapisywanie danych dostępowych
Zapisz swoje dane logowania, uruchamiając odpowiedni kod raz dla każdego konta, które chcesz zapisać. Po zapisaniu danych logowania załaduj je, postępując zgodnie z instrukcjami w Initialize IBM Quantum Compute Service.
Zapisywanie danych logowania z dostępem do konkretnej instancji:
Jeśli masz wiele instancji i chcesz łatwo poinformować Quantum Compute, której instancji użyć, zapisz dane logowania zawierające CRN instancji.
from qiskit_ibm_runtime import QiskitRuntimeService
QiskitRuntimeService.save_account(
# For `token`, use the 44-character API_KEY you created
# and saved from the IBM Quantum Platform Home dashboard:
token="<your-api-key>",
name="<account-name>", # Optional
instance="<IBM Cloud CRN or instance name>", # Optional
set_as_default=True, # Optional
overwrite=True, # Optional
)
Zapisywanie danych logowania do automatycznego wyboru instancji:
Jeśli nie podasz CRN instancji i przekażesz te dane logowania do Quantum Compute, odpowiednia instancja zostanie wybrana automatycznie na podstawie podanych opcji.
from qiskit_ibm_runtime import QiskitRuntimeService
QiskitRuntimeService.save_account(
# For `token`, use the 44-character API_KEY you created
# and saved from the IBM Quantum Platform Home dashboard:
token="<your=api-key>",
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
)
Available options
token: IBM Cloud API key. Your token is confidential. Do not share your token in public code.instance: Optionally specify the instance to use through its IBM Cloud CRN or instance name.plans_preference: Optionally set the types of plans to prioritize. This is ignored if the instance is specified. Available options areopen,pay-as-you-go,flex,premium, andon-prem. Instances of a certain plan type are excluded if the plan name is not specified. For example, if [open] is passed in, only Open Plan instances are available. This is ignored ifinstanceis specified.region: Optionally set the region to use. Accepted values areus-eastandeu-de. This is ignored ifinstanceis specified.tags: Optionally specify the instance's tags. Accepts a list of tag name strings. This is ignored ifinstanceis specified.name: Optionally name this set of account credentials.set_as_default: Set the value toTrueto save these as your default credentials. If you save only one account, it is automatically set as the default.overwrite: Set this value toTrueto update your default credentials.
Examples
Example 1
This example saves credentials for specific instances, which allow open and premium access. The open credentials are set as the default.
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)
Przykład 2
Ten przykład zapisuje dane logowania do automatycznego wyboru instancji. Quantum Compute będzie szukać tylko instancji premium w regionie UE dostępnych dla konta. Te dane logowania stają się nowym domyślnym.
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"]
)
Wyświetlanie zapisanych danych logowania
Aby wyświetlić wszystkie zapisane dane logowania, uruchom service.saved_accounts(). Pamiętaj, że jeśli zapisałeś domyślne dane logowania bez ich nazywania, noszą one nazwę default-ibm-quantum-platform. Jeśli nadałeś swojemu domyślnemu nazwy logowania, zobaczysz "is_default_account": true w wynikach.
Uwagi
-
Jeśli zapisujesz wiele kont, użyj parametru
name, aby je rozróżnić. -
Dane logowania są zapisywane do
$HOME/.qiskit/qiskit-ibm.json. Nie edytuj tego pliku ręcznie. -
Jeśli nie zapiszesz swoich danych logowania, musisz je podawać za każdym razem, gdy rozpoczynasz nową sesję (tworzysz instancję IBM Quantum Compute Service).
-
Jeśli ręcznie podasz swoje dane logowania, zapisane konto nie zostanie użyte.
Następne kroki
- Zainicjalizuj IBM Quantum Compute Service w zaufanym środowisku Python.
- Zainicjalizuj IBM Quantum Compute Service w niezaufanym środowisku.
- Wyświetl dostępne QPU.
- Skonfiguruj Qiskit SDK lokalnie.
- Postępuj zgodnie z instrukcjami w Hello world, aby napisać i uruchomić program kwantowy.
- Skonfiguruj połączenie z IBM Quantum Platform za pomocą REST API.
- Wypróbuj samouczek.