Skip to main content
IBM Quantum Platform

FakeSydneyV2

class FakeSydneyV2

GitHub

Basen: FakeBackendV2

Ein simuliertes 27-Qubit-Backend.

Ein auf BackendV2 basierendes Backend initialisieren

Parameter

  • Anbieter – Ein optionaler Rückverweis auf das Anbieterobjekt, aus dem das Backend stammt
  • name – Ein optionaler Name für das Backend
  • Beschreibung – Eine optionale Beschreibung des Backends
  • online_date – Ein optionales Datums- und Zeitangabe, zu der das Backend in Betrieb genommen wurde
  • backend_version – Eine optionale Zeichenfolge zur Angabe der Backend-Version. Dies unterscheidet sich vom Attribut version , da für die abstrakte Backend Schnittstellenversion des Objekts version steht, während der Versionsverwaltung des Backends selbst backend_version dient.
  • Felder – kwargs für die Werte, mit denen die Standardoptionen überschrieben werden sollen.

Erhöhungen

AttributeError – Wenn ein Feld angegeben wird, das außerhalb der Optionen des Backends liegt


Attribute

backend_name

Typ: str

Standardwert: 'fake_sydney'

Name des Backends.

conf_filename

Typ: str

Standardwert: 'conf_sydney.json'

Dateiname für die Backend-Konfiguration.

coupling_map

Das Objekt CouplingMap zurückgeben

dirname

Typ: str

Standardwert: '/home/runner/work/qiskit-ibm-runtime/qiskit-ibm-runtime/qiskit_ibm_runtime/fake_provider/backends/sydney'

Verzeichnis für die eigentlichen Backend-Snapshots.

dt

Gibt die Systemzeitauflösung der Eingangssignale zurück

Dies muss implementiert werden, wenn das Backend die Pulse-Planung unterstützt.

Rückgabe

Der Zeitschritt des Eingangssignals in Sekunden. Wenn das Backend nicht definiert ist dt, None wird zurückgegeben.

dtm

Gibt die Zeitauflösung der Ausgangssignale des Systems zurück.

Rückgabe

Der Zeitschritt des Ausgangssignals in Sekunden.

instruction_durations

Gib das Objekt InstructionDurations zurück.

instructions

Eine Liste von Befehlstupeln im Backend des Formulars (instruction, (qubits))

max_circuits

Gibt die maximale Anzahl von Durchläufen zurück, die in einem einzelnen Auftrag ausgeführt werden können.

Früher lieferte diese Eigenschaft den Wert „max_experiments“ aus der Backend-Konfiguration zurück, doch dieser Wert spiegelt die Grenzen der Backend-Schaltung nicht mehr genau wider. Es werden neue Felder hinzugefügt, um neue Grenzwerte anzugeben.

meas_map

Gibt die Gruppierung der multiplexierten Messwerte zurück

Dies muss implementiert werden, wenn das Backend die Pulse-Planung unterstützt.

Rückgabe

Die Gruppierung von Messungen, die multiplexiert sind

Erhöhungen

NotImplementedError – wenn das Backend die Abfrage der Messwertzuordnung nicht unterstützt

num_qubits

Gibt die Anzahl der Qubits zurück, über die das Backend verfügt.

operation_names

Eine Liste der Befehlsnamen, die das Backend unterstützt.

operations

Eine Liste der Instanzen Instruction , die das Backend unterstützt.

options

Die Optionen für das Backend zurückgeben

Die Optionen eines Backends sind die dynamischen Parameter, die festlegen, wie das Backend verwendet wird. Diese dienen zur Steuerung der Methode run() .

physical_qubits

Gibt die Anzahl der physikalischen Qubits zurück, über die das Backend verfügt.

Gibt die Anzahl der physikalischen Qubits des Backends zurück (programmierbare Qubits, Reset-Qubits und Koppler zusammen).

props_filename

Typ: str

Standardwert: 'props_sydney.json'

Dateiname für die Backend-Eigenschaften.

provider

Gibt den Backend-Anbieter zurück.

Rückgabe

der für das Backend zuständige Anbieter.

Rückgabetyp

Anbieter

target

Ein Objekt qiskit.transpiler.Target für das Backend.

Rückgabetyp

Ziel

version

Standardwert: 2

name

Name des Backends.

description

Optionale, für Menschen lesbare Beschreibung.

online_date

Datum, an dem das Backend in Betrieb genommen wurde.

backend_version

Version des bereitgestellten Backends. Dies ist nicht dasselbe wie BackendV2.version, bei dem es sich um die Version der abstrakten Backend Schnittstelle handelt.


Methoden

check_faulty

check_faulty(circuit)

GitHub

Überprüfen Sie, ob in der Eingangsschaltung fehlerhafte Qubits oder Flanken verwendet werden.

Parameter

circuit (QuantumCircuit) – Zu prüfende Schaltung.

Erhöhungen

ValueError – Wenn eine Anweisung gefunden wird, die auf ein fehlerhaftes Qubit oder eine fehlerhafte Kante angewendet wird.

Rückgabetyp

Keine

configuration

configuration()

GitHub

Gibt die Backend-Konfiguration zurück.

Rückgabetyp

QasmBackendConfiguration

properties

properties(refresh=False)

GitHub

Gibt die Backend-Eigenschaften zurück.

Parameter

refresh (bool) – Falls True, rufe die Backend-Eigenschaften erneut aus der lokalen Datei ab.

Rückgabe

Die Backend-Eigenschaften.

Rückgabetyp

BackendProperties

qubit_properties

qubit_properties(qubit)

Gibt die „ QubitProperties “ für ein bestimmtes Qubit zurück.

