Fournisseur Quantinuum

Conseil

Les utilisateurs pour la première fois obtiennent automatiquement des crédits Azure Quantumgratuits de 500 $ (USD) à utiliser avec chaque fournisseur de matériel quantique participant. Si vous avez consommé tous les crédits et voulez en obtenir davantage, vous pouvez vous inscrire au programme de crédits Azure Quantum.

Quantinuum donne accès à des systèmes à ions piégés offrant des qubits haute fidélité entièrement connectés et la possibilité d’effectuer des mesures à mi-circuit.

  • Éditeur : Quantinuum
  • ID du fournisseur : quantinuum

Cibles

Les éléments suivants targets sont disponibles à partir de ce fournisseur :

Nom de la cible ID de la cible Nombre de qubits Description
H1-1 Syntax Checker quantinuum.sim.h1-1sc 20 qubits Utilisez cette option pour valider les programmes quantiques par rapport au compilateur H1-1 avant de les soumettre à du matériel ou des émulateurs sur la plateforme de Quantinuum. Gratuit.
Vérificateur de syntaxe H2-1 quantinuum.sim.h2-1sc 32 qubits Utilisez cette option pour valider des programmes quantiques par rapport au compilateur H2-1 avant de les soumettre à du matériel ou des émulateurs sur la plateforme de Quantinuum. Gratuit.
H1-1 Emulator quantinuum.sim.h1-1e 20 qubits Utilise un modèle physique réaliste et un modèle de bruit de H1-1.
Émulateur H2-1 quantinuum.sim.h2-1e 32 qubits Utilise un modèle physique réaliste et un modèle de bruit de H2-1.
H1-1 quantinuum.qpu.h1-1 20 qubits Appareil d’ion piégé H1-1 de Quantinuum.
H2-1 quantinuum.qpu.h2-1 32 qubits Dispositif d’ion piégé H2-1 de Quantinuum.

Quantinuum targets correspond à un Basic Measurement Feedback profil. Pour plus d’informations sur ce target profil et ses limitations, consultez Présentation des target types de profils dans Azure Quantum.

Tous les circuits de Quantinuum targets prennent désormais en charge les circuits hybrides intégrés. Pour plus d’informations sur l’envoi de travaux hybrides intégrés, consultez Informatique hybride intégrée.

Pour commencer à utiliser le fournisseur Quantinuum sur Azure Quantum, consultez Prise en main de Q# et d’un notebook Azure Quantum.

Conseil

Les travaux Quantum soumis sous une session ont un accès exclusif au matériel Quantinuum, à condition que vous ayez mis en file d’attente les travaux dans une minute les uns des autres. Après cela, tout travail est accepté et géré avec la logique standard de mise en file d’attente et de hiérarchisation. Pour plus d’informations, consultez sessions dans Azure Quantum.

Vérificateurs de syntaxe

Nous recommandons aux utilisateurs de commencer par valider leur code à l’aide de notre vérificateur de syntaxe. Il s’agit d’un outil qui permet de vérifier la syntaxe, l’achèvement de la compilation et la compatibilité de la machine. Les vérificateurs de syntaxe utilisent le même compilateur que l’ordinateur quantique qu’ils target. Par exemple, le vérificateur de syntaxe H1-1 utilise le même compilateur que H1-1. La pile de compilation complète est exécutée à l’exception des opérations quantiques réelles. Si le code est compilé, le vérificateur de syntaxe retourne une success status et un résultat de tous les 0. Si le code ne se compile pas, le vérificateur de syntaxe retourne une status ayant échoué et indique l’erreur retournée pour aider les utilisateurs à déboguer leur syntaxe de circuit. Le vérificateur de syntaxe permet aux développeurs de valider leur code à tout moment, même lorsque les machines sont hors connexion.

  • Type de tâche : Simulation
  • Formats de données : honeywell.openqasm.v1, honeywell.qir.v1
  • ID cible :
    • Vérificateur de syntaxe H1-1 : quantinuum.sim.h1-1sc
    • Vérificateur de syntaxe H2-1 : quantinuum.sim.h2-1sc
  • Profil d’exécution cible : Commentaires sur les mesures de base

L’utilisation des vérificateurs de syntaxe est gratuite.

Émulateurs du modèle de système H1

