Solução de problemas no Azure Quantum

Ao trabalhar com o serviço Azure Quantum, você pode enfrentar problemas de conexão ou de trabalho. Este artigo explica como solucionar esses problemas.

Problemas de conexão do espaço de trabalho

Problema: não consigo me autenticar no Azure Quantum com pytket-azure

Ao tentar autenticar para Azure Quantum com o pacote pytket-azure em um ambiente de CI usando as variáveis de ambiente "AZURE_TENANT_ID", "AZURE_CLIENT_ID" e "AZURE_CLIENT_SECRET", você poderá encontrar o seguinte erro:

Code: InsufficientPermissions
Message: There are not enough permissions to perform this operation.

Para resolver esse problema, use uma cadeia de conexão e a variável de ambiente "AZURE_QUANTUM_CONNECTION_STRING" em vez de se autenticar. Para obter mais informações, consulte Conectar com uma cadeia de conexão.

connection_string = "" # Add your connection string

import os 

os.environ["AZURE_QUANTUM_CONNECTION_STRING"] = connection_string 

Problemas na submissão de tarefas

Problema: não consigo encontrar o target que quero enviar meu trabalho para

Se o Azure Quantum target em que você deseja executar seu trabalho não estiver na lista target disponível, atualize para a versão mais recente do Quantum Development Kit (QDK) para Visual Studio Code (VS 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'

Para resolver esse problema, siga estas etapas:

  1. Entre no portal Azure e autentique sua conta.
  2. Vá para o workspace do Quantum para o qual você está tentando enviar um trabalho.
  3. No painel de navegação do workspace, selecione Controle de acesso (IAM).
  4. Selecione o botão Exibir meu acesso . O painel de atribuições é aberto.
  5. Na coluna Função da tabela Atribuições de função, verifique se você tem a função Proprietário ou Colaborador .
  6. Se você não tiver nenhuma das funções, peça ao administrador da assinatura para atribuir a você a função de Proprietário ou Colaborador para esse workspace.

Problema: "AuthorizationFailure – Esta solicitação não está autorizada a executar esta operação"

Se você receber essa mensagem mesmo quando tiver 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 dá suporte apenas a contas de armazenamento que têm acesso público à Internet.

Para verificar as configurações da conta de armazenamento, siga estas etapas:

  1. Entre no Azure portal.
  2. Vá para o seu espaço de trabalho do Quantum.
  3. Na página Visão geral , selecione a conta de Armazenamento.
  4. No painel de navegação, expanda a lista suspensa Segurança + Rede e selecione Rede.
  5. Na seção Acesso à rede pública da guia Acesso público , selecione o botão Gerenciar .
  6. Para a configuração de acesso à rede pública , selecione Habilitar. Para a configuração de escopo de acesso à rede pública , selecione Habilitar em todas as redes.
  7. Selecione o botão Salvar .

Problema: "Falha ao compilar o programa" ao enviar um programa Q# de CLI do Azure

Ao enviar um trabalho com o comando az quantum submit CLI do Azure, 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)

Esse erro ocorre quando há um problema com o programa Q# que faz com que a compilação falhe. Verifique se o código Q# tem a sintaxe adequada.

Problema: erro do compilador "Número incorreto de parâmetros de porta"

