Az Azure Quantum gyakori problémáinak elhárítása
Az Azure Quantum szolgáltatás használatakor előfordulhat, hogy ezek a gyakori problémák merülnek fel. Nézze meg, hogyan oldhatja meg őket.
Csatlakozás a munkaterülethez
Probléma: Nem lehet hitelesítést végezni az Azure Quantumban pytket-azure CI használatával
Ha a "AZURE_TENANT_ID", a "AZURE_CLIENT_ID" és a "AZURE_CLIENT_SECRET" környezeti változók használatával próbál hitelesítést végezni az Azure Quantumban a csomagon keresztül pytket-azure
, a következő hibaüzenet jelenhet meg:
Code: InsufficientPermissions
Message: There are not enough permissions to perform this operation.
A probléma megoldásához próbálkozzon a hitelesítéssel egy kapcsolati sztring és a "AZURE_QUANTUM_CONNECTION_STRING" környezeti változó használatával. További információ: Csatlakozás kapcsolati sztring.
connection_string = "[Copy connection string]"
import os
os.environ["AZURE_QUANTUM_CONNECTION_STRING"] = connection_string
Feladatok beküldése
Probléma: Hiányzik targets
Ha a target feladat futtatásának helye hiányzik az elérhető target listából, valószínűleg frissítenie kell a Quantum Development Kit Visual Studio Code legújabb verziójára. További információ: QDK frissítése.
Probléma: A művelet érvénytelen "Jogosulatlan" állapotkódot ad vissza
A probléma megoldásának lépései:
Nyissa meg az Azure Portalt (https://portal.azure.com) és hitelesítse a fiókját.
A Navigálás területen válassza az Előfizetések lehetőséget, és válassza ki az előfizetést.
Válassza a Hozzáférés-vezérlés (IAM) lehetőséget.
A Hozzáférés ellenőrzése csoportban keresse meg az e-mail-címét, és válassza ki a fiókot.
Nem jelenhet meg tulajdonosi vagy közreműködői szerepkör a listában.
Válassza a Szerepkiosztások lapot.
Feljegyzés
Ha nem látja a Szerepkör-hozzárendelések lapot, előfordulhat, hogy ki kell bontania a portált teljes képernyősre, vagy be kell zárnia a< név-hozzárendelések> panelt.
Válassza a Szerepkör legördülő menüt, válassza a Tulajdonos vagy a Közreműködő lehetőséget, majd adja meg az e-mail-címét, és válassza ki a fiókját.
Válassza a Mentés lehetőséget.
Most már látnia kell a tulajdonosi vagy közreműködői szerepkörrel konfigurált fiókkészletet.
Hozza létre ismét az Azure Quantum-munkaterületet, majd küldjön be egy feladatot az új munkaterületen.
Probléma: "AuthorizationFailure – Ez a kérés nem jogosult a művelet végrehajtására"
Ha egy feladatbeküldés sikertelen lesz ezzel az üzenettel, annak ellenére, hogy érvényes kapcsolattal rendelkezik az Azure Quantum szolgáltatással, a tárfiók konfigurálható úgy, hogy letiltsa a nyilvános hálózati hozzáférést. Az Azure Quantum szolgáltatás csak nyilvános internet-hozzáféréssel támogatja a tárfiókokat.
A tárfiók ellenőrzése:
- Az Azure Portal kvantum-munkaterület lapján válassza az Áttekintés lehetőséget, és válassza ki a tárfiókot.
- A Tárfiók lap Biztonság + hálózatkezelés területén válassza a Hálózatkezelés lehetőséget.
- A Nyilvános hálózati hozzáférés Tűzfalak és virtuális hálózatok lapján győződjön meg arról, hogy az összes hálózat engedélyezése lehetőség van kiválasztva.
Probléma: "Nem sikerült lefordítani a programot", amikor Q#-programot próbál elküldeni a parancssori felületről
Amikor a parancssorba próbál feladatot küldeni a az quantum submit
parancs használatával, a következő hibaüzenet jelenhet meg:
az quantum job submit ...
Failed to compile program.
Command ran in 21.181 seconds (init: 0.457, invoke: 20.724)
Ez a hiba akkor fordul elő, ha a Q#-programmal kapcsolatos probléma miatt a fordítás meghiúsul.
Probléma: "Hibás számú kapuparaméter" fordítóhiba
Amikor egy feladatot egy helyi Jupyter Notebookból vagy parancssori környezetből küld a Quantinuumnak, és az örökölt QASM-fordítót (OPENQASM 2.0) használja, a következő hibaüzenet jelenhet meg:
Job ID <jobId> failed or was cancelled with the message: 1000: Compile error: [<file, line>] Wrong number of gate parameters
Ez a hiba akkor fordul elő, ha a rendszer tizedeselválasztóként egy "" vesszőt vagy egy másik, nem időszakon kívüli karaktert használ, ahogyan az sok nyelvben gyakori. Cserélje le a nem időszakos decimális elválasztójeleket a "." pontra.
// replace this line:
rx(1,5707963267948966) q[0];
// with this:
rx(1.5707963267948966) q[0];
Feljegyzés
Ez a probléma nem fordul elő az Azure Quantum Portal üzemeltetett jegyzetfüzeteiben, csak helyi fejlesztési környezetekben.
Probléma: A fordító "nem érhető el az aktuális fordítási konfigurációhoz" hiba
Amikor Q#-kódcellát futtat egy Jupyter-jegyzetfüzetben a VS Code-ban, a következő hibaüzenet jelenhet meg:
<function name> not found. Found a matching item `<function name>' that is not available for the current compilation configuration
Ez a hiba azt jelzi, hogy a QIR-profil alapszintűre van állítva, és a szóban forgó függvényhez korlátlantarget profil szükséges.target A profil korlátlan értékre való beállításatarget:
- A VS Code Q#-programjában válassza a Q#: QIR-alap lehetőséget az alsó állapotsoron.
- A felső állapotsoron megjelenő beállítások közül válassza a Q#: korlátlan lehetőséget.
Probléma: A művelet érvénytelen "Tiltott" állapotkódot adott vissza
Az első feladat elküldésekor "tiltott" hibakód jelenhet meg.
Ez a probléma a munkaterület létrehozása során léphet fel: Az Azure Quantum nem tudja elvégezni az új munkaterületet a megadott tárfiókhoz összekötő szerepkör-hozzárendelést. Ilyen eset jellemzően akkor fordul elő, amikor a felhasználó még azelőtt bezárja a lapot vagy a webböngésző ablakát, hogy a munkaterület létrehozása befejeződne.
Az alábbi lépések végrehajtásával ellenőrizheti, hogy a szerepkör-hozzárendeléssel kapcsolatos problémába ütközik-e:
- Navigálás az új kvantum-munkaterületre az Azure Portalon
- Az Overview>Essentials>Storage fiók alatt válassza a tárfiók hivatkozását
- A bal oldali navigációs sávon válassza a Hozzáférés-vezérlés (IAM) lehetőséget
- Válassza a Szerepkör-hozzárendelések lehetőséget
- Ellenőrizze, hogy a munkaterület közreműködőként jelenik-e meg
- Ha a munkaterület nem jelenik meg közreműködőként, a következőket teheti:
- Hozzon létre egy új munkaterületet, és várja meg, amíg a munkaterület létrehozása befejeződik, mielőtt bezárja a webböngésző lapját vagy ablakát.
- Adja hozzá a megfelelő szerepkör-hozzárendelést a tárfiókhoz
- Hozzáférés-vezérlés (IAM) > Szerepkör-hozzárendelések hozzáadása
- Szerepkör-közreműködő >
- Hozzáférés hozzárendelése felhasználóhoz, csoporthoz > vagy szolgáltatásnévhez
- Válassza a [Munkaterület neve] lehetőséget >
- Mentés
Probléma: A feladat a következő hibakóddal meghiúsul: QIRPreProcessingFailed
Amikor egy feladatot egy Rigetti-szolgáltatónak küld el, a feladat meghiúsul, és az Azure Portal Feladatkezelési konzolján jelenti:
Error code: QIRPreProcessingFailed
Error message: No match found for output recording set converter from outputrecordingset.v2.labeled to outputrecordingset.v1.nonlabeled
Ezt a hibát a pyqir vagy qiskit-qir korábbi verziójával való függőségi ütközés okozhatja. Távolítsa el a pyqir, a pyqir-*és a qiskit-qir összes verzióját a helyi gépen, majd telepítse vagy frissítse az Azure-quantum Python-csomagot a [qiskit] paraméterrel:
pip install --upgrade azure-quantum[qiskit]
Probléma: A sikertelen feladatok alapvető információinak lekérése
Miután elküldte a feladatot egy hardvernek target, a feladat több órán át, vagy akár egy vagy két napig is az üzenetsorban ülhet, mielőtt sikertelen lesz.
A hibával kapcsolatos további információk lekérése:
get_results()
A feladatobjektumot tartalmazó metódussal megtekintheti a kimenetet vagy a visszaadott hibaüzenetet:
job.get_results()
- Az Azure Portal-munkaterületen válassza az Operations > Job Management elemet, majd a feladat nevét választva nyisson meg egy részletpanelt.
- Az Azure Portal-munkaterületen válassza az Operatív > szolgáltatók lehetőséget. Ellenőrizze a gép rendelkezésre állását target . targets A csökkentett állapotú feladatok a szokásosnál hosszabb ideig maradhatnak az üzenetsorban. Előfordul, hogy a feladatok feldolgozásra kerülnek, de néha időtúllépést okoznak, és elérhetetlen hibát target adnak vissza.
Probléma: A rendszer továbbra is hitelesítést kér, amikor programozott módon csatlakozom a munkaterülethez
Ha az Azure Quantum Python SDK-t használja (például Jupyter-notebookokon belül), és az AzureQuantumProvider osztály használatával csatlakozik a munkaterülethez, a szkript minden futtatásakor előfordulhat, hogy előugró ablak jelenik meg az Azure-ban történő hitelesítéshez.
Ez azért történik, mert a biztonsági jogkivonat minden alkalommal alaphelyzetbe áll, amikor futtatja a szkriptet.
Ezt a problémát az login
az Azure CLI használatával oldhatja meg. További információ: az login.
Probléma: Az azure-quantum csomag frissítése után a "ModuleNotFoundError: No module named qiskit.tools" hibaüzenet jelenik meg egy feladat monitorozása során
A Qiskit 1.0-s qiskit.tools
verziójától a függvényhez job_monitor()
szükséges modul elavult. A feladatok monitorozásához használja a függvényeket vagy a wait_for_final_state()
result
függvényeket.
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()
Azure Quantum Resource Estimator
Az alábbi gyakori forgatókönyvek megakadályozhatják az erőforrás-becslési feladatok befejezését. Megtudhatja, hogyan oldhatja meg őket.
Probléma: A kvantum-algoritmusnak legalább egy T állapotot vagy mérést kell tartalmaznia
Ha figyelembe szeretne venni egy tetszőleges kvantumprogram logikai qubitek 2D tömbjébe való leképezését, a Resource Estimator feltételezi, hogy a párhuzamos szintézis szekvenciális Pauli-számítás (PSSPC) (lásd arXiv:2211.07629, D függelék) végrehajtása történik a bemeneti programban. Ebben a megközelítésben az összes Clifford-művelet át van osztva az összes T kapun, forgási kapun és mérési műveleten, így egyetlen Clifford-művelet marad, amely klasszikusan hatékonyan értékelhető. Ezért egy olyan kvantumprogram, amely nem tartalmaz T állapotokat, például T kapukból vagy forgatókapukból, sem mérési műveletekhez nem igényel fizikai kvantum-számítási erőforrásokat.
Error message: Algorithm requires at least one T state or measurement to estimate resources
Probléma: A fizikai T-kapu hibaaránya túl magas
A logikai T-állapot hibaaránya a hibakerettől és a kvantumprogramban lévő T-állapotok számától függ. A T-gyárak a szükséges logikai T-állapothiba arányú T-állapotok fizikai T-kapukból való létrehozására szolgálnak, amelyek fizikai T-kapu hibaarányával rendelkeznek. A fizikai T-kapu hibaaránya általában sokkal magasabb, mint a szükséges logikai T-kapu hibaaránya. Bizonyos esetekben a fizikai T-kapu hibaaránya a szükséges logikai T-állapot hibaarányához képest sokkal magasabb, így nem található olyan T-gyár, amely megfelelő minőségű logikai T-állapotokat állít elő.
Error message: No T factory can be found, because the required logical T state error rate is too low
Az alábbiakat teheti egy ilyen forgatókönyvben:
- Növelje a hibakeretet, akár a teljes, akár a T-állapotokhoz tartozó részt.
- Csökkentse a fizikai T-kapu hibaarányát a qubitparaméterekben.
- Csökkentse a T-állapotok számát a kvantumprogramban a T-kapuk, a forgókapuk és a Toffoli-kapuk csökkentésével.
Probléma: A fizikai T-kapu hibaaránya túl alacsony
Van egy másik forgatókönyv is, amelyben a fizikai T-kapu hibaaránya alacsonyabb, mint a szükséges logikai T-állapot hibaaránya. Ilyen esetekben nincs szükség T-gyárra, mert a fizikai T-kapu hibaaránya már megfelelő minőségű. Ehhez azonban alaposan meg kell vizsgálnia az átviteli egységek hatását, amelyek a fizikai T-állapotokat az 1. kódtávolságtól az algoritmus kódtávolságára továbbítják (lásd arXiv:2211.07629, C függelék). Általában a T-gyárak jelenlétében a transzferegységek költsége elhanyagolható.
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.
Az alábbiakat teheti egy ilyen forgatókönyvben:
- Növelje a qubitparaméterek fizikai T-kapujának hibaarányát a szükséges logikai T-állapot hibaarányára.
- Csökkentse a hibakeretet vagy csak a T-állapotok részét.
Probléma: A hibaaránynak 0 és 1 közötti számnak kell lennie
A hibaaránynak mindig 0 és 1 közötti értéknek kell lennie. Emellett ahhoz, hogy a hibajavítás hatékony legyen, a kapuk és mérések fizikai hibaarányának a hibajavítási kód tulajdonságaitól és a szükséges logikai hibaaránytól függő érték alatt kell lennie.
Az alábbiakat teheti egy ilyen forgatókönyvben:
- Növelje a hibakeretet, akár az összeg, akár a logikai hibákhoz tartozó részt.
- Csökkentse a qubitparaméterek fizikai hibaarányát.
Probléma: A maximális futásidejű korlátozások és a fizikai qubitek maximális száma kölcsönösen kizáróak
Az erőforrásbecslő jelenleg csak egyet maxDuration
vagy maxPhysicalQubits
korlátozást fogad el, kettőt azonban nem. Ha egy feladathoz mindkettőt maxDuration
és maxPhysicalQubits
korlátozást is megad, a hibát adja BothDurationAndPhysicalQubitsProvided
vissza.
Probléma: QIR-becslésszám tároló futtatása: nem definiált szimbólum __quantum__rt__result_record_output
Ez a hiba azt eredményezi, hogy QIR-t hoz létre a Qiskit-kapcsolatcsoportokhoz a qiskit_qir Python-csomagon keresztül anélkül, hogy a paramétert a record_output
következőre False
állítja.
A hiba elkerülése érdekében tegye az alábbiak egyikét:
- A azure_quantum Python-csomag használatával küldje el a Qiskit-kapcsolatcsoportokat az Azure Quantumba (ajánlott).
- A qiskit_qir Python-csomag használatakor mindenképpen állítsa be a paramétert
False
arecord_output
kapcsolatcsoport elküldése előtt.
Azure Quantum-munkaterület létrehozása
Az alábbi problémák akkor fordulhatnak elő, ha az Azure Portal használatával hoz létre munkaterületet.
Probléma: A munkaterület-létrehozási űrlap nem érhető el az Azure Portalon; ehelyett előfizetésre kell regisztrálnia
Ez a probléma azért fordul elő, mert nincs aktív előfizetése.
Előfordulhat például, hogy regisztrált a 30 napos ingyenes próbaverziós Azure-előfizetésre, amely 200 USD ingyenes Azure-kreditet tartalmaz az Azure-szolgáltatásokban való használathoz. Vegye figyelembe, hogy ezek az Azure-kreditek nem ugyanazok, mint az Azure Quantum Credits , és nem használhatók kvantumhardver-szolgáltatókon. A 30 napos regisztráció után vagy az ingyenes Azure-kreditek 200 dollárjának felhasználása után (amelyik előbb megtörténik), az Azure Quantum-szolgáltatások használatának folytatásához használatalapú fizetéses előfizetésre kell frissítenie. Ha már rendelkezik aktív előfizetéssel, az Azure Portal lehetővé teszi a munkaterület-létrehozási űrlap elérését.
Az előfizetések és a kapcsolódó szerepkörök listájának megtekintéséhez tekintse meg az előfizetések ellenőrzése című témakört.
Probléma: A Gyors létrehozás lehetőség nem érhető el
A Gyors létrehozás lehetőség használatához a kiválasztott előfizetés tulajdonosának kell lennie. Az előfizetések és a kapcsolódó szerepkörök listájának megtekintéséhez tekintse meg az előfizetések ellenőrzése című témakört. Ha Ön előfizetés-közreműködő, a Speciális létrehozás lehetőséggel létrehozhat egy munkaterületet.
Probléma: Nem tud erőforráscsoportot vagy tárfiókot létrehozni vagy kiválasztani
Ez a probléma azért fordul elő, mert nem rendelkezik az előfizetés, az erőforráscsoport vagy a tárfiók szintjén szükséges engedélyekkel. A szükséges hozzáférési szintekről további információt a munkaterület létrehozásához szükséges szerepkör-követelmények című témakörben talál.
Probléma: A Létrehozás gomb kiválasztása után megjelenik a "Sikertelen üzembe helyezés ellenőrzése" hibaüzenet
Ez a hibaüzenet további részleteket is tartalmazhat, például:"Az ügyfél nem rendelkezik engedéllyel a művelet végrehajtására".
Ez a probléma azért fordul elő, mert nem rendelkezik az előfizetés, az erőforráscsoport vagy a tárfiók szintjén szükséges engedélyekkel. A szükséges hozzáférési szintekről további információt a munkaterület létrehozásához szükséges szerepkör-követelmények című témakörben talál.
Ha a hozzáférés nemrég lett megadva, előfordulhat, hogy frissítenie kell a lapot. Néha akár egy órát is igénybe vehet, ha az új szerepkör-hozzárendelések érvénybe lépnek a gyorsítótárazott engedélyek felett az egész veremen.
Probléma: Nem jelenik meg egy adott kvantumhardver-szolgáltató a Szolgáltatók lapon
Ez a probléma azért fordul elő, mert a szolgáltató nem támogatja azt a számlázási régiót, amelyben az előfizetés be van állítva. Ha például az előfizetése Izraelben van beállítva, a Szolgáltatók lap nem sorolja fel a Rigettit elérhető szolgáltatóként. A szolgáltatók listáját és azok ország/régió szerinti elérhetőségét az Azure Quantum-szolgáltatók globális elérhetősége című témakörben találja.
Probléma: A munkaterület létrehozása vagy a szolgáltatók hozzáadása/eltávolítása a "ResourceDeploymentFailure" vagy a "ProviderDeploymentFailure" hibával meghiúsul
Ez a probléma további részleteket is tartalmazhat, például a "ResourceDeploymentFailure – Az "AzureAsyncOperationWaiting" erőforrásművelet befejeződött a "Sikertelen" terminálkiépítési állapottal." vagy a "ProviderDeploymentFailure – Nem sikerült létrehozni a szolgáltató tervét: <a szolgáltató> neve".
Ez azért fordul elő, mert a bérlő nem engedélyezte az Azure Marketplace-vásárlásokat. Kövesse az Azure Marketplace-vásárlások engedélyezésének lépéseit az Azure Marketplace-vásárlások engedélyezéséhez.
Probléma: A kvantum-munkaterület üzembe helyezése vagy a tárfiók üzembe helyezése az alábbi hibák egyikével meghiúsul:
- Munkaterület: "Az erőforrás írási művelete sikertelen volt, mert elérte a terminál kiépítési állapotát :"Sikertelen".
- Tárfiók: "A sablon üzembe helyezése szabályzatsértés miatt meghiúsult".
Ez a probléma akkor fordulhat elő, ha az előfizetés biztonsági szabályzata letiltja a nyilvános hozzáféréssel rendelkező tárfiókok létrehozását. Az Azure Quantum szolgáltatás csak nyilvános internet-hozzáféréssel támogatja a tárfiókokat.
A probléma megoldásához működjön együtt az előfizetés rendszergazdájával, hogy kivételt kapjon a használni kívánt tárfiókra vonatkozóan.
Azure Quantum Portal
Probléma: A mentett jegyzetfüzetek nem töltődnek be
Miután kiválasztotta a jegyzetfüzeteket a munkaterületen, a mentett jegyzetfüzetek listája egy folyamatjelző sávot jelenít meg, de soha nem töltődik be.
Ez három okból történhet:
Ha a tárfiók már nem létezik. Ez akkor fordulhat elő, ha a munkaterülethez társított tárfiókot törölték. Az ellenőrzéshez válassza a munkaterület Áttekintés oldalát, és válassza a tárfiókra mutató hivatkozást. Ha a tárfiókot törölték, a 404 - Nem található hiba jelenik meg .
Ha a tárfiók nincs engedélyezve a nyilvános internet-hozzáféréshez. További információ: Engedélyezési hiba .
Ha a munkaterület felügyelt identitása nem a tárfiók közreműködője . Ellenőrizze, hogy a munkaterület identitása (amely ugyanazt a nevet használja, mint a munkaterület) továbbra is rendelkezik-e közreműködői szerepkör-hozzárendeléssel a tárfiókhoz. Az ellenőrzéshez válassza a munkaterület Áttekintés oldalát, és válassza a tárfiókra mutató hivatkozást. A tárfiók Áttekintés lapján válassza a Hozzáférés-vezérlés (IAM) lehetőséget, és ellenőrizze, hogy a munkaterület szerepel-e a Közreműködő csoportban.