Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Quando você trabalha com o serviço Azure Quantum, pode enfrentar problemas de conexão ou relacionados ao trabalho. Veja como você pode resolver esses problemas.
Conectando-se ao seu espaço de trabalho
Problema: Não é possível autenticar no Azure Quantum via pytket-azure CI
Ao tentar autenticar no Azure Quantum por meio do pytket-azure pacote em um ambiente de CI usando as variáveis de ambiente "AZURE_TENANT_ID", "AZURE_CLIENT_ID" e "AZURE_CLIENT_SECRET", você pode encontrar o erro:
Code: InsufficientPermissions
Message: There are not enough permissions to perform this operation.
Para resolver esse problema, tente autenticar usando uma cadeia de conexão e a variável de ambiente "AZURE_QUANTUM_CONNECTION_STRING" em vez disso. Para obter mais informações, consulte Conectar-se com uma string de conexão.
connection_string = "[Copy connection string]"
import os
os.environ["AZURE_QUANTUM_CONNECTION_STRING"] = connection_string
Submeter trabalhos
Problema: Ausente targets
Se o target onde você deseja executar seu trabalho estiver faltando na lista de target disponível, você provavelmente precisará atualizar para a versão mais recente do Quantum Development Kit (QDK) para Visual Studio Code. Para obter mais informações, consulte Atualizar o QDK.
Problema: a operação retorna um código de status inválido 'Não autorizado'
Passos para resolver este problema:
Abra seu portal do Azure (https://portal.azure.com) e autentique sua conta.
Em Navegar, selecione Subscrições e selecione a sua subscrição.
Selecione Controlo de acesso (IAM) .
Em Verificar acesso, procure o seu endereço de e-mail e selecione a conta.
Não deve ver listados um Proprietário nem um Colaborador.
Selecione o separador Atribuição de funções.
Nota
Se não vir o separador Atribuições de funções, poderá ter de expandir o portal para ecrã inteiro ou fechar o <painel de atribuições de nomes>.
Selecione a Função no menu suspenso, selecione Proprietário ou Colaborador, insira o seu endereço de e-mail e selecione a sua conta.
Selecione Guardar.
Agora deve ver a sua conta configurada com a função de Proprietário ou Colaborador.
Crie seu espaço de trabalho do Azure Quantum novamente e, em seguida, envie um trabalho nesse novo Espaço de Trabalho.
Problema: "AuthorizationFailure - Esta requisição não está autorizada a executar esta operação"
Se um envio de trabalho falhar com essa mensagem, mesmo que você tenha uma conexão válida com o serviço Azure Quantum, a conta de armazenamento poderá ser configurada para bloquear o acesso à rede pública. O serviço Azure Quantum suporta apenas contas de armazenamento através do acesso público à Internet.
Para verificar a conta de armazenamento:
- Na página do espaço de trabalho quântico no Portal do Azure, selecione Visão geral e selecione a conta de armazenamento.
- Na página da conta de armazenamento, em Segurança + rede, selecione Rede.
- Na guia Firewalls e redes virtuais em Acesso à rede pública, verifique se a opção Habilitar todas as redes está selecionada.
Problema: "Falha ao compilar o programa" ao tentar enviar um programa Q# através da CLI
Ao tentar enviar um trabalho no prompt de comando usando o az quantum submit comando, você pode encontrar a seguinte mensagem de erro:
az quantum job submit ...
Failed to compile program.
Command ran in 21.181 seconds (init: 0.457, invoke: 20.724)
Este erro ocorre quando há um problema com o programa Q# que faz com que a compilação falhe.
Problema: Erro do compilador "Número errado de parâmetros de porta"
Ao enviar um trabalho para o Quantinuum a partir de um Jupyter Notebook local ou ambiente de linha de comando, e usando o tradutor QASM herdado (OPENQASM 2.0), você pode encontrar este erro:
Job ID <jobId> failed or was cancelled with the message: 1000: Compile error: [<file, line>] Wrong number of gate parameters
Este erro ocorre quando uma vírgula "," ou outro caractere sem ponto é usado como um separador decimal, como é comum em muitos idiomas. Substitua quaisquer separadores decimais que não sejam de período por pontos ".".
// replace this line:
rx(1,5707963267948966) q[0];
// with this:
rx(1.5707963267948966) q[0];
Problema: erro do compilador "não disponível para a configuração de compilação atual"
Quando você executa uma célula de código Q# em um Jupyter Notebook no VS Code, você pode encontrar o erro:
<function name> not found. Found a matching item `<function name>' that is not available for the current compilation configuration
Este erro indica que você define o perfil QIR (representação intermediária quântica) target como Basic e a função em questão requer o perfil Irrestritotarget . Se você não especificar um target tipo de perfil, o compilador definirá automaticamente o target como Irrestrito para você.
Problema: a operação devolveu um código de estado inválido 'Proibido'
Quando submetes o teu primeiro emprego, podes receber um código de erro 'proibido'.
Esse problema pode ter origem durante a criação do espaço de trabalho: o Azure Quantum não consegue concluir a atribuição de função que vincula o novo espaço de trabalho à conta de armazenamento especificada. Cenário típico: esta situação ocorrerá se o separador ou a janela do browser fechar antes de a criação da área de trabalho estar concluída.
Você pode verificar se está enfrentando esse problema de atribuição de função seguindo estas etapas:
- Navegue até seu novo espaço de trabalho quântico no Portal do Azure
- Em Visão geral>Essentials>Conta de armazenamento, clique no link da conta de armazenamento
- Na barra de navegação esquerda, selecione Controlo de Acesso (IAM)
- Selecione Atribuições de Funções
- Verifique se o seu espaço de trabalho aparece como Colaborador
- Se o espaço de trabalho não aparecer como um Colaborador, poderá:
- Crie um novo espaço de trabalho e certifique-se de aguardar a conclusão da criação do espaço de trabalho antes de fechar a guia ou janela do navegador da Web.
- Adicionar a atribuição de função adequada na conta de armazenamento
- Controle de acesso (IAM) > Adicionar atribuições de função
- Função > Colaborador
- Atribuir acesso a utilizador, grupo ou entidade de serviço >
- Selecione > [Nome do espaço de trabalho]
- Guardar
Problema: o trabalho falha devido ao código de erro: QIRPreProcessingFailed
Quando você envia um trabalho para um provedor Rigetti, o trabalho falha e é relatado no console de gerenciamento de tarefas no portal do Azure:
Error code: QIRPreProcessingFailed
Error message: No match found for output recording set converter from outputrecordingset.v2.labeled to outputrecordingset.v1.nonlabeled
Este erro pode ser causado por um conflito de dependência com uma versão anterior do pyqir ou qiskit-qir. Desinstale todas as versões de pyqir, pyqir-* e qiskit-qir na sua máquina local e, em seguida, instale ou atualize a biblioteca Python qdk com os extras azure e qiskit:
pip install --upgrade "qdk[azure,qiskit]"
Problema: obtenção de informações básicas sobre trabalhos com falha
Depois de enviar um trabalho para um hardware target, ele pode ficar na fila por várias horas, ou até mesmo um ou dois dias, antes de falhar.
Para recuperar mais informações sobre a falha:
Para exibir a saída ou a mensagem de erro retornada, use o método
get_results()com o objeto de trabalho:job.get_results()No espaço de trabalho do Portal do Azure, selecione > Operações e selecione o Nome do trabalho para abrir um painel de detalhes.
No espaço de trabalho do Portal do Azure, selecione Provedores de Operações>. Verifique a disponibilidade da máquina target. Os trabalhos submetidos a targets com o status de Degradado podem ficar na fila por mais tempo do que o habitual. Às vezes, os trabalhos são processados, mas às vezes eles expiram e retornam um erro de target indisponível.
Problema: continuam a pedir-me para realizar a autenticação quando me conecto programaticamente à área de trabalho
Se você estiver usando o SDK do Azure Quantum Python, por exemplo, no bloco de anotações Jupyter, e estiver se conectando ao seu espaço de trabalho usando a AzureQuantumProvider classe, poderá experimentar um pop-up para autenticar no Azure toda vez que executar o script.
Esse pop-up acontece porque seu token de segurança está sendo redefinido toda vez que você executa o script.
Você pode resolver esse problema executando az login usando a CLI do Azure. Para obter mais informações, consulte az login.
Problema: Depois de atualizar o qdk[azure] pacote, recebo o erro "ModuleNotFoundError: No module named qiskit.tools" ao monitorizar um trabalho
A partir do Qiskit 1.0, o módulo qiskit.tools, que é necessário para a função job_monitor(), foi preterido. Para monitorar trabalhos, use as funções wait_for_final_state() ou result.
job = MyTarget.run(circuit, shots=100)
# to wait until the job is complete
job.wait_for_final_state()
# to return the results of the job
result = job.result()
Estimador de Recursos do Azure Quantum
Os problemas a seguir podem impedir a conclusão de trabalhos de estimativa de recursos. Veja como resolver esses problemas.
Problema: o algoritmo quântico deve conter pelo menos um estado T ou medição
Para contabilizar o mapeamento de um programa quântico arbitrário para uma matriz 2D de qubits lógicos, o Estimador de Recursos assume que a Computação Pauli Sequencial de Síntese Paralela (PSSPC) é realizada no programa de entrada. Nessa abordagem, todas as operações Clifford são comutadas através de todos os portões T, portões de rotação e operações de medição, deixando uma única operação Clifford que pode ser avaliada classicamente de forma eficiente. Portanto, um programa quântico que não contém estados T, por exemplo, de portas T ou portas de rotação, ou operações de medição não requer nenhum recurso físico de computação quântica. Para obter mais informações sobre a Computação Pauli Sequencial de Síntese Paralela, consulte arXiv:2211.07629, Apêndice D.
Error message: Algorithm requires at least one T state or measurement to estimate resources
Problema: a taxa de erro da porta T física é muito alta
A taxa de erro do estado T lógico depende do orçamento de erro e do número de estados T no programa quântico. Fábricas T são usadas para criar estados T com a taxa de erro lógica de estado T necessária a partir de portas T físicas, que têm uma taxa de erro de porta T física. Normalmente, a taxa de erro da porta T física é maior do que a taxa de erro da porta T lógica necessária. Em alguns cenários, a taxa de erro física da porta T é significativamente maior em comparação com a taxa de erro de estado T lógica necessária, de modo que nenhuma fábrica T pode ser encontrada que possa produzir estados T lógicos de qualidade suficiente.
Error message: No T factory can be found, because the required logical T state error rate is too low
Aqui está o que você poderia fazer em tal cenário:
- Aumente o orçamento de erro, total ou a parte destinada aos estados T.
- Reduza a taxa de erro da porta T física nos parâmetros do qubit.
- Reduza o número de estados T no programa quântico reduzindo portas T, portas de rotação e portas Toffoli.
Problema: a taxa de erro da porta T física é muito baixa
Há também o cenário oposto, no qual a taxa de erro física da porta T é menor do que a taxa de erro do estado T lógico exigida. Nesses casos, não é necessária uma fábrica de portas T, porque a taxa de erro física da porta T já tem qualidade suficiente. No entanto, este cenário requer uma consideração cuidadosa do impacto das unidades de transferência que transferem os estados físicos T da distância de código 1 para a distância de código do algoritmo (ver arXiv:2211.07629, Apêndice C). Em geral, na presença de fábricas do tipo T, o custo das unidades de transferência é insignificante.
Error message: No T factory can be found, because the required logical T state error rate is too high; transfer units are necessary to perform a resource estimation accurately. One possibility to circumvent this problem is to increase the physical T gate error rate of the qubit parameters.
Aqui está o que você poderia fazer em tal cenário:
- Aumente a taxa de erro física da porta T nos parâmetros do qubit para a taxa de erro lógica do estado T necessária.
- Reduza o orçamento de erro ou apenas a parte destinada aos estados T.
Problema: a taxa de erro deve ser um número entre 0 e 1
As taxas de erro devem ser sempre valores entre 0 e 1. Além disso, para que a correção de erros seja eficaz, a taxa de erro físico para portas e medições deve ser inferior a um valor que depende das propriedades do código de correção de erro e da taxa de erro lógica necessária.
Aqui está o que você poderia fazer em tal cenário:
- Aumente o orçamento de erros, seja no total ou na parte destinada a erros lógicos.
- Reduza as taxas de erro físicas nos parâmetros de qubit.
Problema: as restrições de tempo de execução máximo e número máximo de qubits físicos são mutuamente exclusivas
O Estimador de Recursos aceita apenas uma restrição de maxDuration ou maxPhysicalQubits de cada vez, mas não ambas. Se fornecer ambas as restrições maxDurationmaxPhysicalQubits para um único trabalho, isso resultará no erro BothDurationAndPhysicalQubitsProvided.
Problema: executar o contêiner de contagem de estimativa QIR: símbolo indefinido __quantum__rt__result_record_output
Este erro resulta da geração de QIR para circuitos Qiskit através do qiskit_qir pacote Python sem definir o record_output parâmetro como False.
Para evitar esse erro, execute uma das seguintes ações:
- Use o
qdk.azuremódulo Python para submeter circuitos Qiskit ao Azure Quantum (recomendado). - Ao usar o
qiskit_qirpacote Python, certifique-se de definir orecord_outputparâmetro comoFalseantes de enviar seu circuito.
Criando um espaço de trabalho do Azure Quantum
Os problemas a seguir podem ocorrer quando você usa o portal do Azure para criar um espaço de trabalho.
Problema: não é possível acessar o formulário de criação de espaço de trabalho no portal do Azure; Em vez disso, ser-lhe-á pedido que se inscreva numa subscrição
Esse problema ocorre porque você não tem uma assinatura ativa.
Por exemplo, você pode ter se inscrito para a assinatura de avaliação gratuita de 30 dias do Azure, que inclui Créditos do Azure gratuitos de USD200 para usar nos serviços do Azure. Esses créditos do Azure não são qualificados para uso em provedores de hardware quântico. Após 30 dias de inscrição ou depois de consumir os $200 de créditos gratuitos do Azure (o que ocorrer primeiro), tem de atualizar para uma subscrição pré-paga para continuar a utilizar os serviços do Azure Quantum. Depois de ter uma assinatura ativa, o portal do Azure permite que você acesse o formulário de criação de espaço de trabalho.
Para ver uma lista das suas subscrições e funções associadas, consulte Verificar as suas subscrições.
Problema: a opção Criação rápida não está disponível
Você deve ser um proprietário da assinatura selecionada para usar a opção Criação rápida . Para ver uma lista das suas subscrições e funções associadas, consulte Verificar as suas subscrições. Se você for um Colaborador de assinatura, poderá usar a opção Criação avançada para criar um espaço de trabalho.
Problema: não é possível criar ou selecionar um grupo de recursos ou uma conta de armazenamento
Esse problema ocorre porque você não tem a autorização necessária no nível de assinatura, grupo de recursos ou conta de armazenamento. Para obter mais informações sobre os níveis de acesso necessários, consulte Requisitos de função para criar um espaço de trabalho.
Problema: a mensagem de erro "Falha na validação da implantação" aparece depois que você seleciona Criar
Essa mensagem de erro pode incluir mais detalhes, como "O cliente não tem autorização para executar a ação".
Esse problema ocorre porque você não tem a autorização necessária no nível de assinatura, grupo de recursos ou conta de armazenamento. Para obter mais informações sobre os níveis de acesso necessários, consulte Requisitos de função para criar um espaço de trabalho.
Se o acesso tiver sido concedido recentemente, talvez seja necessário atualizar a página. Às vezes, pode levar até uma hora para que novas atribuições de função entrem em vigor nas permissões armazenadas em cache no sistema.
Problema: você não vê um provedor de hardware quântico específico na guia Provedores
Este problema ocorre porque o fornecedor não suporta a região de faturação em que a sua subscrição está definida. Por exemplo, se sua assinatura estiver definida em Israel, a guia Provedores não listará Rigetti como um provedor disponível. Para obter uma lista de provedores e sua disponibilidade por país/região, consulte Disponibilidade global de provedores do Azure Quantum.
Problema: a criação de espaço de trabalho ou a adição/remoção de provedores falha com "ResourceDeploymentFailure" ou "ProviderDeploymentFailure"
Esse problema pode incluir mais detalhes, como "ResourceDeploymentFailure - A operação de recurso 'AzureAsyncOperationWaiting' concluída com o estado final de provisionamento 'Failed'.", ou "ProviderDeploymentFailure - Falha ao criar plano para o provedor: <Name of the provider>".
Essa falha ocorre porque o locatário não habilitou as compras do Azure Marketplace. Siga os passos em Ativar compras no Azure Marketplace para ativar compras no Azure Marketplace.
Problema: a implantação de um espaço de trabalho quântico ou a implantação de uma conta de armazenamento falha com um dos seguintes erros:
- Espaço de trabalho: "A operação de escrita de recursos não foi concluída com êxito, porque atingiu o estado de provisionamento terminal 'Fracassou'".
- Conta de armazenamento: "A implantação do modelo falhou devido a violação de política".
Esse problema pode ocorrer se sua política de segurança de assinatura bloquear a criação de contas de armazenamento que tenham acesso público habilitado. O serviço Azure Quantum suporta apenas contas de armazenamento através do acesso público à Internet.
Para resolver isso, trabalhe com o administrador da assinatura para obter uma exceção para a conta de armazenamento que você deseja usar.