Suprimir avisos
Desejo saber como suprimir o seguinte aviso obtido no qiskit quando tento adicionar dois tipos diferentes de ruído a um qubit
WARNING: quantum error already exists for instruction "u2" on qubits [0] , appending additional error.
Eu sei que alguns avisos podem ser suprimidos com
import warnings
warnings.filterwarnings('ignore', category=DeprecationWarning)
mas não sei em que categoria meu aviso está contido. Também gostaria de saber se posso acessar em algum lugar todas as diferentes categorias de aviso. Além de tentar
import warnings
warnings.filterwarnings('ignore')
suprimir todos os avisos não ajuda.
Respostas
A NoiseModelclasse do Qiskit processa avisos por meio de um logger do loggingpacote, não por meio do warningspacote, portanto, suprimir avisos como em outras respostas não ajudará.
No entanto, cada método NoiseModelfornece um warningsparâmetro; o padrão é, Truemas você pode defini-lo Falsepara evitar que os avisos sejam registrados.
Exemplo: myNoiseModel.add_quantum_error(..., warnings=False)
Você não precisa fornecer uma categoria para silenciar todos os avisos:
import warnings
warnings.filterwarnings('ignore')
Eu não sei se isso ajuda em tudo, mas em termos de aviso categorias, eu usei ?? warningse encontrei alguns outros tipos:
category=PendingDeprecationWarning
category=ImportWarning
category=ResourceWarning
Também vejo uma pergunta relacionada ao aviso ao Qiskit aqui . Não é o mesmo que você está pedindo, mas espero que ajude de alguma forma.