Après avoir validé la syntaxe de leur code avec un vérificateur de syntaxe, les utilisateurs peuvent tirer parti des émulateurs de modèle système H1 de Quantinuum, des outils d’émulation qui contiennent un modèle physique détaillé et un modèle de bruit réaliste du matériel du modèle système H1 réel. Les modèles de bruit sont dérivés d’une caractérisation détaillée du matériel. Les émulateurs de modèle système H1 utilisent une API identique pour l’envoi de travaux que le matériel du modèle système H1, ce qui permet une transition transparente de l’émulation au matériel. Pour optimiser la productivité et réduire le temps de développement, les émulateurs de modèle système H1 sont disponibles même lorsque le matériel est hors connexion.

Pour plus d’informations, consultez la fiche produit de l’émulateur de modèle système H1 disponible sur la page Modèle système H1 .

  • Type de tâche : Simulation
  • Format de données : quantinuum.openqasm.v1
  • ID cible :
    • H1-1 Emulator : quantinuum.sim.h1-1e
  • Profil d’exécution cible : Basic Measurement Feedback

L’utilisation de l’émulateur de modèle système H1 est offerte gratuitement avec un abonnement matériel. Pour plus de détails, consultez Tarifs Azure Quantum.

Émulateur de série H (basé sur le cloud)

L’émulateur de série H est disponible gratuitement sur la page Code avec Azure Quantum sur le site web Azure Quantum, où vous pouvez écrire du code Q# et envoyer vos travaux à l’émulateur Quantinuum H-Series sans compte Azure. L’émulateur de série H est un émulateur quantique basé sur un statevector qui utilise un modèle de bruit physique réaliste et des paramètres d’erreur généralisés basés sur les performances typiques d’un ordinateur quantique du modèle système H1. La simulation quantique effectuée est la même que l’émulateur de modèle système H1 , mais la routine d’optimisation de circuit classique est réduite pour augmenter le débit. La prise en charge de l’informatique hybride intégrée est prévue pour une date ultérieure.

Modèle de système H1

Le modèle système H1 de génération d’ordinateurs quantiques, Powered by Honeywell, est composé d’un appareil quantum à couplage de charge (QCCD) avec une section linéaire et comprend actuellement une machine targets: le H1-1. Les utilisateurs sont encouragés à tester la compatibilité de leur code avec le H1-1 en envoyant des travaux à un vérificateur de syntaxe et à l’émulateur System Model H1 avant de les target envoyer aux machines.

La machine du modèle système H1 est mise à niveau en permanence tout au long du cycle de vie de son produit. Les utilisateurs ont accès au matériel le plus récent, le plus avancé et le plus performant qui soit.

Pour plus d’informations, consultez la feuille de données du modèle système H1 sur la page Modèle système H1 .

  • Type de tâche : Quantum Program
  • Format de données : honeywell.openqasm.v1, honeywell.qir.v1
  • ID cible :
    • H1-1 : quantinuum.qpu.h1-1
  • Profil d’exécution cible : Basic Measurement Feedback

Émulateur H2 de modèle système

Après avoir validé la syntaxe de leur code avec le vérificateur de syntaxe H2-1, les utilisateurs peuvent tirer parti de l’émulateur de modèle système H2 de Quantinuum, un outil d’émulation qui contient un modèle physique détaillé et un modèle de bruit réaliste du matériel du modèle système H2 réel. Pour plus d’informations sur le modèle de bruit, consultez la fiche produit de l’émulateur de modèle système H2 qui se trouve sur la page Modèle système H2 . L’émulateur de modèle système H2 utilise une API identique pour l’envoi de travaux que le matériel du modèle système H2, ce qui permet une transition transparente de l’émulation au matériel. Pour optimiser la productivité et raccourcir le temps de développement, l’émulateur H2 est disponible même lorsque le matériel est hors connexion.

  • Type de tâche : Simulation
  • Format de données : quantinuum.openqasm.v1
  • ID cible :
    • Émulateur H2-1 : quantinuum.sim.h2-1e
  • Profil d’exécution cible : Commentaires sur les mesures de base

L’utilisation de l’émulateur H2 du modèle système est proposée gratuitement avec un abonnement matériel. Pour plus de détails, consultez Tarifs Azure Quantum.

Modèle système H2

