Configurer le SDK Qiskit localement
Une fois que le SDK Qiskit est installé et fonctionne, il y a quelques étapes optionnelles que vous pouvez prendre pour changer le comportement par défaut de Qiskit.
Fichier de configuration utilisateur
L'emplacement principal pour la configuration locale de Qiskit est le fichier de configuration de l'utilisateur. Il s'agit d'un fichier au format.ini qui peut être utilisé pour modifier les paramètres par défaut de Qiskit.
Exemple :
[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
min_qpy_version = 14Par défaut, ce fichier se trouve dans ~/.qiskit/settings.conf , mais le chemin d'accès peut être modifié à l'aide de la variable d'environnement QISKIT_SETTINGS .
Options disponibles
circuit_drawer: Modifie le système par défaut du tiroir de circuit. Il peut être défini surlatex,mpl,text, oulatex_source. Lorsque le kwarg de sortie n'est pas explicitement défini, ce système de tiroirs est utilisé.circuit_mpl_style: La feuille de style par défaut utilisée pour le système de sortie mpl du dessinateur de circuits. Les valeurs valables sontdefaultoubw.circuit_mpl_style_path: Les chemins à utiliser par le tiroir du circuit pour rechercher les feuilles de style JSON lors de l'utilisation du mode de sortie mpl.state_drawer: Cette option permet de modifier le système par défaut pour les méthodes de dessin de la visualisation d'état. Les valeurs valables sontrepr,text,latex,latex_source,qsphere,hinton, oubloch. Lorsque le kwarg de sortie n'est pas explicitement défini dans la méthode qiskit.quantum_info.DensityMatrix.draw, la méthode de sortie spécifiée est utilisée.transpile_optimization_level: Modifier le niveau d'optimisation par défaut pour qiskit.compiler.transpile. Spécifiez un nombre entier de 0 à 3.parallel: Si Python multiprocessing est activé pour les opérations qui peuvent être exécutées en parallèle. Par exemple, la transpilation de plusieurs qiskit.circuit.QuantumCircuit objets. Ce paramètre peut être remplacé par la variable d'environnementQISKIT_PARALLEL. Spécifier une valeur booléenne.num_processes: Nombre maximal de processus parallèles à lancer pour des opérations parallèles si l'exécution parallèle est activée. Ce paramètre peut être remplacé par la variable d'environnementQISKIT_NUM_PROCS. Spécifiez un nombre entier supérieur à0.min_qpy_version: Lors du chargement des fichiers QPY, ceux dont la version est inférieure à celle définie ici seront rejetés. Cette option permet de limiter les versions autorisées de QPY lorsque des failles de sécurité liées à la désérialisation sont découvertes dans des versions antérieures de QPY, empêchant ainsi le chargement de charges utiles potentiellement malveillantes.
Note
- Les paramètres du dessinateur de circuit s'appliquent à qiskit.circuit.QuantumCircuit.draw et qiskit.visualization.circuit_drawer.
- Les méthodes de visualisation d'état sont qiskit.quantum_info.Statevector.draw et qiskit.quantum_info.DensityMatrix.draw.
Variables d'environnement
Définissez ces variables d'environnement pour modifier le comportement par défaut de Qiskit :
QISKIT_PARALLEL: Permet à Python multiprocessing de paralléliser certaines opérations; par exemple, la transpilation sur plusieurs circuits dans Qiskit. Spécifier une valeur booléenne.QISKIT_NUM_PROCS: Nombre maximal de processus parallèles à lancer pour des opérations parallèles si l'exécution parallèle est activée. Spécifier un nombre entier supérieur à zéro.RAYON_NUM_THREADS: Le nombre de threads pour exécuter des opérations multithreads dans Qiskit. Par défaut, le code multithread lance un thread pour chaque unité centrale logique. Pour ajuster le nombre de threads utilisés par Qiskit, définissez une valeur entière. Par exemple, l'option RAYON_NUM_THREADS=4 permet de lancer quatre threads pour les fonctions multithreads.QISKIT_FORCE_THREADS: Spécifie que le code multithread doit toujours être exécuté dans plusieurs threads. Par défaut, si vous exécutez un code multithread dans une section de Qiskit qui s'exécute déjà dans des processus parallèles, Qiskit ne lance pas plusieurs threads mais exécute cette fonction en série. Cela permet d'éviter de surcharger les ressources limitées de l'unité centrale. Cependant, si vous voulez forcer l'utilisation de plusieurs threads même dans un contexte multiprocessus, définissezQISKIT_FORCE_THREADS=TRUE.QISKIT_SABRE_ALL_THREADS: Contrôle le comportement de la passe de mise en page et de routage dans le gestionnaire de passes prédéfinies de Qiskit. Lorsqu'elle est définie sur1ouTRUE, cette fonction utilise toutes les unités centrales disponibles pour effectuer plusieurs essais aléatoires. Cela peut améliorer la qualité des résultats, en particulier pour les systèmes dotés de plus de 20 CPU/cores; la contrepartie, cependant, est que les résultats ne sont pas reproductibles lorsqu'ils sont exécutés sur du matériel local différent.
Etapes suivantes
Recommandations
- Essayez un didacticiel, tel que l' algorithme de Grover.
- Exécutez le programme Hello world.
- Lisez les directives de contribution si vous souhaitez contribuer au SDK open-source Qiskit.
Cette page a-t-elle été utile ?
Signaler un bogue, une coquille ou proposer du contenu sur GitHub.