Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Installare il qdk.ecPython modulo dal Microsoft Quantum Development Kit (QDK) per sviluppare e testare i codici e i protocolli di correzione degli errori quantistici (QEC). Il modulo usa il qodec pacchetto per i modelli di protocollo e la persistenza.
Prerequisites
Installare questi strumenti prima di iniziare:
- Python 3.11 o versione successiva
-
pipo un altro Python gestore pacchetti
Il pacchetto di base qdk supporta Python la versione 3.10 o successiva. Il qdk.ec modulo richiede Python la versione 3.11 o successiva a causa della dipendenza qodec.
(Facoltativo) Creare un ambiente virtuale
Usare un ambiente virtuale per mantenere le qdk.ec dipendenze separate da altri Python progetti.
Crea l'ambiente virtuale, ad esempio
.venv.python -m venv .venvAttivare l'ambiente.
In Windows:
.venv\Scripts\Activate.ps1Su Linux o macOS:
source .venv/bin/activateAggiornare pip nell'ambiente attivo.
python -m pip install --upgrade pip
Installare QDK per la correzione degli errori
Installare il qdkPython pacchetto con l'aggiunta ec .
python -m pip install --upgrade "qdk[ec]"
Per usare Jupyter Notebook e QDK widget, installare anche jupyter extra.
python -m pip install --upgrade "qdk[ec,jupyter]" ipykernel
Il ec componente aggiuntivo qodecinstalla, il Stim parser sulle piattaforme supportate e i pacchetti di algebra e del risolutore usati qdk.ec. Include anche HiGHS per le ricerche sulla distanza.
Note
Il qdk.ec modulo usa il pacchetto separato StimPython tramite qodec. Non usa il qdk.stim modulo.
Installare su LinuxArm64 o WindowsArm64
Stim non pubblica wheel per LinuxArm64 o WindowsArm64. Su queste piattaforme viene qdk[ec] installato qodec senza il parser Stim.
È possibile caricare e salvare YAML qodecs e usare un parser di circuito personalizzato. Le funzionalità che interpretano format="stim" i circuiti non funzionano su queste piattaforme. Questa limitazione include qdk.ec.build_qodec.
Per abilitare il parser, installare Stim separatamente. Il sistema necessita di un compilatore C++20 per installare Stim.
python -m pip install --upgrade stim
Installare pacchetti di distanza e decodificatore facoltativi
Il risolutore di distanze predefinito usa HiGHS, incluso nel qdk.ec modulo . Per selezionare il risolutore facoltativo MWPF , installare mwpf separatamente.
python -m pip install mwpf
Per usare il deq decodificatore a livello di circuito con qdk.simulation.run_qir, installare deq e deq-runtime.
python -m pip install deq deq-runtime
QDK verifica l'adattatore deq con la versione 0.5.7 di deq e deq-runtime.
Note
Il pacchetto deq-runtime non pubblica WindowsArm64 wheel. L'adattatore deq richiede anche Stim, che non pubblica wheel LinuxArm64 o WindowsArm64.
Verificare l'installazione
Creare un file Jupyter Notebook o una cella Python con il codice seguente. L'esempio definisce il codice a quattro qubit C4 e ne controlla la distanza.
import qodec
from qdk import ec
c4 = qodec.Code(
"C4",
stabilizers=["X_0 X_1 X_2 X_3", "Z_0 Z_1 Z_2 Z_3"],
x=["X_0 X_1", "X_0 X_2"],
z=["Z_0 Z_2", "Z_0 Z_1"],
)
distance = ec.CodeProfile(c4).distance()
print("Code distance:", distance)
assert distance.value == 2
Il programma stampa questo risultato:
Code distance: 2
Se l'importazione e la ricerca della distanza hanno esito positivo, le dipendenze principali qdk.ec sono pronte.
Verifica il Stim supporto
Eseguire questo controllo su una piattaforma che supporta il Stim parser.
from qdk import ec
protocol = ec.build_qodec(c4, strategy="bare-css/v1", strict=False)
print(ec.audit(protocol))
Un protocollo generato correttamente stampa un riepilogo di audit. Protocollo che supera tutti i controlli stampa:
audit: ok
Se build_qodec segnala che non esiste alcun parser per il stim formato, verificare che sia stato installato qdk[ec] nell'ambiente attivo. In LinuxArm64 o WindowsArm64, installare Stim dal codice sorgente e riavviare Python o il kernel Jupyter.
Continua con lo sviluppo del protocollo
Per definire un codice, compilare un qodece convalidare i relativi gadget, vedere Sviluppare e convalidare un protocollo QEC.