La génération d’ordinateurs quantiques quantinuum system model H2, Powered by Honeywell, est composée d’un appareil à couplage de charge quantique (QCCD) avec deux sections linéaires connectées et dispose actuellement d’une machine, le H2-1. Vous trouverez plus d’informations dans la feuille de données du modèle système H2 sur la page Modèle système H2 . Les utilisateurs sont encouragés à tester la compatibilité de leur code en envoyant des travaux à un vérificateur de syntaxe et à l’émulateur System Model H2 avant de target les envoyer aux ordinateurs.

Si un utilisateur envoie un travail à l’ordinateur H2-1 et que l’ordinateur H2-1 n’est pas disponible, le travail reste dans la file d’attente de cet ordinateur jusqu’à ce que l’ordinateur soit disponible.

Le matériel H2 du modèle système est mis à niveau en continu tout au long du cycle de vie de son produit. Les utilisateurs ont accès au matériel le plus récent, le plus avancé et le plus performant qui soit.

  • Type de tâche : Quantum Program
  • Format de données : quantinuum.openqasm.v1
  • ID cible :
    • H2-1 : quantinuum.qpu.h2-1
  • Profil d’exécution cible : Commentaires sur les mesures de base

Spécifications techniques du modèle système H1 et H2

Vous trouverez des détails techniques sur le modèle système H1 et le modèle système H2 dans les feuilles de données produit de Quantinuum sur les pages Modèle système H1 et Modèle système H2 , ainsi que des liens vers la spécification Quantinuum et les référentiels de données de volume quantiques et comment citer l’utilisation des systèmes Quantinuum.

Fonctionnalités supplémentaires

Les fonctionnalités supplémentaires disponibles via l’API Quantinuum sont répertoriées ici.

Fonctionnalité Description
Mesure et réinitialisation du circuit intermédiaire (MCMR) Mesurer les qubits au milieu d’un circuit et les réutiliser
Portes angle ZZ arbitraires Effectuer directement des rotations de portes d’angle arbitraires de 2 qubits
Paramètres de bruit de l’émulateur Tester les paramètres de bruit utilisés dans les émulateurs Quantinuum H-Series
Optimisations TKET dans la pile de la série H Expérience avec l’activation de différents niveaux d’optimisations TKET dans la pile de la série H

Les utilisateurs peuvent tirer parti de ces fonctionnalités supplémentaires via des fonctions de circuit ou des paramètres pass-through dans les fournisseurs Q# et Qiskit Azure Quantum.

Mesure et réinitialisation du circuit intermédiaire

McMR (Mid-circuit Measurement and Reset) permet aux utilisateurs de mesurer les qubits au milieu d’un circuit et de les réinitialiser. Cela permet des fonctionnalités de correction des erreurs quantiques, ainsi que la possibilité de réutiliser des qubits dans le circuit.

En raison de la structure de niveau interne des qubits d’ions piégés, une mesure du circuit intermédiaire peut laisser le qubit dans un état non informatique. Toutes les mesures du circuit intermédiaire doivent être suivies d’une réinitialisation si le qubit doit être réutilisé dans ce circuit. Les exemples de code suivants le montrent.

Lorsqu’un sous-ensemble de qubits est mesuré au milieu du circuit, les informations classiques de ces mesures peuvent être utilisées pour conditionner les éléments futurs du circuit. Les exemples mettent également en évidence cette utilisation.

Pour plus d’informations sur MCMR dans les systèmes Quantinuum, consultez les feuilles de données produit de la série H sur les pages Modèle système H1 et Modèle système H2 .

Dans Q#, la fonction peut être utilisée à la MResetZ fois pour mesurer un qubit et le réinitialiser. Pour plus d’informations sur cette fonction, consultez MResetZ la documentation Q#.

%%qsharp
open Microsoft.Quantum.Intrinsic;
open Microsoft.Quantum.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];
}

Portes angle ZZ arbitraires

L’ensemble de portes natives de Quantinuum inclut des portes ZZ à angle arbitraire. Cela est bénéfique pour réduire le nombre de portes de 2 qubits pour de nombreux algorithmes quantiques et séquences de portes. Pour plus d’informations sur les portes ZZ à angle arbitraire dans les systèmes Quantinuum, consultez les feuilles de données produit de la série H dans les pages Modèle système H1 et Modèle système H2 .

Dans Q#, la porte ZZ d’angle arbitraire est implémentée avec l’opération Rzz .

%%qsharp
open Microsoft.Quantum.Intrinsic;
open Microsoft.Quantum.Measurement;
open Microsoft.Quantum.Arrays;

