Подавить предупреждения
Я хочу знать, как подавить следующее предупреждение, полученное на qiskit, когда я пытаюсь добавить два разных типа шума к кубиту
WARNING: quantum error already exists for instruction "u2" on qubits [0] , appending additional error.
Я знаю, что некоторые предупреждения можно подавить с помощью
import warnings
warnings.filterwarnings('ignore', category=DeprecationWarning)
но я не знаю, в какой категории содержится мое предупреждение. Я также хотел бы знать, могу ли я где-нибудь получить доступ ко всем различным категориям предупреждений. Дополнительно пытаюсь
import warnings
warnings.filterwarnings('ignore')
подавить все предупреждения не помогает.
Ответы
Класс Qiskit NoiseModelобрабатывает предупреждения через регистратор из loggingпакета, а не через warningsпакет, поэтому подавление предупреждений, как в других ответах, не поможет.
Однако каждый метод в NoiseModelпредоставляет warningsпараметр; по умолчанию он установлен, Trueно вы можете установить его, Falseчтобы предупреждения не регистрировались.
Пример: myNoiseModel.add_quantum_error(..., warnings=False)
Вам не нужно указывать категорию, чтобы отключить все предупреждения:
import warnings
warnings.filterwarnings('ignore')
Я не знаю, помогает ли это вообще, но что касается категорий предупреждений, я использовал ?? warningsи нашел несколько других типов:
category=PendingDeprecationWarning
category=ImportWarning
category=ResourceWarning
Я также вижу здесь вопрос, связанный с предупреждением Qiskit . Это не то же самое, что вы просите, но, надеюсь, это как-то поможет.