Skip to main content
IBM Quantum Platform

QuantumProgramModel

pydantic model QuantumProgramModel

GitHub

Bases : BaseModel

Modèle permettant de stocker un programme quantique.

circuits

field

Type : QpyDataV13ToV17Model[QuantumCircuit]

Un circuit quantique pour chaque élément de items.

Ces éléments sont stockés en dehors de items afin de les regrouper au sein d'un seul blob QPY.

Validé par

  • check_chunk_sizes_are_consistent
  • check_circuit_count_is_consistent

items

field

Type : list[Annotated[CircuitItemModel | SamplexItemModel, Field(discriminator``=``'item_type')]]

Points à l'ordre du jour.

Validé par

  • check_chunk_sizes_are_consistent
  • check_circuit_count_is_consistent

meas_level

field

Type : Literal['classified', 'kerneled', 'avg_kerneled', 'both']

Valeur par défaut : 'classified'

Le niveau auquel renvoyer tous les résultats de mesure des registres classiques.

Cette option définit le type de retour de tous les registres classiques dans tous les éléments du programme quantique et détermine si les données complexes brutes provenant des dispositifs de mesure de bas niveau sont converties en bits ou non.

  • « classified » : les données du registre classique sont renvoyées sous forme de tableaux booléens dont la structure est intrinsèque

    (num_shots, creg_size).

  • « kerneled » : les données du registre classique sont renvoyées sous la forme d'un tableau complexe dont la structure correspond à celle de la fonction intrinsèque

    (num_shots, creg_size), où chaque entrée représente une valeur de QI (obtenue par interpolation par noyau de la courbe de mesure) exprimée en unités arbitraires.

  • « avg_kerneled » : les données des registres classiques sont renvoyées sous la forme d'un tableau complexe à l'aide de la fonction intrinsèque

    (creg_size,)forme, où les données sont équivalentes à celles « avec noyau », mais en plus moyennées sur les prises.

  • « les deux » : Pour chaque registre classique, le système renvoie à la fois les données classifiées et les données traitées par noyau.

Validé par

  • check_chunk_sizes_are_consistent
  • check_circuit_count_is_consistent

passthrough_data

field

Type: DataTree

Valeur par défaut : None

Des données imbriquées arbitraires ont été transmises au cours de l'exécution sans être modifiées.

Validé par

  • check_chunk_sizes_are_consistent
  • check_circuit_count_is_consistent

semantic_role

field

Type : str | None

Valeur par défaut : None

Rôle sémantique indiquant comment les résultats d'exécution peuvent être traités a posteriori par les clients d'exécution.

Les valeurs système réservées comprennent ‘sampler-v2’ et ‘estimator-v2’; elles sont susceptibles d'être modifiées sans préavis. Les clients tiers ne doivent pas définir cette valeur ni s'y fier.

Validé par

  • check_chunk_sizes_are_consistent
  • check_circuit_count_is_consistent

shots

field

Type: int

Le nombre de coups pour chaque circuit relié individuellement.

Contraintes

  • ge = 1

Validé par

  • check_chunk_sizes_are_consistent
  • check_circuit_count_is_consistent

check_chunk_sizes_are_consistent

validator check_chunk_sizes_are_consistent

GitHub

Vérifiez que tous les éléments du programme définissent la taille des blocs de manière cohérente.

check_circuit_count_is_consistent

validator check_circuit_count_is_consistent

GitHub

Vérifiez qu'il y a bien un circuit pour chaque élément.

Cette page a-t-elle été utile ?
Signaler un bogue, une coquille ou proposer du contenu sur GitHub.