operation ContinueComputationAfterReset(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) {
        set resultArray w/= i <- M(qubits[i]);  
    }
    
    return resultArray;
}

Paramètres de bruit de l’émulateur

Les utilisateurs ont la possibilité d’expérimenter les paramètres de bruit des émulateurs Quantinuum. Seuls quelques-uns des paramètres de bruit disponibles sont mis en évidence ici, ce qui montre comment passer par les paramètres dans les fournisseurs Azure Quantum.

Pour plus d’informations sur l’ensemble complet des paramètres de bruit disponibles, consultez les feuilles de données produit de l’émulateur de série H sur les pages Modèle système H1 et Modèle système H2 .

Tout d’abord, importez les packages requis et lancez le profil de base :

import qsharp
import azure.quantum
qsharp.init(target_profile=qsharp.TargetProfile.Base)

Ensuite, définissez la fonction .

%%qsharp
open Microsoft.Quantum.Measurement;
open Microsoft.Quantum.Arrays;
open Microsoft.Quantum.Convert;

operation GenerateRandomBit() : Result {
    use target = Qubit();

    // Apply an H-gate and measure.
    H(target);
    return M(target);
}

et compilez l’opération :

MyProgram = qsharp.compile("GenerateRandomBit()")

Connectez-vous à Azure Quantum, sélectionnez la target machine et configurez les paramètres de bruit pour l’émulateur :

MyWorkspace = azure.quantum.Workspace(
    resource_id = "",
    location = ""
)

MyTarget = MyWorkspace.get_targets("quantinuum.sim.h1-1e")

# Update the parameter names desired
# Note: This is not the full set of options available. 
# For the full set, see the System Model H1 Emulator Product Data Sheet
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
    }
}

Transmettez les options de bruit de l’émulateur lors de l’envoi du travail :

job = MyTarget.submit(MyProgram, "Experiment with Emulator Noise Parameters", 
                      shots = 10, 
                      input_params = option_params)
job.get_results()

Pour désactiver le modèle de bruit de l’émulateur, définissez l’option sur error-modelFalse. Par défaut, elle est définie sur True.

option_params = {
    "error-model": False 
}

Pour utiliser l’émulateur de stabilisateur, définissez l’option sur simulatorstabilizer. Par défaut, elle est définie sur state-vector.

option_params = {
    "simulator": "stabilizer" 
}

Compilation TKET dans la pile de la série H

Les circuits soumis aux systèmes Quantinuum série H, à l’exception des soumissions hybrides intégrées, sont automatiquement exécutés via des passes de compilation TKET pour le matériel de série H. Cela permet aux circuits d’être automatiquement optimisés pour les systèmes de la série H et de s’exécuter plus efficacement.

Vous trouverez plus d’informations sur les passes de compilation spécifiques appliquées dans la pytket-quantinuum documentation, plus précisément dans la pytket-quantinuum section Passes de compilation .

Dans la pile logicielle de la série H, le niveau d’optimisation appliqué est défini avec le tket-opt-level paramètre . Le paramètre de compilation par défaut pour tous les circuits soumis aux systèmes de la série H est le niveau d’optimisation 2.

Les utilisateurs qui souhaitent tester la compilation TKET passent et voient quelles optimisations s’appliqueraient à leurs circuits avant d’envoyer des travaux peuvent voir le notebook Quantinuum_compile_without_api.ipynb dans le pytket-quantinuum dossier Examples .

Pour plus d’informations sur pytket, consultez les liens suivants :

Tout d’abord, importez les packages requis et lancez le profil de base :

import qsharp
import azure.quantum
qsharp.init(target_profile=qsharp.TargetProfile.Base)

Ensuite, définissez la fonction .

%%qsharp
open Microsoft.Quantum.Measurement;
open Microsoft.Quantum.Arrays;
open Microsoft.Quantum.Convert;

operation GenerateRandomBit() : Result {
    use target = Qubit();

    // Apply an H-gate and measure.
    H(target);
    return M(target);
}

et compilez l’opération :

MyProgram = qsharp.compile("GenerateRandomBit()")

Connectez-vous à Azure Quantum, sélectionnez la target machine et configurez les paramètres de bruit pour l’émulateur :

MyWorkspace = azure.quantum.Workspace(
    resource_id = "",
    location = ""
)

