Konfigurieren Sie das Qiskit SDK lokal
Nachdem das Qiskit SDK installiert und ausgeführt wurde, können Sie einige optionale Schritte durchführen, um das Standardverhalten von Qiskit zu ändern.
Benutzerkonfigurationsdatei
Der wichtigste Ort für die lokale Konfiguration von Qiskit ist die Benutzerkonfigurationsdatei. Dies ist eine Datei im.ini-Format, mit der Sie die Standardeinstellungen von Qiskit ändern können.
Beispiel:
[default]
circuit_drawer = mpl
circuit_mpl_style = default
circuit_mpl_style_path = ~:~/.qiskit
state_drawer = hinton
transpile_optimization_level = 3
parallel = False
num_processes = 15
min_qpy_version = 14Standardmäßig befindet sich diese Datei in ~/.qiskit/settings.conf , aber der Pfad kann mit der Umgebungsvariablen QISKIT_SETTINGS überschrieben werden.
Verfügbare Optionen
circuit_drawer: Ändert das Standardsystem für die Schaltkreisschublade. Sie kann auflatex,mpl,textoderlatex_sourceeingestellt werden. Wenn der Ausgang kwarg nicht ausdrücklich festgelegt ist, wird dieses Schubladensystem verwendet.circuit_mpl_style: Die Standardvorlage, die für das mpl-Ausgabesystem für die Schaltkreisschublade verwendet wird. Gültige Werte sinddefaultoderbw.circuit_mpl_style_path: Die Pfade, die die Schaltkreisschublade verwenden soll, um nach JSON-Stylesheets zu suchen, wenn der mpl-Ausgabemodus verwendet wird.state_drawer: Hier können Sie das Standardsystem für die Zeichenmethoden der Zustandsvisualisierung ändern. Gültige Werte sindrepr,text,latex,latex_source,qsphere,hinton, oderbloch. Wenn der Ausgabe-Kwarg nicht explizit in der Methode qiskit.quantum_info.DensityMatrix.draw festgelegt ist, wird die angegebene Ausgabemethode verwendet.transpile_optimization_level: Ändern Sie die Standardoptimierungsstufe für qiskit.compiler.transpile. Geben Sie eine ganze Zahl von 0-3 an.parallel: Ob Python Multiprocessing für Vorgänge, die parallel ausgeführt werden können, aktiviert ist. Zum Beispiel die Transpilation von mehreren qiskit.circuit.QuantumCircuit objekten. Diese Einstellung kann durch die UmgebungsvariableQISKIT_PARALLELaußer Kraft gesetzt werden. Geben Sie einen booleschen Wert an.num_processes: Die maximale Anzahl der parallelen Prozesse, die für parallele Operationen gestartet werden, wenn die parallele Ausführung aktiviert ist. Diese Einstellung kann durch die UmgebungsvariableQISKIT_NUM_PROCSaußer Kraft gesetzt werden. Geben Sie eine ganze Zahl größer als0an.min_qpy_version: Beim Laden von QPY-Dateien werden Dateien mit einer QPY-Version, die niedriger ist als die hier definierte, abgelehnt. Diese Option kann verwendet werden, um die zulässigen QPY-Versionen einzuschränken, wenn in älteren QPY-Versionen Sicherheitslücken bei der Deserialisierung entdeckt werden, wodurch das Laden potenziell schädlicher Payloads verhindert wird.
Note
- Die Einstellungen für den Schaltplan-Zeichner gelten für qiskit.circuit.QuantumCircuit.draw und qiskit.visualization.circuit_drawer.
- Die Methoden zum Zeichnen der Zustandsvisualisierung sind „ qiskit.quantum_info.Statevector.draw “ und „ qiskit.quantum_info.DensityMatrix.draw “.
Umgebungsvariablen
Setzen Sie diese Umgebungsvariablen, um das Standardverhalten von Qiskit zu ändern:
QISKIT_PARALLEL: Ermöglicht Python Multiprocessing zur Parallelisierung bestimmter Operationen, z. B. die Transpilierung über mehrere Schaltkreise in Qiskit. Geben Sie einen booleschen Wert an.QISKIT_NUM_PROCS: Die maximale Anzahl der parallelen Prozesse, die für parallele Operationen gestartet werden, wenn die parallele Ausführung aktiviert ist. Geben Sie eine ganze Zahl größer als Null an.RAYON_NUM_THREADS: Die Anzahl der Threads zur Ausführung von Multithreading-Operationen in Qiskit. Standardmäßig wird bei Multithreading-Code ein Thread für jede logische CPU gestartet. Um die Anzahl der von Qiskit verwendeten Threads anzupassen, setzen Sie dies auf einen ganzzahligen Wert. Wenn Sie zum Beispiel RAYON_NUM_THREADS=4 einstellen, werden bei Multithreading-Funktionen vier Threads gestartet.QISKIT_FORCE_THREADS: Gibt an, dass Multithreading-Code immer in mehreren Threads ausgeführt werden soll. Wenn Sie Multithreading-Code in einem Abschnitt von Qiskit ausführen, der bereits in parallelen Prozessen läuft, startet Qiskit standardmäßig nicht mehrere Threads, sondern führt die Funktion seriell aus. Dies geschieht, um eine mögliche Überlastung der begrenzten CPU-Ressourcen zu vermeiden. Wenn Sie jedoch die Verwendung mehrerer Threads erzwingen wollen, auch wenn Sie sich in einem Multiprozess-Kontext befinden, setzen SieQISKIT_FORCE_THREADS=TRUE.QISKIT_SABRE_ALL_THREADS: Steuert das Verhalten des Layout- und Routing-Passes im voreingestellten Pass-Manager von Qiskit. Bei der Einstellung1oderTRUEwerden alle verfügbaren CPUs für die Durchführung mehrerer Zufallsversuche verwendet. Dies kann die Qualität der Ergebnisse verbessern, insbesondere bei Systemen mit mehr als 20 CPUs/Kernen; der Nachteil ist jedoch, dass die Ergebnisse nicht reproduzierbar sind, wenn sie auf unterschiedlicher lokaler Hardware ausgeführt werden.
Nächste Schritte
Empfehlungen
- Versuchen Sie es mit einem Lernprogramm, z. B. Grovers Algorithmus.
- Führen Sie das Programm „Hello World“ aus.
- Lesen Sie die Richtlinien für die Mitarbeit, wenn Sie zum quelloffenen Qiskit SDK beitragen möchten.
War diese Seite hilfreich?
Melden Sie auf GitHub einen Fehler, einen Tippfehler oder fordern Sie Inhalte an.