Referência da API de gerenciamento de desempenho do Q-CTRL
Qiskit Functions — ferramentas pré-desenvolvidas por organizações parceiras — abstraem partes do fluxo de trabalho de desenvolvimento de software para simplificar e acelerar a descoberta de algoritmos e o desenvolvimento de aplicativos em escala de serviços públicos. Clique para ver o guia desta função do Qiskit.
Guia de funções do Qiskit para gerenciamento de desempenho
O Fire Opal Performance Management aceita circuitos abstratos, ao contrário das primitivas nativas do Qiskit Runtime, que aceitam apenas circuitos escritos na arquitetura de conjunto de instruções (ISA) do backend de destino. Para obter melhores resultados, não compile os circuitos antes de enviá-los por meio da função de gerenciamento de desempenho.
Dados de entrada do estimador
QctrlEstimatorPubLike componentes (derivados da definição do Qiskit Runtime PUB ):
- Um único circuito definido como
QuantumCircuitou no formato de string OpenQASM, 2.0 ou 3.0. - Uma ou mais variáveis observáveis que especificam os valores esperados a serem estimados, em qualquer um dos formatos indicados na lista "Formatos de variáveis observáveis suportados".
- (Opcional) Uma coleção de valores de parâmetros aos quais o circuito deve ser vinculado, que seguem as mesmas regras de difusão de matriz que as
QiskitRuntimeprimitivas. - (Opcional) Uma precisão alvo para os valores esperados a serem estimados.
- (Opcional) Um número real que representa a precisão ou um dicionário de opções de execução contendo o número de tentativas. Por exemplo:
{"shots": <int>}.
Formatos de observáveis compatíveis:
- Qualquer um dos
ObservablesArrayLikeformatos, comoPauli,SparsePauliOp,PauliList, oustr - Uma corda de Pauli:
"XY" - Um dicionário - cordas de Pauli com coeficientes:
{"XY": 0.5, "YZ": 0.3} - Uma lista de cordas de Pauli:
["XY", "YZ", "ZX"] - Uma lista de cordas de Pauli com coeficientes:
[("XY", 0.5), ("YZ", 0.3)] - Uma lista aninhada de cadeias de Pauli:
[["XY", "YZ"], ["ZX", "XX"]] - Uma lista aninhada de cadeias de Pauli com coeficientes:
[[("XY", 0.1), ("YZ", 0.2)], [("ZX", 0.3), ("XX", 0.4)]]
pubs
Tipo: `QctrlEstimatorPubLike` or `list[QctrlEstimatorPubLike]`
Valor Padrão: N/A
Uma ou mais tuplas contendo as entradas listadas em EstimatorPubLike componentes
- Necessário: sim
- Exemplo:
(circuit, observables, parameter_values)
backend_name
Tipo: `str`
Valor Padrão: The least busy backend that your instance has access to
O nome do backend
- Obrigatório: Não
- Exemplo:
"ibm_fez"
Opções
Tipo: `dict`
Valor Padrão: See Options section for more details
As opções de entrada para esta função são especificadas como um dicionário aninhado. Veja a lista completa de opções e seus valores padrão.
- Obrigatório: Não
- Exemplo:
{"default_shots": 2048}
Lista de opções
session_id
Tipo: `str`
Um ID de sessão existente do Qiskit Runtime
- Exemplo:
"cw4r3je6f0t010870y3g"
default_shots
Tipo: `int`
Valor Padrão: `2048`
O número de repetições a ser feito em cada série
default_precision
Tipo: `float`
A precisão alvo para os valores esperados a serem estimados para cada circuito
- Exemplo:
0.015625
job_tags
Tipo: `list[str]`
Valor Padrão: `[]`
Uma lista de tags de emprego
Resultados do estimador
Tipo: `PrimitiveResult`
A lista PrimitiveResult correspondente aos PUBs de entrada
- Exemplo:
PubResult(data=DataBin(evs=[0.1234], stds=[0.1]))
Entradas do sampler
QctrlSamplerPubLike componentes (derivados da definição do Qiskit Runtime PUB ):
- Um único circuito definido como
QuantumCircuitou no formato de string OpenQASM, 2.0 ou 3.0. - (Opcional) Um conjunto de valores de parâmetros aos quais o circuito deve ser vinculado.
- (Opcional) Um número inteiro que representa o número de tomadas ou um dicionário de opções de execução contendo o número de tomadas. Por exemplo:
(circ, None, 123)ou(circ, None, {"shots": 123}).
pubs
Tipo: `QctrlSamplerPubLike` or `list[QctrlSamplerPubLike]`
Uma ou mais tuplas contendo as entradas listadas em SamplerPubLike componentes
- Necessário: sim
- Exemplo:
(circuit, parameter_values)
backend_name
Tipo: `str`
Valor Padrão: The least busy backend that your instance has access to
O nome do backend
- Obrigatório: Não
- Exemplo:
"ibm_fez"
Opções
Tipo: `dict`
Valor Padrão: See the Options section for details
As opções de entrada para esta função são especificadas como um dicionário aninhado. Veja a lista completa de opções e seus valores padrão.
- Obrigatório: Não
- Exemplo:
{"default_shots": 2048}
Lista de opções
session_id
Tipo: `str`
Um ID de sessão existente do Qiskit Runtime
- Exemplo:
"cw4r3je6f0t010870y3g"
default_shots
Tipo: `int`
Valor Padrão: `2048`
O número de repetições a ser feito em cada série
job_tags
Tipo: `list[str]`
Valor Padrão: `[]`
A lista de tags de emprego desejadas
Saídas do sampler
Tipo: `PrimitiveResult`
A lista PrimitiveResult correspondente aos PUBs de entrada
- Exemplo:
PrimitiveResult([PubResult(data=DataBin(c=BitArray(<shape=(), num_shots=2048, num_bits=35>)), metadata={'shots': 2048})], metadata={provider_job_ids: 1234678})