Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
När du arbetar med Azure Quantum-tjänsten kan du uppleva anslutningsproblem eller problem relaterade till jobb. I den här artikeln beskrivs hur du felsöker dessa problem.
Problem med anslutning till arbetsyta
Problem: Jag kan inte autentisera mot Azure Quantum med pytket-azure
När du försöker autentisera för att Azure Quantum med paketet pytket-azure i en CI-miljö med hjälp av miljövariablerna "AZURE_TENANT_ID", "AZURE_CLIENT_ID" och "AZURE_CLIENT_SECRET" kan följande fel uppstå:
Code: InsufficientPermissions
Message: There are not enough permissions to perform this operation.
Lös problemet genom att använda en reťazec pripojenia och miljövariabeln "AZURE_QUANTUM_CONNECTION_STRING" för att autentisera i stället. Mer information finns i Anslut med en anslutningssträng.
connection_string = "" # Add your connection string
import os
os.environ["AZURE_QUANTUM_CONNECTION_STRING"] = connection_string
Problem med att skicka jobb
Problem: Jag kan inte hitta det target som jag vill skicka mitt jobb till
Om Azure Quantum target som du vill köra jobbet på inte finns i listan target uppdaterar du till den senaste versionen av Quantum Development Kit (QDK) för Visual Studio Code (VS Code). Mer information finns i Uppdatera QDK.
Problem: Åtgärden returnerar en ogiltig statuskod "Obehörig"
Följ dessa anvisningar för att lösa problemet:
- Logga in på Azure-portalen och autentisera ditt konto.
- Gå till den Quantum-arbetsyta som du försöker skicka ett jobb till.
- Välj Åtkomstkontroll (IAM) i arbetsytans navigeringsfönster.
- Välj knappen Visa min åtkomst . Fönstret Tilldelningar öppnas.
- I kolumnen Roll i tabellen Rolltilldelningar kontrollerar du om du har rollen Ägare eller Deltagare .
- Om du inte har någon av rollerna ber du prenumerationsadministratören att tilldela dig rollen Ägare eller Deltagare för den här arbetsytan.
Problem: "AuthorizationFailure – den här begäran har inte behörighet att utföra den här åtgärden"
Om du får det här meddelandet även när du har en giltig anslutning till Azure Quantum-tjänsten kan lagringskontot konfigureras för att blockera åtkomst till offentliga nätverk. Tjänsten Azure Quantum stöder endast lagringskonton som har offentlig Internetåtkomst.
Följ dessa steg för att kontrollera inställningarna för lagringskontot:
- Logga in på Azure-portalen.
- Gå till din Quantum-arbetsyta.
- På sidan Översikt väljer du lagringskontot.
- I navigeringsfönstret expanderar du listrutan Säkerhet + nätverk och väljer Nätverk.
- I avsnittet Åtkomst till offentligt nätverk på fliken Offentlig åtkomst väljer du knappen Hantera .
- För inställningen Åtkomst till offentligt nätverk väljer du Aktivera. För inställningen Offentligt nätverksåtkomst, välj Aktivera från alla nätverk.
- Välj Spara-knappen.
Problem: "Det gick inte att kompilera programmet" när du skickar ett Q#-program från Azure CLI
När du skickar ett jobb med kommandot az quantum submit Azure CLI kan följande felmeddelande visas:
az quantum job submit ...
Failed to compile program.
Command ran in 21.181 seconds (init: 0.457, invoke: 20.724)
Det här felet uppstår när det finns ett problem med Q#-programmet som gör att kompilering misslyckas. Kontrollera att Q#-koden har rätt syntax.
Problem: Kompilatorfel "Fel antal grindparametrar"
När du skickar ett jobb till Quantinuum från en lokal Jupyter Notebook- eller CLI-miljö och du använder den äldre QASM-översättaren (OPENQASM 2.0) kan det här felet uppstå:
Job ID <jobId> failed or was cancelled with the message: 1000: Compile error: [<file, line>] Wrong number of gate parameters
Det här felet uppstår när ett kommatecken "" eller ett annat tecken som inte är period används som decimaltecken. Ersätt alla decimalavgränsare som inte är periodiska med perioderna ".". Som exempel:
// replace this line:
rx(1,5707963267948966) q[0];
// with this:
rx(1.5707963267948966) q[0];
Problem: Kompilatorfelet "inte tillgängligt för den aktuella kompileringskonfigurationen"
När du kör en Q#-kodcell i en Jupyter Notebook i VS Code kan felet uppstå:
<function name> not found. Found a matching item `<function name>' that is not available for the current compilation configuration
Det här felet anger att du anger QIR-profilen (kvantintermediär representation) target till Bas när funktionen kräver den obegränsadetarget profilen. Om du inte anger någon target profiltyp anger target kompilatorn automatiskt till Obegränsad.
Problem: Åtgärden returnerade en ogiltig statuskod "Förbjuden"
När du skickar ditt första jobb kan du få en 'forbidden' felkod.
Det här problemet uppstår när du skapar en ny arbetsyta i Azure-portalen och Azure Quantum inte kan slutföra rolltilldelningen som länkar arbetsytan till det angivna lagringskontot. Detta kan inträffa när du stänger fliken eller webbläsaren innan arbetsytan har skapats.
Följ dessa steg för att kontrollera att du stöter på det här rolltilldelningsproblemet:
- Gå till din Quantum-arbetsyta i Azure-portalen.
- På sidan Översikt väljer du lagringskontot.
- I navigeringsfönstret väljer du Access Control (IAM).
- Välj fliken Rolltilldelningar .
- I kolumnen Roll kontrollerar du om arbetsytans lagringskonto har Lagringskontodeltagare-rollen och Lagringsblobsdatadeltagare-rollen.
Om arbetsytan inte har dessa båda roller kopplade till lagringskontot gör du något av följande:
- Skapa en ny arbetsyta och se till att arbetsytan har skapats innan du stänger webbläsarfönstret eller fliken.
- Tilldela rollerna Lagringskontodeltagare och Lagringsblobdatadeltagare till din arbetsyta på lagringskontot.
Problem: Jobbet misslyckas med felkoden: QIRPreProcessingFailed
När du skickar ett jobb till en Rigetti-target och jobbet misslyckas kan följande felmeddelande visas i Job-hantering-konsolen för din Quantum-arbetsyta i Azure-portalen:
Error code: QIRPreProcessingFailed
Error message: No match found for output recording set converter from outputrecordingset.v2.labeled to outputrecordingset.v1.nonlabeled
Det här felet kan orsakas av en beroendekonflikt med en tidigare version av pyqir eller qiskit-qir. Avinstallera alla versioner av pyqir, pyqir-* och qiskit-qir på den lokala datorn och installera eller uppdatera sedan biblioteket qdk Python med azure och qiskit extrafunktioner:
pip install --upgrade "qdk[azure,qiskit]"
Problem: Hämta grundläggande information om misslyckade jobb
När du skickar ett jobb till en maskinvara targetkan jobbet sitta i kön i flera timmar eller dagar innan jobbet misslyckas.
Om du vill hämta mer information om jobbfelet gör du något av följande:
Om du vill visa jobbutdata eller felmeddelandet använder du metoden
get_results()från modulenqdk.azurePython:job.get_results()I din Quantum-arbetsyta i Azure-portalen gå till fönstret Job Management från listrutan Operations och välj sedan jobbet Name för att öppna Jobbsinformation.
I din Quantum-arbetsyta i Azure-portalen går du till fönstret Providers från listrutan Operations. Kontrollera att maskinvaran target är tillgänglig. Om statusen target är Degraderad kan jobben ligga kvar i kön längre än vanligt. Ibland bearbetas jobben, men ibland överskrider de tidsgränsen och returnerar ett felmeddelande om att de är otillgängliga.
Problem: Azure Quantum ber mig att autentisera när jag ansluter programmatiskt till min arbetsyta
Om du använder Azure Quantum Python SDK och ansluter till din arbetsyta med klassen AzureQuantumProvider kan det hända att du får ett popup-fönster för att autentisera till Azure varje gång du kör skriptet.
Det här popup-fönstret inträffar eftersom din säkerhetstoken återställs varje gång du kör skriptet.
Lös problemet genom att köra az login från Azure CLI. Mer information finns i az login.
Microsoft Problem med kvantresursberäknare
Följande problem kan orsaka att resursuppskattningsjobb misslyckas.
Problem: Kvantalgoritmen måste innehålla minst ett T-tillstånd eller mått
För att ta hänsyn till mappningen av ett godtyckligt kvantprogram till en 2D-matris med logiska kvantbitar förutsätter resursberäknaren att Parallell syntes Sekventiell Pauli-beräkning (PSSPC) utförs i indataprogrammet. I det tillvägagångssättet kommuteras alla Clifford-operationer genom alla T-grindar, rotationsportar och mätoperationer, vilket lämnar en enda Clifford-operation som kan utvärderas effektivt klassiskt. Därför kräver ett kvantprogram som inte innehåller T-tillstånd, till exempel från T-grindar eller rotationsportar, eller mätoperationer inga fysiska kvantberäkningsresurser. Mer information om parallell syntes sekventiell Pauli-beräkning finns i arXiv:2211.07629, bilaga D.
Error message: Algorithm requires at least one T state or measurement to estimate resources
Problem: Felfrekvensen för fysisk T-grind är för hög
Felfrekvensen för logiskt T-tillstånd beror på felbudgeten och antalet T-tillstånd i kvantprogrammet. T-fabriker används för att skapa T-tillstånd med den nödvändiga logiska T-tillståndsfelfrekvensen från fysiska T-grindar, som har en fysisk T-grindfelfrekvens. Normalt är felfrekvensen för den fysiska T-grinden högre än den nödvändiga logiska T-grindens felfrekvens. I vissa scenarier är felfrekvensen för den fysiska T-grinden betydligt högre jämfört med den krävda felfrekvensen för logiskt T-tillstånd, så att ingen T-fabrik kan hittas som kan ge logiska T-tillstånd av tillräcklig kvalitet.
Error message: No T factory can be found, because the required logical T state error rate is too low
Lös problemet genom att göra något av följande:
- Öka felbudgeten, antingen summan eller delen för T-tillstånd.
- Minska felfrekvensen för den fysiska T-grinden i kvantbitsparametrarna.
- Minska antalet T-tillstånd i kvantprogrammet genom att minska T-portar, rotationsportar och Toffoli-portar.
Problem: Felfrekvensen för fysisk T-grind är för låg
När felfrekvensen för den fysiska T-grinden är lägre än den nödvändiga logiska T-tillståndsfelfrekvensen behöver du ingen T-fabrik eftersom den fysiska T-grindens felfrekvens är tillräcklig. Du måste dock fortfarande överväga effekten av överföringsenheter som överför de fysiska T-tillstånden från kodavstånd 1 till algoritmens kodavstånd (se arXiv:2211.07629, bilaga C). I allmänhet är kostnaden för överföringsenheter försumbar i närvaro av T-fabriker.
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.
Lös problemet genom att göra något av följande:
- Öka felfrekvensen för den fysiska T-grinden i kvantbitsparametrarna till den obligatoriska felfrekvensen för logiskt T-tillstånd.
- Minska felbudgeten eller bara den del som gäller T-tillstånden.
Problem: Felfrekvensen måste vara ett tal mellan 0 och 1
Felfrekvenser kan bara ha ett värde mellan 0 och 1. För att felkorrigeringen ska vara effektiv måste den fysiska felfrekvensen för grindar och mått ligga under ett värde som är beroende av egenskaperna för felkorrigeringskoden och den logiska felfrekvens som krävs.
Lös problemet genom att göra något av följande:
- Öka felbudgeten, antingen total eller delen för logiska fel.
- Minska de fysiska felfrekvenserna i kvantbitsparametrarna.
Problem: Begränsningarna för maximal körtid och maximalt antal kvantbitar är ömsesidigt uteslutande.
Resursberäknaren accepterar bara en av maxDuration eller maxPhysicalQubits begränsningarna. Om du anger både maxDuration och maxPhysicalQubitsbegränsningar för ett enda jobb returnerar BothDurationAndPhysicalQubitsProvided jobbet felet.
Problem: Kör containern för QIR-uppskattningsantal: odefinierad symbol __quantum__rt__result_record_output
Du får det här felet när du genererar QIR för Qiskit-kretsar med paketet qiskit_qir Python och du inte anger parametern record_output till False.
Undvik det här felet genom att göra något av följande:
- Använd modulen
qdk.azurePython för att skicka Qiskit-kretsar till Azure Quantum (rekommenderas). - När du använder paketet
qiskit_qirPython anger du parameternrecord_outputtillFalseinnan du skickar kretsen.
problem med att skapa Azure Quantum arbetsyta
Du kan få följande problem när du skapar en Quantum-arbetsyta i Azure portalen.
Problem: Du kan inte komma åt formuläret för att skapa arbetsytor i Azure-portalen och du uppmanas att registrera dig för en prenumeration i stället
Det här problemet beror på att du inte har någon aktiv Azure prenumeration.
När du registrerar dig för en 30 dagars kostnadsfri utvärderingsversion Azure prenumeration får du kostnadsfri Azure krediter. När du har använt alla dina kostnadsfria krediter, eller 30 dagar efter att du har registrerat dig, måste du uppgradera till en betala per användning-prenumeration för att fortsätta använda Azure Quantum tjänster. När du har en aktiv prenumeration kan du på Azure-portalen komma åt formuläret för att skapa arbetsytor.
En lista över dina prenumerationer och associerade roller finns i Kontrollera dina prenumerationer.
Kommentar
Azure-krediter från den 30 dagar långa kostnadsfria Azure-utvärderingsprenumerationen är inte berättigade att användas på kvantmaskinvaruleverantörer.
Problem: Alternativet Snabbskapande är inte tillgängligt
Du måste vara ägare till en prenumeration för att kunna använda alternativet Snabbskapande . En lista över dina prenumerationer och associerade roller finns i Kontrollera dina prenumerationer. Om du är prenumerationsdeltagare kan du använda alternativet Avancerat skapa för att skapa en arbetsyta.
Problem: Du kan inte skapa eller välja en resursgrupp eller ett lagringskonto
Det här problemet beror på att du inte har den auktorisering som krävs på prenumerations-, resursgrupps- eller lagringskontonivå. Mer information om de åtkomstnivåer som krävs finns i Rollkrav för att skapa en arbetsyta.
Problem: Felmeddelandet "Distributionsverifieringen misslyckades" visas när du väljer Skapa
Det här felmeddelandet kan innehålla mer information, till exempel "Klienten har inte behörighet att utföra åtgärden".
Det här problemet beror på att du inte har den auktorisering som krävs på prenumerations-, resursgrupps- eller lagringskontonivå. Mer information om de åtkomstnivåer som krävs finns i Rollkrav för att skapa en arbetsyta.
Om du nyligen har beviljats åtkomst kan du behöva uppdatera sidan. Nya rolltilldelningar kan ta upp till en timme att träda i kraft på grund av cachelagrade behörigheter i systemstacken.
Problem: Du ser ingen specifik kvantmaskinvaruprovider på fliken Providers
Det här problemet beror på att providern inte har stöd för den faktureringsregion som din prenumeration har angetts i. En lista över leverantörer och deras tillgänglighet efter land/region finns i Global tillgänglighet för Azure Quantum leverantörer.
Problem: Skapande av eller borttagning av arbetsyta eller lägg till/ta bort leverantörer misslyckas med "ResourceDeploymentFailure" eller "ProviderDeploymentFailure"
Det här problemet kan innehålla mer information, till exempel "ResourceDeploymentFailure – resursåtgärden "AzureAsyncOperationWaiting" som slutfördes med terminaletableringstillståndet "Misslyckades"." eller "ProviderDeploymentFailure – Det gick inte att skapa en plan för providern: <Providerns> namn".
Det här felet beror på att klientorganisationen inte aktiverade Azure Marketplace inköp. Följ stegen i Inaktivera Azure Marketplace inköp för att aktivera Azure Marketplace inköp.
Problem: Distributionen av en kvantarbetsyta eller ett lagringskonto misslyckas
När du försöker distribuera en Quantum-arbetsyta eller ett lagringskonto kan du få något av följande fel:
- Arbetsyta: "Resursskrivningsåtgärden kunde inte slutföras eftersom den nådde terminaletableringstillståndet "Misslyckades".
- Lagringskonto: "Malldistributionen misslyckades på grund av principöverträdelse".
Det här problemet kan inträffa om din prenumerationssäkerhetsprincip blockerar skapandet av lagringskonton som har offentlig åtkomst aktiverad. Tjänsten Azure Quantum stöder endast lagringskonton som har offentlig Internetåtkomst.
Lös problemet genom att kontakta prenumerationsadministratören för att få ett undantag för det lagringskonto som du vill använda.