Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Quando trabalha com o serviço Azure Quantum, pode ter problemas de ligação ou relacionados com o trabalho. Este artigo explica como resolver estes problemas.
Problemas de ligação ao espaço de trabalho
Problema: Não consigo autenticar para Azure Quantum com pytket-azure
Quando tenta autenticar para Azure Quantum com o pacote pytket-azure num ambiente CI usando as variáveis de ambiente "AZURE_TENANT_ID", "AZURE_CLIENT_ID" e "AZURE_CLIENT_SECRET", pode encontrar o seguinte erro:
Code: InsufficientPermissions
Message: There are not enough permissions to perform this operation.
Para resolver este problema, use um cadeia de ligação e a variável de ambiente "AZURE_QUANTUM_CONNECTION_STRING" para autenticar em vez disso. Para mais informações, consulte Conectar com uma cadeia de ligação.
connection_string = "" # Add your connection string
import os
os.environ["AZURE_QUANTUM_CONNECTION_STRING"] = connection_string
Questões de submissão de tarefas
Problema: Não consigo encontrar a target pessoa a quem queira submeter o meu emprego
Se o Azure Quantum target em que queres executar o teu trabalho não estiver na lista disponível target, então atualiza 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 este problema, siga estes passos:
- Inicia sessão no portal Azure e autentica a tua conta.
- Vai ao espaço de trabalho da Quantum para onde estás a tentar submeter um trabalho.
- No painel de navegação do espaço de trabalho, selecione controlo de acesso (IAM).
- Selecione o botão Ver o meu acesso . O painel de tarefas abre-se.
- Na coluna Função da tabela de atribuições de Funções , verifique se tem a função de Proprietário ou de Contribuidor .
- Se não tiver nenhum dos papéis, peça ao administrador da subscrição para lhe atribuir o papel de Proprietário ou Contribuinte para este espaço de trabalho.
Problema: "AuthorizationFailure - Esta requisição não está autorizada a executar esta operação"
Se receber esta mensagem mesmo quando tem uma ligação válida ao serviço Azure Quantum, então a conta de armazenamento pode estar configurada para bloquear o acesso à rede pública. O serviço Azure Quantum só suporta contas de armazenamento que tenham acesso público à internet.
Para verificar as definições da conta de armazenamento, siga estes passos:
- Inicie sessão no portal Azure.
- Vai ao teu espaço de trabalho Quantum.
- Na página de Visão Geral , selecione a conta de Armazenamento.
- No painel de navegação, expanda o menu suspenso Segurança + redes e selecione Rede.
- Na secção de acesso à rede pública do separador de acesso público , selecione o botão Gerir .
- Para a definição de acesso à rede pública , selecione Ativar. Para a definição de âmbito de acesso à rede pública , selecione Ativar a partir de todas as redes.
- Selecione o botão Salvar .
Problema: "Falhou a compilação do programa" quando submete um programa Q# a partir do CLI do Azure
Quando submete uma tarefa com o comando az quantum submit CLI do Azure, 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. Certifica-te de que o teu código Q# tem a sintaxe correta.
Problema: Erro do compilador "Número errado de parâmetros de porta"
Quando submete um trabalho para a Quantinuum a partir de um ambiente local Jupyter Notebook ou CLI, e está a usar o tradutor legado QASM (OPENQASM 2.0), 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 carácter não pontual é usado como separador decimal. Substitua todos os separadores decimais que não sejam de período por pontos ".". 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"
Quando executa uma célula de código Q# num Jupyter Notebook no VS Code, 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 definiste o perfil QIR (representação intermédia quântica) target para Base quando a função requer o perfil Irrestritotarget . Se não especificares um target tipo de perfil, então o compilador define automaticamente o targetpara Unrestricted.
Problema: a operação devolveu um código de estado inválido 'Proibido'
Quando submetes o teu primeiro emprego, podes receber um 'forbidden' código de erro.
Este problema ocorre quando cria um novo espaço de trabalho no portal do Azure e o Azure Quantum não completa a atribuição de funções que liga o espaço de trabalho à conta de armazenamento especificada. Isto pode acontecer quando fechas o separador ou o navegador antes de a criação do espaço de trabalho estar concluída.
Para verificar se está a ter este problema de atribuição de funções, siga estes passos:
- Vai ao teu espaço de trabalho Quantum no portal do Azure.
- Na página de Visão Geral , selecione a conta de Armazenamento.
- No painel de navegação, selecione Controlo de Acesso (IAM).
- Escolha o separador Atribuição de Funções.
- Na coluna Função, verifique se a conta de armazenamento do seu espaço de trabalho tem a função de Contribuidor de Conta de Armazenamento e a função de Contribuidor de Dados Blob de Armazenamento.
Se o espaço de trabalho não tiver ambas as funções na conta de armazenamento, então deve executar uma das seguintes ações:
- Crie um novo espaço de trabalho e certifique-se de que a criação do espaço está concluída antes de fechar a janela ou o separador do navegador.
- Atribui os papéis de Contribuidor da Conta de Armazenamento e Contribuidor de Dados de Blob de Armazenamento ao teu espaço de trabalho na conta de armazenamento.
Problema: o trabalho falha devido ao código de erro: QIRPreProcessingFailed
Quando submete um trabalho ao Rigetti target e o trabalho falha, pode ver a seguinte mensagem de erro na consola de Gestão de Trabalhos para o seu espaço de trabalho Quantum no portal 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. Desinstala todas as versões de pyqir, pyqir-* e qiskit-qir na tua máquina local e depois instala ou atualiza a biblioteca qdk Python com os extras azure e qiskit:
pip install --upgrade "qdk[azure,qiskit]"
Problema: obtenção de informações básicas sobre trabalhos com falha
Quando submetes um trabalho a um hardware target, o teu trabalho pode ficar na fila durante várias horas ou dias antes de falhar.
Para obter mais informações sobre o fracasso do trabalho, faça uma das seguintes ações:
Para visualizar a saída do trabalho ou a mensagem de erro, use o método
get_results()do móduloqdk.azurePython:job.get_results()No seu espaço de trabalho Quantum no portal Azure, aceda ao painel Gestão de Trabalhos no menu suspenso Operações e depois seleccione o nome do Trabalho para abrir o painel Detalhes do Trabalho.
No teu espaço de trabalho Quantum no portal Azure, acede ao painel Providers a partir do menu suspenso Operations. Verifique se o target hardware está disponível. Se o target estado for Degradado, os trabalhos podem ficar na fila 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: O Azure Quantum pede-me para autenticar quando me ligo programaticamente ao meu espaço de trabalho
Se estiveres a usar o SDK Azure Quantum Python e estiveres a ligar-te ao teu espaço de trabalho usando a classe AzureQuantumProvider, podes aparecer um pop-up para autenticar a Azure sempre que executares o teu script.
Este pop-up acontece porque o seu token de segurança é reiniciado sempre que executa o script.
Para resolver este problema, execute az login a partir do CLI do Azure. Para obter mais informações, consulte az login.
Problemas com o estimador de recursos Microsoft Quantum
Os seguintes problemas podem fazer com que os trabalhos de estimativa de recursos fracassem.
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 em uma matriz 2D de qubits lógicos, o estimador de recursos assume que a Computação Sequencial de Pauli por 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 lógica de erro dos estados T depende do orçamento de erro e do número de estados T no programa quântico. As 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 física de porta T. 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
Para resolver este problema, faça uma das seguintes medidas:
- Aumente o orçamento de erro, seja o total ou a parte para os 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
Quando a taxa de erro da porta T física é inferior à taxa de erro exigida para o estado lógico T, não é necessária uma fábrica T, pois a taxa de erro da porta T física é suficiente. No entanto, ainda é necessário considerar o impacto das unidades de transferência que transferem os estados físicos T da distância do código 1 para a distância do 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.
Para resolver este problema, faça uma das seguintes medidas:
- 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 só podem ter valores entre 0 e 1. Para que a correção de erros seja eficaz, a taxa física de erro para portas e medições deve estar abaixo de um valor que dependa das propriedades do código de correção de erros e da taxa lógica de erro necessária.
Para resolver este problema, faça uma das seguintes medidas:
- 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 das maxDuration ou maxPhysicalQubits restrições. Se fornecer ambas as maxDuration e maxPhysicalQubits restrições para um único trabalho, então o trabalho devolve o erro BothDurationAndPhysicalQubitsProvided.
Problema: executar o contêiner de contagem de estimativa QIR: símbolo indefinido __quantum__rt__result_record_output
Tens este erro quando geras QIR para circuitos Qiskit com o pacote qiskit_qir Python e não defines o parâmetro record_output para False.
Para evitar este erro, faça uma das seguintes ações:
- Use o módulo
qdk.azurePython para submeter circuitos Qiskit a Azure Quantum (recomendado). - Quando usar o pacote
qiskit_qirPython, defina o parâmetrorecord_outputparaFalseantes de submeter o seu circuito.
Problemas de criação de espaços de trabalho no Azure Quantum
Pode ter os seguintes problemas ao criar um espaço de trabalho Quantum no portal do Azure.
Problema: Não pode aceder ao formulário de criação de espaço de trabalho no portal do Azure, e é solicitado a subscrever uma subscrição em vez disso
Este problema ocorre porque não tens uma subscrição ativa do Azure.
Quando se inscreve num teste Azure subscrição gratuita de 30 dias, recebe créditos de Azure gratuitos. Depois de usares todos os teus créditos gratuitos, ou 30 dias depois de te inscreveres, precisas de atualizar para uma subscrição pay-as-you-go para continuares a usar Azure Quantum serviços. Quando tem uma subscrição ativa, o portal do Azure permite-lhe aceder ao formulário de criação do espaço de trabalho.
Para ver uma lista das suas subscrições e funções associadas, consulte Verificar as suas subscrições.
Nota
Os créditos Azure da subscrição de teste gratuita de 30 dias do Azure não são elegíveis para utilização em fornecedores de hardware quântico.
Problema: a opção Criação rápida não está disponível
Deve ser proprietário de uma subscrição para usar a opção de 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: Aparece uma mensagem de erro "Validação de Implementação Falhada" quando 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 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 recentemente lhe foi concedido o acesso, pode ser necessário atualizar a página. Novas atribuições de funções podem demorar até uma hora a entrar em vigor em relação às permissões em cache em toda a arquitetura.
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 onde a sua subscrição está definida. Para uma lista de prestadores e a sua disponibilidade por país/região, consulte Disponibilidade global de prestadores de 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>".
Esta falha ocorre porque o inquilino não ativou as compras no Azure Marketplace. Siga os passos em Permitir compras Azure Marketplace para permitir compras Azure Marketplace.
Problema: Falha na implementação de um espaço de trabalho quântico ou conta de armazenamento
Quando tenta implementar um workspace ou conta de armazenamento Quantum, pode receber 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 só suporta contas de armazenamento que tenham 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.