Quando você envia um trabalho para o Quantinuum de um ambiente de Jupyter Notebook ou CLI local e está usando o tradutor herdado do QASM (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

Esse erro ocorre quando uma vírgula "" ou outro caractere fora do período é usado como um separador decimal. Substitua todos os separadores decimais fora do período por períodos ".". Por exemplo:

// 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"

Ao executar 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

Esse erro indica que você define o perfil QIR (representação intermediária quântica) target como Base quando a função requer o perfil irrestritotarget . Se você não especificar um tipo de perfil target, o compilador definirá automaticamente target como Irrestrito.

Proibido: a operação retornou o código de status inválido 'Proibido'

Ao enviar seu primeiro trabalho, você pode obter um 'forbidden' código de erro.

Esse problema ocorre quando você cria um novo workspace no portal do Azure e Azure Quantum falha ao concluir a atribuição de função que vincula o workspace à conta de armazenamento especificada. Isso pode acontecer quando você fecha a guia ou o navegador da Web antes que a criação do espaço de trabalho seja concluída.

Para verificar se você está enfrentando um problema relacionado à atribuição de função, siga estas etapas:

  1. Vá para o espaço de trabalho Quantum no portal do Azure.
  2. Na página Visão geral , selecione a conta de Armazenamento.
  3. No painel de navegação, selecione Controle de Acesso (IAM).
  4. Escolha a guia Atribuições de função .
  5. Na coluna Função, verifique se a conta de armazenamento do seu workspace possui as funções Colaborador da Conta de Armazenamento e Colaborador de Dados do Blob de Armazenamento.

Se o workspace não tiver essas duas funções na conta de armazenamento, siga um destes procedimentos:

  • Crie um novo workspace e verifique se a criação do workspace é concluída antes de fechar a janela ou a guia do navegador da Web.
  • Atribua as funções Colaborador da Conta de Armazenamento e Colaborador de Dados de Blob de Armazenamento para o seu espaço de trabalho na conta de armazenamento.

Problema: o trabalho falha devido ao código de erro: QIRPreProcessingFailed

Quando você envia um trabalho para um Rigetti target e o trabalho falha, você pode ver a seguinte mensagem de erro no console Job management para seu espaço de trabalho quântico 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

Esse erro pode ser causado por um conflito de dependência com uma versão anterior de pyqir ou qiskit-qir. Desinstale todas as versões do pyqir, pyqir-* e qiskit-qir no computador local e, em seguida, instale ou atualize a biblioteca Python qdk com os extras azure e qiskit:

pip install --upgrade "qdk[azure,qiskit]"

Problema: Recuperação de informações básicas sobre trabalhos falhados

Quando você envia um trabalho para um hardware target, seu trabalho pode ficar na fila por várias horas ou dias antes que o trabalho falhe.

Para recuperar mais informações sobre a falha do trabalho, siga um destes procedimentos:

  • Para exibir a saída do trabalho ou a mensagem de erro, use o método get_results() do módulo qdk.azure Python:

    job.get_results()
    
  • No espaço de trabalho do Quantum no portal do Azure, acesse o painel Gerenciamento de Trabalhos no menu suspenso Operações e escolha o trabalho Nome para abrir o painel de detalhes do trabalho.

  • No seu workspace Quantum no portal Azure, vá para o painel Providers no dropdown Operations. Verifique se o target hardware está disponível. Se o target status estiver Degradado, as tarefas poderão permanecer na fila por mais tempo do que o normal. Às vezes, os trabalhos são processados, mas às vezes eles ultrapassam o tempo limite e retornam um erro de target indisponível.

Problema: Azure Quantum me pede para me autenticar quando me conecto programaticamente ao meu workspace

Se você estiver usando o SDK do Azure Quantum Python e estiver se conectando ao seu workspace usando a classe AzureQuantumProvider, poderá experimentar um pop-up para se autenticar no Azure sempre que executar o script.

Esse pop-up ocorre porque o token de segurança é redefinido sempre que você executa o script.

Para resolver esse problema, execute az login do CLI do Azure. Para obter mais informações, consulte az login.

Problemas na criação do workspace do Azure Quantum

Você pode enfrentar os seguintes problemas ao criar um workspace do Quantum no portal do Azure.

Problema: você não pode acessar o formulário de criação do workspace no portal do Azure e é solicitado que você se inscreva para uma assinatura em vez disso

Esse problema ocorre porque você não tem uma assinatura de Azure ativa.

Ao se inscrever para uma assinatura do Azure com 30 dias de avaliação gratuita, você obtém créditos gratuitos do Azure. Depois de usar todos os seus créditos gratuitos ou após 30 dias de inscrição, você precisará atualizar para uma assinatura pagamento conforme o uso para continuar usando os serviços do Azure Quantum. Quando você tem uma assinatura ativa, o portal Azure permite que você acesse o formulário de criação do workspace.

Para ver uma lista de suas assinaturas e funções associadas, consulte Verificar suas assinaturas.

Observação

Os créditos do Azure da assinatura de teste gratuito de 30 dias não são elegíveis para uso em provedores de hardware quântico.

Problema: a opção de criação rápida não está disponível

Você deve ser proprietário de uma assinatura para usar a opção De criação rápida . Para ver uma lista de suas assinaturas e funções associadas, consulte Verificar suas assinaturas. Se você for um Colaborador de assinatura, poderá usar a opção de criação avançada para criar um workspace.

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 da assinatura, do grupo de recursos ou da conta de armazenamento. Para obter mais informações sobre os níveis de acesso necessários, consulte Requisitos de função para criar um workspace.

Problema: uma mensagem de erro "Falha na Validação de Implantação" é exibida quando você escolhe 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 da assinatura, do grupo de recursos ou da conta de armazenamento. Para obter mais informações sobre os níveis de acesso necessários, consulte Requisitos de função para criar um workspace.

Se você recebeu acesso recentemente, talvez seja necessário atualizar a página. As novas atribuições de função podem levar até uma hora para entrar em vigor nas permissões em cache em toda a pilha.

Problema: você não vê um provedor de hardware quântico específico na guia Provedores

Esse problema ocorre porque o provedor não dá suporte à região de cobrança na qual sua assinatura está definida. Para obter uma lista de provedores e sua disponibilidade por país/região, consulte Disponibilidade global de provedores de Azure Quantum.

Problema: a criação ou a adição/remoção de provedores do workspace falham com "ResourceDeploymentFailure" ou "ProviderDeploymentFailure"

Esse problema pode incluir mais detalhes, como "ResourceDeploymentFailure - A operação de recurso 'AzureAsyncOperationWaiting' foi concluída com o estado de provisionamento de terminal 'Failed'.", ou "ProviderDeploymentFailure - Falha ao criar um plano para o provedor: <Nome do Provedor>".

Essa falha ocorre porque o locatário não habilitou compras Azure Marketplace. Siga as etapas em Habilitar compras do Azure Marketplace para habilitar compras no Azure Marketplace.

Problema: Falha na implantação de um espaço de trabalho quântico ou conta de armazenamento

Ao tentar implantar uma conta de armazenamento ou workspace do Quantum, você poderá receber um dos seguintes erros:

  • Workspace: "A operação de gravação de recursos não foi concluída com êxito, porque atingiu o estado de provisionamento de terminal 'Falha'".
  • Conta de armazenamento: "A implantação do modelo falhou devido à violação de política."

Esse problema poderá ocorrer se a política de segurança da assinatura bloquear a criação de contas de armazenamento que tenham acesso público habilitado. O serviço Azure Quantum dá suporte apenas a contas de armazenamento que têm 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.