Řešení potíží s Azure Quantum

Při práci se službou Azure Quantum můžete narazit na tyto běžné problémy. Podívejte se, jak je můžete vyřešit.

Odesílání úloh

Problém: Chybí targets

target Pokud v seznamu dostupných target chybí místo, kde chcete úlohu spustit, budete pravděpodobně muset aktualizovat na nejnovější verzi nástrojeQuantum Development Kit pro Visual Studio Code. Další informace najdete v tématu Aktualizace sady QDK.

Problém: Operace vrátí neplatný stavový kód Neautorizováno.

Postup řešení tohoto problému:

  1. Otevřete Azure Portal (https://portal.azure.com) a ověřte svůj účet.

  2. V části Navigovat vyberte Předplatná a vyberte své předplatné.

  3. Vyberte Řízení přístupu (IAM) .

  4. V části Kontrola přístupu vyhledejte svoji e-mailovou adresu a vyberte účet.

  5. Neměli byste vidět roli Vlastník nebo Přispěvatel .

  6. Vyberte kartu Přiřazení rolí .

    Poznámka

    Pokud kartu Přiřazení rolí nevidíte, možná budete muset rozbalit portál, aby se zobrazila celá obrazovka, nebo zavřít <podokno přiřazení jmen>.

  7. Vyberte rozevírací seznam Role , vyberte Vlastník nebo Přispěvatel, zadejte svoji e-mailovou adresu a vyberte svůj účet.

  8. Vyberte Uložit.

  9. Teď byste měli mít nastavený účet nakonfigurovaný s rolí vlastníka nebo přispěvatele .

  10. Create znovu svůj pracovní prostor Azure Quantum a pak do tohoto nového pracovního prostoru odešlete úlohu.

Problém: Při pokusu o odeslání programu v jazyce Q# prostřednictvím rozhraní příkazového řádku se nepovedlo zkompilovat program

Při pokusu o odeslání úlohy na příkazovém řádku pomocí az quantum submit příkazu se může zobrazit následující chybová zpráva:

az quantum job submit ...
Failed to compile program.
Command ran in 21.181 seconds (init: 0.457, invoke: 20.724)

K této chybě dochází v případě, že dojde k problému s programem Q#, který způsobí selhání kompilace.

Problém: Chyba kompilátoru "Nesprávný počet parametrů brány"

Při odesílání úlohy do Quantinuum z místního prostředí Jupyter Notebook nebo příkazového řádku a při použití starší verze překladače QASM (OPENQASM 2.0) může dojít k této chybě:

Job ID <jobId> failed or was cancelled with the message: 1000: Compile error: [<file, line>] Wrong number of gate parameters

K této chybě dochází, když se jako oddělovač desetinných míst používá čárka "," nebo jiný znak bez tečky, jak je běžné v mnoha jazycích. Všechny oddělovače desetinných míst, které nejsou tečkami, nahraďte tečkami ..

// replace this line:
rx(1,5707963267948966) q[0];

// with this:
rx(1.5707963267948966) q[0];

Poznámka

K tomuto problému nedochází v hostovaných poznámkových blocích na portálu Azure Quantum, pouze v místních vývojových prostředích.

Problém: Chyba kompilátoru "není k dispozici pro aktuální konfiguraci kompilace"

Při spuštění buňky kódu Q# v Jupyter Notebook v editoru VS Code může dojít k chybě:

<function name> not found. Found a matching item `<function name>' that is not available for the current compilation configuration

Tato chyba značí, že profil QIR target je nastavený na Hodnotu Basic a daná funkce vyžaduje targetneomezený profil. target Nastavení profilu na hodnotu Unrestricted:

  1. V programu Q# v editoru VS Code vyberte na dolním stavovém řádku možnost Q#: QIR base( základ Q#: QIR ).
  2. V možnostech zobrazených na horním stavovém řádku vyberte Q#: unrestricted( Q#: unrestricted).

Problém: Operace vrátila neplatný stavový kód Zakázáno.

Při odeslání první úlohy se může zobrazit kód chyby Zakázáno.

K tomuto problému může dojít při vytváření pracovního prostoru: Službě Azure Quantum se nepodaří dokončit přiřazení role, které propojí nový pracovní prostor se zadaným účtem úložiště. K této situaci obvykle dochází v případě zavření karty nebo okna webového prohlížeče před dokončením vytváření pracovního prostoru.

Pomocí následujících kroků můžete ověřit, že dochází k tomuto problému s přiřazením role:

  • Přechod do nového kvantového pracovního prostoru na webu Azure Portal
  • V části Přehled>Essentials>Účet úložiště vyberte na odkazu účet úložiště.
  • V levém navigačním panelu vyberte Řízení přístupu (IAM) .
  • Vyberte Přiřazení rolí.
  • Ověřte, že se váš pracovní prostor zobrazuje jako přispěvatel.
  • Pokud se pracovní prostor nezobrazuje jako přispěvatel , můžete provést následující:
    • Create nový pracovní prostor a před zavřením karty nebo okna webového prohlížeče nezapomeňte počkat na dokončení vytvoření pracovního prostoru.
    • Přidání správného přiřazení role pod účet úložiště
      • Access Control (IAM) > Přidání přiřazení rolí
      • Přispěvatel role >
      • Přiřazení přístupu k uživateli, skupině nebo instančnímu > objektu
      • Vyberte > [Název pracovního prostoru].
      • Uložit

Problém: Úloha selže s kódem chyby: QIRPreProcessingFailed

Když odešlete úlohu poskytovateli Rigetti, úloha selže a je hlášena v konzole pro správu úloh v Azure Portal:

Error code: QIRPreProcessingFailed
Error message: No match found for output recording set converter from outputrecordingset.v2.labeled to outputrecordingset.v1.nonlabeled

Příčinou této chyby může být konflikt závislostí s předchozí verzí pyqir nebo qiskit-qir. Na místním počítači odinstalujte všechny verze pyqir, pyqir-* a qiskit-qir a pak nainstalujte nebo aktualizujte balíček azure-quantum Python pomocí parametru [qiskit]:

pip install --upgrade azure-quantum[qiskit]

Problém: Načítání základních informací o neúspěšných úlohách

Po odeslání úlohy na hardware targetmůže vaše úloha několik hodin nebo dokonce jeden nebo dva dny sedět ve frontě, než selže.

Pokud chcete načíst další informace o selhání:

  • get_results() Pomocí metody s objektem úlohy zobrazte výstup nebo vrácenou chybovou zprávu:
job.get_results()
  • V pracovním prostoru webu Azure Portal vyberte Správa úloh operací >a pak výběrem názvu úlohy otevřete podokno podrobností.
  • V pracovním prostoru webu Azure Portal selekd Operations > Providers. Ověřte dostupnost target počítače. Úlohy odeslané do targets se stavem Degradováno můžou zůstat ve frontě déle než obvykle. Někdy se úlohy zpracují, ale někdy vyprší jejich časový limit a vrátí chybu nedostupnostitarget.

Problém: Při programovém připojování k pracovnímu prostoru se stále zobrazuje výzva k ověření

Pokud používáte sadu Azure Quantum Python SDK (například v poznámkových blocích Jupyter) a připojujete se k pracovnímu prostoru pomocí třídy AzureQuantumProvider, může se při každém spuštění skriptu zobrazit automaticky otevírané okno pro ověření v Azure.

K tomu dochází, protože token zabezpečení se resetuje při každém spuštění skriptu.

Tento problém můžete vyřešit spuštěním az login příkazu Azure CLI. Další informace najdete v tématu az login.

Problém: Po aktualizaci balíčku azure-quantum se při monitorování úlohy zobrazí chyba ModuleNotFoundError: Žádný modul s názvem qiskit.tools

Od verze Qiskit 1.0 qiskit.tools je modul, který je pro job_monitor() funkci nutný, zastaralý. Pokud chcete monitorovat úlohy, použijte wait_for_final_state() funkce nebo 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()

Azure Quantum Resource Estimator

Dokončení úloh odhadu prostředků můžou bránit následující běžné scénáře. Podívejte se, jak je vyřešit.

Problém: Kvantový algoritmus musí obsahovat alespoň jeden stav T nebo měření.

Aby bylo možné zohlednit mapování libovolného kvantového programu na 2D pole logických qubitů, estimátor prostředků předpokládá, že se na vstupním programu provádí paralelní sekvenční Pauliho výpočet (PSSPC) ( viz arXiv:2211.07629, Příloha D). V takovém přístupu jsou všechny Cliffordova operace přesměrované přes všechny T brány, rotační brány a operace měření, takže zůstane jedna Cliffordova operace, která může být efektivně vyhodnocena klasicky. Proto kvantový program, který neobsahuje stavy T, například z bran T nebo rotačních bran, ani operace měření, nevyžaduje žádné fyzické kvantové výpočetní prostředky.

Error message: Algorithm requires at least one T state or measurement to estimate resources

Problém: Míra chyb fyzické brány T je příliš vysoká

Logická míra chyb stavu T závisí na rozpočtu chyb a počtu stavů T v kvantovém programu. T factory se používají k vytváření stavů T s požadovanou chybovou mírou logického stavu T z fyzických bran T, které mají chybovost fyzické brány T. Obvykle je míra chyb fyzické brány T mnohem vyšší než požadovaná logická míra chyb brány T. V některých scénářích je míra chyb fyzické brány T mnohem vyšší v porovnání s požadovanou chybovostí logického stavu T, a to tak, že nelze najít žádnou továrnu T, která by vytvářela logické stavy T s dostatečnou kvalitou.

Error message: No T factory can be found, because the required logical T state error rate is too low

Tady je postup, který byste v takovém scénáři mohli udělat:

  • Zvyšte rozpočet chyb, buď celkový, nebo část pro stavy T.
  • Snižte chybovost fyzické brány T v parametrech qubitu.
  • Snižte počet stavů T v kvantovém programu snížením T bran, rotačních bran a toffoliových bran.

Problém: Míra chyb fyzické brány T je příliš nízká

Existuje také opačný scénář, ve kterém je míra chyb fyzické brány T nižší než požadovaná míra chyb logického stavu T. V takových případech není nutná žádná továrna na T, protože míra chyb fyzických bran T je již dostatečně kvalitní. To však vyžaduje pečlivé zvážení dopadu přenosových jednotek, které přenášejí fyzické stavy T ze vzdálenosti kódu 1 do vzdálenosti kódu algoritmu (viz arXiv:2211.07629, dodatek C). Obecně platí, že v přítomnosti T továren jsou náklady na převodní jednotky zanedbatelné.

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.

Tady je postup, který byste v takovém scénáři mohli udělat:

  • Zvyšte chybovost fyzické brány T v parametrech qubitu na požadovanou chybovost logického stavu T.
  • Snižte rozpočet chyb nebo jenom část pro stavy T.

Problém: Míra chyb musí být číslo mezi 0 a 1.

Chybovost by vždy měla být v rozsahu 0 až 1. Kromě toho, aby oprava chyb byla účinná, musí být míra fyzických chyb bran a měření nižší než hodnota, která závisí na vlastnostech kódu opravy chyb a požadované logické chybovosti.

Tady je postup, který byste v takovém scénáři mohli udělat:

  • Zvyšte rozpočet chyb, a to buď celkový, nebo část pro logické chyby.
  • Snižte míru fyzických chyb v parametrech qubitu.

Problém: Omezení maximálního běhu a maximálního počtu fyzických qubitů se vzájemně vylučují.

Estimátor prostředků v době přijímá pouze jedno z maxDuration omezení nebo maxPhysicalQubits , ale ne dvě. Pokud zadáte omezení i maxDurationmaxPhysicalQubitspro jednu úlohu, vrátí BothDurationAndPhysicalQubitsProvided chybu.

Problém: Spuštění příkazu QIR estimate counts container: undefined symbol __quantum__rt__result_record_output

Tato chyba je výsledkem generování QIR pro okruhy Qiskit prostřednictvím balíčku pythonu qiskit_qir bez nastavení parametru record_output na Falsehodnotu .

Pokud se chcete této chybě vyhnout, udělejte jednu z těchto věcí:

  • Pomocí balíčku azure_quantum Python odešlete okruhy Qiskit do Azure Quantum (doporučeno).
  • Při použití balíčku qiskit_qir Python nezapomeňte před odesláním okruhu record_output nastavit parametr na False hodnotu .

Vytvoření pracovního prostoru Azure Quantum

Při vytvoření pracovního prostoru pomocí Azure Portal může dojít k následujícím problémům.

Problém: V Azure Portal nemáte přístup k formuláři pro vytvoření pracovního prostoru. Místo toho se zobrazí výzva k registraci předplatného.

K tomuto problému dochází, protože nemáte aktivní předplatné.

Možná jste si například zaregistrovali 30denní bezplatnou zkušební verzi předplatného Azure, které zahrnuje bezplatné kredity Azure ve výši 200 USD pro použití ve službách Azure. Upozorňujeme, že tyto kredity Azure nejsou stejné jako kredity Azure Quantum a nelze je používat u poskytovatelů kvantového hardwaru. Po 30 dnech od registrace nebo po spotřebě bezplatných kreditů Azure v hodnotě 200 USD (podle toho, co nastane dříve) musíte upgradovat na předplatné s průběžnými platbou, abyste mohli dál používat služby Azure Quantum. Jakmile budete mít aktivní předplatné, Azure Portal vám umožní přístup k formuláři pro vytvoření pracovního prostoru.

Seznam předplatných a přidružených rolí najdete v tématu Kontrola předplatných.

Problém: Možnost Rychlé vytvoření není k dispozici.

Abyste mohli použít možnost Rychlé vytvoření, musíte být vlastníkem předplatného, které vyberete. Seznam předplatných a přidružených rolí najdete v tématu Kontrola předplatných. Pokud jste přispěvatel předplatného, můžete k vytvoření pracovního prostoru použít možnost Rozšířené vytváření .

Problém: Nemůžete vytvořit nebo vybrat skupinu prostředků nebo účet úložiště

K tomuto problému dochází, protože nemáte požadovanou autorizaci na úrovni předplatného, skupiny prostředků nebo účtu úložiště. Další informace o požadovaných úrovních přístupu najdete v tématu Požadavky na role pro vytvoření pracovního prostoru.

Problém: Po výběru Create se zobrazí chybová zpráva Ověření nasazení selhalo

Tato chybová zpráva může obsahovat další podrobnosti, například klient nemá oprávnění k provedení akce.

K tomuto problému dochází, protože nemáte požadovanou autorizaci na úrovni předplatného, skupiny prostředků nebo účtu úložiště. Další informace o požadovaných úrovních přístupu najdete v tématu Požadavky na role pro vytvoření pracovního prostoru.

Pokud byl přístup nedávno udělen, možná budete muset stránku aktualizovat. Někdy může trvat až hodinu, než se nová přiřazení rolí projeví nad oprávněními uloženými v mezipaměti v rámci zásobníku.

Problém: Na kartě Poskytovatelé se nezobrazuje konkrétní poskytovatel kvantového hardwaru.

K tomuto problému dochází, protože poskytovatel nepodporuje fakturační oblast, ve které je nastavené vaše předplatné. Pokud je například vaše předplatné nastavené v Izraeli, na kartě Poskytovatelé se nezobrazí Rigetti jako dostupný poskytovatel. Seznam poskytovatelů a jejich dostupnost podle země/oblasti najdete v tématu Globální dostupnost poskytovatelů Azure Quantum.

Problém: Vytváření nebo přidávání nebo odebírání zprostředkovatelů pracovního prostoru selže s chybou ResourceDeploymentFailure nebo ProviderDeploymentFailure

Tento problém může zahrnovat další podrobnosti, například ResourceDeploymentFailure – Operace prostředku AzureAsyncOperationWaiting dokončená se stavem zřizování terminálu Selhalo nebo ProviderDeploymentFailure – Nepodařilo se vytvořit plán pro poskytovatele: <Název poskytovatele>.

K tomu dochází, protože tenant nepovolil Azure Marketplace nákupy. Pokud chcete povolit Azure Marketplace nákupy, postupujte podle pokynů v tématu Povolení nákupů Azure Marketplace.

Portál Azure Quantum

Problém: Uložené poznámkové bloky se nenačtou

Po výběru poznámkových bloků v pracovním prostoru se v seznamu uložených poznámkových bloků zobrazí indikátor průběhu, ale nikdy se nenačte.

K tomu může dojít ze dvou důvodů:

  1. Pokud účet úložiště už neexistuje. K tomu může dojít v případě, že dojde k odstranění účtu úložiště propojeného s pracovním prostorem. Pokud to chcete ověřit, vyberte stránku Přehled pracovního prostoru a vyberte odkaz na účet úložiště. Pokud se účet úložiště odstranil, zobrazí se chyba 404 – Nenalezena .

  2. Pokud spravovaná identita pracovního prostoru není přispěvatelem účtu úložiště. Zkontrolujte, že identita pracovního prostoru (která používá stejný název jako pracovní prostor) má stále přiřazenou roli Přispěvatel k účtu úložiště. Pokud to chcete ověřit, vyberte stránku Přehled pracovního prostoru a vyberte odkaz na účet úložiště. Na stránce Přehled účtu úložiště vyberte Řízení přístupu (IAM) a ověřte, že je pracovní prostor uvedený v části Přispěvatel.