Налаштування Qiskit SDK локально
Після встановлення та запуску Qiskit SDK є кілька необов'язкових кроків, які ти можеш зробити, щоб змінити типову поведінку Qiskit.
Конфігураційний файл користувача
Основне місце для локального налаштування Qiskit — конфігураційний файл користувача. Це файл у форматі .ini, який можна використовувати для зміни типових параметрів Qiskit.
Приклад:
[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
За замовчуванням цей файл знаходиться у ~/.qiskit/settings.conf, але шлях можна перевизначити за допомогою змінної середовища QISKIT_SETTINGS.
Доступні параметри
circuit_drawer: Змінює типову систему для відображення Circuit. Можна встановити значенняlatex,mpl,textабоlatex_source. Ця система відображення використовується, коли kwarg output не задано явно.circuit_mpl_style: Типова таблиця стилів, що використовується системою виводу mpl для відображення Circuit. Допустимі значення:defaultабоbw.circuit_mpl_style_path: Шляхи, за якими відображувач Circuit шукає JSON-таблиці стилів у режимі виводу mpl.state_drawer: Використовується для зміни типової системи методів відображення стану. Допустимі значення:repr,text,latex,latex_source,qsphere,hintonабоbloch. Коли kwarg output не задано явно для методу qiskit.quantum_info.DensityMatrix.draw, використовується вказаний метод виводу.transpile_optimization_level: Змінює типовий рівень оптимізації для qiskit.compiler.transpile. Вкажи ціле число від 0 до 3.parallel: Визначає, чи увімкнено мультипроцесорність Python для операцій, що підтримують паралельне виконання. Наприклад, транспіляція кількох об'єктів qiskit.circuit.QuantumCircuit. Цей параметр можна перевизначити змінною середовищаQISKIT_PARALLEL. Вкажи логічне значення.num_processes: Максимальна кількість паралельних процесів, що запускаються для паралельних операцій, якщо паралельне виконання увімкнено. Цей параметр можна перевизначити змінною середовищаQISKIT_NUM_PROCS. Вкажи ціле число більше0.min_qpy_version: Завантаження QPY відхилятиме файли з версією QPY, нижчою за вказану тут. Цей параметр можна використовувати для обмеження допустимих версій QPY у разі виявлення проблем безпеки десеріалізації у старших версіях QPY, запобігаючи завантаженню потенційно шкідливих даних.
примітка
- Параметри відображення Circuit застосовуються до qiskit.circuit.QuantumCircuit.draw та qiskit.visualization.circuit_drawer.
- Методи відображення стану: qiskit.quantum_info.Statevector.draw та qiskit.quantum_info.DensityMatrix.draw.
Змінні середовища
Встанови ці змінні середовища, щоб змінити типову поведінку Qiskit:
QISKIT_PARALLEL: Вмикає мультипроцесорність Python для паралелізації певних операцій; наприклад, транспіляцію кількох схем у Qiskit. Вкажи логічне значення.QISKIT_NUM_PROCS: Максимальна кількість паралельних процесів, що запускаються для паралельних операцій, якщо паралельне виконання увімкнено. Вкажи ціле число більше нуля.RAYON_NUM_THREADS: Кількість потоків для виконання багатопотокових операцій у Qiskit. За замовчуванням багатопотоковий код запускає по одному потоку на кожен логічний CPU. Щоб змінити кількість потоків, встанови ціле значення. Наприклад, RAYON_NUM_THREADS=4 запустить чотири потоки для багатопотокових функцій.QISKIT_FORCE_THREADS: Вказує, що багатопотоковий код завжди має виконуватись у кількох потоках. За замовчуванням, якщо багатопотоковий код запущено в секції Qiskit, що вже виконується в паралельних процесах, Qiskit не запускає кілька потоків, а виконує цю функцію послідовно. Це зроблено, щоб уникнути можливого перевантаження обмежених ресурсів CPU. Однак якщо ти хочеш примусово використовувати кілька потоків навіть у контексті мультипроцесорності, встановиQISKIT_FORCE_THREADS=TRUE.QISKIT_SABRE_ALL_THREADS: Керує поведінкою проходів розміщення та маршрутизації в менеджері попередніх проходів Qiskit. Коли встановлено значення1абоTRUE, використовуються всі доступні CPU для виконання кількох випадкових спроб. Це може покращити якість результатів, особливо для систем із понад 20 CPU/ядрами; однак компроміс полягає в тому, що результати не відтворювані при запуску на різному локальному апаратному забезпеченні.
Наступні кроки
Рекомендації
- Спробуй один із туторіалів, наприклад алгоритм Гровера.
- Запусти програму Hello world.
- Ознайомся з правилами внеску, якщо хочеш зробити внесок у відкритий Qiskit SDK.