Configurar o SDK do Qiskit localmente
Depois que o SDK do Qiskit estiver instalado e em execução, há alguns passos opcionais que você pode seguir para alterar o comportamento padrão do Qiskit.
Arquivo de configuração do usuário
O principal local para configuração local do Qiskit é o arquivo de configuração do usuário. Este é um arquivo no formato .ini que pode ser usado para alterar as configurações padrão do Qiskit.
Exemplo:
[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 padrão, esse arquivo está em ~/.qiskit/settings.conf, mas o caminho pode ser substituído com a variável de ambiente QISKIT_SETTINGS.
Opções disponíveis
circuit_drawer: Altera o sistema padrão para o desenhador de Circuit. Pode ser definido comolatex,mpl,textoulatex_source. Quando o kwarg de saída não é definido explicitamente, esse sistema de desenho é utilizado.circuit_mpl_style: A folha de estilo padrão usada para o sistema de saída mpl do desenhador de Circuit. Os valores válidos sãodefaultoubw.circuit_mpl_style_path: Os caminhos que o desenhador de Circuit usa para procurar folhas de estilo JSON ao utilizar o modo de saída mpl.state_drawer: Usado para alterar o sistema padrão para os métodos de visualização de estados. Os valores válidos sãorepr,text,latex,latex_source,qsphere,hintonoubloch. Quando o kwarg de saída não é definido explicitamente no método qiskit.quantum_info.DensityMatrix.draw, o método de saída especificado é utilizado.transpile_optimization_level: Altera o nível de otimização padrão para qiskit.compiler.transpile. Especifique um inteiro de 0 a 3.parallel: Indica se o multiprocessamento do Python está habilitado para operações que suportam execução em paralelo. Por exemplo, a transpilação de múltiplos objetos qiskit.circuit.QuantumCircuit. Essa configuração pode ser substituída pela variável de ambienteQISKIT_PARALLEL. Especifique um valor booleano.num_processes: O número máximo de processos paralelos a serem iniciados para operações paralelas, se a execução paralela estiver habilitada. Essa configuração pode ser substituída pela variável de ambienteQISKIT_NUM_PROCS. Especifique um inteiro maior que0.
nota
- As configurações do desenhador de Circuit se aplicam a qiskit.circuit.QuantumCircuit.draw e qiskit.visualization.circuit_drawer.
- Os métodos de visualização de estados são qiskit.quantum_info.Statevector.draw e qiskit.quantum_info.DensityMatrix.draw.
Variáveis de ambiente
Defina estas variáveis de ambiente para alterar o comportamento padrão do Qiskit:
QISKIT_PARALLEL: Habilita o multiprocessamento do Python para paralelizar determinadas operações; por exemplo, a transpilação de múltiplos circuits no Qiskit. Especifique um valor booleano.QISKIT_NUM_PROCS: O número máximo de processos paralelos a serem iniciados para operações paralelas, se a execução paralela estiver habilitada. Especifique um inteiro maior que zero.RAYON_NUM_THREADS: O número de threads para executar operações multithreaded no Qiskit. Por padrão, o código multithreaded inicia uma thread para cada CPU lógica. Para ajustar o número de threads que o Qiskit usa, defina isso como um valor inteiro. Por exemplo, definir RAYON_NUM_THREADS=4 inicia quatro threads para funções multithreaded.QISKIT_FORCE_THREADS: Especifica que o código multithreaded deve sempre ser executado em múltiplas threads. Por padrão, se você estiver executando código multithreaded em uma seção do Qiskit que já está sendo executada em processos paralelos, o Qiskit não inicia múltiplas threads, mas executa essa função de forma serial. Isso é feito para evitar sobrecarregar recursos de CPU limitados. No entanto, se você quiser forçar o uso de múltiplas threads mesmo em um contexto multiprocesso, definaQISKIT_FORCE_THREADS=TRUE.QISKIT_SABRE_ALL_THREADS: Controla o comportamento do passo de layout e roteamento no gerenciador de passes predefinido do Qiskit. Quando definido como1ouTRUE, utiliza todas as CPUs disponíveis para executar múltiplos testes aleatórios. Isso pode melhorar a qualidade dos resultados, especialmente para sistemas com mais de 20 CPUs/cores; porém, o custo é que os resultados não são reproduzíveis quando executados em hardware local diferente.
Próximos passos
Recomendações
- Experimente um tutorial, como o algoritmo de Grover.
- Execute o programa Hello world.
- Leia as diretrizes de contribuição se quiser contribuir com o SDK do Qiskit de código aberto.