Tekan Peringatan

Oct 18 2020

Saya ingin tahu cara menekan peringatan berikut yang diperoleh di qiskit ketika saya mencoba menambahkan dua jenis kebisingan yang berbeda ke qubit

WARNING: quantum error already exists for instruction "u2" on qubits [0] , appending additional error.

Saya tahu bahwa beberapa peringatan dapat ditekan dengan

import warnings
warnings.filterwarnings('ignore', category=DeprecationWarning)

tetapi saya tidak tahu di kategori apa peringatan saya dimuat. Saya juga ingin tahu apakah saya dapat mengakses suatu tempat di semua kategori peringatan yang berbeda. Selain itu mencoba

import warnings
warnings.filterwarnings('ignore')

untuk menekan semua peringatan tidak membantu.

Jawaban

2 jecado Oct 19 2020 at 08:52

Kelas Qiskit NoiseModelmemproses peringatan melalui pencatat dari loggingpaket, bukan melalui warningspaket, jadi menyembunyikan peringatan seperti pada jawaban lain tidak akan membantu.

Namun, setiap metode NoiseModelmenyediakan warningsparameter; Ini defaultnya Truetetapi Anda dapat mengaturnya Falseuntuk mencegah peringatan masuk.

Contoh: myNoiseModel.add_quantum_error(..., warnings=False)

luciano Oct 18 2020 at 21:09

Anda tidak perlu memberikan kategori untuk membungkam semua peringatan:

import warnings
warnings.filterwarnings('ignore')
KAJ226 Oct 18 2020 at 14:27

Saya tidak tahu apakah ini membantu sama sekali tetapi dalam hal kategori peringatan, saya menggunakan ?? warningsdan menemukan beberapa jenis lainnya:

category=PendingDeprecationWarning
category=ImportWarning
category=ResourceWarning

Saya juga melihat pertanyaan terkait peringatan ke Qiskit di sini . Ini tidak sama dengan apa yang Anda minta tetapi semoga bisa membantu.