Wenn keine definiert sind oder das Backend die Abfrage dieser Details nicht unterstützt, muss diese Methode nicht implementiert werden.

Parameter

qubit (int | list[int]) – Das Qubit, für das das Objekt QubitProperties abgerufen werden soll. Dies kann eine einzelne Ganzzahl für 1 Qubit oder eine Liste von Qubits sein; es wird eine Liste von Objekten QubitProperties in derselben Reihenfolge zurückgegeben

Rückgabe

Das Objekt QubitProperties für das angegebene Qubit. Wird eine Liste von Qubits übergeben, wird eine Liste zurückgegeben. Wenn für ein Qubit Eigenschaften fehlen, kann dies None.

Erhöhungen

NotImplementedError – wenn das Backend die Abfrage der Qubit-Eigenschaften nicht unterstützt

Rückgabetyp

QubitProperties | list[ QubitProperties ]

refresh

refresh(service, use_fractional_gates=False, persist=True)

GitHub

Aktualisiere die Datendateien anhand der entsprechenden Originaldaten.

Diese Methode ruft die neuesten Backend-Datendateien von ihrem tatsächlichen Gegenstück ab und überschreibt standardmäßig (persist=True) die entsprechenden Dateien in der lokalen Installation:

  • ../fake_provider/backends/{backend_name}/conf_{backend_name}.json
  • ../fake_provider/backends/{backend_name}/props_{backend_name}.json

Die neuen Datendateien bleiben über Sitzungen hinweg erhalten, sodass die Dateien auf dem neuesten Stand bleiben, sofern sie nicht lokal manuell zurückgesetzt werden oder wenn das Programm aktualisiert oder neu installiert wird qiskit-ibm-runtime .

Das Überschreiben der installierten Datendateien schlägt jedoch fehl, wenn das Paket an einem schreibgeschützten Speicherort (z. B. in einem systemweiten site-packages Verzeichnis) installiert wird. In diesem Fall oder immer dann, wenn eine Änderung des installierten Pakets unerwünscht ist, übergeben Sie, um persist=False die aktualisierten Daten stattdessen in ein temporäres Verzeichnis zu schreiben. Das Backend wird zwar weiterhin für die aktuelle Sitzung aktualisiert, die Änderungen werden jedoch nicht auf der Festplatte gespeichert und gehen verloren, sobald das Backend von der Garbage Collection bereinigt wird oder der Prozess beendet wird.

Parameter

  • service (QiskitRuntimeService) – Eine Instanz QiskitRuntimeService
  • use_fractional_gates (bool) – Setzen Sie diesen Wert auf „True“, damit die Backends Bruchteilsgates einbeziehen können.
  • persist (bool) – Wenn ( True Standard), überschreiben die aktualisierten Datendateien die im installierten Paket enthaltenen Kopien, sodass die Aktualisierung über mehrere Sitzungen hinweg erhalten bleibt. In diesem Fall werden die Daten stattdessen in ein temporäres Verzeichnis geschrieben False, wodurch der Vorgang auch dann erfolgreich abgeschlossen refresh() werden kann, wenn das Paket an einem schreibgeschützten Speicherort installiert ist – allerdings geht dies auf Kosten der Persistenz der Aktualisierung über verschiedene Sitzungen hinweg.

Erhöhungen

  • ValueError – wenn es sich bei dem angegebenen Dienst um eine Instanz handelt, die non-QiskitRuntimeService ist.
  • Ausnahme – Wenn das eigentliche Ziel nicht existiert oder nicht zugänglich ist

Rückgabetyp

Keine

run

run(run_input, **options)

GitHub

Führen Sie das Programm mithilfe eines Simulators auf dem simulierten Backend aus.

Diese Methode führt Schaltkreisaufgaben (ein einzelnes „ QuantumCircuit “-Objekt oder eine Liste solcher Objekte) mithilfe des „ BasicSimulator “- oder „Aer“-Simulators aus und gibt ein Objekt Job zurück.

Wenn qiskit-aer installiert ist, werden die Jobs mit dem „ AerSimulator “ unter Verwendung des Rauschmodells des simulierten Backends ausgeführt. Andernfalls werden die Jobs mit dem „ BasicSimulator “ ohne Rauschen ausgeführt.

Derzeit wird die „Noisy“-Simulation eines Puls-Jobs in FakeBackendV2 noch nicht unterstützt.

Parameter

  • run_input (QuantumCircuit | list[QuantumCircuit]) – Ein Element oder eine Liste von QuantumCircuit
  • options (dict) – Alle kwarg-Optionen, die zur Ausführung der Konfiguration an das Backend übergeben werden sollen. Wenn ein Schlüssel auch im Attribut bzw. Objekt „options“ vorhanden ist, wird davon ausgegangen, dass der dort angegebene Wert anstelle des im Objekt „options“ festgelegten Werts verwendet wird.

Rückgabe

Das Job-Objekt für den Lauf

Rückgabetyp

Job

set_options

set_options(**fields)

Legen Sie die Optionsfelder für das Backend fest

Diese Methode dient dazu, die Optionen eines Backends zu aktualisieren. Wenn Sie eine der Optionen vor der Ausführung ändern müssen, übergeben Sie einfach das Schlüsselwortargument mit dem neuen Wert für die Option.

Parameter

Felder – Die Felder, in denen die Optionen aktualisiert werden sollen

Erhöhungen

AttributeError – Wenn das übergebene Feld nicht zu den Optionen gehört

status

status()

GitHub

Gibt den Backend-Status zurück.

Rückgabe

Der Status des Backends.

Rückgabetyp

BackendStatus

War diese Seite hilfreich?
Melden Sie auf GitHub einen Fehler, einen Tippfehler oder fordern Sie Inhalte an.