Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
qdk.ec
Python Kuantum hata düzeltmesi (QEC) kodları ve protokolleri geliştirmek ve test etmek için modülü Microsoft Quantum Development Kit (QDK) 'den yükleyin. Modül, protokol modelleri ve kalıcılık için qodec paketini kullanır.
Prerequisites
Başlamadan önce şu araçları yükleyin:
- Python 3.11 veya üzeri
-
pipveya başka bir Python paket yöneticisi
Temel qdk paket, Python 3.10 veya üzerini destekler.
qdk.ec modülü, qodec bağımlılığı nedeniyle Python 3.11 veya sonraki bir sürümü gerektirir.
(İsteğe bağlı) Sanal ortam oluşturun
Python bağımlılıklarını diğer qdk.ec projelerinden ayrı tutmak için bir sanal ortam kullanın.
Sanal ortamı oluşturun, örneğin
.venv.python -m venv .venvOrtamı etkinleştirin.
Windowsüzerinde:
.venv\Scripts\Activate.ps1macOS veya Linux üzerinde:
source .venv/bin/activateEtkin ortamda pip'i güncelleştirin.
python -m pip install --upgrade pip
Hata düzeltmesi için QDK yükleyin
qdk
Python paketini ec eklentisi ile yükleyin.
python -m pip install --upgrade "qdk[ec]"
QDK ve Jupyter Notebook pencere öğelerini kullanmak için jupyter ekini de yükleyin.
python -m pip install --upgrade "qdk[ec,jupyter]" ipykernel
Ek ec, qodec öğesini, desteklenen platformlardaki Stim ayrıştırıcısını ve qdk.ec tarafından kullanılan cebir ve çözücü paketlerini yükler. Ayrıca mesafe aramaları için HiGHS içerir.
Linux Arm64 veya WindowsArm64 üzerine yükleyin
Stim, WindowsArm64 veya LinuxArm64 için wheel paketleri yayımlamaz. Bu platformlarda qodec, kendi qdk[ec] ayrıştırıcısı olmadan Stim yüklenir.
YAML qodecs yükleyip kaydedebilir ve özel bir devre ayrıştırıcısı kullanabilirsiniz.
format="stim" devre ayrıştırma özellikleri bu platformlarda çalışmaz. Bu sınırlama qdk.ec.build_qodec içerir.
Ayrıştırıcıyı etkinleştirmek için Stim ayrıştırıcısını ayrı olarak yükleyin. C++ yüklemek için sisteminizin Stim20 derleyicisine ihtiyacı var.
python -m pip install --upgrade stim
İsteğe bağlı mesafe ve dekoder paketlerini yükleyin
Varsayılan uzaklık çözücü qdk.ec kullanır; bu, HiGHS modülünün içerdiği öğedir. İsteğe bağlı MWPF çözücüyü seçmek için mwpf öğesini ayrı olarak yükleyin.
python -m pip install mwpf
qdk.simulation.run_qir ile deq devre düzeyi kod çözücüyü kullanmak için deq-runtime ve deq yükleyin.
python -m pip install deq deq-runtime
QDK, bağdaştırıcıyı deq, deq-runtime ve deq'ün 0.5.7 sürümüyle test ediyor.
Uyarı
deq-runtime paketi WindowsArm64 wheel paketlerini yayımlamaz.
deq bağdaştırıcısı ayrıca Arm64 gerektirir; bu da LinuxWindows veya Arm64Stim wheel paketlerini yayımlamaz.
Yüklemeyi doğrulama
Aşağıdaki kodla bir Python dosya veya Jupyter Notebook hücre oluşturun. Örnek, dört kubitli C4 kodu tanımlar ve uzaklığını denetler.
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
Program bu sonucu yazdırır:
Code distance: 2
İçeri aktarma ve uzaklık araması başarılı olursa temel qdk.ec bağımlılıklar hazır olur.
Desteği doğrulayın Stim
Stim ayrıştırıcısını destekleyen bir platformda bu denetimi çalıştırın.
from qdk import ec
protocol = ec.build_qodec(c4, strategy="bare-css/v1", strict=False)
print(ec.audit(protocol))
Doğru oluşturulmuş bir protokol, denetim özetini yazdırır. Tüm denetimleri geçen bir protokol şunu çıktılar:
audit: ok
stim, build_qodec biçimi için ayrıştırıcı olmadığını bildiriyorsa, etkin ortamda qdk[ec] yüklediğinizi onaylayın.
Windows
Arm64 veya LinuxArm64 üzerinde, Stim kaynaktan yükleyin ve Python veya Jupyter çekirdeğini yeniden başlatın.
Protokol geliştirmeye devam edin
Bir kod tanımlamak, bir qodec oluşturmak ve bileşenlerini doğrulamak için bkz. QEC protokolü geliştirme ve doğrulama.