✉ Newsletter
🌐 Polski
Oprogramowanie3 min czytania

IBM rozwija Qiskit poza Pythonem wraz z premierą SDK v2.6

Qiskit SDK v2.6 od IBM dodaje framework menedżera przebiegów do C API, natywną serializację QPY i operacje niestandardowe, rozwijając workflowy niewymagające Pythona.

Ta strona została przetłumaczona z angielskiego. Nazwy firm i produktów oraz linki do źródeł pozostają bez zmian. Przeczytaj oryginał po angielsku

IBM udostępnił Qiskit SDK v2.6, aktualizację oprogramowania skoncentrowaną na niskopoziomowym interfejsie C projektu, a nie na jego lepiej znanej warstwie Python. Zgodnie z opublikowanym przez IBM 22 października podsumowaniem wydania, aktualizacja dodaje framework menedżera przebiegów do C API, wprowadza serializację obwodów QPY do workflowów opartych na językach kompilowanych i pozwala deweloperom definiować niestandardowe operacje kwantowe bezpośrednio z poziomu C. Łącznie zmiany te kontynuują działania IBM na rzecz udostępnienia większej części Qiskit bez potrzeby korzystania ze środowiska uruchomieniowego Python.

Co ogłoszono

Wydanie v2.6 rozszerza C API Qiskit, które IBM opisuje jako niskopoziomowy interfejs do opartego na Rust podstawowego modelu danych Qiskit, przeznaczony do użycia z poziomu języków kompilowanych. IBM podaje, że interfejs ma służyć zarówno do samodzielnego użycia bez Pythona, jak i do tworzenia wydajniejszych rozszerzeń Pythona, które komunikują się bezpośrednio z obiektami Rust w Qiskit.

W Qiskit v2.6 IBM dodał do tego C API ogólny framework menedżera przebiegów. Nowe komponenty obejmują QkPassManager, QkPassVtable i QkIrHandle, które łącznie pozwalają deweloperom tworzyć przebiegi kompilatora i łączyć je w potoki ze sprawdzaniem typów obejmujące wiele reprezentacji pośrednich.

Wydanie udostępnia też w C API funkcje serializacji QPY, umożliwiając programom napisanym w językach takich jak C, C++ i Julia zapisywanie i odczytywanie binarnego formatu obwodów Qiskit bez pośredniego przechodzenia przez Pythona. Dodatkowo, według IBM, deweloperzy mogą teraz definiować operacje niestandardowe za pośrednictwem interfejsu C vtable, w tym operacje natywne sprzętowo.

Szczegóły techniczne

IBM podaje, że nowy framework menedżera przebiegów może weryfikować potok kompilacji przed wykonaniem, sprawdzając zadeklarowane reprezentacje wejściowe i wyjściowe dla każdego przebiegu. Wbudowane reprezentacje obejmują QkCircuit i QkDag, a IR definiowane przez użytkownika można również opisać za pomocą QkIrHandle.

Ma to znaczenie, ponieważ prace nad kompilatorem Qiskit są coraz częściej organizowane wokół obniżania programów przez kilka reprezentacji, co jest istotne zarówno dla obecnych przepływów transpylacji, jak i dla przyszłych toolchainów odpornych na błędy.

W obszarze serializacji Qiskit 2.6 domyślnie korzysta teraz z formatu QPY v18. IBM podaje, że ta wersja zmniejsza rozmiar serializowanych obwodów dzięki bardziej zwartej metodzie kodowania rejestrów kwantowych i klasycznych. Według firmy obwody tworzone przez C API pozostają kompatybilne z modułem qiskit.qpy w Pythonie.

Wydanie utrzymuje minimalną obsługiwaną wersję środowiska uruchomieniowego Python na poziomie 3.10, natomiast kompilacja ze źródeł wymaga teraz Rust 1.89. Strona roadmapy IBM wskazuje też, że Qiskit 2.6.0 wydano 16 października 2026 roku, a poprawki błędów będą dostarczane w wydaniach patch lub w kolejnym wydaniu minor.

Dlaczego to ważne

Dla większości użytkowników Qiskit Python pozostaje głównym punktem wejścia. Ale IBM wyraźnie buduje również inny model wdrażania: dostęp z poziomu języków kompilowanych do tego samego podstawowego stosu kompilacji i wykonywania.

Ta zmiana ma znaczenie dla środowisk obliczeń wysokiej wydajności, gdzie Python może stanowić ograniczenie w obszarze pakietowania, środowiska uruchomieniowego lub integracji. Dokumentacja IBM podaje, że C API zaprojektowano tak, aby zapewniało zdefiniowane ABI dla wewnętrznego modelu danych Rust, a na firmowym blogu v2.6 przedstawiono jako kolejny krok w kierunku używania Qiskit w środowiskach, w których Python nie jest zainstalowany.

Sygnalizuje to także szerszą zmianę architektoniczną. Roadmapa Qiskit pokazuje, że IBM pracuje nad formalną stabilnością ABI i API dla interfejsu C w v2.7, a także nad nowym middle-end IR dla kompilacji odpornej na błędy. W przypadku v2.8 roadmapa wskazuje na BackendV3, opisany tam jako natywny dla Rust interfejs backendowy udostępniany w Pythonie i C.

Na co zwrócić uwagę

Najbliższym pytaniem pozostaje stabilność. Obecna dokumentacja C API IBM mówi, że interfejs nadal należy uznawać za eksperymentalny i może się zmieniać między wydaniami minor. To zastrzeżenie jest istotne dla zespołów programistycznych rozważających głęboką integrację.

Kolejnym kamieniem milowym jest więc Qiskit 2.7. Zgodnie z roadmapą na GitHubie ta wersja ma zdefiniować gwarancje stabilności dla C API i dalej rozszerzyć funkcjonalność kompilatora. Jeśli IBM to dostarczy, ścieżka Qiskit poza Pythonem zacznie mniej przypominać wewnętrzny projekt infrastrukturalny, a bardziej produkcyjny interfejs dla kompilowanych stosów oprogramowania kwantowego.

Źródła

Fakty na tej stronie pochodzą z poniższych źródeł, zebranych przez DesignQuantum.

  1. Qiskit SDK v2.6 release summary | IBM Quantum Computing Blog ibm.com
  2. Qiskit SDK C API documentation (latest version) | IBM Quantum Documentation quantum.cloud.ibm.com
  3. Roadmap github.com
  4. IBM Releases Qiskit SDK v2.6 with C API Pass-Manager Framework, Native QPY Serialization, and Custom Operations - Quantum Computing Report quantumcomputingreport.com