FakeBoston
class FakeBoston
Bases : FakeBackendV2
Un backend factice de 156 qubits.
Initialiser un backend basé sur l' BackendV2
Paramètres
- fournisseur – Une référence en amont facultative à l'objet fournisseur dont provient le backend
- nom – Un nom facultatif pour le backend
- description – Une description facultative du backend
- online_date – Date et heure (facultatives) auxquelles le serveur a été mis en ligne
- backend_version – Chaîne de caractères facultative indiquant la version du backend. Cela diffère de l'attribut
version, carversionconcerne la version de l'interface abstraiteBackendde l'objet, tandis quebackend_versionsert à gérer les versions du backend lui-même. - champs – arguments de clé-valeur permettant de remplacer les options par défaut.
Augmentations
AttributeError – Si un champ est spécifié qui ne figure pas parmi les options du backend
Attributs
backend_name
Type: str
Valeur par défaut : 'fake_boston'
Nom du backend.
conf_filename
Type: str
Valeur par défaut : 'conf_boston.json'
Nom du fichier de configuration du backend.
coupling_map
Renvoyer CouplingMap l'objet
dirname
Type: str
Valeur par défaut : '/home/runner/work/qiskit-ibm-runtime/qiskit-ibm-runtime/qiskit_ibm_runtime/fake_provider/backends/boston'
Répertoire contenant les instantanés réels du backend.
dt
Renvoie la résolution temporelle système des signaux d'entrée
Cette fonctionnalité doit être implémentée si le backend prend en charge la planification Pulse.
Retours
L'intervalle de temps du signal d'entrée, en secondes. dtSi le backend ne définit pas, None sera renvoyé.
dtm
Renvoie la résolution temporelle système des signaux de sortie.
Retours
L'intervalle de temps du signal de sortie, en secondes.
instruction_durations
Renvoie InstructionDurations l'objet.
instructions
Une liste de tuples d'instructions dans le backend du formulaire (instruction, (qubits))
max_circuits
Renvoie le nombre maximal de circuits pouvant être exécutés dans une seule tâche.
Auparavant, cette propriété renvoyait la valeur « max_experiments » issue de la configuration du backend, mais cette valeur ne reflète plus fidèlement les limites du circuit du backend. De nouveaux champs seront ajoutés pour indiquer les nouvelles limites.
meas_map
Renvoie le regroupement des mesures multiplexées
Cette fonctionnalité doit être implémentée si le backend prend en charge la planification Pulse.
Retours
Le regroupement des mesures multiplexées
Augmentations
NotImplementedError – si le backend ne prend pas en charge l'interrogation du mappage des mesures
num_qubits
Renvoie le nombre de qubits dont dispose le backend.
operation_names
Une liste des noms d'instructions pris en charge par le backend.
operations
Une liste des Instruction instances prises en charge par le backend.
options
Renvoyer les options du backend
Les options d'un backend sont les paramètres dynamiques qui définissent la manière dont celui-ci est utilisé. Ils servent à contrôler la run() méthode.
physical_qubits
Renvoie le nombre de qubits physiques dont dispose le backend.
Renvoie le nombre de qubits physiques du backend (qubits programmables, qubits de réinitialisation et coupleurs confondus).
props_filename
Type: str
Valeur par défaut : 'props_boston.json'
Nom du fichier contenant les propriétés du backend.
provider
Renvoie le fournisseur de backend.
Retours
le prestataire chargé de l'infrastructure technique.
Type de retour
fournisseur
target
version
Valeur par défaut : 2
name
Nom du backend.
description
Description facultative destinée à être lue par l'utilisateur.
online_date
Date à laquelle le serveur a été mis en service.
backend_version
Version du backend fournie. Ce n'est pas la même chose que BackendV2.version, qui est la version de l'interface Backend abstraite.
Méthodes
check_faulty
check_faulty(circuit)
Vérifiez si le circuit d'entrée utilise des qubits ou des fronts défectueux.
Paramètres
circuit (QuantumCircuit) – Circuit à vérifier.
Augmentations
ValueError – Si une instruction portant sur un qubit ou un bord défectueux est détectée.
Type de retour
Aucun
configuration
properties
properties(refresh=False)
Renvoie les propriétés du backend.
Paramètres
Truerefresh (bool) – Si c'est le cas, récupérez à nouveau les propriétés du backend à partir du fichier local.
Retours
Les propriétés du backend.
Type de retour
qubit_properties
qubit_properties(qubit)
Renvoie l' QubitProperties s relatives à un qubit donné.
Si ces informations ne sont pas définies ou si le backend ne prend pas en charge leur consultation, il n'est pas nécessaire d'implémenter cette méthode.
Paramètres
qubit (int | list[int]) – Le qubit destiné à récupérer l'objet QubitProperties . Il peut s'agir d'un simple entier pour 1 qubit ou d'une liste de qubits; une liste QubitProperties d'objets sera renvoyée dans le même ordre
Retours
QubitProperties L'objet correspondant au qubit spécifié. Si une liste de qubits est fournie, une liste sera renvoyée. NoneSi certaines propriétés d'un qubit font défaut, cela peut être dû à...
Augmentations
NotImplementedError – si le backend ne prend pas en charge l'interrogation des propriétés des qubits
Type de retour
QubitProperties | liste[ QubitProperties ]
refresh
refresh(service, use_fractional_gates=False, persist=True)
Mettre à jour les fichiers de données à partir de leur équivalent réel.
Cette méthode récupère les derniers fichiers de données du backend à partir de leur équivalent réel et, par défaut (persist=True), écrase les fichiers correspondants dans l'installation locale :
../fake_provider/backends/{backend_name}/conf_{backend_name}.json../fake_provider/backends/{backend_name}/props_{backend_name}.json
Les nouveaux fichiers de données seront conservés d'une session à l'autre; ils resteront donc à jour, sauf s'ils sont manuellement réinitialisés localement ou si qiskit-ibm-runtime le logiciel est mis à jour ou réinstallé.
Le remplacement des fichiers de données installés échoue toutefois lorsque le paquet est installé dans un emplacement en lecture seule (par exemple, un répertoire site-packages système). Dans ce cas, ou chaque fois qu'il n'est pas souhaitable de modifier le paquet installé, utilisez persist=False pour enregistrer les données mises à jour dans un répertoire temporaire à la place. Le backend est toujours mis à jour pour la session en cours, mais les modifications ne sont pas enregistrées sur le disque et sont perdues dès que le backend fait l'objet d'un ramassage des déchets ou que le processus se termine.
Paramètres
- service (QiskitRuntimeService) – Un
QiskitRuntimeServiceexemple - use_fractional_gates (bool) – Définissez cette option sur « True » pour permettre aux backends d'inclure des portes fractionnaires.
- persist (bool) – Si (
Truepar défaut), les fichiers de données mis à jour écrasent les copies fournies avec le progiciel installé, de sorte que la mise à jour soit conservée d'une session à l'autre. Dans ce casFalse, les données sont enregistrées dans un répertoire temporaire, ce qui permet à l'opération derefresh()s'exécuter correctement même lorsque le paquet est installé dans un emplacement en lecture seule, au prix toutefois d'une perte des modifications entre les sessions.
Augmentations
- ValueError – si le service fourni est une instance d' non-QiskitRuntimeService.
- Exception – Si la cible réelle n'existe pas ou n'est pas accessible
Type de retour
Aucun
run
run(run_input, **options)
Exécutez le programme sur le faux backend à l'aide d'un simulateur.
Cette méthode exécute des tâches de circuit (une seule ou une liste d' QuantumCircuit ) à l'aide d' BasicSimulator ou du simulateur Aer, et renvoie un Job objet.
Si qiskit-aer est installé, les tâches seront exécutées à l'aide de AerSimulator avec le modèle de bruit du faux backend. Sinon, les tâches seront exécutées à l'aide de BasicSimulator sans aucune modification.
À l'heure actuelle, la simulation « noisy » d'un travail par impulsions n'est pas encore prise en charge dans FakeBackendV2.
Paramètres
- run_input (QuantumCircuit | list[QuantumCircuit]) – Une personne ou une liste de
QuantumCircuit - options (dict) – Y a-t-il des options kwarg à transmettre au backend pour l'exécution de la configuration? Si une clé figure également dans l'attribut ou l'objet « options », on s'attend à ce que la valeur spécifiée soit utilisée à la place de celle définie dans l'objet « options ».
Retours
L'objet de tâche pour l'exécution
Type de retour
Travail
set_options
set_options(**fields)
Configurez les champs d'options pour le backend
Cette méthode sert à mettre à jour les options d'un backend. Si vous devez modifier l'une des options avant l'exécution, il suffit de passer l'argument clé-valeur avec la nouvelle valeur de l'option.
Paramètres
champs – Les champs permettant de mettre à jour les options
Augmentations
AttributeError – Si le champ transmis ne figure pas parmi les options