Wyświetlanie szczegółów backendu
Package versions
Kod na tej stronie został opracowany przy użyciu następujących wymagań. Zalecamy używanie tych wersji lub nowszych.
qiskit-ibm-runtime~=0.47.0
Ta strona wyjaśnia, jak znaleźć informacje o dostępnych backendach.
Wyświetlanie i filtrowanie backendów
Wyświetlanie dostępnych backendów
Do wyświetlania listy dostępnych backendów lub wyszukiwania określonego backendu można użyć Qiskit lub IBM Quantum Platform.
QPU hostowane na IBM Cloud® mają nazwy zaczynające się od ibm_*. Wszystkim QPU nadawana jest nazwa miasta — na przykład ibm_kingston. Nazwa ta nie wskazuje miejsca, w którym fizycznie znajduje się QPU.
- View backends with Qiskit
- View backends on IBM Quantum Platform
Użyj metody QiskitRuntimeService.backends(), jak pokazano w poniższym bloku kodu. Ta metoda zwraca listę instancji IBMBackend.
Aby uruchomić poniższy kod, upewnij się, że jesteś już uwierzytelniony w usłudze. Zobacz Konfigurowanie konta IBM Cloud, aby uzyskać więcej informacji.
Aby wyszukać konkretny backend, użyj metody QiskitRuntimeService.backend() (zwróć uwagę, że to liczba pojedyncza: backend), która przyjmuje nazwę backendu jako parametr wejściowy i zwraca instancję IBMBackend reprezentującą ten konkretny backend:
Aby wyświetlić backendy, do których masz dostęp, przejdź do listy backendów na stronie zasobów obliczeniowych (zwróć uwagę, że wybrany region może wpłynąć na wyświetlaną listę QPU). Kliknij ikonę filtra i wybierz „Wszystkie moje instancje” lub konkretną nazwę instancji, aby zobaczyć dostępne QPU.
# Added by doQumentation — required packages for this notebook
!pip install -q qiskit-ibm-runtime
# Initialize your account
from qiskit_ibm_runtime import QiskitRuntimeService
service = QiskitRuntimeService()
service.backends()
[<IBMBackend('ibm_pittsburgh')>,
<IBMBackend('ibm_boston')>,
<IBMBackend('ibm_fez')>,
<IBMBackend('ibm_miami')>,
<IBMBackend('ibm_marrakesh')>,
<IBMBackend('ibm_kingston')>]
service.backend("ibm_fez")
<IBMBackend('ibm_fez')>
# Optionally pass in an instance, region, or both, to
# further filter the backends.
service = QiskitRuntimeService()
service.backends(simulator=False, operational=True, min_num_qubits=100)
[<IBMBackend('ibm_pittsburgh')>,
<IBMBackend('ibm_boston')>,
<IBMBackend('ibm_fez')>,
<IBMBackend('ibm_miami')>,
<IBMBackend('ibm_marrakesh')>,
<IBMBackend('ibm_kingston')>]
Jeśli jesteś zalogowany do określonej instancji lub regionu albo jeśli zainicjalizowałeś usługę z konkretną instancją lub regionem za pomocą QiskitRuntimeService(), zwracane są wyłącznie backendy dostępne dla Ciebie w tej instancji lub regionie.
Filtrowanie backendów
- Filter by properties with Qiskit
- Filter by properties on IBM Quantum Platform
Możesz filtrować dostępne backendy według ich konfiguracji lub stanu. Aby zastosować bardziej ogólne filtry, ustaw argument filters na funkcję, która przyjmuje obiekt backendu i zwraca True, jeśli spełnia twoje kryteria. Więcej informacji znajdziesz w dokumentacji API.
Poniższy kod zwraca tylko backendy, które spełniają te kryteria i są dostępne dla ciebie w twojej obecnie wybranej instancji:
-
Są rzeczywistymi urządzeniami kwantowymi (
simulator=False) -
Są obecnie sprawne (
operational=True) -
Mają co najmniej sto kubitów (
min_num_qubits=100)
Podobną metodą jest QiskitRuntimeService.least_busy(), która przyjmuje te same filtry co backends(), ale zwraca backend, który spełnia filtry i ma najmniejszą liczbę zadań oczekujących w kolejce:
Aby wyświetlić backendy, do których masz dostęp, zobacz tabelę na stronie zasobów obliczeniowych. Kliknij ikonę filtra, aby zobaczyć opcje filtrowania. Możesz filtrować według typu procesora i stanu. Zwróć również uwagę, że możesz sortować tabelę według dowolnej kolumny, najeżdżając kursorem na tytuł kolumny, a następnie klikając pojawiające się strzałki.
service.least_busy(operational=True, min_num_qubits=100)
<IBMBackend('ibm_fez')>
Statyczne informacje o backendzie
Niektóre informacje o backendzie nie zmieniają się regularnie, takie jak jego nazwa, wersja, liczba posiadanych kubitów, typ procesora (nazwa rodziny ptaków, która wskazuje na topologię i przybliżoną liczbę kubitów) oraz typy obsługiwanych funkcji. Ta informacja jest dostępna jako atrybuty obiektu backend. Pełną listę atrybutów znajdziesz w dokumentacji API IBMBackend. Więcej informacji na temat wersjonowania znajdziesz w sekcji Wersjonowanie QPU poniżej.
Region backendu (lokalizacja centrum danych, w którym będą przechowywane i przetwarzane dane i eksperymenty) jest podany na szczegółowej karcie informacyjnej na stronie Zasobów obliczeniowych w IBM Quantum Platform.
- View backend information with Qiskit
- View backend information on IBM Quantum Platform
Przejdź do strony Zasoby obliczeniowe, aby wyświetlić tabelę wszystkich QPU, a następnie kliknij nazwę dowolnego QPU, aby otworzyć jego szczegółową kartę informacyjną. Informacje o backendzie znajdziesz w sekcji Szczegóły karty.
backend = service.backend("ibm_fez")
print(
f"Name: {backend.name}\n"
f"Version: {backend.backend_version}\n"
f"No. of programmable qubits: {backend.num_qubits}\n"
f"Processor type: {backend.processor_type}\n"
)
Name: ibm_fez
Version: 1.3.37
No. of programmable qubits: 156
Processor type: {'family': 'Heron', 'revision': '2'}
Wersjonowanie QPU
Każdy QPU ma numer wersji w postaci X.Y.Z (główna.pomocnicza.rewizja). Obwód skompilowany dla danego numeru wersji ma gwarancję uruchomienia na tym QPU. W przypadku zmiany numeru rewizji obwód nadal będzie działał. W przypadku zmiany numeru głównego lub pomocniczego nie ma gwarancji uruchomienia obwodu, choć może to być możliwe.
Numer wersji rewizji będzie zwiększany dla poprawek, które nie naruszają istniejącego skompilowanego obwodu.
Przykład kodu w tej sekcji pokazuje, jak znaleźć wersję backendu. W IBM Quantum Platform można wyświetlić wersję na szczegółowej karcie informacyjnej QPU (kliknij nazwę QPU w tabeli Zasobów obliczeniowych, aby otworzyć kartę).
Warunki, w których może zmienić się numer wersji lub rewizji, wymieniono w poniższej tabeli.
| Major version | Minor version | Revision version |
|---|---|---|
| Sample changes | Warmup / cool-down cycles | QPU software updates |
| Major changes to the control electronics | Swapping out some electronics, if the replacement appreciably affects operation | Manual calibrations to improve fidelities |
| Moving the QPU to a new location, if significant behavior changes result | Dropping a gate for some duration of time due to calibration issues, and corrections cannot readily be done in software | Small electronics changes that don't affect operation |
| Changing the direction of a CNOT gate |
Obsługiwane instrukcje
Każda rodzina procesorów natywnie obsługuje ograniczony zestaw instrukcji. Zestaw ten obejmuje bramki jednokubitowe i dwukubitowe, a także operacje nieunitarne, takie jak pomiar i reset. Każda bramka w obwodzie musi zostać przetranslowana (przez transpiler) na elementy obsługiwanego zestawu instrukcji QPU przed uruchomieniem na QPU.
Obsługiwane zestawy instrukcji QPU można wyświetlić za pomocą Qiskit. Strona zasobów obliczeniowych IBM Quantum Platform wyświetla tylko obsługiwane bramki unitarne (bramki bazowe) dla QPU.
- Find supported instructions with Qiskit
- Find basis gates on IBM Quantum Platform
Przejdź do strony Zasoby obliczeniowe, aby wyświetlić tabelę wszystkich QPU, a następnie kliknij nazwę dowolnego QPU, aby otworzyć jego szczegółową kartę informacyjną. Bramki bazowe dla danego QPU są wymienione w sekcji Szczegóły.
Tabela obsługiwanych instrukcji
| Operation category | Name |
|---|---|
| Single-qubit gates | RZ, SX, X, ID, delay |
| Two-qubit gates | CZ, ECR |
| Fractional gates | RX (single-qubit), RZZ (two-qubit) |
| Non-unitary instructions | measure, reset, measure_*, delay |
| Control flow | if_else (classical feedforward) |
from qiskit_ibm_runtime import QiskitRuntimeService
service = QiskitRuntimeService()
backend = service.backend("ibm_kingston")
print(f"Backend: {backend.name}")
print(f" Processor type: {backend.processor_type}")
print(f" Supported instructions: {backend.supported_instructions}")
Backend: ibm_kingston
Processor type: {'family': 'Heron', 'revision': '2'}
Supported instructions: ['cz', 'id', 'delay', 'measure', 'measure_2', 'reset', 'rz', 'sx', 'x', 'if_else', 'store']
Dynamiczne informacje o backendzie
Backendy mają również właściwości zmieniające się po każdej kalibracji, takie jak czas życia kubitu i współczynniki błędów operacji. Właściwości backendu są aktualizowane po zakończeniu sekwencji kalibracyjnej. Właściwości te mogą być używane podczas optymalizacji obwodów kwantowych lub do konstruowania modeli szumów dla klasycznego symulatora. Więcej informacji zawiera przewodnik Zadania kalibracyjne.
W IBM Quantum Platform można pobrać dane kalibracyjne jako plik CSV. Kliknij QPU na stronie Zasobów obliczeniowych, aby wyświetlić szczegółową kartę informacyjną, a następnie kliknij ikonę pobierania w prawym górnym rogu sekcji Dane kalibracyjne.
Możesz pobrać historyczne dane właściwości backendu w Qiskit za pomocą poniższego kodu:
backend.properties(datetime=<datetime>)
Właściwości kubitów
Przejdź do listy właściwości kubitów
backend.properties().qubit_property() zwraca informacje o fizycznych atrybutach kubitów. Zawiera słownik różnych właściwości kubitu, każda sparowana z jej wartością i znacznikiem czasu ostatniej kalibracji.
Poniższe przykłady kodu pokazują, jak wyświetlić wszystkie właściwości lub pobrać określone właściwości konkretnego kubitu.
Wyświetlanie właściwości kubitów
T1 (Relaxation time)
Czas oznacza średni czas, przez jaki kubit pozostaje w stanie wzbudzonym , zanim ulegnie relaksacji energetycznej do stanu podstawowego . Ten parametr służy do charakteryzowania zachowania relaksacji energetycznej kubitu i jest wyrażany w jednostkach sekund (s).
| Widok za pomocą Qiskit | backend.properties().t1(<qubit>) |
|---|---|
| Widok na IBM Quantum Platform | Sekcja danych kalibracyjnych: menu rozwijane kubitów; znajdź wartość mediana w sekcji Szczegóły |
T2 (Czas defazowania)
Czas oznacza skalę czasową, w jakiej kubit zachowuje spójność fazową superpozycji między stanami i . Uwzględnia zarówno relaksację energetyczną, jak i procesy czystej defazacji, dając wgląd w właściwości koherencji kubitu. jest podawany na podstawie sekwencji echa Hahna.
| View with Qiskit | backend.properties().t2(<qubit>) |
|---|---|
| View on IBM Quantum Platform | Calibration data section, qubit dropdown menu; find the median value in the Details section |
# fundamental physical properties of qubit 1
backend = service.backend("ibm_fez")
backend.qubit_properties(1)
QubitProperties(t1=0.00022010760855770256, t2=0.0002363339150114578, frequency=None)
# Retrieve qubit properties
qubit_index = 126 # Replace with your qubit index
qubit_props = backend.properties().qubit_property(qubit_index)
# Access specific properties
t1 = qubit_props.get("T1", (None,))[0]
t2 = qubit_props.get("T2", (None,))[0]
readout_error = qubit_props.get("readout_error", (None,))[0]
prob_meas0_prep1 = qubit_props.get("prob_meas0_prep1", (None,))[0]
prob_meas1_prep0 = qubit_props.get("prob_meas1_prep0", (None,))[0]
readout_length = qubit_props.get("readout_length", (None,))[0]
print(f"Qubit {qubit_index} Properties:")
print(f" T1: {t1} seconds")
print(f" T2: {t2} seconds")
print(f" Readout Error: {readout_error}")
print(f" P(0 | 1): {prob_meas0_prep1}")
print(f" P(1 | 0): {prob_meas1_prep0}")
print(f" Readout Length: {readout_length} seconds")
Qubit 126 Properties:
T1: 0.0001255383150343146 seconds
T2: 8.665416697592209e-05 seconds
Readout Error: 0.053466796875
P(0 | 1): 0.087158203125
P(1 | 0): 0.019775390625
Readout Length: 1.66e-06 seconds
Właściwości instrukcji
Przejdź do listy właściwości instrukcji
Atrybut backend.target jest obiektem qiskit.transpiler.Target: obiektem zawierającym wszystkie informacje potrzebne do transpilacji obwodu dla danego backendu. Obejmuje to błędy i czasy trwania instrukcji. Na przykład poniższa komórka pobiera właściwości bramki cz działającej między kubitami 1 i 0.
Poniższa komórka pokazuje właściwości operacji pomiaru (w tym błąd odczytu) na kubicie 0.
Wyświetlanie właściwości instrukcji
prob-meas0-prep1
Ten parametr wskazuje prawdopodobieństwo zmierzenia kubitu w stanie gdy miał być przygotowany w stanie , oznaczane jako . Odzwierciedla błędy przygotowania stanu i pomiaru (SPAM), szczególnie błędy pomiarowe w kubitach nadprzewodzących.
| View with Qiskit | backend.properties().qubit_property(<qubit>, 'prob_meas0_prep1') |
|---|---|
| View on IBM Quantum Platform | Sekcja danych kalibracji: menu rozwijane Qubit |
prob-meas1-prep0
Podobnie, ten parametr reprezentuje prawdopodobieństwo zmierzenia kubitu w stanie gdy miał być przygotowany w stanie , oznaczane jako . Podobnie jak prob_meas0_prep1, odzwierciedla błędy SPAM, przy czym błędy pomiarowe są dominującym czynnikiem w kubitach nadprzewodzących.
| Widok za pomocą Qiskit | backend.properties().qubit_property(<qubit>, 'prob_meas0_prep0') |
|---|---|
| Widok na IBM Quantum Platform | Sekcja danych kalibracyjnych: menu rozwijane kubitów |
Błąd 2Q (Heron i Nighthawk: CZ, Eagle: ECR)
Błąd dwukubitowy na krawędź z tej samej partii pomiarów użytej do obliczenia błędu mediany 2Q. Błąd 2Q (najlepszy) oznacza najniższy błąd dwukubitowy na dowolnej krawędzi urządzenia, również z tej partii pomiarów.
| Widok za pomocą Qiskit | backend.target['<instruction>'][<qubit 1>, <qubit 2>] |
|---|---|
| Widok na IBM Quantum Platform | Sekcja kalibracji: umieść kursor nad połączeniem kubitów w widoku Mapa lub znajdź wartość w widoku Tabela pod kolumną błędu CZ (Heron i Nighthawk) lub błędu ECR (Eagle); znajdź wartość dla błędu 2Q (najlepiej) w sekcji Szczegóły |
Mediana błędu 2Q (Heron: CZ, Eagle: ECR)
Średnia wierność bramki operacji dwukubitowej wyznaczona z randomizowanego benchmarkingu. Mierzona w „izolacji": partie z minimalnym odstępem dwóch kubitów pomiędzy krawędziami. Randomizowany benchmarking używa naprzemiennych warstw jednokubitowych Cliffordów i bramek dwukubitowych, a zatem końcowa wartość błędu 2Q uwzględnia błąd warstwy jednokubitowych Cliffordów.
| Oblicz za pomocą Qiskit | Postępuj zgodnie z przykładem w tym notatniku Qiskit Community GitHub |
|---|---|
| Widok na IBM Quantum Platform | Sekcja Szczegóły; również znajdź dane dla każdej krawędzi w sekcji Dane kalibracyjne |
Błąd 2Q (warstwowy)
Średni błąd na bramkę warstwową (EPLG) w łańcuchu 100 kubitów. Średni EPLG mierzy średni błąd bramki w warstwowym łańcuchu kubitów (=100 w tym przypadku). Jest wyprowadzany z podobnej wielkości znanej jako wierność warstwy (LF), gdzie EPLG = 4/5(1-LF), a wierność warstwy to wierność procesu warstwowego łańcucha kubitów. Szczegóły znajdziesz w artykule Benchmarking quantum processor performance at scale. Zwróć uwagę, że w artykule EPLG jest zdefiniowany dla błędu procesu, ale dla spójności z indywidualnie raportowanymi błędami bramek jest tutaj podawany jako średni błąd bramki, stąd współczynnik 4/5.
Na IBM Quantum Platform szczegółowa karta informacyjna każdego QPU zawiera sekcję Two-qubit gate error (layered), która przedstawia rozszerzony widok najniższego two-qubit gate error (layered) mierzonego jako funkcja liczby kubitów w łańcuchu. Końcowa wartość, przy długości łańcucha 100, jest wartością prezentowaną w sekcji Details. W praktyce mierzonych jest sześć łańcuchów 100-kubitowych (wstępnie wybranych na podstawie oczekiwanej optymalnej wydajności), a wartość raportowana dla liczby kubitów N to najniższy błąd znaleziony w podłańcuchu o długości N przeszukiwanym spośród sześciu łańcuchów 100-kubitowych.
| Oblicz za pomocą Qiskit | Postępuj zgodnie z przykładem w tym notatniku Qiskit Community GitHub |
|---|---|
| Widok na IBM Quantum Platform | Sekcja Szczegóły i rozszerzony widok w sekcji Two-qubit gate error (layered) |
Błąd RZZ (Heron)
Błąd bramki RZZ uśredniony po kątach RZZ przy użyciu wariantu losowego testowania porównawczego (randomized benchmarking) dla dowolnych operacji unitarnych.
| Widok za pomocą Qiskit | Ważne: Upewnij się, że ustawiłeś use_fractional_gates=True podczas ładowania backendu, a następnie możesz użyć backend.target['rzz'][<qubit 1>, <qubit 2>] |
|---|---|
| Widok na IBM Quantum Platform | Sekcja kalibracji: Wybierz RZZ w menu rozwijane Połączenie i umieść kursor nad połączeniem kubitów w widoku Mapa. Możesz również wybrać błąd RZZ w menu rozwijane Wyjście wykresu w widoku Wykres lub znaleźć wartość w widoku Tabela pod kolumną błędu RZZ |
Błąd ID / błąd √x (sx) / błąd Pauli-X / błąd RX
Błąd w jednokubitowych bramkach dyskretnych o skończonym czasie trwania, mierzony z randomizowanego benchmarkingu. Sekwencja randomizowanego benchmarkingu obejmuje bramki SX, ID i X, przy założeniu, że ich błędy są równe. Bramka ID jest opóźnieniem o czasie trwania równym bramkom √X i X. Bramka RX ma również taki sam czas trwania jak bramki √X i X, ze zmienną amplitudą — jest zatem raportowana jako posiadająca ten sam błąd co te bramki.
| Widok za pomocą Qiskit | backend.target['<instruction>'][<qubit 1>, ] |
|---|---|
| Widok na IBM Quantum Platform | Sekcja kalibracji: menu rozwijane Kubit |
Błąd SX (mediana)
Średnia wierność bramki bramki √X (SX) wyznaczona z randomizowanego benchmarkingu, mierzona jednocześnie na wszystkich kubitach. Sekwencja randomizowanego benchmarkingu obejmuje bramki SX, ID i X, przy założeniu, że ich błędy są równe.
| Widok na IBM Quantum Platform | Sekcja Szczegóły |
|---|
Błąd rotacji osi Z (RZ)
Błąd w wirtualnej bramce RZ. Raportowany jako wszystkie 0, ponieważ są wykonywane w oprogramowaniu.
| Widok za pomocą Qiskit | backend.target['<instruction>'][<qubit 1>, ] |
|---|---|
| Widok na IBM Quantum Platform | Sekcja kalibracji: menu rozwijane Połączenie |
Błąd odczytu
Błąd odczytu kwantyfikuje średnie prawdopodobieństwo nieprawidłowego zmierzenia stanu kubitu. Jest zazwyczaj obliczany jako średnia wartości prob_meas0_prep1 i prob_meas1_prep0, stanowiąc pojedynczą miarę wierności pomiaru.
| Widok za pomocą Qiskit | backend.properties().readout_error(<qubit>) |
|---|---|
| Widok na IBM Quantum Platform | Sekcja danych kalibracyjnych: menu rozwijane Kubit |
Błąd odczytu (mediana)
Wierność operacji odczytu. Błąd odczytu jest mierzony przez przygotowanie kubitu w stanie () i pomiar prawdopodobieństwa uzyskania wyniku w stanie (). Raportowana wartość jest średnią tych dwóch błędów. Mediana jest wyznaczana dla wszystkich kubitów.
| Widok na IBM Quantum Platform | Sekcja danych kalibracyjnych: sekcja Szczegóły |
|---|
Długość bramki jednokubitowej
Czas trwania jednokubitowej operacji bramki. Należy pamiętać, że wartości wyświetlane na IBM Quantum Platform są w nanosekundach. Wartości zwracane przez Qiskit są w sekundach.
| Widok za pomocą Qiskit | backend.target['<instruction>'][<qubit 1>, ].duration |
|---|---|
| Widok na IBM Quantum Platform | Sekcja kalibracji: menu rozwijane Kubit |
Długość bramki (bramki 2Q)
Czas trwania operacji bramki dwukubitowej. Zauważ, że wartości pokazane na IBM Quantum Platform są w nanosekundach. Wartości zwracane w Qiskit są w sekundach.
| View with Qiskit | backend.target['<instruction>'][<qubit 1>, <qubit 2> ].duration |
|---|---|
| View on IBM Quantum Platform | Sekcja Calibration: menu rozwijane Qubit |
Readout length
Długość odczytu określa czas trwania operacji odczytu kubitu. Mierzy czas od inicjacji impulsu pomiarowego do zakończenia digitalizacji sygnału, po której system jest gotowy do następnej operacji. Zrozumienie tego parametru jest kluczowe dla optymalizacji wykonania obwodu, szczególnie przy uwzględnieniu pomiarów śródukładowych.
| Wyświetl z Qiskit |
|
|---|---|
| Wyświetl na IBM Quantum Platform | Sekcja danych kalibracyjnych: menu rozwijane Qubit |
Błąd inicjalizacji
Błąd inicjalizacji określa procent populacji w stanie po domyślnym opóźnieniu powtórzenia i procedurze inicjalizacji kubitu, gdy poprzedni eksperyment przygotował kubit w stanie . Zauważ, że jest to subtelnie inne niż wielkość prob_meas1_prep0, która mierzy procent pomiarów przypisanych do stanu . Ta ostatnia jest miarą zarówno błędu inicjalizacji, jak i procedury rozróżniania między stanami i . W granicy idealnego pomiaru obie wielkości są takie same.
| Wyświetl za pomocą Qiskit | backend.properties().qubit_property(<qubit>, 'init_error') |
|---|---|
| Wyświetl na IBM Quantum Platform | Sekcja danych kalibracyjnych: menu rozwijane Kubit |
backend.target["cz"][(1, 0)]
InstructionProperties(duration=6.8e-08, error=0.0063762001148502945)
backend.target["measure"][(0,)]
InstructionProperties(duration=1.66e-06, error=0.0126953125)
Dodatkowe właściwości
Maksymalna liczba obwodów na sekundę (MCPS)
Maksymalna liczba obwodów na sekundę (MCPS) obejmuje pomiar, reset i reinicjalizację obwodu z bramką Hadamarda i pojedynczym pomiarem.
| View with Qiskit | mcps = backend.configuration().mcps |
|---|---|
| View on IBM Quantum Platform | Sekcja Details |
CLOPS (or CLOPS_h)
Operacje warstwy obwodu na sekundę (CLOPS) to miara określająca, ile warstw obwodu 100×100 (obwodu uwzględniającego sprzęt) QPU może wykonać w jednostce czasu.
| Obliczaj z Qiskit | Znajdź kod CLOPS w GitHub społeczności Qiskit |
|---|---|
| Wyświetl na IBM Quantum Platform | Sekcja Szczegóły |
Status
Za pomocą BackendStatus można znaleźć status QPU (na przykład Active, Paused, Offline) oraz liczbę oczekujących zadań.
| Wyświetl z Qiskit | print(backend.status().status_msg), print(backend.status().pending_jobs) |
|---|---|
| Wyświetl na IBM Quantum Platform | Sekcja Szczegóły |
Diagram topologii lub mapa sprzężeń
Diagram wskazujący pary kubitów obsługujących między nimi dwukubitowe operacje bramek. Znany jest również jako mapa sprzężeń lub łączność. Kubity są reprezentowane jako kółka, a obsługiwane dwukubitowe operacje bramek są wyświetlane jako linie łączące kubity.
| View with Qiskit | from qiskit.visualization import plot_gate_map then plot_gate_map(backend) |
|---|---|
| View on IBM Quantum Platform | Calibration data section; Click on Expand for a larger view |
Jeśli benchmarking kubitu lub krawędzi nie powiedzie się przez kilka dni z rzędu — niezależnie od przyczyny (niska jakość danych lub inne czynniki wewnętrzne) — raportowana wartość błędu jest uznawana za nieaktualną i zostanie zgłoszona jako 1. Nie oznacza to, że kubit lub krawędź są koniecznie niesprawne ani że błąd wynosi 1; błąd jest wówczas uznawany za nieokreślony i należy zachować ostrożność podczas operowania tym kubitem lub bramką.
Następne kroki
- Dowiedz się, jak budować modele szumów do zaszumionej symulacji klasycznej.
- Zapoznaj się z tematem Etapy transpilatora, aby dowiedzieć się, jak transpilator wykorzystuje właściwości backendu do optymalizacji obwodów.
- Przejrzyj dokumentację QiskitRuntime backend API.