Sari la conținutul principal
Acest proiect este în versiune beta. Ai găsit o eroare? Deschide un issue pe GitHub. Ai o întrebare sau o idee? Întreabă în Discussions — ne-ar plăcea să aflăm părerea ta!
Cum este calitatea traducerii pe această pagină?

Configurează Qiskit SDK local

După ce Qiskit SDK este instalat și rulează, există câțiva pași opționali pe care îi poți face pentru a schimba comportamentul implicit al Qiskit.

Fișierul de configurare al utilizatorului​

Locul principal pentru configurarea locală a Qiskit este fișierul de configurare al utilizatorului. Acesta este un fișier în format .ini care poate fi folosit pentru a modifica setările implicite ale Qiskit.

Exemplu:

[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 = 14

În mod implicit, acest fișier se află la ~/.qiskit/settings.conf, dar calea poate fi suprascrisă cu variabila de mediu QISKIT_SETTINGS.

Opțiuni disponibile​

  • circuit_drawer: Modifică sistemul implicit pentru desenarea circuitului. Poate fi setat la latex, mpl, text sau latex_source. Când argumentul cheie output nu este setat explicit, se folosește acest sistem de desenare.

  • circuit_mpl_style: Foaia de stil implicită folosită pentru sistemul de ieșire mpl pentru desenarea circuitului. Valorile valide sunt default sau bw.

  • circuit_mpl_style_path: Căile în care sistemul de desenare a circuitelor caută foi de stil JSON atunci când se folosește modul de ieșire mpl.

  • state_drawer: Aceasta este folosită pentru a schimba sistemul implicit pentru metodele de desenare a vizualizării stărilor. Valorile valide sunt repr, text, latex, latex_source, qsphere, hinton sau bloch. Când argumentul cheie output nu este setat explicit pe metoda qiskit.quantum_info.DensityMatrix.draw, se folosește metoda de ieșire specificată.

  • transpile_optimization_level: Schimbă nivelul implicit de optimizare pentru qiskit.compiler.transpile. Specifică un număr întreg 0-3.

  • parallel: Dacă multiprocesarea Python este activată pentru operațiile care acceptă rularea în paralel. De exemplu, transpilarea mai multor obiecte qiskit.circuit.QuantumCircuit. Această setare poate fi suprascrisă de variabila de mediu QISKIT_PARALLEL. Specifică o valoare booleană.

  • num_processes: Numărul maxim de procese paralele de lansat pentru operațiile paralele dacă execuția paralelă este activată. Această setare poate fi suprascrisă de variabila de mediu QISKIT_NUM_PROCS. Specifică un număr întreg mai mare decât 0.

  • min_qpy_version: Încărcarea QPY va respinge fișierele cu o versiune QPY mai mică decât cea definită aici. Această opțiune poate fi folosită pentru a restricționa versiunile QPY permise atunci când sunt descoperite probleme de securitate la deserializare în versiuni QPY mai vechi, prevenind încărcarea unor payload-uri potențial malițioase.

notă

Variabile de mediu​

Setează aceste variabile de mediu pentru a modifica comportamentul implicit al Qiskit:

  • QISKIT_PARALLEL: Activează multiprocesarea Python pentru a paraleliza anumite operațiuni; de exemplu, transpilarea mai multor circuite în Qiskit. Specifică o valoare booleană.

  • QISKIT_NUM_PROCS: Numărul maxim de procese paralele de lansat pentru operațiunile paralele, dacă execuția paralelă este activată. Specifică un număr întreg mai mare decât zero.

  • RAYON_NUM_THREADS: Numărul de fire de execuție pentru operațiunile multifir din Qiskit. În mod implicit, codul multifir lansează un fir pentru fiecare CPU logic. Pentru a ajusta numărul de fire folosite de Qiskit, setează variabila la o valoare întreagă. De exemplu, setând RAYON_NUM_THREADS=4 se lansează patru fire pentru funcțiile multifir.

  • QISKIT_FORCE_THREADS: Specifică că un cod multifir ar trebui să se execute întotdeauna în mai multe fire. În mod implicit, dacă rulezi cod multifir într-o secțiune a Qiskit care rulează deja în procese paralele, Qiskit nu lansează mai multe fire, ci execută acea funcție serial. Aceasta se face pentru a evita supraîncărcarea resurselor limitate ale CPU. Totuși, dacă vrei să forțezi utilizarea mai multor fire chiar și într-un context multiproces, setează QISKIT_FORCE_THREADS=TRUE.

  • QISKIT_SABRE_ALL_THREADS: Controlează comportamentul pasului de layout și rutare din managerul de pași presetat al Qiskit. Când este setat la 1 sau TRUE, acesta folosește toate CPU-urile disponibile pentru a rula mai multe încercări aleatorii. Aceasta poate îmbunătăți calitatea rezultatelor, în special pentru sisteme cu mai mult de 20 de CPU-uri/nuclee; compromisul, totuși, este că rezultatele nu sunt reproductibile când sunt rulate pe hardware local diferit.

Pași următori​

Recomandări