Configurar gerenciamento de ruído com o Sampler
Versões dos pacotes
O código desta página foi desenvolvido usando os seguintes requisitos. Recomendamos usar essas versões ou versões mais recentes.
qiskit-ibm-runtime~=0.47.0
Existem várias maneiras de gerenciar o ruído, normalmente usando diversas técnicas de mitigação e supressão de erros para evitar erros antes que eles ocorram. Essas técnicas geralmente causam sobrecarga de pré-processamento. Portanto, é importante alcançar um equilíbrio entre aperfeiçoar seus resultados e garantir que seu job seja concluído em um tempo razoável.
O Sampler suporta as seguintes técnicas de gerenciamento de ruído. Veja Técnicas de mitigação e supressão de erros para uma explicação de cada uma.
Nem todas as opções funcionam juntas em todos os tipos de Circuits. Veja o guia de compatibilidade de recursos para detalhes completos.
Exemplo
# Added by doQumentation — installs the packages this notebook needs if they are missing
import importlib.util
_needed = {"qiskit_ibm_runtime": "qiskit-ibm-runtime"}
_missing = [pip for module, pip in _needed.items()
if importlib.util.find_spec(module) is None]
# One at a time, so a package that fails to install does not block the others
for _pip in _missing:
%pip install -q {_pip}
if not _missing:
print("\u2713 All required packages are installed")
from qiskit_ibm_runtime import QiskitRuntimeService
# Legacy server-side primitive before qiskit-ibm-runtime 0.50.0
# from qiskit_ibm_runtime import Sampler
# Client-side primitive introduced in qiskit-ibm-runtime 0.50.0
from qiskit_ibm_runtime.executor_sampler import Sampler
service = QiskitRuntimeService()
backend = service.least_busy(operational=True, simulator=False)
sampler = Sampler(backend)
# Turn on dynamical decoupling with sequence XpXm.
sampler.options.dynamical_decoupling.enable = True
sampler.options.dynamical_decoupling.sequence_type = "XpXm"
# Turn on gate twirling. Requires qiskit_ibm_runtime 0.23.0 or later.
sampler.options.twirling.enable_gates = True
print(
f">>> dynamical decoupling sequence to use: "
f"{sampler.options.dynamical_decoupling.sequence_type}"
)
print(
f">>> gate twirling is turned on: {sampler.options.twirling.enable_gates}"
)
>>> dynamical decoupling sequence to use: XpXm
>>> gate twirling is turned on: True
Próximos passos
- Saiba mais sobre técnicas de mitigação e supressão de erros.
- Explore as opções do Sampler.
- Decida em qual modo de execução executar seu job.