Q-CTRL Performance Management – API-Referenz
Qiskit Functions — von Partnerorganisationen entwickelte vorgefertigte Tools — abstrahieren Teile des Softwareentwicklungs-Workflows, um die Erforschung von Algorithmen und die Anwendungsentwicklung im großen Maßstab zu vereinfachen und zu beschleunigen. Klicken Sie hier, um die Anleitung zu dieser Qiskit-Funktion anzuzeigen.
Leitfaden zu den Qiskit-Funktionen für das Leistungsmanagement
Im Gegensatz zu den nativen Primitiven von „ IBM Quantum “, die nur Schaltkreise akzeptieren, die in der Befehlssatzarchitektur (ISA) des Ziel-Backends geschrieben sind, akzeptiert „Fire Opal Performance Management“ abstrakte Schaltkreise. Um optimale Ergebnisse zu erzielen, sollten Sie Schaltkreise nicht transpilieren, bevor Sie sie über die Funktion „Performance Management“ übermitteln.
Eingaben für den Kostenvoranschlag
QctrlEstimatorPubLike Komponenten (in Anlehnung an die Definition aus dem „Quantum Compute PUB “ ):
- Eine einzelne Rennstrecke, definiert als
QuantumCircuitoder im Format OpenQASM, 2.0 oder 3.0. - Eine oder mehrere Observablen, die die zu schätzenden Erwartungswerte angeben, in einem der in der Liste „Unterstützte Formate für Observablen“ aufgeführten Formate.
- (Optional) Eine Sammlung von Parameterwerten, an die die Schaltung gebunden werden soll; diese unterliegen denselben Regeln für die Array-Übertragung wie die
QiskitRuntimePrimitive. - (Optional) Eine Zielgenauigkeit für die zu schätzenden Erwartungswerte.
- (Optional) Eine reelle Zahl, die die Genauigkeit angibt, oder ein Wörterbuch mit Ausführungsoptionen, das die Anzahl der Durchläufe enthält. Beispiel:
{"shots": <int>}.
Unterstützte Formate für Observables:
- Jedes der folgenden
ObservablesArrayLikeFormate, wie z. B.Pauli,SparsePauliOp,PauliList, oderstr - Eine Pauli-Kette:
"XY" - Ein Wörterbuch – Pauli-Strings mit Koeffizienten:
{"XY": 0.5, "YZ": 0.3} - Eine Liste von Pauli-Strings:
["XY", "YZ", "ZX"] - Eine Liste von Pauli-Strings mit Koeffizienten:
[("XY", 0.5), ("YZ", 0.3)] - Eine verschachtelte Liste von Pauli-Strings:
[["XY", "YZ"], ["ZX", "XX"]] - Eine verschachtelte Liste von Pauli-Strings mit Koeffizienten:
[[("XY", 0.1), ("YZ", 0.2)], [("ZX", 0.3), ("XX", 0.4)]]
pubs
Typ: `QctrlEstimatorPubLike` or `list[QctrlEstimatorPubLike]`
Standardwert: N/A
Ein oder mehrere Tupel, die die unter EstimatorPubLike „Komponenten“ aufgeführten Eingaben enthalten
- Erforderlich: Ja
- Beispiel:
(circuit, observables, parameter_values)
backend_name
Typ: `str`
Standardwert: The least busy backend that your instance has access to
Der Name des Backends
- Erforderlich: Nein
- Beispiel:
"ibm_fez"
Optionen
Typ: `dict`
Standardwert: See Options section for more details
Die Eingabeparameter für diese Funktion werden als verschachteltes Wörterbuch angegeben. Hier finden Sie die vollständige Liste der Optionen und ihrer Standardwerte.
- Erforderlich: Nein
- Beispiel:
{"default_shots": 2048}
Optionsliste
session_id
Typ: `str`
Eine vorhandene Sitzungs-ID des „ IBM Quantum Compute Service“
- Beispiel:
"cw4r3je6f0t010870y3g"
default_shots
Typ: `int`
Standardwert: `2048`
Die Anzahl der Schüsse, die für jede Runde zu verwenden sind
default_precision
Typ: `float`
Die angestrebte Genauigkeit der zu schätzenden Erwartungswerte für jede Schaltung
- Beispiel:
0.015625
job_tags
Typ: `list[str]`
Standardwert: `[]`
Eine Liste von Job-Tags
Ausgaben des Schätzers
Typ: `PrimitiveResult`
die der Liste der PrimitiveResult Eingabe-PUBs entsprechende
- Beispiel:
PubResult(data=DataBin(evs=[0.1234], stds=[0.1]))
Sampler-Eingänge
QctrlSamplerPubLike Komponenten (in Anlehnung an die Definition aus dem „Quantum Compute PUB “ ):
- Eine einzelne Rennstrecke, definiert als
QuantumCircuitoder im Format OpenQASM, 2.0 oder 3.0. - (Optional) Eine Sammlung von Parameterwerten, an die die Schaltung angepasst werden soll.
- (Optional) Eine Ganzzahl, die die Anzahl der Aufnahmen angibt, oder ein Wörterbuch mit Laufzeitoptionen, das die Anzahl der Aufnahmen enthält. Zum Beispiel:
(circ, None, 123)oder(circ, None, {"shots": 123}).
pubs
Typ: `QctrlSamplerPubLike` or `list[QctrlSamplerPubLike]`
Ein oder mehrere Tupel, die die unter SamplerPubLike „Komponenten“ aufgeführten Eingaben enthalten
- Erforderlich: Ja
- Beispiel:
(circuit, parameter_values)
backend_name
Typ: `str`
Standardwert: The least busy backend that your instance has access to
Der Name des Backends
- Erforderlich: Nein
- Beispiel:
"ibm_fez"
Optionen
Typ: `dict`
Standardwert: See the Options section for details
Die Eingabeparameter für diese Funktion werden als verschachteltes Wörterbuch angegeben. Hier finden Sie die vollständige Liste der Optionen und ihrer Standardwerte.
- Erforderlich: Nein
- Beispiel:
{"default_shots": 2048}
Optionsliste
session_id
Typ: `str`
Eine bereits vorhandene Quantum Compute-Sitzungs-ID
- Beispiel:
"cw4r3je6f0t010870y3g"
default_shots
Typ: `int`
Standardwert: `2048`
Die Anzahl der Schüsse, die für jede Runde zu verwenden sind
job_tags
Typ: `list[str]`
Standardwert: `[]`
Die Liste der gewünschten Job-Tags
Sampler-Ausgänge
Typ: `PrimitiveResult`
die der Liste der PrimitiveResult Eingabe-PUBs entsprechende
- Beispiel:
PrimitiveResult([PubResult(data=DataBin(c=BitArray(<shape=(), num_shots=2048, num_bits=35>)), metadata={'shots': 2048})], metadata={provider_job_ids: 1234678})