MyTarget = MyWorkspace.get_targets("quantinuum.sim.h1-1e")

# Update TKET optimization level desired
option_params = {
    "tket-opt-level": 1
}

Passez l’option d’estimation lors de l’envoi du travail :

job = MyTarget.submit(MyProgram, "Experiment with TKET Compilation", shots = 10, input_params = option_params)
job.get_results()

Spécifications techniques

Vous trouverez des détails techniques pour les émulateurs System Model H1 et H2 et System Model H1 et H2 dans les feuilles de données de Quantinuum sur la page Modèle système H1 et Modèle système H2 , ainsi que des liens vers la spécification Quantinuum et les référentiels de données de volume quantique, et comment citer l’utilisation des systèmes Quantinuum.

Disponibilité cible

Les ordinateurs quantiques Quantinuum H-Series sont conçus pour être mis à niveau en continu, ce qui permet aux clients d’avoir accès aux dernières fonctionnalités matérielles à mesure que Quantinuum améliore les fidélités de porte, les erreurs de mémoire et la vitesse du système.

Le matériel Quantinuum passe par des périodes commerciales et des périodes de développement. Pendant les périodes commerciales, le matériel est disponible pour traiter des travaux par le biais d’un système de file d’attente. Pendant les périodes de développement, le matériel est hors connexion, car des mises à niveau sont appliquées.

Chaque mois, un calendrier est envoyé aux utilisateurs Quantinuum avec des informations sur les périodes commerciales et de développement. Si vous n’avez pas reçu ce calendrier, veuillez envoyer un e-mail à l’adresse QCsupport@quantinuum.com.

La status d’un targetindique sa capacité actuelle à traiter les travaux. Les états possibles d’un target sont les suivants :

  • Disponible : est target en ligne, traite les travaux envoyés et en accepte de nouveaux.
  • Détérioré : accepte les target travaux, mais ne les traite pas actuellement.
  • Non disponible : est target hors connexion et n’accepte pas les nouvelles soumissions de travaux.

Pour l’ordinateur targetsquantique Quantinuum , Available et Degrad correspondent à des périodes commerciales, tandis que Non disponible correspond aux périodes de développement où la machine est hors connexion pour les mises à niveau.

Vous pouvez récupérer des informations sur l’état actuel à partir de l’onglet Fournisseurs d’un espace de travail sur le portail Azure.

Tarifs

Pour voir les plans de facturation de Quantinuum, visitez la page des tarifs Azure Quantum.

Limites et quotas

Les quotas de Quantinuum sont suivis en fonction de l’unité de crédit d’utilisation de QPU, H-System Quantum Credit (HQC) pour les travaux soumis aux ordinateurs quantiques Quantinuum, et des HQC de l’émulateur (eHQC) pour les travaux soumis aux émulateurs.

Les crédits HQC et eHQC servent à calculer le coût d’exécution d’un travail, et ils sont calculés selon la formule suivante :

$$ HQC = 5 + C(N_{1q} + 10 N_{2q} + 5 N_m)/5000 $$

où :

  • $N_{1q}$ est le nombre d’opérations à un qubit dans un circuit.
  • $N_{2q}$ est le nombre d’opérations natives à deux qubit dans un circuit. La porte native est équivalente à CNOT jusqu’à plusieurs portes à un qubit.
  • $N_{m}$ est le nombre d’opérations de préparation et de mesure (SPAM) de l’état dans un circuit, y compris la préparation de l’état implicite initial et toutes les mesures intermédiaires et finales et les réinitialisations d’état.
  • $C$ est le nombre de captures.

Notes

Le coût total dans les HQC comprend toutes les portes et mesures dans toutes les branches conditionnelles ou flux de contrôle. Cela peut avoir un impact plus élevé sur les travaux hybrides intégrés.

Les quotas dépendent du plan sélectionné et peuvent être augmentés avec un ticket de support. Pour consulter vos limites et quotas actuels, accédez au panneau Crédits et quotas, puis sélectionnez l’onglet Quotas de votre espace de travail sur le portail Azure. Pour plus d’informations, consultez Quotas Azure Quantum.

Notes

Si vous utilisez un plan de crédits Azure Quantum et non un plan de facturation, les informations de quotas sont mappées à vos crédits alloués. Dans ce cas, le quota liste le nombre total de crédits que vous avez reçus.