Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Quantinuum poskytuje přístup k zachyceným iontovým systémům s vysokou věrností, plně připojenými qubity a schopností provádět měření středního okruhu.
- Vydavatel: Quantinuum
- ID zprostředkovatele:
quantinuum
Targets
Od tohoto poskytovatele jsou k dispozici následující targets možnosti:
| Název cíle | ID cíle | Počet qubitů | Description |
|---|---|---|---|
| Kontrola syntaxe H2-1 | quantinuum.sim.h2-1sc | 56 qubitů | Před odesláním do hardwaru nebo emulátorů na platformě Quantinuum ověří kvantové programy proti kompilátoru H2-1. Zdarma |
| H2-2 Kontrola syntaxe | quantinuum.sim.h2-2sc | 56 qubitů | Před odesláním do hardwaru nebo emulátorů na platformě Quantinuum ověří kvantové programy proti kompilátoru H2-2. Zdarma |
| Emulátor H2-1 | quantinuum.sim.h2-1e | 56/32 qubitů | Používá realistický fyzický model a model šumu H2-1. Simulace 56 qubitů je k dispozici pouze jako simulace stabilizátoru. |
| Emulátor H2-2 | quantinuum.sim.h2-2e | 56/32 qubitů | Používá realistický fyzický model a model šumu H2-2. Simulace 56 qubitů je k dispozici pouze jako simulace stabilizátoru. |
| H2-1 | quantinuum.qpu.h2-1 | 56 qubitů | Zařízení s uvězněnými ionty Quantinuum H2-1. |
| H2-2 | quantinuum.qpu.h2-2 | 56 qubitů | Ionické zařízení H2-2 od Quantinuum. |
Quantinuum targets odpovídá QIR Adaptive RI profilu. Další informace o tomto target profilu a jeho omezeních najdete v tématu Principy target typů profilů ve službě Azure Quantum.
Všechny Quantinuum targets teď podporují integrované hybridní okruhy. Další informace o odesílání integrovaných hybridních úloh naleznete v tématu Integrované hybridní výpočetní prostředí.
Tip
Kvantové úlohy odeslané v rámci relace mají výhradní přístup k hardwaru Quantinuum, pokud úlohy umístíte do fronty v jednominutových intervalech. Potom se jakákoli úloha přijme a zpracuje pomocí standardní logiky fronty a stanovení priority. Další informace o relacích v Azure Quantum najdete zde.
Kontroly syntaxe
Doporučujeme, aby uživatelé nejdřív použili kontrolu syntaxe k ověření kódu. Kontroly syntaxe ověřují správnou syntaxi, dokončování kompilace a kompatibilitu počítače. Nástroje pro kontrolu syntaxe používají stejný kompilátor jako kvantový počítač target. Například nástroj pro kontrolu syntaxe H2-1 používá stejný kompilátor jako H2-1. Spustí se kompletní kompilovací stack s výjimkou skutečných kvantových operací. Pokud se kód zkompiluje, vrátí kontrola syntaxe stav a výsledek samých 0. Pokud se kód nekompiluje, vrátí kontrola syntaxe stav selhání a zobrazí chybovou zprávu, která uživatelům pomůže ladit syntaxi okruhu. Kontrola syntaxe umožňuje vývojářům kdykoli ověřit svůj kód, i když jsou počítače offline.
- Typ úlohy:
Simulation - Formáty dat:
honeywell.openqasm.v1,honeywell.qir.v1 - ID cíle:
- Kontrola syntaxe H2-1:
quantinuum.sim.h2-1sc - Kontrola syntaxe H2-2:
quantinuum.sim.h2-2sc
- Kontrola syntaxe H2-1:
- Profil provedení cíle: QIR Adaptive RI
Využití kontroly syntaxe se nabízí zdarma.
Emulátor systému Model H2
Po ověření syntaxe kódu pomocí nástroje pro kontrolu syntaxe H2-1 můžou uživatelé využít emulátor systémového modelu H2 společnosti Quantinuum, což je emulační nástroj, který obsahuje podrobný fyzický model a realistický model šumu skutečného hardwaru System Model H2. Další informace o modelu šumu najdete v datovém listu produktu emulátoru systémového modelu H2 na stránce Systémový model H2. Emulátor systémového modelu H2 používá stejné rozhraní API pro odesílání úloh jako hardware System Model H2, což umožňuje bezproblémový přechod z emulace na hardware. Aby se maximalizovala produktivita a zkrátila doba vývoje, je emulátor H2 dostupný i v době, kdy je hardware offline.
- Typ úlohy:
Simulation - Datový formát:
quantinuum.openqasm.v1 - ID cíle:
- Emulátor H2-1:
quantinuum.sim.h2-1e - Emulátor H2-2:
quantinuum.sim.h2-2e
- Emulátor H2-1:
- Profil provedení cíle: QIR Adaptive RI
Využití emulátoru system Model H2 se nabízí bezplatně s předplatným hardwaru. Podrobnosti najdete v cenách Azure Quantum.
Systémový model H2
Řada kvantových počítačů Quantinuum System Model H2, vyvinutá společností Honeywell, je tvořena kvantovým zařízením typu charge-coupled device (QCCD) se dvěma propojenými lineárními sekcemi a v současnosti zahrnuje jeden systém, H2-1. Další informace najdete v datovém listu produktu System Model H2 na stránce Systémový model H2 . Uživatelům se doporučuje otestovat kompatibilitu kódu odesláním úloh do nástroje pro kontrolu syntaxe a emulátoru systémového modelu H2 před jejich odesláním do target počítačů.
Pokud uživatel odešle úlohu do počítače H2-1 a počítač H2-1 není k dispozici, zůstane úloha ve frontě daného počítače, dokud nebude počítač dostupný.
Hardware System Model H2 se průběžně upgraduje v průběhu životního cyklu produktu. Uživatelům se udělí přístup k nejaktuálnějšímu, pokročilému a dostupnému hardwaru.
- Typ úlohy:
Quantum Program - Datový formát:
quantinuum.openqasm.v1 - ID cíle:
- H2-1:
quantinuum.qpu.h2-1 - H2-2:
quantinuum.qpu.h2-2
- H2-1:
- Profil provedení cíle: QIR Adaptive RI
Technické specifikace systémového modelu H2
Technické podrobnosti o systémovém modelu H2 najdete v datových listech produktu Quantinuum na stránce System Model H2 spolu s odkazy na specifikaci Quantinuum a úložiště kvantových objemů dat a o tom, jak citovat využití systémů Quantinuum.
Další možnosti
Tady jsou uvedeny další možnosti dostupné prostřednictvím rozhraní Quantinuum API.
| Capability | Description |
|---|---|
| Měření a resetování středního okruhu (MCMR) | Měření qubitů uprostřed okruhu a jejich opakované použití |
| Libovolná úhlová brána ZZ | Přímo provádějte otočení bran o libovolné úhly pro 2 qubity |
| Obecná provázaná brána SU(4) | Přímo provádějte otočení bran o libovolné úhly pro 2 qubity |
| Parametry šumu emulátoru | Experimentujte s parametry šumu používanými v emulátorech Quantinuum |
| Optimalizace TKET v rámci Quantinuum Stack | Experimentujte se zapnutím různých úrovní optimalizací TKET v rámci zásobníku Quantinuum. |
Uživatelé můžou tyto další funkce využít prostřednictvím funkcí okruhu nebo předávacích parametrů ve zprostředkovatelích Azure Quantum Q# a Qiskit.
Měření a resetování středního okruhu
Měření a resetování v polovině obvodu (MCMR) umožňuje uživatelům měřit qubity během průběhu obvodu a poté je resetovat. To umožňuje funkce pro opravu kvantových chyb a také schopnost opakovaně používat qubity v okruhu.
Vzhledem k vnitřní úrovni struktury zachycených iontových qubitů může měření středního okruhu ponechat qubit v nekótačním stavu. Všechna měření středního okruhu by měla následovat resetování, pokud se má qubit v daném okruhu znovu použít. Následující příklady kódu to demonstrují.
Když se uprostřed okruhu měří podmnožina qubitů, dají se klasické informace z těchto měření použít k podmínce budoucích prvků okruhu. Příklady také zvýrazňují toto použití.
Informace o MCMR v systémech Quantinuum najdete na stránce MCMR na webu Quantinuum Docs.
V jazyce Q# MResetZ je možné funkci použít k měření qubitu a jeho resetování. Další informace o této funkci najdete MResetZ v dokumentaci k jazyku Q#.
%%qsharp
import Std.Measurement.*;
operation ContinueComputationAfterReset() : Result[] {
// Set up circuit with 2 qubits
use qubits = Qubit[2];
// Perform Bell Test
H(qubits[0]);
CNOT(qubits[0], qubits[1]);
// Measure Qubit 1 and reset it
let res1 = MResetZ(qubits[1]);
// Continue additional computation, conditioned on qubits[1] measurement outcome
if res1 == One {
X(qubits[0]);
}
CNOT(qubits[0], qubits[1]);
// Measure qubits and return results
let res2 = Measure([PauliZ, PauliZ], qubits);
return [res1, res2];
}
Libovolná úhlová brána ZZ
Nativní sada bran Quantinuum zahrnuje libovolnou úhlovou bránu ZZ. To je užitečné pro snížení počtu bran 2 qubitů pro mnoho kvantových algoritmů a sekvencí bran. Pro informace o libovolných úhlových ZZ branách v systémech Quantinuum, navštivte stránku Parameterized Angle ZZ Gates v dokumentaci Quantinuum.
- Libovolné úhlové brány ZZ s poskytovatelem Q#
- Libovolná úhlová brána ZZ Gates s poskytovatelem Qiskit
V Q# je libovolná úhlová brána ZZ implementována operací Rzz.
%%qsharp
import Std.Intrinsic.*;
import Std.Measurement.*;
import Std.Arrays.*;
operation ArbitraryAngleZZExample(theta : Double) : Result[] {
// Set up circuit with 2 qubits
use qubits = Qubit[2];
// Create array for measurement results
mutable resultArray = [Zero, size = 2];
H(qubits[0]);
Rz(theta, qubits[0]);
Rz(theta, qubits[1]);
X(qubits[1]);
// Add Arbitrary Angle ZZ gate
Rzz(theta, qubits[0], qubits[1]);
// Measure qubits and return results
for i in IndexRange(qubits) {
resultArray w/= i <- M(qubits[i]);
}
return resultArray;
}
Obecná SU(4) Propletení brány
Nativní brána setu Quantinuum zahrnuje obecnou SU(4) propojovací bránu. Všimněte si, že kvantové obvody odeslané do hardwaru se překládají na plně provázající bránu ZZ a libovolnou úhlovou bránu RZZ. Okruhy se přelistují pouze na obecnou propletenou bránu SU(4), pokud se k tomu uživatelé rozhodnou. Informace o obecném SU(4) entangleru v systémech Quantinuum naleznete na stránce parametrizovaných úhlových SU(4) bran na webu Quantinuum Docs.
V Q# se obecná zaplétací brána SU(4) implementuje pomocí Quantinuum profilu QIR. Pokud ji chcete použít, definujte funkci s vlastním vnitřním objektem, který odpovídá podpisu profilu QIR, a tuto funkci použijte v rámci SU4Example operace.
Chcete-li zajistit, aby okruh fungoval s obecným proplétacím portem SU(4), předejte v zásobníku Quantinuum následující možnosti:
-
nativetq: Rxxyyzzaby se zabránilo přesměrování na jiné nativní brány. -
noreduce: Trueaby nedocházelo k dalším optimalizacem kompilátoru (volitelné).
%%qsharp
import Std.Math.*;
operation __quantum__qis__rxxyyzz__body(a1 : Double, a2 : Double, a3 : Double, q1 : Qubit, q2 : Qubit) : Unit {
body intrinsic;
}
operation SU4Example() : Result[] {
use qs = Qubit[2];
// Add SU(4) gate
__quantum__qis__rxxyyzz__body(PI(), PI(), PI(), qs[0], qs[1]);
MResetEachZ(qs)
}
Teď zkompilujte operaci:
from qdk import qsharp
MyProgram = qsharp.compile("GenerateRandomBit()")
Připojte se k Azure Quantum, vyberte target počítač a nakonfigurujte parametry šumu pro emulátor:
from qdk.azure import Workspace
MyWorkspace = Workspace(resource_id="")
MyTarget = MyWorkspace.get_targets("quantinuum.sim.h2-1e")
# Update TKET optimization level desired
option_params = {
"nativetq": `Rxxyyzz`,
"noreduce": True
}
Předávejte možnost noreduce při odesílání úlohy.
job = MyTarget.submit(MyProgram, "Submit a program with SU(4) gate", shots = 10, input_params = option_params)
job.get_results()
Parametry šumu emulátoru
Uživatelé mají možnost experimentovat s parametry šumu emulátorů Quantinuum. Tady je zvýrazněno pouze několik dostupných parametrů šumu, které ukazují, jak předávat parametry ve zprostředkovatelích Azure Quantum.
Další informace o úplné sadě dostupných parametrů šumu najdete na stránce Quantinuum Emulators na webu Quantinuum docs.
Nejprve naimportujte požadované balíčky a zahajte základní profil:
from qdk import qsharp
from qdk.azure import Workspace
qsharp.init(target_profile=qsharp.TargetProfile.Base)
Dále definujte funkci.
%%qsharp
import Std.Measurement.*;
import Std.Arrays.*;
import Std.Convert.*;
operation GenerateRandomBit() : Result {
use target = Qubit();
// Apply an H-gate and measure.
H(target);
return M(target);
}
a proveďte kompilaci operace
MyProgram = qsharp.compile("GenerateRandomBit()")
Připojte se k Azure Quantum, vyberte target počítač a nakonfigurujte parametry šumu pro emulátor:
MyWorkspace = Workspace(resource_id="")
MyTarget = MyWorkspace.get_targets("quantinuum.sim.h2-1e")
# Update the parameter names desired
# Note: This is not the full set of options available.
# For the full set, see the Quantinuum Emulators page
option_params = {
"error-params": {
"p1": 4e-5,
"p2": 3e-3,
"p_meas": [3e-3, 3e-3],
"p_init": 4e-5,
"p_crosstalk_meas": 1e-5,
"p_crosstalk_init": 3e-5,
"p1_emission_ratio": 6e-6,
"p2_emission_ratio": 2e-4
}
}
Při odesílání úlohy předejte možnosti šumu emulátoru:
job = MyTarget.submit(MyProgram, "Experiment with Emulator Noise Parameters",
shots = 10,
input_params = option_params)
job.get_results()
Pokud chcete vypnout model šumu emulátoru, nastavte error-model možnost Falsena hodnotu . Ve výchozím nastavení je nastavena na Truehodnotu .
option_params = {
"error-model": False
}
Chcete-li použít emulátor stabilizátoru, nastavte možnost simulator na hodnotu stabilizer. Ve výchozím nastavení je nastavena na state-vectorhodnotu .
option_params = {
"simulator": "stabilizer"
}
Kompilace TKET v Quantinuum Stacku
Obvody odeslané do systémů Quantinuum, s výjimkou integrovaných hybridních úloh, jsou automaticky zpracovány pomocí kompilačních průchodů TKET pro hardware Quantinuum. Díky tomu se okruhy automaticky optimalizují pro systémy Quantinuum a efektivněji běží.
Další informace o konkrétních průchodech kompilace najdete v pytket-quantinuum dokumentaci, konkrétně v části pytket-quantinuum Průchody kompilace.
V softwarovém zásobníku Quantinuum je použitá úroveň optimalizace nastavena parametrem tket-opt-level.
Výchozí nastavení kompilace pro všechny okruhy odeslané do systémů Quantinuum je úroveň optimalizace 2.
Uživatelé, kteří si přejí experimentovat s procházením kompilace TKET a chtějí zjistit, jaké optimalizace by se použily na jejich okruhy před odesláním jakýchkoli úloh, si mohou prohlédnout poznámkový blok Quantinuum_compile_without_api.ipynb ve složce pytket-quantinuum Příklady.
Chcete-li vypnout kompilaci TKET v zásobníku, možnost no-opt lze nastavit na True uvnitř option_params. Například "no-opt": True.
Další informace o pytket najdete na následujících odkazech:
Nejprve naimportujte požadované balíčky a zahajte základní profil:
from qdk import qsharp
from qdk.azure import Workspace
qsharp.init(target_profile=qsharp.TargetProfile.Base)
Dále definujte funkci.
%%qsharp
import Std.Measurement.*;
import Std.Arrays.*;
import Std.Convert.*;
operation GenerateRandomBit() : Result {
use target = Qubit();
// Apply an H-gate and measure.
H(target);
return M(target);
}
a proveďte kompilaci operace
MyProgram = qsharp.compile("GenerateRandomBit()")
Připojte se k Azure Quantum, vyberte target počítač a nakonfigurujte parametry šumu pro emulátor:
MyWorkspace = Workspace(resource_id="")
MyTarget = MyWorkspace.get_targets("quantinuum.sim.h2-1e")
# Update TKET optimization level desired
option_params = {
"tket-opt-level": 1
}
Při odesílání úlohy předejte možnost optimalizace:
job = MyTarget.submit(MyProgram, "Experiment with TKET Compilation", shots = 10, input_params = option_params)
job.get_results()
Technické specifikace
Technické podrobnosti o emulátorech System Model H2 a System Model H2 najdete na stránce Uživatelská příručka k hardwaru spolu se specifikací Quantinuum a úložišti kvantových objemů dat a postupy citace Quantinuum Systems.
Cílová dostupnost
Kvantové počítače Quantinuum jsou navrženy tak, aby byly neustále upgradovány, což zákazníkům umožňuje přístup k nejnovějším hardwarovým funkcím, protože Quantinuum neustále vylepšuje věrnost brány, chyby paměti a rychlost systému.
Hardware Quantinuum prochází komerčními obdobími a vývojovými obdobími. Během komerčních období je hardware dostupný ke zpracování úloh prostřednictvím systému front. Během období vývoje je hardware offline, protože se použijí upgrady.
Každý měsíc se uživatelům Quantinuum odešle kalendář s informacemi o komerčním a vývojovém období. Pokud jste tento kalendář nedostali, pošlete e-mail QCsupport@quantinuum.com.
Stav target určuje aktuální schopnost zpracovávat úlohy. Mezi možné stavy target patří:
- K dispozici: Je target online, zpracovává odeslané úlohy a přijímá nové úlohy.
- Snížený výkon: Přijímá target úlohy, ale v současné době je nezpracovává.
- Není k dispozici: Zařízení target je offline a nepřijímá nová podání úloh.
Pro kvantové počítače targetsQuantinuum , Dostupné a degradované odpovídají komerčním obdobím, zatímco nedostupné odpovídá obdobím vývoje, kdy je počítač offline pro upgrady.
Aktuální informace o stavu se můžou načíst z karty Poskytovatelé pracovního prostoru na webu Azure Portal.
Pricing
Pokud chcete zobrazit fakturační plány Quantinuum, navštivte ceny Azure Quantum.
Omezení a kvóty
Kvóty Quantinuum se sledují na základě kreditové jednotky využití QPU, hardwarového kvantového kreditu (HQC), pro úlohy odeslané do kvantových počítačů Quantinuum, a emulátorových HQC (eHQC) pro úlohy odeslané do emulátorů.
HQCs a eHQCs se používají k výpočtu nákladů na provoz úlohy a počítají se na základě následujícího vzorce:
$$ HQC = 5 + C(N_{1q} + 10 N_{2q} + 5 N_m)/5000 $$
where:
- $N_{1q}$ je počet operací s jedním qubitem v okruhu.
- $N_{2q}$ je počet nativních dvou qubitových operací v okruhu. Nativní brána je ekvivalentní CNOT až k několika jedno qubitovým branám.
- $N_{m}$ je počet operací přípravy a měření stavu (SPAM) v okruhu, včetně počáteční implicitní přípravy stavu a jakýchkoli průběžných a konečných měření a resetování stavu.
- $C$ je počet záběrů.
Note
Celkové náklady na HQCs zahrnují všechna hradla a měření napříč všemi podmíněnými větvemi a řídicími toky. To může mít vyšší dopad na integrované hybridní úlohy.
Kvóty jsou založené na výběru plánu a je možné je zvýšit pomocí lístku podpory. Pokud chcete zobrazit aktuální limity a kvóty, přejděte do části Operace a vyberte okno Kvóty vašeho pracovního prostoru na webu Azure Portal. Další informace najdete v tématu Kvóty služby Azure Quantum.