Configurar el SDK de Qiskit localmente
Una vez que el SDK de Qiskit esté instalado y en funcionamiento, puedes seguir algunos pasos opcionales para cambiar el comportamiento predeterminado de Qiskit.
Archivo de configuración de usuario
El lugar principal para la configuración local de Qiskit es el archivo de configuración de usuario. Se trata de un archivo en formato .ini que puedes usar para modificar los ajustes predeterminados de Qiskit.
Ejemplo:
[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
Por defecto, este archivo se encuentra en ~/.qiskit/settings.conf, pero la ruta puede sobreescribirse con la variable de entorno QISKIT_SETTINGS.
Opciones disponibles
circuit_drawer: Cambia el sistema predeterminado para el dibujador de circuitos. Puede establecerse enlatex,mpl,textolatex_source. Cuando el argumentooutputno se especifica explícitamente, se usa este sistema de dibujo.circuit_mpl_style: La hoja de estilos predeterminada que usa el sistema de salida mpl para el dibujador de circuitos. Los valores válidos sondefaultobw.circuit_mpl_style_path: Las rutas donde el dibujador de circuitos buscará hojas de estilo JSON al usar el modo de salida mpl.state_drawer: Se usa para cambiar el sistema predeterminado de los métodos de visualización de estados. Los valores válidos sonrepr,text,latex,latex_source,qsphere,hintonobloch. Cuando el argumentooutputno se especifica explícitamente en el método qiskit.quantum_info.DensityMatrix.draw, se utiliza el método de salida indicado.transpile_optimization_level: Cambia el nivel de optimización predeterminado para qiskit.compiler.transpile. Especifica un entero entre 0 y 3.parallel: Indica si el multiprocesamiento de Python está habilitado para operaciones que admiten ejecución en paralelo. Por ejemplo, la transpilación de múltiples objetos qiskit.circuit.QuantumCircuit. Este ajuste puede sobreescribirse con la variable de entornoQISKIT_PARALLEL. Especifica un valor booleano.num_processes: El número máximo de procesos paralelos que se lanzarán para operaciones en paralelo cuando la ejecución paralela esté habilitada. Este ajuste puede sobreescribirse con la variable de entornoQISKIT_NUM_PROCS. Especifica un entero mayor que0.
nota
- Los ajustes del dibujador de circuitos se aplican a qiskit.circuit.QuantumCircuit.draw y qiskit.visualization.circuit_drawer.
- Los métodos de visualización de estados son qiskit.quantum_info.Statevector.draw y qiskit.quantum_info.DensityMatrix.draw.
Variables de entorno
Establece estas variables de entorno para modificar el comportamiento predeterminado de Qiskit:
QISKIT_PARALLEL: Habilita el multiprocesamiento de Python para paralelizar ciertas operaciones; por ejemplo, la transpilación de múltiples circuitos en Qiskit. Especifica un valor booleano.QISKIT_NUM_PROCS: El número máximo de procesos paralelos que se lanzarán para operaciones en paralelo cuando la ejecución paralela esté habilitada. Especifica un entero mayor que cero.RAYON_NUM_THREADS: El número de hilos para ejecutar operaciones multihilo en Qiskit. Por defecto, el código multihilo lanza un hilo por cada CPU lógica. Para ajustar el número de hilos que usa Qiskit, establece este valor como un entero. Por ejemplo, al establecer RAYON_NUM_THREADS=4 se lanzan cuatro hilos para las funciones multihilo.QISKIT_FORCE_THREADS: Especifica que el código multihilo debe ejecutarse siempre en múltiples hilos. Por defecto, si ejecutas código multihilo en una sección de Qiskit que ya está corriendo en procesos paralelos, Qiskit no lanza múltiples hilos sino que ejecuta esa función de forma serial. Esto se hace para evitar sobrecargar los recursos de CPU disponibles. Sin embargo, si quieres forzar el uso de múltiples hilos incluso en un contexto multiproceso, estableceQISKIT_FORCE_THREADS=TRUE.QISKIT_SABRE_ALL_THREADS: Controla el comportamiento del pase de layout y enrutamiento en el gestor de pases predefinido de Qiskit. Cuando se establece en1oTRUE, utiliza todas las CPUs disponibles para ejecutar múltiples pruebas aleatorias. Esto puede mejorar la calidad de los resultados, especialmente en sistemas con más de 20 CPUs/núcleos; sin embargo, la desventaja es que los resultados no son reproducibles al ejecutarse en hardware local diferente.
Próximos pasos
Recomendaciones
- Prueba un tutorial, como el algoritmo de Grover.
- Ejecuta el programa Hello world.
- Lee las directrices de contribución si quieres contribuir al SDK de Qiskit de código abierto.