Travaux
Exécution d'un travail
Invoquer une primitive Qiskit Runtime. Notez l'identifiant du travail renvoyé. Vous l'utiliserez pour vérifier l'état d'avancement du travail et examiner les résultats. Cette demande est limitée à 5 travaux par minute et par utilisateur.
Autorisation
Pour appeler cette méthode, vous devez vous voir attribuer un ou plusieurs rôles d'accès IAM incluant les actions suivantes. Vous pouvez vérifier votre accès en vous rendant sur Users > User > Access
quantum-computing.job.create
Audit
L'appel de cette méthode génère les événements d'audit suivants.
quantum-computing.job.create
Entrée
Nom, type | Description |
|---|---|
program_id string | ID du programme à exécuter |
backend string | Nom qui identifie le backend sur lequel le programme doit être exécuté. |
runtime string | Nom et étiquette de l'image à utiliser lors de l'exécution d'un programme (uniquement pour les utilisateurs du canal IBM Quantum ). Doit suivre le modèle "name:tag". |
tags string[] | Liste des balises de l'emploi ou du programme |
log_level string | Niveau de journalisation du programme Valeurs possibles: criticalerrorwarninginfodebug |
cost integer | Coût du travail en tant que durée estimée (en secondes). Ne doit pas dépasser le coût du programme. Si la valeur fournie dépasse le maximum, elle sera plafonnée à cette valeur. Valeur minimale: 0Valeur maximale: 10800 |
session_id string | Identifiant de la session dont fait partie l'emploi |
calibration_id string | L'ID de l'étalonnage utilisé pour le travail |
params one of | |
SamplerV2 entrée object | L'entrée d'un appel à l'API SamplerV2 |
EstimatorV2 entrée object | L'entrée d'un appel à l'API EstimatorV2 |
NoiseLearner entrée object | L'entrée d'un appel à l'API NoiseLearner |
Entrée de l'exécuteur v0.1 object | Un modèle décrivant les données d'entrée du programme Executor. |
Entrée de l'exécuteur v0.2 object | Un modèle décrivant les données d'entrée du programme Executor. |
Exécuteur testamentaire v1.0 ParamsModel object | Un modèle décrivant les données d'entrée du programme Executor. |
Exécuteur testamentaire v1.1 ParamsModel object | Un modèle décrivant les données d'entrée du programme Executor. |
Exécuteur testamentaire v2.0 ParamsModel object | Un modèle décrivant les données d'entrée du programme Executor. |
NoiseLearnerV3 v0.1 entrée object | Un modèle décrivant les données d'entrée du programme « Noise Learner » V3. |
NoiseLearnerV3 v0.2 entrée object | Un modèle décrivant les données d'entrée du programme « Noise Learner » V3. |
NoiseLearnerV3 v0.3 ParamsModel object | Un modèle décrivant les données d'entrée du programme « Noise Learner » V3. |
private boolean | Lorsqu'il vaut true, les paramètres d'entrée ne sont pas renvoyés et les résultats ne peuvent être lus qu'une seule fois. Une fois le travail terminé, les paramètres d'entrée sont supprimés du service. Une fois les résultats lus, ils sont supprimés du service. Lorsqu'il est défini sur false, les paramètres d'entrée et les résultats suivent le comportement de rétention standard de l'API. N'est renvoyée dans la réponse que si la valeur est vraie, sinon elle est omise. |
Si votre instance se trouve dans la région « eu-de », utilisez plutôt ce lien : URL: https://eu-de.quantum.cloud.ibm.com/api/v1/jobs
curl -X POST \
'https://quantum.cloud.ibm.com/api/v1/jobs' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer YOUR-TOKEN' \
-H 'Service-CRN: YOUR-SERVICE-CRN' \
-H 'IBM-API-Version: 2024-01-01' Si votre instance se trouve dans la région « eu-de », utilisez plutôt ce lien : URL: https://eu-de.quantum.cloud.ibm.com/api/v1/jobs
import requests
response = requests.request(
"POST",
"https://quantum.cloud.ibm.com/api/v1/jobs",
headers={
"Accept": "application/json",
"IBM-API-Version": "2024-01-01",
"Authorization": "Bearer YOUR-TOKEN",
"Service-CRN": "YOUR-SERVICE-CRN"
},
)
print(response.json())Sortie
Code d'état | Description |
|---|---|
| 200 | bouton OK |
| 400 | Demande incorrecte |
| 401 | Non autorisé |
| 403 | Interdit |
| 404 | Introuvable |
| 409 | L'utilisation dépasse la limite de l'instance |
{
"id": "c5dge2d3rn7breq27i9g",
"backend": "ibm_backend",
"private": true
}{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "ID de travail"
},
"backend": {
"type": "string",
"description": "Backend sélectionné pour exécuter le job"
},
"session_id": {
"type": "string",
"description": "Id de la session associée au travail"
},
"private": {
"type": "boolean",
"description": "Lorsqu'il vaut true, les paramètres d'entrée ne sont pas renvoyés et les résultats ne peuvent être lus qu'une seule fois. Une fois le travail terminé, les paramètres d'entrée sont supprimés du service. Une fois les résultats lus, ils sont supprimés du service. Lorsqu'il est défini sur false, les paramètres d'entrée et les résultats suivent le comportement de rétention standard de l'API. N'est renvoyée dans la réponse que si la valeur est vraie, sinon elle est omise."
},
"calibration_id": {
"type": "string",
"description": "L'ID de l'étalonnage utilisé pour le travail",
"pattern": "^.*$",
"minLength": 1,
"maxLength": 100
}
},
"description": "Réponse lors de la création d'un emploi",
"required": [
"id",
"backend"
]
}Lister les travaux
Dressez la liste des programmes quantiques que vous avez exécutés.
Autorisation
Pour appeler cette méthode, vous devez vous voir attribuer un ou plusieurs rôles d'accès IAM incluant les actions suivantes. Vous pouvez vérifier votre accès en vous rendant sur Users > User > Access
quantum-computing.job.read
Audit
L'appel de cette méthode génère les événements d'audit suivants.
quantum-computing.job.read
Entrée
Nom, type | Description |
|---|---|
limit integer | Nombre de résultats à renvoyer à la fois. Si la valeur fournie est en dehors de la plage viable, aucune erreur ne se produit et la valeur par défaut est utilisée à la place. Valeur par défaut: 200Valeur minimale: 1Valeur maximale: 200 |
offset integer | Nombre de résultats à décaler lors de la récupération de la liste des emplois. Si la valeur fournie est en dehors de la plage viable, aucune erreur ne se produit et la valeur par défaut est utilisée à la place. Valeur par défaut: 0Valeur minimale: 0Valeur maximale: 2147483647 |
pending boolean | Renvoie les travaux "en file d'attente" et "en cours" s'ils sont vrais. Renvoie les travaux "Terminé", "Annulé" et "Échec" s'ils sont faux. |
program string | ID du programme pour filtrer les travaux |
backend string | Backend pour filtrer les travaux |
created_after string | Emploi créé après le filtre |
created_before string | Emploi créé avant le filtre |
sort string | Trier les travaux par heure de création ASC ou DESC (par défaut) |
tags string[] | Tags pour filtrer les emplois |
session_id string | ID de session pour filtrer les travaux |
exclude_params boolean | Exclure les paramètres du travail de la réponse Valeur par défaut: true |
Si votre instance se trouve dans la région « eu-de », utilisez plutôt ce lien : URL: https://eu-de.quantum.cloud.ibm.com/api/v1/jobs
curl -X GET \
'https://quantum.cloud.ibm.com/api/v1/jobs' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer YOUR-TOKEN' \
-H 'Service-CRN: YOUR-SERVICE-CRN' \
-H 'IBM-API-Version: 2024-01-01' Si votre instance se trouve dans la région « eu-de », utilisez plutôt ce lien : URL: https://eu-de.quantum.cloud.ibm.com/api/v1/jobs
import requests
response = requests.request(
"GET",
"https://quantum.cloud.ibm.com/api/v1/jobs",
headers={
"Accept": "application/json",
"IBM-API-Version": "2024-01-01",
"Authorization": "Bearer YOUR-TOKEN",
"Service-CRN": "YOUR-SERVICE-CRN"
},
)
print(response.json())Sortie
Code d'état | Description |
|---|---|
| 200 | bouton OK |
| 400 | Demande incorrecte |
| 401 | Non autorisé |
| 403 | Interdit |
| 404 | Introuvable |
{
"jobs": [
{
"id": "c5dge2d3rn7breq27i9g",
"backend": "ibmq_qasm_simulator",
"cost": 0,
"state": {
"status": "Completed",
"reason": ""
},
"status": "Completed",
"params": {
"iterations": 3
},
"program": {
"id": "myprogram-abcdef12345"
},
"created": "2021-10-04T13:52:09.456851Z",
"runtime": "ntc-provider-primitives:latest",
"tags": [
"tag1",
"tag2",
"tag3",
"tag4"
],
"session_id": "c5dge2d3rn7breq27i9g",
"usage": {
"qpu_charge_time_seconds": 20,
"status": "complete"
},
"private": true,
"estimated_running_time_seconds": 30.5,
"calibration_id": "fez-ac-tls-test"
},
{
"id": "c2gfe1m3ln7breq27i6e",
"backend": "ibmq_qasm_simulator",
"cost": 0,
"state": {
"status": "Completed",
"reason": ""
},
"status": "Completed",
"params": {
"iterations": 3
},
"program": {
"id": "myprogram-abcdef12345"
},
"created": "2021-10-05T13:52:09.456851Z",
"runtime": "ntc-provider-primitives:latest",
"tags": [
"tag1",
"tag2",
"tag3",
"tag4"
],
"session_id": "c1mre2f3pn9breq18i4g"
}
],
"count": 2,
"limit": 2,
"offset": 0
}{
"title": "JobsResponse",
"type": "object",
"description": "Réponse à la collecte d'emplois",
"properties": {
"jobs": {
"description": "Une liste d'emplois",
"type": "array",
"minItems": 0,
"maxItems": 2147483647,
"items": {
"title": "JobResponse",
"type": "object",
"description": "Un emploi",
"properties": {
"id": {
"type": "string",
"description": "Identifiant attribué à l'emploi",
"pattern": "^[A-Za-z0-9_-]+$"
},
"backend": {
"type": "string",
"description": "\\N- Avertissement:\\N- Bien que ce paramètre ne soit pas actuellement requis pour les demandes, il est fortement encouragé de le spécifier. L'exécution d'un circuit ISA sur un backend dont le jeu d'instructions est différent entraînera une erreur. Le paramètre \"backend\" sera requis dans une prochaine version.\n\nLe backend sur lequel le programme est exécuté. Si aucun backend n'est spécifié, le travail est envoyé au backend ayant la file d'attente la plus courte auquel vous avez accès.",
"pattern": "^.*$"
},
"state": {
"title": "JobState",
"type": "object",
"description": "Situation actuelle de l'emploi",
"properties": {
"status": {
"type": "string",
"description": "Statut en cours du travail",
"enum": [
"Queued",
"Running",
"Completed",
"Cancelled",
"Failed"
]
},
"reason": {
"type": "string",
"description": "Raison du statut actuel"
},
"reason_code": {
"type": "integer",
"format": "int32",
"minimum": 1000,
"maximum": 9999,
"description": "Code de motif de l'état actuel"
},
"reason_solution": {
"type": "string",
"description": "Prochaines mesures à prendre par l'utilisateur en cas d'échec"
}
},
"required": [
"status"
]
},
"status": {
"title": "JobStatus",
"type": "string",
"description": "Statut en cours du travail",
"enum": [
"Queued",
"Running",
"Completed",
"Cancelled",
"Cancelled - Ran too long",
"Failed"
]
},
"params": {
"type": "object",
"additionalProperties": true,
"description": "Paramètres utilisés pour exécuter le travail"
},
"program": {
"type": "object",
"description": "Programme associé à l'emploi",
"properties": {
"id": {
"type": "string",
"description": "Identifiant du programme exécuté",
"pattern": "^.*$",
"minLength": 1,
"maxLength": 1000000
}
},
"required": [
"id"
]
},
"created": {
"type": "string",
"description": "Horodatage UTC de la date de création du travail",
"format": "date-time",
"pattern": "^[0-9TZt:\\-+./*]+$"
},
"runtime": {
"type": "string",
"description": "Nom et étiquette de l'image à utiliser lors de l'exécution d'un programme (uniquement pour les utilisateurs du canal IBM Quantum )"
},
"cost": {
"type": "integer",
"format": "int32",
"minimum": 0,
"maximum": 10800,
"description": "Coût du travail en tant que durée estimée (en secondes). Ne doit pas dépasser le coût du programme. Si la valeur fournie dépasse le maximum, elle sera plafonnée à cette valeur."
},
"tags": {
"title": "Balises",
"description": "Liste des balises de l'emploi ou du programme",
"type": "array",
"minItems": 0,
"maxItems": 8,
"items": {
"type": "string",
"pattern": "^.*$",
"minLength": 0,
"maxLength": 86
}
},
"remote_storage": {
"allOf": [
{
"allOf": [
{
"oneOf": [
{
"type": "object",
"description": "Métadonnées de stockage à distance indiquant où les données sont stockées ou doivent être stockées dans un panier IBM Cloud Object Storage. Les champs obligatoires peuvent être omis dans les champs spécifiques objectivés s'ils sont autorisés et définis dans l'option de stockage à distance par défaut.",
"properties": {
"type": {
"type": "string",
"enum": [
"ibmcloud_cos"
],
"default": "ibmcloud_cos"
},
"region": {
"type": "string",
"example": "us-east",
"description": "Région, interrégion ou centre de données unique tel que défini par IBM Cloud Object Storage ( [https://cloud.ibm.com/docs/cloud-object-storage?topic=cloud-object-storage-endpoints](https://cloud.ibm.com/docs/cloud-object-storage?topic=cloud-object-storage-endpoints) )",
"pattern": "^[a-zA-Z-]+$"
},
"region_type": {
"type": "string",
"enum": [
"regional",
"cross-region",
"single-site"
]
},
"bucket_crn": {
"description": "Nom de ressource de cloud entièrement spécifié pour le seau cible Cloud Object Storage",
"type": "string",
"example": "crn:v1:bluemix:public:cloud-object-storage:global:a/abc123:abc123:bucket:my-bucket"
},
"object_name": {
"description": "Nom/ID de l'objet dans le panier IBM Cloud Object Storage. Ne peut *pas* être spécifié dans l'option de stockage à distance par défaut.",
"type": "string"
}
},
"required": [
"object_name",
"bucket_crn",
"region",
"region_type"
]
}
],
"discriminator": {
"propertyName": "type"
}
},
{
"description": "Option de stockage à distance par défaut pour l'endroit où les données d'entrée sont stockées et l'endroit où les données de sortie doivent être stockées"
}
]
},
{
"title": "RemoteStorage",
"description": "(Activé uniquement pour les instances Qiskit Runtime avec le plan Channel Partner) Métadonnées et informations de connexion sur l'endroit où les paramètres de travail sont stockés à distance et/ou où les résultats sont stockés dans les circuits transpilés, etc et/ou où stocker les résultats, les journaux, les circuits transpilés, etc. Les propriétés omises dans les objets spécifiques au champ seront héritées de l'option de stockage à distance par défaut.\nA titre d'exemple, les deux objets suivants sont équivalents :\n\n```\n{\n \"type\": \"ibmcloud_cos\",\n \"region\": \"us-east\",\n \"region_type\": \"regional\",\n \"bucket_crn\": \"crn\",\n \"job_params\": {\n \"object_name\": \"my-object\"\n }\n}\n```\n\n```\n{\n \"type\": \"ibmcloud_cos\",\n \"region\": \"us-east\",\n \"region_type\": \"regional\",\n \"bucket_crn\": \"crn\",\n \"job_params\": {\n \"type\": \"ibmcloud_cos\",\n \"region\": \"us-east\",\n \"region_type\": \"regional\",\n \"bucket_crn\": \"crn\",\n \"object_name\": \"my-object\"\n }\n}\n```",
"properties": {
"job_params": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"description": "Métadonnées de stockage à distance indiquant où les données sont stockées ou doivent être stockées dans un panier IBM Cloud Object Storage. Les champs obligatoires peuvent être omis dans les champs spécifiques objectivés s'ils sont autorisés et définis dans l'option de stockage à distance par défaut.",
"properties": {
"type": {
"type": "string",
"enum": [
"ibmcloud_cos"
],
"default": "ibmcloud_cos"
},
"region": {
"type": "string",
"example": "us-east",
"description": "Région, interrégion ou centre de données unique tel que défini par IBM Cloud Object Storage ( [https://cloud.ibm.com/docs/cloud-object-storage?topic=cloud-object-storage-endpoints](https://cloud.ibm.com/docs/cloud-object-storage?topic=cloud-object-storage-endpoints) )",
"pattern": "^[a-zA-Z-]+$"
},
"region_type": {
"type": "string",
"enum": [
"regional",
"cross-region",
"single-site"
]
},
"bucket_crn": {
"description": "Nom de ressource de cloud entièrement spécifié pour le seau cible Cloud Object Storage",
"type": "string",
"example": "crn:v1:bluemix:public:cloud-object-storage:global:a/abc123:abc123:bucket:my-bucket"
},
"object_name": {
"description": "Nom/ID de l'objet dans le panier IBM Cloud Object Storage. Ne peut *pas* être spécifié dans l'option de stockage à distance par défaut.",
"type": "string"
}
},
"required": [
"object_name",
"bucket_crn",
"region",
"region_type"
]
}
],
"discriminator": {
"propertyName": "type"
}
},
{
"description": "Emplacement où sont stockés les paramètres de travail fournis par l'utilisateur (les propriétés omises seront héritées de l'option de stockage à distance par défaut)"
}
]
},
"results": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"description": "Métadonnées de stockage à distance indiquant où les données sont stockées ou doivent être stockées dans un panier IBM Cloud Object Storage. Les champs obligatoires peuvent être omis dans les champs spécifiques objectivés s'ils sont autorisés et définis dans l'option de stockage à distance par défaut.",
"properties": {
"type": {
"type": "string",
"enum": [
"ibmcloud_cos"
],
"default": "ibmcloud_cos"
},
"region": {
"type": "string",
"example": "us-east",
"description": "Région, interrégion ou centre de données unique tel que défini par IBM Cloud Object Storage ( [https://cloud.ibm.com/docs/cloud-object-storage?topic=cloud-object-storage-endpoints](https://cloud.ibm.com/docs/cloud-object-storage?topic=cloud-object-storage-endpoints) )",
"pattern": "^[a-zA-Z-]+$"
},
"region_type": {
"type": "string",
"enum": [
"regional",
"cross-region",
"single-site"
]
},
"bucket_crn": {
"description": "Nom de ressource de cloud entièrement spécifié pour le seau cible Cloud Object Storage",
"type": "string",
"example": "crn:v1:bluemix:public:cloud-object-storage:global:a/abc123:abc123:bucket:my-bucket"
},
"object_name": {
"description": "Nom/ID de l'objet dans le panier IBM Cloud Object Storage. Ne peut *pas* être spécifié dans l'option de stockage à distance par défaut.",
"type": "string"
}
},
"required": [
"object_name",
"bucket_crn",
"region",
"region_type"
]
}
],
"discriminator": {
"propertyName": "type"
}
},
{
"description": "Emplacement où les résultats du travail seront stockés (les propriétés omises seront héritées de l'option de stockage à distance par défaut)"
}
]
},
"logs": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"description": "Métadonnées de stockage à distance indiquant où les données sont stockées ou doivent être stockées dans un panier IBM Cloud Object Storage. Les champs obligatoires peuvent être omis dans les champs spécifiques objectivés s'ils sont autorisés et définis dans l'option de stockage à distance par défaut.",
"properties": {
"type": {
"type": "string",
"enum": [
"ibmcloud_cos"
],
"default": "ibmcloud_cos"
},
"region": {
"type": "string",
"example": "us-east",
"description": "Région, interrégion ou centre de données unique tel que défini par IBM Cloud Object Storage ( [https://cloud.ibm.com/docs/cloud-object-storage?topic=cloud-object-storage-endpoints](https://cloud.ibm.com/docs/cloud-object-storage?topic=cloud-object-storage-endpoints) )",
"pattern": "^[a-zA-Z-]+$"
},
"region_type": {
"type": "string",
"enum": [
"regional",
"cross-region",
"single-site"
]
},
"bucket_crn": {
"description": "Nom de ressource de cloud entièrement spécifié pour le seau cible Cloud Object Storage",
"type": "string",
"example": "crn:v1:bluemix:public:cloud-object-storage:global:a/abc123:abc123:bucket:my-bucket"
},
"object_name": {
"description": "Nom/ID de l'objet dans le panier IBM Cloud Object Storage. Ne peut *pas* être spécifié dans l'option de stockage à distance par défaut.",
"type": "string"
}
},
"required": [
"object_name",
"bucket_crn",
"region",
"region_type"
]
}
],
"discriminator": {
"propertyName": "type"
}
},
{
"description": "Emplacement où les journaux de travail seront stockés (les propriétés omises seront héritées de l'option de stockage à distance par défaut)"
}
]
}
},
"required": [
"job_params",
"results"
]
}
]
},
"session_id": {
"type": "string",
"description": "Identifiant de la session dont fait partie l'emploi"
},
"user_id": {
"type": "string",
"description": "L'identifiant de l'utilisateur qui a soumis le travail"
},
"usage": {
"title": "utilisation",
"description": "statistiques d\"utilisation",
"type": "object",
"properties": {
"qpu_charge_time_seconds": {
"type": "number",
"description": "La durée d'utilisation des ressources en secondes. Cette valeur sert à calculer la consommation de capacité.",
"minimum": 0
},
"status": {
"title": "BillingStatus",
"type": "string",
"description": "État d'exhaustivité des données de facturation",
"enum": [
"pending",
"complete"
]
}
}
},
"private": {
"type": "boolean",
"description": "Lorsqu'il vaut true, les paramètres d'entrée ne sont pas renvoyés et les résultats ne peuvent être lus qu'une seule fois. Une fois le travail terminé, les paramètres d'entrée sont supprimés du service. Une fois les résultats lus, ils sont supprimés du service. Lorsqu'il est défini sur false, les paramètres d'entrée et les résultats suivent le comportement de rétention standard de l'API. N'est renvoyée dans la réponse que si la valeur est vraie, sinon elle est omise."
},
"estimated_running_time_seconds": {
"type": "number",
"format": "double",
"description": "Estimation de l'utilisation en secondes"
},
"calibration_id": {
"type": "string",
"description": "L'ID de l'étalonnage utilisé pour le travail"
}
},
"required": [
"id",
"created",
"program",
"state",
"status",
"cost"
]
}
},
"count": {
"type": "integer",
"format": "int32",
"minimum": 0,
"maximum": 2147483647,
"description": "Nombre total de travaux pour l'utilisateur"
},
"offset": {
"type": "integer",
"format": "int32",
"minimum": 0,
"maximum": 2147483647,
"description": "Décalage à partir duquel les résultats paginés sont renvoyés"
},
"limit": {
"type": "integer",
"format": "int32",
"minimum": 1,
"maximum": 200,
"description": "Nombre maximal de résultats renvoyés dans la réponse paginée"
}
},
"required": [
"limit",
"offset",
"jobs"
]
}Liste des détails de l'emploi
Liste les détails de la tâche du programme quantique spécifié.
Autorisation
Pour appeler cette méthode, vous devez vous voir attribuer un ou plusieurs rôles d'accès IAM incluant les actions suivantes. Vous pouvez vérifier votre accès en vous rendant sur Users > User > Access
quantum-computing.job.read
Audit
L'appel de cette méthode génère les événements d'audit suivants.
quantum-computing.job.read
Entrée
Nom, type | Description |
|---|---|
id Obligatoire string | Identifiant d'un emploi existant |
Nom, type | Description |
|---|---|
exclude_params boolean | Exclure les paramètres du travail de la réponse Valeur par défaut: false |
Si votre instance se trouve dans la région « eu-de », utilisez plutôt ce lien : URL: https://eu-de.quantum.cloud.ibm.com/api/v1/jobs/{id}
curl -X GET \
'https://quantum.cloud.ibm.com/api/v1/jobs/{id}' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer YOUR-TOKEN' \
-H 'Service-CRN: YOUR-SERVICE-CRN' \
-H 'IBM-API-Version: 2024-01-01' Si votre instance se trouve dans la région « eu-de », utilisez plutôt ce lien : URL: https://eu-de.quantum.cloud.ibm.com/api/v1/jobs/{id}
import requests
response = requests.request(
"GET",
"https://quantum.cloud.ibm.com/api/v1/jobs/{id}",
headers={
"Accept": "application/json",
"IBM-API-Version": "2024-01-01",
"Authorization": "Bearer YOUR-TOKEN",
"Service-CRN": "YOUR-SERVICE-CRN"
},
)
print(response.json())Sortie
Code d'état | Description |
|---|---|
| 200 | bouton OK |
| 401 | Non autorisé |
| 403 | Interdit |
| 404 | Introuvable |
{
"id": "c5dge2d3rn7breq27i9g",
"backend": "ibmq_qasm_simulator",
"cost": 0,
"state": {
"status": "Completed",
"reason": ""
},
"status": "Completed",
"params": {
"iterations": 3
},
"program": {
"id": "myprogram-abcdef12345"
},
"created": "2021-10-04T13:52:09.456851Z",
"runtime": "ntc-provider-primitives:latest",
"tags": [
"tag1",
"tag2",
"tag3",
"tag4"
],
"session_id": "c5dge2d3rn7breq27i9g",
"private": true,
"estimated_running_time_seconds": 30.5,
"calibration_id": "fez-ac-tls-test"
}{
"title": "JobResponse",
"type": "object",
"description": "Un emploi",
"properties": {
"id": {
"type": "string",
"description": "Identifiant attribué à l'emploi",
"pattern": "^[A-Za-z0-9_-]+$"
},
"backend": {
"type": "string",
"description": "\\N- Avertissement:\\N- Bien que ce paramètre ne soit pas actuellement requis pour les demandes, il est fortement encouragé de le spécifier. L'exécution d'un circuit ISA sur un backend dont le jeu d'instructions est différent entraînera une erreur. Le paramètre \"backend\" sera requis dans une prochaine version.\n\nLe backend sur lequel le programme est exécuté. Si aucun backend n'est spécifié, le travail est envoyé au backend ayant la file d'attente la plus courte auquel vous avez accès.",
"pattern": "^.*$"
},
"state": {
"title": "JobState",
"type": "object",
"description": "Situation actuelle de l'emploi",
"properties": {
"status": {
"type": "string",
"description": "Statut en cours du travail",
"enum": [
"Queued",
"Running",
"Completed",
"Cancelled",
"Failed"
]
},
"reason": {
"type": "string",
"description": "Raison du statut actuel"
},
"reason_code": {
"type": "integer",
"format": "int32",
"minimum": 1000,
"maximum": 9999,
"description": "Code de motif de l'état actuel"
},
"reason_solution": {
"type": "string",
"description": "Prochaines mesures à prendre par l'utilisateur en cas d'échec"
}
},
"required": [
"status"
]
},
"status": {
"title": "JobStatus",
"type": "string",
"description": "Statut en cours du travail",
"enum": [
"Queued",
"Running",
"Completed",
"Cancelled",
"Cancelled - Ran too long",
"Failed"
]
},
"params": {
"type": "object",
"additionalProperties": true,
"description": "Paramètres utilisés pour exécuter le travail"
},
"program": {
"type": "object",
"description": "Programme associé à l'emploi",
"properties": {
"id": {
"type": "string",
"description": "Identifiant du programme exécuté",
"pattern": "^.*$",
"minLength": 1,
"maxLength": 1000000
}
},
"required": [
"id"
]
},
"created": {
"type": "string",
"description": "Horodatage UTC de la date de création du travail",
"format": "date-time",
"pattern": "^[0-9TZt:\\-+./*]+$"
},
"runtime": {
"type": "string",
"description": "Nom et étiquette de l'image à utiliser lors de l'exécution d'un programme (uniquement pour les utilisateurs du canal IBM Quantum )"
},
"cost": {
"type": "integer",
"format": "int32",
"minimum": 0,
"maximum": 10800,
"description": "Coût du travail en tant que durée estimée (en secondes). Ne doit pas dépasser le coût du programme. Si la valeur fournie dépasse le maximum, elle sera plafonnée à cette valeur."
},
"tags": {
"title": "Balises",
"description": "Liste des balises de l'emploi ou du programme",
"type": "array",
"minItems": 0,
"maxItems": 8,
"items": {
"type": "string",
"pattern": "^.*$",
"minLength": 0,
"maxLength": 86
}
},
"remote_storage": {
"allOf": [
{
"allOf": [
{
"oneOf": [
{
"type": "object",
"description": "Métadonnées de stockage à distance indiquant où les données sont stockées ou doivent être stockées dans un panier IBM Cloud Object Storage. Les champs obligatoires peuvent être omis dans les champs spécifiques objectivés s'ils sont autorisés et définis dans l'option de stockage à distance par défaut.",
"properties": {
"type": {
"type": "string",
"enum": [
"ibmcloud_cos"
],
"default": "ibmcloud_cos"
},
"region": {
"type": "string",
"example": "us-east",
"description": "Région, interrégion ou centre de données unique tel que défini par IBM Cloud Object Storage ( [https://cloud.ibm.com/docs/cloud-object-storage?topic=cloud-object-storage-endpoints](https://cloud.ibm.com/docs/cloud-object-storage?topic=cloud-object-storage-endpoints) )",
"pattern": "^[a-zA-Z-]+$"
},
"region_type": {
"type": "string",
"enum": [
"regional",
"cross-region",
"single-site"
]
},
"bucket_crn": {
"description": "Nom de ressource de cloud entièrement spécifié pour le seau cible Cloud Object Storage",
"type": "string",
"example": "crn:v1:bluemix:public:cloud-object-storage:global:a/abc123:abc123:bucket:my-bucket"
},
"object_name": {
"description": "Nom/ID de l'objet dans le panier IBM Cloud Object Storage. Ne peut *pas* être spécifié dans l'option de stockage à distance par défaut.",
"type": "string"
}
},
"required": [
"object_name",
"bucket_crn",
"region",
"region_type"
]
}
],
"discriminator": {
"propertyName": "type"
}
},
{
"description": "Option de stockage à distance par défaut pour l'endroit où les données d'entrée sont stockées et l'endroit où les données de sortie doivent être stockées"
}
]
},
{
"title": "RemoteStorage",
"description": "(Activé uniquement pour les instances Qiskit Runtime avec le plan Channel Partner) Métadonnées et informations de connexion sur l'endroit où les paramètres de travail sont stockés à distance et/ou où les résultats sont stockés dans les circuits transpilés, etc et/ou où stocker les résultats, les journaux, les circuits transpilés, etc. Les propriétés omises dans les objets spécifiques au champ seront héritées de l'option de stockage à distance par défaut.\nA titre d'exemple, les deux objets suivants sont équivalents :\n\n```\n{\n \"type\": \"ibmcloud_cos\",\n \"region\": \"us-east\",\n \"region_type\": \"regional\",\n \"bucket_crn\": \"crn\",\n \"job_params\": {\n \"object_name\": \"my-object\"\n }\n}\n```\n\n```\n{\n \"type\": \"ibmcloud_cos\",\n \"region\": \"us-east\",\n \"region_type\": \"regional\",\n \"bucket_crn\": \"crn\",\n \"job_params\": {\n \"type\": \"ibmcloud_cos\",\n \"region\": \"us-east\",\n \"region_type\": \"regional\",\n \"bucket_crn\": \"crn\",\n \"object_name\": \"my-object\"\n }\n}\n```",
"properties": {
"job_params": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"description": "Métadonnées de stockage à distance indiquant où les données sont stockées ou doivent être stockées dans un panier IBM Cloud Object Storage. Les champs obligatoires peuvent être omis dans les champs spécifiques objectivés s'ils sont autorisés et définis dans l'option de stockage à distance par défaut.",
"properties": {
"type": {
"type": "string",
"enum": [
"ibmcloud_cos"
],
"default": "ibmcloud_cos"
},
"region": {
"type": "string",
"example": "us-east",
"description": "Région, interrégion ou centre de données unique tel que défini par IBM Cloud Object Storage ( [https://cloud.ibm.com/docs/cloud-object-storage?topic=cloud-object-storage-endpoints](https://cloud.ibm.com/docs/cloud-object-storage?topic=cloud-object-storage-endpoints) )",
"pattern": "^[a-zA-Z-]+$"
},
"region_type": {
"type": "string",
"enum": [
"regional",
"cross-region",
"single-site"
]
},
"bucket_crn": {
"description": "Nom de ressource de cloud entièrement spécifié pour le seau cible Cloud Object Storage",
"type": "string",
"example": "crn:v1:bluemix:public:cloud-object-storage:global:a/abc123:abc123:bucket:my-bucket"
},
"object_name": {
"description": "Nom/ID de l'objet dans le panier IBM Cloud Object Storage. Ne peut *pas* être spécifié dans l'option de stockage à distance par défaut.",
"type": "string"
}
},
"required": [
"object_name",
"bucket_crn",
"region",
"region_type"
]
}
],
"discriminator": {
"propertyName": "type"
}
},
{
"description": "Emplacement où sont stockés les paramètres de travail fournis par l'utilisateur (les propriétés omises seront héritées de l'option de stockage à distance par défaut)"
}
]
},
"results": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"description": "Métadonnées de stockage à distance indiquant où les données sont stockées ou doivent être stockées dans un panier IBM Cloud Object Storage. Les champs obligatoires peuvent être omis dans les champs spécifiques objectivés s'ils sont autorisés et définis dans l'option de stockage à distance par défaut.",
"properties": {
"type": {
"type": "string",
"enum": [
"ibmcloud_cos"
],
"default": "ibmcloud_cos"
},
"region": {
"type": "string",
"example": "us-east",
"description": "Région, interrégion ou centre de données unique tel que défini par IBM Cloud Object Storage ( [https://cloud.ibm.com/docs/cloud-object-storage?topic=cloud-object-storage-endpoints](https://cloud.ibm.com/docs/cloud-object-storage?topic=cloud-object-storage-endpoints) )",
"pattern": "^[a-zA-Z-]+$"
},
"region_type": {
"type": "string",
"enum": [
"regional",
"cross-region",
"single-site"
]
},
"bucket_crn": {
"description": "Nom de ressource de cloud entièrement spécifié pour le seau cible Cloud Object Storage",
"type": "string",
"example": "crn:v1:bluemix:public:cloud-object-storage:global:a/abc123:abc123:bucket:my-bucket"
},
"object_name": {
"description": "Nom/ID de l'objet dans le panier IBM Cloud Object Storage. Ne peut *pas* être spécifié dans l'option de stockage à distance par défaut.",
"type": "string"
}
},
"required": [
"object_name",
"bucket_crn",
"region",
"region_type"
]
}
],
"discriminator": {
"propertyName": "type"
}
},
{
"description": "Emplacement où les résultats du travail seront stockés (les propriétés omises seront héritées de l'option de stockage à distance par défaut)"
}
]
},
"logs": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"description": "Métadonnées de stockage à distance indiquant où les données sont stockées ou doivent être stockées dans un panier IBM Cloud Object Storage. Les champs obligatoires peuvent être omis dans les champs spécifiques objectivés s'ils sont autorisés et définis dans l'option de stockage à distance par défaut.",
"properties": {
"type": {
"type": "string",
"enum": [
"ibmcloud_cos"
],
"default": "ibmcloud_cos"
},
"region": {
"type": "string",
"example": "us-east",
"description": "Région, interrégion ou centre de données unique tel que défini par IBM Cloud Object Storage ( [https://cloud.ibm.com/docs/cloud-object-storage?topic=cloud-object-storage-endpoints](https://cloud.ibm.com/docs/cloud-object-storage?topic=cloud-object-storage-endpoints) )",
"pattern": "^[a-zA-Z-]+$"
},
"region_type": {
"type": "string",
"enum": [
"regional",
"cross-region",
"single-site"
]
},
"bucket_crn": {
"description": "Nom de ressource de cloud entièrement spécifié pour le seau cible Cloud Object Storage",
"type": "string",
"example": "crn:v1:bluemix:public:cloud-object-storage:global:a/abc123:abc123:bucket:my-bucket"
},
"object_name": {
"description": "Nom/ID de l'objet dans le panier IBM Cloud Object Storage. Ne peut *pas* être spécifié dans l'option de stockage à distance par défaut.",
"type": "string"
}
},
"required": [
"object_name",
"bucket_crn",
"region",
"region_type"
]
}
],
"discriminator": {
"propertyName": "type"
}
},
{
"description": "Emplacement où les journaux de travail seront stockés (les propriétés omises seront héritées de l'option de stockage à distance par défaut)"
}
]
}
},
"required": [
"job_params",
"results"
]
}
]
},
"session_id": {
"type": "string",
"description": "Identifiant de la session dont fait partie l'emploi"
},
"user_id": {
"type": "string",
"description": "L'identifiant de l'utilisateur qui a soumis le travail"
},
"usage": {
"title": "utilisation",
"description": "statistiques d\"utilisation",
"type": "object",
"properties": {
"qpu_charge_time_seconds": {
"type": "number",
"description": "La durée d'utilisation des ressources en secondes. Cette valeur sert à calculer la consommation de capacité.",
"minimum": 0
},
"status": {
"title": "BillingStatus",
"type": "string",
"description": "État d'exhaustivité des données de facturation",
"enum": [
"pending",
"complete"
]
}
}
},
"private": {
"type": "boolean",
"description": "Lorsqu'il vaut true, les paramètres d'entrée ne sont pas renvoyés et les résultats ne peuvent être lus qu'une seule fois. Une fois le travail terminé, les paramètres d'entrée sont supprimés du service. Une fois les résultats lus, ils sont supprimés du service. Lorsqu'il est défini sur false, les paramètres d'entrée et les résultats suivent le comportement de rétention standard de l'API. N'est renvoyée dans la réponse que si la valeur est vraie, sinon elle est omise."
},
"estimated_running_time_seconds": {
"type": "number",
"format": "double",
"description": "Estimation de l'utilisation en secondes"
},
"calibration_id": {
"type": "string",
"description": "L'ID de l'étalonnage utilisé pour le travail"
}
},
"required": [
"id",
"created",
"program",
"state",
"status",
"cost"
]
}Supprimer un travail
Supprime le travail spécifié et les données qui lui sont associées. L'emploi doit être en phase terminale.
Autorisation
Pour appeler cette méthode, vous devez vous voir attribuer un ou plusieurs rôles d'accès IAM incluant les actions suivantes. Vous pouvez vérifier votre accès en vous rendant sur Users > User > Access
quantum-computing.job.delete
Audit
L'appel de cette méthode génère les événements d'audit suivants.
quantum-computing.job.delete
Entrée
Nom, type | Description |
|---|---|
id Obligatoire string | Identifiant d'un emploi existant |
Si votre instance se trouve dans la région « eu-de », utilisez plutôt ce lien : URL: https://eu-de.quantum.cloud.ibm.com/api/v1/jobs/{id}
curl -X DELETE \
'https://quantum.cloud.ibm.com/api/v1/jobs/{id}' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer YOUR-TOKEN' \
-H 'Service-CRN: YOUR-SERVICE-CRN' \
-H 'IBM-API-Version: 2024-01-01' Si votre instance se trouve dans la région « eu-de », utilisez plutôt ce lien : URL: https://eu-de.quantum.cloud.ibm.com/api/v1/jobs/{id}
import requests
response = requests.request(
"DELETE",
"https://quantum.cloud.ibm.com/api/v1/jobs/{id}",
headers={
"Accept": "application/json",
"IBM-API-Version": "2024-01-01",
"Authorization": "Bearer YOUR-TOKEN",
"Service-CRN": "YOUR-SERVICE-CRN"
},
)
print(response.json())Sortie
Code d'état | Description |
|---|---|
| 204 | bouton OK |
| 400 | Demande incorrecte |
| 401 | Non autorisé |
| 403 | Interdit |
| 404 | Introuvable |
| 500 | Erreur interne lors de la suppression d'un travail |
Annuler un travail
Annule le travail spécifié.
Autorisation
Pour appeler cette méthode, vous devez vous voir attribuer un ou plusieurs rôles d'accès IAM incluant les actions suivantes. Vous pouvez vérifier votre accès en vous rendant sur Users > User > Access
quantum-computing.job.cancel
Audit
L'appel de cette méthode génère les événements d'audit suivants.
quantum-computing.job.cancel
Entrée
Nom, type | Description |
|---|---|
id Obligatoire string | Un numéro d'identification de l'emploi |
Si votre instance se trouve dans la région « eu-de », utilisez plutôt ce lien : URL: https://eu-de.quantum.cloud.ibm.com/api/v1/jobs/{id}/cancel
curl -X POST \
'https://quantum.cloud.ibm.com/api/v1/jobs/{id}/cancel' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer YOUR-TOKEN' \
-H 'Service-CRN: YOUR-SERVICE-CRN' \
-H 'IBM-API-Version: 2024-01-01' Si votre instance se trouve dans la région « eu-de », utilisez plutôt ce lien : URL: https://eu-de.quantum.cloud.ibm.com/api/v1/jobs/{id}/cancel
import requests
response = requests.request(
"POST",
"https://quantum.cloud.ibm.com/api/v1/jobs/{id}/cancel",
headers={
"Accept": "application/json",
"IBM-API-Version": "2024-01-01",
"Authorization": "Bearer YOUR-TOKEN",
"Service-CRN": "YOUR-SERVICE-CRN"
},
)
print(response.json())Sortie
Code d'état | Description |
|---|---|
| 204 | bouton OK |
| 400 | Mauvaise demande d'annulation |
| 401 | Non autorisé |
| 403 | Interdit |
| 404 | Introuvable |
| 409 | L'emploi est en statut non annulable. |
| 500 | Erreur interne d'annulation du travail |
Liste des journaux de travail
Liste tous les journaux de travail pour le travail spécifié.
Autorisation
Pour appeler cette méthode, vous devez vous voir attribuer un ou plusieurs rôles d'accès IAM incluant les actions suivantes. Vous pouvez vérifier votre accès en vous rendant sur Users > User > Access
quantum-computing.job.read
Audit
L'appel de cette méthode génère les événements d'audit suivants.
quantum-computing.job.read
Entrée
Nom, type | Description |
|---|---|
id Obligatoire string | Un numéro d'identification de l'emploi |
Si votre instance se trouve dans la région « eu-de », utilisez plutôt ce lien : URL: https://eu-de.quantum.cloud.ibm.com/api/v1/jobs/{id}/logs
curl -X GET \
'https://quantum.cloud.ibm.com/api/v1/jobs/{id}/logs' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer YOUR-TOKEN' \
-H 'Service-CRN: YOUR-SERVICE-CRN' \
-H 'IBM-API-Version: 2024-01-01' Si votre instance se trouve dans la région « eu-de », utilisez plutôt ce lien : URL: https://eu-de.quantum.cloud.ibm.com/api/v1/jobs/{id}/logs
import requests
response = requests.request(
"GET",
"https://quantum.cloud.ibm.com/api/v1/jobs/{id}/logs",
headers={
"Accept": "application/json",
"IBM-API-Version": "2024-01-01",
"Authorization": "Bearer YOUR-TOKEN",
"Service-CRN": "YOUR-SERVICE-CRN"
},
)
print(response.json())Sortie
Code d'état | Description |
|---|---|
| 200 | Renvoie les journaux des travaux. |
| 401 | Non autorisé |
| 403 | Interdit |
| 404 | Non trouvé |
Obtenir des données sur l'emploi
Obtient les métriques de l'emploi spécifié
Autorisation
Pour appeler cette méthode, vous devez vous voir attribuer un ou plusieurs rôles d'accès IAM incluant les actions suivantes. Vous pouvez vérifier votre accès en vous rendant sur Users > User > Access
quantum-computing.job.read
Audit
L'appel de cette méthode génère les événements d'audit suivants.
quantum-computing.job.read
Entrée
Nom, type | Description |
|---|---|
id Obligatoire string | Un numéro d'identification de l'emploi |
Si votre instance se trouve dans la région « eu-de », utilisez plutôt ce lien : URL: https://eu-de.quantum.cloud.ibm.com/api/v1/jobs/{id}/metrics
curl -X GET \
'https://quantum.cloud.ibm.com/api/v1/jobs/{id}/metrics' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer YOUR-TOKEN' \
-H 'Service-CRN: YOUR-SERVICE-CRN' \
-H 'IBM-API-Version: 2024-01-01' Si votre instance se trouve dans la région « eu-de », utilisez plutôt ce lien : URL: https://eu-de.quantum.cloud.ibm.com/api/v1/jobs/{id}/metrics
import requests
response = requests.request(
"GET",
"https://quantum.cloud.ibm.com/api/v1/jobs/{id}/metrics",
headers={
"Accept": "application/json",
"IBM-API-Version": "2024-01-01",
"Authorization": "Bearer YOUR-TOKEN",
"Service-CRN": "YOUR-SERVICE-CRN"
},
)
print(response.json())Sortie
Code d'état | Description |
|---|---|
| 200 | bouton OK |
| 401 | Non autorisé |
| 403 | Interdit |
| 404 | Introuvable |
{
"timestamps": {
"created": "2026-03-06T14:02:11Z",
"running": "2026-03-06T14:02:18Z",
"finished": "2026-03-06T14:05:47Z"
},
"usage": {
"qpu_charge_time_seconds": 20,
"status": "complete"
},
"circuits_execution_time_ns": 20000000,
"qiskit_version": "2.3.0"
}{
"title": "JobMetrics",
"type": "object",
"description": "Diverses mesures concernant l'exécution d'un travail",
"properties": {
"caller": {
"type": "string",
"description": "Cette valeur est dérivée de l'en-tête de requête « x-qx-client-application » et respecte le format `qiskit//` qui identifie le client, lorsqu'il est présent.",
"pattern": "^.*$"
},
"timestamps": {
"type": "object",
"description": "Une carte des transitions d'état vers les horodatages",
"properties": {
"created": {
"pattern": "^[0-9TZt:\\-+./*]+$",
"format": "date-time",
"type": "string",
"description": "Horodatage de la réception de la demande de création de travail"
},
"finished": {
"pattern": "^[0-9TZt:\\-+./*]+$",
"format": "date-time",
"type": "string",
"description": "Horodatage de la fin du travail"
},
"running": {
"pattern": "^[0-9TZt:\\-+./*]+$",
"format": "date-time",
"type": "string",
"description": "Date à laquelle le travail a commencé à être exécuté"
}
}
},
"usage": {
"title": "utilisation",
"description": "statistiques d\"utilisation",
"type": "object",
"properties": {
"qpu_charge_time_seconds": {
"type": "number",
"description": "La durée d'utilisation des ressources en secondes. Cette valeur sert à calculer la consommation de capacité.",
"minimum": 0
},
"status": {
"title": "BillingStatus",
"type": "string",
"description": "État d'exhaustivité des données de facturation",
"enum": [
"pending",
"complete"
]
}
}
},
"circuits_execution_time_ns": {
"type": "number",
"description": "Le temps, en nanosecondes, que le travail a passé sur le QPU.",
"minimum": 0
},
"qiskit_version": {
"type": "string",
"description": "Version de Qiskit utilisée lors de l'exécution du travail",
"pattern": "^v?(\\d+(\\.\\d+)*|\\.\\d+(\\.\\d+)*)$",
"maxLength": 100
}
}
} Liste des résultats de l'emploi
Renvoie le résultat final de ce travail.
Autorisation
Pour appeler cette méthode, vous devez vous voir attribuer un ou plusieurs rôles d'accès IAM incluant les actions suivantes. Vous pouvez vérifier votre accès en vous rendant sur Users > User > Access
quantum-computing.job.read
Audit
L'appel de cette méthode génère les événements d'audit suivants.
quantum-computing.job.read
Entrée
Nom, type | Description |
|---|---|
id Obligatoire string | Un numéro d'identification de l'emploi |
Si votre instance se trouve dans la région « eu-de », utilisez plutôt ce lien : URL: https://eu-de.quantum.cloud.ibm.com/api/v1/jobs/{id}/results
curl -X GET \
'https://quantum.cloud.ibm.com/api/v1/jobs/{id}/results' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer YOUR-TOKEN' \
-H 'Service-CRN: YOUR-SERVICE-CRN' \
-H 'IBM-API-Version: 2024-01-01' Si votre instance se trouve dans la région « eu-de », utilisez plutôt ce lien : URL: https://eu-de.quantum.cloud.ibm.com/api/v1/jobs/{id}/results
import requests
response = requests.request(
"GET",
"https://quantum.cloud.ibm.com/api/v1/jobs/{id}/results",
headers={
"Accept": "application/json",
"IBM-API-Version": "2024-01-01",
"Authorization": "Bearer YOUR-TOKEN",
"Service-CRN": "YOUR-SERVICE-CRN"
},
)
print(response.json())Sortie
Code d'état | Description |
|---|---|
| 200 | Renvoie le résultat final du travail. |
| 204 | Le résultat final de Job n'a pas été trouvé. |
| 400 | Demande incorrecte |
| 401 | Non autorisé |
| 403 | Interdit |
| 404 | Introuvable |
{
"schema_version": "v0.1",
"data": [
{
"results": {},
"metadata": null
}
],
"metadata": {
"chunk_timing": [
{
"start": "example",
"stop": "example",
"parts": [
{
"idx_item": 1,
"size": 1
}
]
}
]
}
}{
"description": "Affichage des résultats pour tous les programmes.",
"oneOf": [
{
"description": "Résultat de l'exécution d'un programme quantique.",
"properties": {
"schema_version": {
"default": "v0.1",
"description": "Version du schéma du type de résultat.",
"title": "Version du schéma",
"type": "string",
"enum": [
"v0.1"
]
},
"data": {
"description": "Données obtenues pour chaque élément du programme quantique.",
"items": {
"description": "Résultats pour un élément de programme quantique unique.",
"properties": {
"results": {
"additionalProperties": {
"description": "Modèle de données tensoriales.",
"properties": {
"data": {
"description": "Base-64-encoded données au format little-endian.\n\nLes tableaux de booléens sont compressés en bits, contrairement aux autres types qui sont représentés sous forme d' IEEE753 s. Tout est en little-endian.\nLes tenseurs sont ordonnés selon l'ordre C.",
"title": "Données",
"type": "string"
},
"shape": {
"description": "La forme du tenseur.",
"items": {
"type": "integer"
},
"title": "Forme",
"type": "array"
},
"dtype": {
"description": "Le type de données du tenseur.",
"enum": [
"f64",
"bool",
"u8",
"c128"
],
"title": "Type de données",
"type": "string"
}
},
"required": [
"data",
"shape",
"dtype"
],
"title": "TensorModel",
"type": "object"
},
"description": "Une correspondance entre les résultats et leurs valeurs tensoriales.",
"title": "Résultats",
"type": "object"
},
"metadata": {
"description": "Métadonnées relatives à l'exécution de cet élément de programme quantique spécifique.",
"title": "Métadonnées",
"nullable": true
}
},
"required": [
"results",
"metadata"
],
"title": "QuantumProgramResultItemModel",
"type": "object"
},
"title": "Données",
"type": "array"
},
"metadata": {
"description": "Métadonnées d'exécution.",
"properties": {
"chunk_timing": {
"description": "Informations temporelles concernant tous les segments exécutés d'un programme quantique.",
"items": {
"description": "Informations temporelles concernant un bloc d'exécution donné.\n\n.. remarque :\n\nCette période peut inclure un certain temps hors circuit.",
"properties": {
"start": {
"description": "L'heure de début du bloc d'exécution en UTC.",
"format": "date-time",
"title": "Début",
"type": "string"
},
"stop": {
"description": "L'heure de fin du bloc d'exécution en UTC.",
"format": "date-time",
"title": "Arrêter",
"type": "string"
},
"parts": {
"description": "Une description des parties d'un programme quantique contenues dans ce bloc.",
"items": {
"description": "Description du contenu d'une partie d'un bloc d'exécution.",
"properties": {
"idx_item": {
"description": "L'index d'un élément dans un programme quantique.",
"title": "Élément d'index",
"type": "integer"
},
"size": {
"description": "Le nombre d'éléments de l'élément de programme quantique qui ont été exécutés.\n\nPar exemple, si un élément de programme quantique a la forme `(10, 5)`, il comporte alors un total de `50`\néléments; ainsi, si cette valeur `size` est `10`égale à, elle représente 20 % du travail total requis pour cet élément.",
"title": "Taille",
"type": "integer"
}
},
"required": [
"idx_item",
"size"
],
"title": "ChunkPart",
"type": "object"
},
"title": "Éléments",
"type": "array"
}
},
"required": [
"start",
"stop",
"parts"
],
"title": "ChunkSpan",
"type": "object"
},
"title": "Synchronisation des segments",
"type": "array"
}
},
"required": [
"chunk_timing"
],
"title": "MetadataModel",
"type": "object"
}
},
"required": [
"data",
"metadata"
],
"title": "ExecutorV01QuantumProgramResultModel",
"type": "object"
},
{
"description": "Résultat de l'exécution d'un programme quantique.",
"properties": {
"schema_version": {
"default": "v0.2",
"description": "Version du schéma du type de résultat.",
"title": "Version du schéma",
"type": "string",
"enum": [
"v0.2"
]
},
"data": {
"description": "Données obtenues pour chaque élément du programme quantique.",
"items": {
"description": "Résultats pour un élément de programme quantique unique.",
"properties": {
"results": {
"additionalProperties": {
"description": "Modèle de données tensoriales.",
"properties": {
"data": {
"description": "Base-64-encoded données au format little-endian.\n\nLes tableaux de booléens sont compressés en bits, contrairement aux autres types qui sont représentés sous forme d' IEEE753 s. Tout est en little-endian.\nLes tenseurs sont ordonnés selon l'ordre C.",
"title": "Données",
"type": "string"
},
"shape": {
"description": "La forme du tenseur.",
"items": {
"type": "integer"
},
"title": "Forme",
"type": "array"
},
"dtype": {
"description": "Le type de données du tenseur.",
"enum": [
"f64",
"bool",
"u8",
"c128"
],
"title": "Type de données",
"type": "string"
}
},
"required": [
"data",
"shape",
"dtype"
],
"title": "TensorModel",
"type": "object"
},
"description": "Une correspondance entre les résultats et leurs valeurs tensoriales.",
"title": "Résultats",
"type": "object"
},
"metadata": {
"description": "Métadonnées par élément pour les résultats des programmes quantiques.",
"properties": {
"scheduler_timing": {
"description": "Décrit la synchronisation d'un circuit programmé.\n\nToutes les informations relatives au timing sont exprimées en multiples de la durée `dt`du pas de temps\nde l'électronique de commande, qui peut être consultée dans les propriétés du backend et de la cible.",
"properties": {
"timing": {
"description": "Une description de la synchronisation du circuit sous forme de texte séparé par des virgules.",
"title": "Délai",
"type": "string"
},
"circuit_duration": {
"description": "La durée du circuit en `dt` étapes.",
"title": "Durée du circuit",
"type": "integer"
}
},
"required": [
"timing",
"circuit_duration"
],
"title": "SchedulerTimingModel",
"type": "object"
},
"stretch_values": {
"items": {
"description": "Décrit les résolutions des valeurs d'étirement des circuits.\n\nToutes les informations relatives au timing sont exprimées en multiples de la durée `dt`du pas de temps\nde l'électronique de commande, qui peut être consultée dans les propriétés du backend et de la cible.",
"properties": {
"name": {
"description": "Le nom du tronçon.",
"title": "Nom",
"type": "string"
},
"value": {
"description": "La valeur d'étirement calculée, jusqu'au reste, en unités de `dt`.",
"title": "Valeur",
"type": "integer"
},
"remainder": {
"description": "Le temps restant si `value` devait être utilisé à chaque tronçon, en unités de `dt`.",
"title": "Reste",
"type": "integer"
},
"expanded_values": {
"description": "Une séquence de paires `(time [int], duration [int])` indiquant l'heure et la durée de chaque délai.\n\nToutes les unités sont exprimées `dt`en, où désigne `time` le temps absolu d'un retard dans le calendrier du circuit\net désigne `duration` la durée totale du retard.",
"items": {
"maxItems": 2,
"minItems": 2,
"type": "array"
},
"title": "Valeurs étendues",
"type": "array"
}
},
"required": [
"name",
"value",
"remainder",
"expanded_values"
],
"title": "StretchValueModel",
"type": "object"
},
"type": "array",
"nullable": true,
"default": null,
"description": "Résolution de la valeur d'étirement, si elle est disponible.",
"title": "Valeurs d'étirement"
}
},
"title": "ItemMetadataModel",
"type": "object"
}
},
"required": [
"results",
"metadata"
],
"title": "QuantumProgramResultItemModel",
"type": "object"
},
"title": "Données",
"type": "array"
},
"metadata": {
"description": "Métadonnées d'exécution.",
"properties": {
"chunk_timing": {
"description": "Informations temporelles concernant tous les segments exécutés d'un programme quantique.",
"items": {
"description": "Informations temporelles concernant un bloc d'exécution donné.\n\n.. remarque :\n\nCette période peut inclure un certain temps hors circuit.",
"properties": {
"start": {
"description": "L'heure de début du bloc d'exécution en UTC.",
"format": "date-time",
"title": "Début",
"type": "string"
},
"stop": {
"description": "L'heure de fin du bloc d'exécution en UTC.",
"format": "date-time",
"title": "Arrêter",
"type": "string"
},
"parts": {
"description": "Une description des parties d'un programme quantique contenues dans ce bloc.",
"items": {
"description": "Description du contenu d'une partie d'un bloc d'exécution.",
"properties": {
"idx_item": {
"description": "L'index d'un élément dans un programme quantique.",
"title": "Élément d'index",
"type": "integer"
},
"size": {
"description": "Le nombre d'éléments de l'élément de programme quantique qui ont été exécutés.\n\nPar exemple, si un élément de programme quantique a la forme `(10, 5)`, il comporte alors un total de `50`\néléments; ainsi, si cette valeur `size` est `10`égale à, elle représente 20 % du travail total requis pour cet élément.",
"title": "Taille",
"type": "integer"
}
},
"required": [
"idx_item",
"size"
],
"title": "ChunkPart",
"type": "object"
},
"title": "Éléments",
"type": "array"
}
},
"required": [
"start",
"stop",
"parts"
],
"title": "ChunkSpan",
"type": "object"
},
"title": "Synchronisation des segments",
"type": "array"
}
},
"required": [
"chunk_timing"
],
"title": "MetadataModel",
"type": "object"
},
"passthrough_data": {
"anyOf": [
{
"items": "",
"type": "array"
},
{
"description": "Modèle de données tensoriales.",
"properties": {
"data": {
"description": "Base-64-encoded données au format little-endian.\n\nLes tableaux de booléens sont compressés en bits, contrairement aux autres types qui sont représentés sous forme d' IEEE753 s. Tout est en little-endian.\nLes tenseurs sont ordonnés selon l'ordre C.",
"title": "Données",
"type": "string"
},
"shape": {
"description": "La forme du tenseur.",
"items": {
"type": "integer"
},
"title": "Forme",
"type": "array"
},
"dtype": {
"description": "Le type de données du tenseur.",
"enum": [
"f64",
"bool",
"u8",
"c128"
],
"title": "Type de données",
"type": "string"
}
},
"required": [
"data",
"shape",
"dtype"
],
"title": "TensorModel",
"type": "object"
},
{
"additionalProperties": "",
"type": "object"
},
{
"type": "string"
},
{
"type": "number"
},
{
"type": "integer"
},
{
"type": "boolean"
}
],
"nullable": true
}
},
"required": [
"data",
"metadata"
],
"title": "ExecutorV02QuantumProgramResultModel",
"type": "object"
},
{
"description": "Résultat de l'exécution d'un programme quantique.",
"properties": {
"schema_version": {
"default": "v1.0",
"description": "Version du schéma du type de résultat.",
"title": "Version du schéma",
"type": "string",
"enum": [
"v1.0"
]
},
"data": {
"description": "Données obtenues pour chaque élément du programme quantique.",
"items": {
"description": "Résultats pour un élément de programme quantique unique.",
"properties": {
"results": {
"additionalProperties": {
"description": "Modèle de données tensoriales.",
"properties": {
"data": {
"description": "Base-64-encoded données au format little-endian.\n\nLes tableaux de booléens sont compressés en bits, contrairement aux autres types qui sont représentés sous forme d' IEEE753 s. Tout est en little-endian.\nLes tenseurs sont ordonnés selon l'ordre C.",
"title": "Données",
"type": "string"
},
"shape": {
"description": "La forme du tenseur.",
"items": {
"type": "integer"
},
"title": "Forme",
"type": "array"
},
"dtype": {
"description": "Le type de données du tenseur.",
"enum": [
"f64",
"bool",
"u8",
"c128"
],
"title": "Type de données",
"type": "string"
}
},
"required": [
"data",
"shape",
"dtype"
],
"title": "TensorModel",
"type": "object"
},
"description": "Une correspondance entre les résultats et leurs valeurs tensoriales.",
"title": "Résultats",
"type": "object"
},
"metadata": {
"description": "Métadonnées par élément pour les résultats des programmes quantiques.",
"properties": {
"scheduler_timing": {
"anyOf": [
{
"description": "Décrit la synchronisation d'un circuit programmé.\n\nToutes les informations relatives au timing sont exprimées en multiples de la durée `dt`du pas de temps\nde l'électronique de commande, qui peut être consultée dans les propriétés du backend et de la cible.",
"properties": {
"timing": {
"description": "Une description de la synchronisation du circuit sous forme de texte séparé par des virgules.",
"title": "Délai",
"type": "string"
},
"circuit_duration": {
"description": "La durée du circuit en `dt` étapes.",
"title": "Durée du circuit",
"type": "integer"
}
},
"required": [
"timing",
"circuit_duration"
],
"title": "Exécuteur testamentaire v1.0 SchedulerTimingModel",
"type": "object"
}
],
"default": null,
"description": "Informations sur les horaires prévus du circuit, si elles sont disponibles.",
"nullable": true
},
"stretch_values": {
"default": null,
"description": "Résolution de la valeur d'étirement, si elle est disponible.",
"title": "Valeurs d'étirement",
"items": {
"description": "Décrit les résolutions des valeurs d'étirement des circuits.\n\nToutes les informations relatives au timing sont exprimées en multiples de la durée `dt`du pas de temps\nde l'électronique de commande, qui peut être consultée dans les propriétés du backend et de la cible.",
"properties": {
"name": {
"description": "Le nom du tronçon.",
"title": "Nom",
"type": "string"
},
"value": {
"description": "La valeur d'étirement calculée, jusqu'au reste, en unités de `dt`.",
"title": "Valeur",
"type": "integer"
},
"remainder": {
"description": "Le temps restant si `value` devait être utilisé à chaque tronçon, en unités de `dt`.",
"title": "Reste",
"type": "integer"
},
"expanded_values": {
"description": "Une séquence de paires `(time, duration)` indiquant l'heure et la durée de chaque retard.\n\nToutes les unités sont exprimées `dt`en, où désigne `time` le temps absolu d'un retard dans le calendrier du circuit\net désigne `duration` la durée totale du retard.",
"items": {
"maxItems": 2,
"minItems": 2,
"type": "array"
},
"title": "Valeurs étendues",
"type": "array"
}
},
"required": [
"name",
"value",
"remainder",
"expanded_values"
],
"title": "Exécuteur testamentaire v1.0 StretchValueModel",
"type": "object"
},
"type": "array",
"nullable": true
}
},
"title": "Exécuteur testamentaire v1.0 ItemMetadataModel",
"type": "object"
}
},
"required": [
"results",
"metadata"
],
"title": "Exécuteur testamentaire v1.0 QuantumProgramResultItemModel",
"type": "object"
},
"title": "Données",
"type": "array"
},
"metadata": {
"description": "Métadonnées d'exécution.",
"properties": {
"chunk_timing": {
"description": "Informations temporelles concernant tous les segments exécutés d'un programme quantique.",
"items": {
"description": "Informations temporelles concernant un bloc d'exécution donné.\n\n> **Remarque :** cette période peut inclure un certain temps non consacré au circuit.",
"properties": {
"start": {
"description": "L'heure de début du bloc d'exécution en UTC.",
"format": "date-time",
"title": "Début",
"type": "string"
},
"stop": {
"description": "L'heure de fin du bloc d'exécution en UTC.",
"format": "date-time",
"title": "Arrêter",
"type": "string"
},
"parts": {
"description": "Une description des parties d'un programme quantique contenues dans ce bloc.",
"items": {
"description": "Description du contenu d'une partie d'un bloc d'exécution.",
"properties": {
"idx_item": {
"description": "L'index d'un élément dans un programme quantique.",
"title": "Élément d'index",
"type": "integer"
},
"size": {
"description": "Le nombre d'éléments de l'élément de programme quantique qui ont été exécutés.\n\nPar exemple, si un élément de programme quantique a la forme `(10, 5)`, il comporte alors un total de `50`\néléments; ainsi, si cette valeur `size` est `10`égale à, elle représente 20 % du travail total requis pour cet élément.",
"title": "Taille",
"type": "integer"
},
"permutation": {
"description": "Un vecteur de permutation de la forme de l'élément avant le découpage des éléments à l'aide de la commande `element_range`.\n\nCette liste doit contenir des entiers contigus commençant à 0, dans un ordre quelconque. `i`La convention veut\nque `permuted_shape[i] = shape[permutation[i]]` , pour tout indice de dimension.",
"items": {
"type": "integer"
},
"title": "Transposition",
"type": "array"
},
"element_range": {
"description": "Quels éléments de l'élément ont été traités dans cette partie?\n\nCette plage contient des éléments `(start_idx, stop_idx, step)` qui découpent la forme aplatie de l'\nélément de programme quantique correspondant, une fois que l'opération `permutation` a été appliquée. Autrement dit,\ncette partie correspond aux éléments de données\n`flatten(permute(arr))[start_idx:stop_idx:step]`d'un tableau de données `arr` dont la structure correspond à celle de l'élément concerné. L'indice inférieur\nest inclusif, l'indice supérieur est exclusif, et l'incrément doit être positif.\n\n`size == max(0, ceil((stop_idx - start_idx) / step))`Il devrait en être ainsi.",
"maxItems": 3,
"minItems": 3,
"title": "Gamme d'éléments",
"type": "array"
}
},
"required": [
"idx_item",
"size",
"permutation",
"element_range"
],
"title": "Exécuteur testamentaire v1.0 ChunkPart",
"type": "object"
},
"title": "Éléments",
"type": "array"
}
},
"required": [
"start",
"stop",
"parts"
],
"title": "Exécuteur testamentaire v1.0 ChunkSpan",
"type": "object"
},
"title": "Synchronisation des segments",
"type": "array"
}
},
"required": [
"chunk_timing"
],
"title": "Exécuteur testamentaire v1.0 MetadataModel",
"type": "object"
},
"passthrough_data": {
"anyOf": [
{
"items": "",
"type": "array"
},
{
"description": "Modèle de données tensoriales.",
"properties": {
"data": {
"description": "Base-64-encoded données au format little-endian.\n\nLes tableaux de booléens sont compressés en bits, contrairement aux autres types qui sont représentés sous forme d' IEEE753 s. Tout est en little-endian.\nLes tenseurs sont ordonnés selon l'ordre C.",
"title": "Données",
"type": "string"
},
"shape": {
"description": "La forme du tenseur.",
"items": {
"type": "integer"
},
"title": "Forme",
"type": "array"
},
"dtype": {
"description": "Le type de données du tenseur.",
"enum": [
"f64",
"bool",
"u8",
"c128"
],
"title": "Type de données",
"type": "string"
}
},
"required": [
"data",
"shape",
"dtype"
],
"title": "TensorModel",
"type": "object"
},
{
"additionalProperties": "",
"type": "object"
},
{
"type": "string"
},
{
"type": "number"
},
{
"type": "integer"
},
{
"type": "boolean"
}
],
"nullable": true
},
"semantic_role": {
"default": null,
"description": "Rôle sémantique indiquant comment les résultats d'exécution peuvent être traités a posteriori par les clients d'exécution.\n\nLes valeurs système réservées comprennent « sampler-v2 » et « estimator-v2 »; elles sont susceptibles d'être modifiées\nsans préavis. Les clients tiers ne doivent pas définir cette valeur ni s'y fier.",
"title": "Rôle sémantique",
"type": "string",
"nullable": true
}
},
"required": [
"data",
"metadata"
],
"title": "Exécuteur testamentaire v1.0 QuantumProgramResultModel",
"type": "object"
},
{
"description": "Résultat de l'exécution d'un programme quantique.",
"properties": {
"schema_version": {
"default": "v1.1",
"description": "Version du schéma du type de résultat.",
"title": "Version du schéma",
"type": "string",
"enum": [
"v1.1"
]
},
"data": {
"description": "Données obtenues pour chaque élément du programme quantique.",
"items": {
"description": "Résultats pour un élément de programme quantique unique.",
"properties": {
"results": {
"additionalProperties": {
"description": "Modèle de données tensoriales.",
"properties": {
"data": {
"description": "Base-64-encoded données au format little-endian.\n\nLes tableaux de booléens sont compressés en bits, contrairement aux autres types qui sont représentés sous forme d' IEEE753 s. Tout est en little-endian.\nLes tenseurs sont ordonnés selon l'ordre C.",
"title": "Données",
"type": "string"
},
"shape": {
"description": "La forme du tenseur.",
"items": {
"type": "integer"
},
"title": "Forme",
"type": "array"
},
"dtype": {
"description": "Le type de données du tenseur.",
"enum": [
"f64",
"bool",
"u8",
"c128"
],
"title": "Type de données",
"type": "string"
}
},
"required": [
"data",
"shape",
"dtype"
],
"title": "TensorModel",
"type": "object"
},
"description": "Une correspondance entre les résultats et leurs valeurs tensoriales.",
"title": "Résultats",
"type": "object"
},
"metadata": {
"description": "Métadonnées par élément pour les résultats des programmes quantiques.",
"properties": {
"scheduler_timing": {
"anyOf": [
{
"description": "Décrit la synchronisation d'un circuit programmé.\n\nToutes les informations relatives au timing sont exprimées en multiples de la durée `dt`du pas de temps\nde l'électronique de commande, qui peut être consultée dans les propriétés du backend et de la cible.",
"properties": {
"timing": {
"description": "Une description de la synchronisation du circuit sous forme de texte séparé par des virgules.",
"title": "Délai",
"type": "string"
},
"circuit_duration": {
"description": "La durée du circuit en `dt` étapes.",
"title": "Durée du circuit",
"type": "integer"
}
},
"required": [
"timing",
"circuit_duration"
],
"title": "Exécuteur testamentaire v1.1 SchedulerTimingModel",
"type": "object"
}
],
"default": null,
"description": "Informations sur les horaires prévus du circuit, si elles sont disponibles.",
"nullable": true
},
"stretch_values": {
"default": null,
"description": "Résolution de la valeur d'étirement, si elle est disponible.",
"title": "Valeurs d'étirement",
"items": {
"description": "Décrit les résolutions des valeurs d'étirement des circuits.\n\nToutes les informations relatives au timing sont exprimées en multiples de la durée `dt`du pas de temps\nde l'électronique de commande, qui peut être consultée dans les propriétés du backend et de la cible.",
"properties": {
"name": {
"description": "Le nom du tronçon.",
"title": "Nom",
"type": "string"
},
"value": {
"description": "La valeur d'étirement calculée, jusqu'au reste, en unités de `dt`.",
"title": "Valeur",
"type": "integer"
},
"remainder": {
"description": "Le temps restant si `value` devait être utilisé à chaque tronçon, en unités de `dt`.",
"title": "Reste",
"type": "integer"
},
"expanded_values": {
"description": "Une séquence de paires `(time, duration)` indiquant l'heure et la durée de chaque retard.\n\nToutes les unités sont exprimées `dt`en, où désigne `time` le temps absolu d'un retard dans le calendrier du circuit\net désigne `duration` la durée totale du retard.",
"items": {
"maxItems": 2,
"minItems": 2,
"type": "array"
},
"title": "Valeurs étendues",
"type": "array"
}
},
"required": [
"name",
"value",
"remainder",
"expanded_values"
],
"title": "Exécuteur testamentaire v1.1 StretchValueModel",
"type": "object"
},
"type": "array",
"nullable": true
}
},
"title": "Exécuteur testamentaire v1.1 ItemMetadataModel",
"type": "object"
}
},
"required": [
"results",
"metadata"
],
"title": "Exécuteur testamentaire v1.1 QuantumProgramResultItemModel",
"type": "object"
},
"title": "Données",
"type": "array"
},
"metadata": {
"description": "Métadonnées d'exécution.",
"properties": {
"chunk_timing": {
"description": "Informations temporelles concernant tous les segments exécutés d'un programme quantique.",
"items": {
"description": "Informations temporelles concernant un bloc d'exécution donné.\n\n> **Remarque :** cette période peut inclure un certain temps non consacré au circuit.",
"properties": {
"start": {
"description": "L'heure de début du bloc d'exécution en UTC.",
"format": "date-time",
"title": "Début",
"type": "string"
},
"stop": {
"description": "L'heure de fin du bloc d'exécution en UTC.",
"format": "date-time",
"title": "Arrêter",
"type": "string"
},
"parts": {
"description": "Une description des parties d'un programme quantique contenues dans ce bloc.",
"items": {
"description": "Description du contenu d'une partie d'un bloc d'exécution.",
"properties": {
"idx_item": {
"description": "L'index d'un élément dans un programme quantique.",
"title": "Élément d'index",
"type": "integer"
},
"size": {
"description": "Le nombre d'éléments de l'élément de programme quantique qui ont été exécutés.\n\nPar exemple, si un élément de programme quantique a la forme `(10, 5)`, il comporte alors un total de `50`\néléments; ainsi, si cette valeur `size` est `10`égale à, elle représente 20 % du travail total requis pour cet élément.",
"title": "Taille",
"type": "integer"
},
"permutation": {
"description": "Un vecteur de permutation de la forme de l'élément avant le découpage des éléments à l'aide de la commande `element_range`.\n\nCette liste doit contenir des entiers contigus commençant à 0, dans un ordre quelconque. `i`La convention veut\nque `permuted_shape[i] = shape[permutation[i]]` , pour tout indice de dimension.",
"items": {
"type": "integer"
},
"title": "Transposition",
"type": "array"
},
"element_range": {
"description": "Quels éléments de l'élément ont été traités dans cette partie?\n\nCette plage contient des éléments `(start_idx, stop_idx, step)` qui découpent la forme aplatie de l'\nélément de programme quantique correspondant, une fois que l'opération `permutation` a été appliquée. Autrement dit,\ncette partie correspond aux éléments de données\n`flatten(permute(arr))[start_idx:stop_idx:step]`d'un tableau de données `arr` dont la structure correspond à celle de l'élément concerné. L'indice inférieur\nest inclusif, l'indice supérieur est exclusif, et l'incrément doit être positif.\n\n`size == max(0, ceil((stop_idx - start_idx) / step))`Il devrait en être ainsi.",
"maxItems": 3,
"minItems": 3,
"title": "Gamme d'éléments",
"type": "array"
}
},
"required": [
"idx_item",
"size",
"permutation",
"element_range"
],
"title": "Exécuteur testamentaire v1.1 ChunkPart",
"type": "object"
},
"title": "Éléments",
"type": "array"
}
},
"required": [
"start",
"stop",
"parts"
],
"title": "Exécuteur testamentaire v1.1 ChunkSpan",
"type": "object"
},
"title": "Synchronisation des segments",
"type": "array"
}
},
"required": [
"chunk_timing"
],
"title": "Exécuteur testamentaire v1.1 MetadataModel",
"type": "object"
},
"passthrough_data": {
"anyOf": [
{
"items": "",
"type": "array"
},
{
"description": "Modèle de données tensoriales.",
"properties": {
"data": {
"description": "Base-64-encoded données au format little-endian.\n\nLes tableaux de booléens sont compressés en bits, contrairement aux autres types qui sont représentés sous forme d' IEEE753 s. Tout est en little-endian.\nLes tenseurs sont ordonnés selon l'ordre C.",
"title": "Données",
"type": "string"
},
"shape": {
"description": "La forme du tenseur.",
"items": {
"type": "integer"
},
"title": "Forme",
"type": "array"
},
"dtype": {
"description": "Le type de données du tenseur.",
"enum": [
"f64",
"bool",
"u8",
"c128"
],
"title": "Type de données",
"type": "string"
}
},
"required": [
"data",
"shape",
"dtype"
],
"title": "TensorModel",
"type": "object"
},
{
"additionalProperties": "",
"type": "object"
},
{
"type": "string"
},
{
"type": "number"
},
{
"type": "integer"
},
{
"type": "boolean"
}
],
"nullable": true
},
"semantic_role": {
"default": null,
"description": "Rôle sémantique indiquant comment les résultats d'exécution peuvent être traités a posteriori par les clients d'exécution.\n\nLes valeurs système réservées comprennent « sampler-v2 » et « estimator-v2 »; elles sont susceptibles d'être modifiées\nsans préavis. Les clients tiers ne doivent pas définir cette valeur ni s'y fier.",
"title": "Rôle sémantique",
"type": "string",
"nullable": true
}
},
"required": [
"data",
"metadata"
],
"title": "Exécuteur testamentaire v1.1 QuantumProgramResultModel",
"type": "object"
},
{
"description": "Résultat de l'exécution d'un programme quantique.",
"properties": {
"schema_version": {
"default": "v2.0",
"description": "Version du schéma du type de résultat.",
"title": "Version du schéma",
"type": "string",
"enum": [
"v2.0"
]
},
"data": {
"description": "Données obtenues pour chaque élément du programme quantique.",
"items": {
"description": "Résultats pour un élément de programme quantique unique.",
"properties": {
"results": {
"additionalProperties": {
"description": "Modèle de données tensoriales compressées.",
"properties": {
"data": {
"description": "Base-64-encoded données au format little-endian.\n\nLes tableaux de booléens sont compressés en bits, contrairement aux autres types qui sont représentés sous forme d' IEEE753 s. Tout est en little-endian.\nLes tenseurs sont ordonnés selon l'ordre C.",
"title": "Données",
"type": "string"
},
"shape": {
"description": "La forme du tenseur.",
"items": {
"type": "integer"
},
"title": "Forme",
"type": "array"
},
"dtype": {
"description": "Le type de données du tenseur.",
"enum": [
"f16",
"f32",
"f64",
"bool",
"i8",
"i16",
"i32",
"i64",
"u8",
"u16",
"u32",
"u64",
"c64",
"c128"
],
"title": "Type de données",
"type": "string"
}
},
"required": [
"data",
"shape",
"dtype"
],
"title": "CompressedTensorModel",
"type": "object"
},
"description": "Une correspondance entre les résultats et leurs valeurs tensoriales.",
"title": "Résultats",
"type": "object"
},
"metadata": {
"description": "Métadonnées par élément pour les résultats des programmes quantiques.",
"properties": {
"scheduler_timing": {
"anyOf": [
{
"description": "Décrit la synchronisation d'un circuit programmé.\n\nToutes les informations relatives au timing sont exprimées en multiples de la durée `dt`du pas de temps\nde l'électronique de commande, qui peut être consultée dans les propriétés du backend et de la cible.",
"properties": {
"timing": {
"description": "Une description de la synchronisation du circuit sous forme de texte séparé par des virgules.",
"title": "Délai",
"type": "string"
},
"circuit_duration": {
"description": "La durée du circuit en `dt` étapes.",
"title": "Durée du circuit",
"type": "integer"
}
},
"required": [
"timing",
"circuit_duration"
],
"title": "Exécuteur testamentaire v2.0 SchedulerTimingModel",
"type": "object"
}
],
"default": null,
"description": "Informations sur les horaires prévus du circuit, si elles sont disponibles.",
"nullable": true
},
"stretch_values": {
"default": null,
"description": "Résolution de la valeur d'étirement, si elle est disponible.",
"title": "Valeurs d'étirement",
"items": {
"description": "Décrit les résolutions des valeurs d'étirement des circuits.\n\nToutes les informations relatives au timing sont exprimées en multiples de la durée `dt`du pas de temps\nde l'électronique de commande, qui peut être consultée dans les propriétés du backend et de la cible.",
"properties": {
"name": {
"description": "Le nom du tronçon.",
"title": "Nom",
"type": "string"
},
"value": {
"description": "La valeur d'étirement calculée, jusqu'au reste, en unités de `dt`.",
"title": "Valeur",
"type": "integer"
},
"remainder": {
"description": "Le temps restant si `value` devait être utilisé à chaque tronçon, en unités de `dt`.",
"title": "Reste",
"type": "integer"
},
"expanded_values": {
"description": "Une séquence de paires `(time, duration)` indiquant l'heure et la durée de chaque retard.\n\nToutes les unités sont exprimées `dt`en, où désigne `time` le temps absolu d'un retard dans le calendrier du circuit\net désigne `duration` la durée totale du retard.",
"items": {
"maxItems": 2,
"minItems": 2,
"type": "array"
},
"title": "Valeurs étendues",
"type": "array"
}
},
"required": [
"name",
"value",
"remainder",
"expanded_values"
],
"title": "Exécuteur testamentaire v2.0 StretchValueModel",
"type": "object"
},
"type": "array",
"nullable": true
}
},
"title": "Exécuteur testamentaire v2.0 ItemMetadataModel",
"type": "object"
}
},
"required": [
"results",
"metadata"
],
"title": "Exécuteur testamentaire v2.0 QuantumProgramResultItemModel",
"type": "object"
},
"title": "Données",
"type": "array"
},
"metadata": {
"description": "Métadonnées d'exécution.",
"properties": {
"chunk_timing": {
"description": "Informations temporelles concernant tous les segments exécutés d'un programme quantique.",
"items": {
"description": "Informations temporelles concernant un bloc d'exécution donné.\n\n> **Remarque :** cette période peut inclure un certain temps non consacré au circuit.",
"properties": {
"start": {
"description": "L'heure de début du bloc d'exécution en UTC.",
"format": "date-time",
"title": "Début",
"type": "string"
},
"stop": {
"description": "L'heure de fin du bloc d'exécution en UTC.",
"format": "date-time",
"title": "Arrêter",
"type": "string"
},
"parts": {
"description": "Une description des parties d'un programme quantique contenues dans ce bloc.",
"items": {
"description": "Description du contenu d'une partie d'un bloc d'exécution.",
"properties": {
"idx_item": {
"description": "L'index d'un élément dans un programme quantique.",
"title": "Élément d'index",
"type": "integer"
},
"size": {
"description": "Le nombre d'éléments de l'élément de programme quantique qui ont été exécutés.\n\nPar exemple, si un élément de programme quantique a la forme `(10, 5)`, il comporte alors un total de `50`\néléments; ainsi, si cette valeur `size` est `10`égale à, elle représente 20 % du travail total requis pour cet élément.",
"title": "Taille",
"type": "integer"
},
"permutation": {
"description": "Un vecteur de permutation de la forme de l'élément avant le découpage des éléments à l'aide de la commande `element_range`.\n\nCette liste doit contenir des entiers contigus commençant à 0, dans un ordre quelconque. `i`La convention veut\nque `permuted_shape[i] = shape[permutation[i]]` , pour tout indice de dimension.",
"items": {
"type": "integer"
},
"title": "Transposition",
"type": "array"
},
"element_range": {
"description": "Quels éléments de l'élément ont été traités dans cette partie?\n\nCette plage contient des éléments `(start_idx, stop_idx, step)` qui découpent la forme aplatie de l'\nélément de programme quantique correspondant, une fois que l'opération `permutation` a été appliquée. Autrement dit,\ncette partie correspond aux éléments de données\n`flatten(permute(arr))[start_idx:stop_idx:step]`d'un tableau de données `arr` dont la structure correspond à celle de l'élément concerné. L'indice inférieur\nest inclusif, l'indice supérieur est exclusif, et l'incrément doit être positif.\n\n`size == max(0, ceil((stop_idx - start_idx) / step))`Il devrait en être ainsi.",
"maxItems": 3,
"minItems": 3,
"title": "Gamme d'éléments",
"type": "array"
}
},
"required": [
"idx_item",
"size",
"permutation",
"element_range"
],
"title": "Exécuteur testamentaire v2.0 ChunkPart",
"type": "object"
},
"title": "Éléments",
"type": "array"
}
},
"required": [
"start",
"stop",
"parts"
],
"title": "Exécuteur testamentaire v2.0 ChunkSpan",
"type": "object"
},
"title": "Synchronisation des segments",
"type": "array"
}
},
"required": [
"chunk_timing"
],
"title": "Exécuteur testamentaire v2.0 MetadataModel",
"type": "object"
},
"passthrough_data": {
"anyOf": [
{
"items": "",
"type": "array"
},
{
"description": "Modèle de données tensoriales compressées.",
"properties": {
"data": {
"description": "Base-64-encoded données au format little-endian.\n\nLes tableaux de booléens sont compressés en bits, contrairement aux autres types qui sont représentés sous forme d' IEEE753 s. Tout est en little-endian.\nLes tenseurs sont ordonnés selon l'ordre C.",
"title": "Données",
"type": "string"
},
"shape": {
"description": "La forme du tenseur.",
"items": {
"type": "integer"
},
"title": "Forme",
"type": "array"
},
"dtype": {
"description": "Le type de données du tenseur.",
"enum": [
"f16",
"f32",
"f64",
"bool",
"i8",
"i16",
"i32",
"i64",
"u8",
"u16",
"u32",
"u64",
"c64",
"c128"
],
"title": "Type de données",
"type": "string"
}
},
"required": [
"data",
"shape",
"dtype"
],
"title": "CompressedTensorModel",
"type": "object"
},
{
"additionalProperties": "",
"type": "object"
},
{
"type": "string"
},
{
"type": "number"
},
{
"type": "integer"
},
{
"type": "boolean"
}
],
"nullable": true
},
"semantic_role": {
"default": null,
"description": "Rôle sémantique indiquant comment les résultats d'exécution peuvent être traités a posteriori par les clients d'exécution.\n\nLes valeurs système réservées comprennent « sampler-v2 » et « estimator-v2 »; elles sont susceptibles d'être modifiées\nsans préavis. Les clients tiers ne doivent pas définir cette valeur ni s'y fier.",
"title": "Rôle sémantique",
"type": "string",
"nullable": true
}
},
"required": [
"data",
"metadata"
],
"title": "Exécuteur testamentaire v2.0 QuantumProgramResultModel",
"type": "object"
},
{
"description": "Résultat de l'exécution d'une tâche d'apprentissage du bruit v3.",
"properties": {
"schema_version": {
"default": "v0.1",
"description": "Version du schéma du type de résultat.",
"title": "Version du schéma",
"type": "string",
"enum": [
"v0.1"
]
},
"data": {
"description": "Données obtenues pour chaque élément.",
"items": {
"description": "Résultats pour un élément « V3 » d'un apprenant unique sensible au bruit.",
"properties": {
"generators_sparse": {
"description": "Une représentation des générateurs au format clairsemé.",
"items": {
"items": {
"maxItems": 2,
"minItems": 2,
"type": "array"
},
"type": "array"
},
"title": "Générateurs clairsemés",
"type": "array"
},
"num_qubits": {
"description": "Le nombre de qubits sur lesquels agissent les générateurs.",
"title": "Nombre de qubits",
"type": "integer"
},
"rates": {
"description": "Modèle de données tensoriales adapté à l' f64",
"properties": {
"data": {
"description": "Base-64-encoded données au format little-endian.\n\nLes tableaux de booléens sont compressés en bits, contrairement aux autres types qui sont représentés sous forme d' IEEE753 s. Tout est en little-endian.\nLes tenseurs sont ordonnés selon l'ordre C.",
"title": "Données",
"type": "string"
},
"shape": {
"description": "La forme du tenseur.",
"items": {
"type": "integer"
},
"title": "Forme",
"type": "array"
},
"dtype": {
"default": "f64",
"title": "Type de données",
"type": "string",
"enum": [
"f64"
]
}
},
"required": [
"data",
"shape"
],
"title": "F64TensorModel",
"type": "object"
},
"rates_std": {
"description": "Modèle de données tensoriales adapté à l' f64",
"properties": {
"data": {
"description": "Base-64-encoded données au format little-endian.\n\nLes tableaux de booléens sont compressés en bits, contrairement aux autres types qui sont représentés sous forme d' IEEE753 s. Tout est en little-endian.\nLes tenseurs sont ordonnés selon l'ordre C.",
"title": "Données",
"type": "string"
},
"shape": {
"description": "La forme du tenseur.",
"items": {
"type": "integer"
},
"title": "Forme",
"type": "array"
},
"dtype": {
"default": "f64",
"title": "Type de données",
"type": "string",
"enum": [
"f64"
]
}
},
"required": [
"data",
"shape"
],
"title": "F64TensorModel",
"type": "object"
},
"metadata": {
"description": "Métadonnées d'exécution relatives à un seul résultat.",
"discriminator": {
"mapping": {
"lindblad": "#/components/schemas/NoiseLearnerV3V01LinbdbladResultMetadataModel",
"trex": "#/components/schemas/NoiseLearnerV3V01TREXResultMetadataModel"
},
"propertyName": "learning_protocol"
},
"oneOf": [
{
"description": "Les métadonnées d'un résultat TREX unique issu d'une tâche d'apprentissage du bruit v3.",
"properties": {
"learning_protocol": {
"default": "trex",
"description": "Le protocole d'apprentissage utilisé pour obtenir ce résultat.",
"title": "Protocole d'apprentissage",
"type": "string",
"enum": [
"trex"
]
},
"post_selection": {
"description": "Les métadonnées de sélection a posteriori d'un résultat TREX unique issu d'une tâche de l' v3 « Noise Learner ».",
"properties": {
"fraction_kept": {
"description": "Le pourcentage de tirs réussis.",
"maximum": 1,
"minimum": 0,
"title": "Fraction conservée",
"type": "number"
}
},
"required": [
"fraction_kept"
],
"title": "TREXResultPostSelectionMetadataModel",
"type": "object"
}
},
"required": [
"post_selection"
],
"title": "TREXResultMetadataModel",
"type": "object"
},
{
"description": "Les métadonnées d'un résultat Lindblad unique issu d'une tâche de l' v3, un système d'apprentissage du bruit.",
"properties": {
"learning_protocol": {
"default": "lindblad",
"description": "Le protocole d'apprentissage utilisé pour obtenir ce résultat.",
"title": "Protocole d'apprentissage",
"type": "string",
"enum": [
"lindblad"
]
},
"post_selection": {
"description": "Les métadonnées de sélection des publications d'un résultat Linbdblad unique issu d'une tâche de l' v3.",
"properties": {
"fraction_kept": {
"additionalProperties": {
"maximum": 1,
"minimum": 0,
"type": "number"
},
"description": "La proportion de clichés conservés pour chaque paire de couches de profondeur.",
"title": "Fraction conservée",
"type": "object"
}
},
"required": [
"fraction_kept"
],
"title": "LinbdbladResultPostSelectionMetadataModel",
"type": "object"
}
},
"required": [
"post_selection"
],
"title": "LinbdbladResultMetadataModel",
"type": "object"
}
],
"title": "Métadonnées"
}
},
"required": [
"generators_sparse",
"num_qubits",
"rates",
"rates_std",
"metadata"
],
"title": "NoiseLearnerV3ResultModel",
"type": "object"
},
"title": "Données",
"type": "array"
}
},
"required": [
"data"
],
"title": "NoiseLearnerV3 v0.1 NoiseLearnerV3ResultsModel",
"type": "object"
},
{
"description": "Résultat de l'exécution d'une tâche d'apprentissage du bruit v3.",
"properties": {
"schema_version": {
"default": "v0.2",
"description": "Version du schéma du type de résultat.",
"title": "Version du schéma",
"type": "string",
"enum": [
"v0.2"
]
},
"data": {
"description": "Données obtenues pour chaque élément.",
"items": {
"description": "Résultats pour un élément « V3 » d'un apprenant unique sensible au bruit.",
"properties": {
"generators_sparse": {
"description": "Une représentation des générateurs au format clairsemé.",
"items": {
"items": {
"maxItems": 2,
"minItems": 2,
"type": "array"
},
"type": "array"
},
"title": "Générateurs clairsemés",
"type": "array"
},
"num_qubits": {
"description": "Le nombre de qubits sur lesquels agissent les générateurs.",
"title": "Nombre de qubits",
"type": "integer"
},
"rates": {
"description": "Modèle de données tensoriales adapté à l' f64",
"properties": {
"data": {
"description": "Base-64-encoded données au format little-endian.\n\nLes tableaux de booléens sont compressés en bits, contrairement aux autres types qui sont représentés sous forme d' IEEE753 s. Tout est en little-endian.\nLes tenseurs sont ordonnés selon l'ordre C.",
"title": "Données",
"type": "string"
},
"shape": {
"description": "La forme du tenseur.",
"items": {
"type": "integer"
},
"title": "Forme",
"type": "array"
},
"dtype": {
"default": "f64",
"title": "Type de données",
"type": "string",
"enum": [
"f64"
]
}
},
"required": [
"data",
"shape"
],
"title": "F64TensorModel",
"type": "object"
},
"rates_std": {
"description": "Modèle de données tensoriales adapté à l' f64",
"properties": {
"data": {
"description": "Base-64-encoded données au format little-endian.\n\nLes tableaux de booléens sont compressés en bits, contrairement aux autres types qui sont représentés sous forme d' IEEE753 s. Tout est en little-endian.\nLes tenseurs sont ordonnés selon l'ordre C.",
"title": "Données",
"type": "string"
},
"shape": {
"description": "La forme du tenseur.",
"items": {
"type": "integer"
},
"title": "Forme",
"type": "array"
},
"dtype": {
"default": "f64",
"title": "Type de données",
"type": "string",
"enum": [
"f64"
]
}
},
"required": [
"data",
"shape"
],
"title": "F64TensorModel",
"type": "object"
},
"metadata": {
"description": "Métadonnées d'exécution relatives à un seul résultat.",
"discriminator": {
"mapping": {
"lindblad": "#/components/schemas/NoiseLearnerV3V02LinbdbladResultMetadataModel",
"trex": "#/components/schemas/NoiseLearnerV3V02TREXResultMetadataModel"
},
"propertyName": "learning_protocol"
},
"oneOf": [
{
"description": "Les métadonnées d'un résultat TREX unique issu d'une tâche d'apprentissage du bruit v3.",
"properties": {
"learning_protocol": {
"default": "trex",
"description": "Le protocole d'apprentissage utilisé pour obtenir ce résultat.",
"title": "Protocole d'apprentissage",
"type": "string",
"enum": [
"trex"
]
},
"post_selection": {
"description": "Les métadonnées de sélection a posteriori d'un résultat TREX unique issu d'une tâche de l' v3 « Noise Learner ».",
"properties": {
"fraction_kept": {
"description": "Le pourcentage de tirs réussis.",
"maximum": 1,
"minimum": 0,
"title": "Fraction conservée",
"type": "number"
},
"success_rates": {
"additionalProperties": {
"maximum": 1,
"minimum": 0,
"type": "number"
},
"description": "La proportion d’essais au cours desquels la sélection postérieure a réussi à inverser chaque qubit.",
"title": "Taux de réussite",
"type": "object"
}
},
"required": [
"fraction_kept",
"success_rates"
],
"title": "TREXResultPostSelectionMetadataModel",
"type": "object"
}
},
"required": [
"post_selection"
],
"title": "TREXResultMetadataModel",
"type": "object"
},
{
"description": "Les métadonnées d'un résultat Lindblad unique issu d'une tâche de l' v3, un système d'apprentissage du bruit.",
"properties": {
"learning_protocol": {
"default": "lindblad",
"description": "Le protocole d'apprentissage utilisé pour obtenir ce résultat.",
"title": "Protocole d'apprentissage",
"type": "string",
"enum": [
"lindblad"
]
},
"post_selection": {
"description": "Les métadonnées de sélection des publications d'un résultat Linbdblad unique issu d'une tâche de l' v3.",
"properties": {
"fraction_kept": {
"additionalProperties": {
"maximum": 1,
"minimum": 0,
"type": "number"
},
"description": "La proportion de clichés conservés pour chaque paire de couches de profondeur.",
"title": "Fraction conservée",
"type": "object"
},
"success_rates": {
"additionalProperties": {
"additionalProperties": {
"maximum": 1,
"minimum": 0,
"type": "number"
},
"type": "object"
},
"description": "La proportion d'essais au cours desquels la sélection post-traitement a réussi à inverser chaque qubit, pour\nchaque profondeur de paire de couches.",
"title": "Taux de réussite",
"type": "object"
}
},
"required": [
"fraction_kept",
"success_rates"
],
"title": "LinbdbladResultPostSelectionMetadataModel",
"type": "object"
}
},
"required": [
"post_selection"
],
"title": "LinbdbladResultMetadataModel",
"type": "object"
}
],
"title": "Métadonnées"
}
},
"required": [
"generators_sparse",
"num_qubits",
"rates",
"rates_std",
"metadata"
],
"title": "NoiseLearnerV3ResultModel",
"type": "object"
},
"title": "Données",
"type": "array"
}
},
"required": [
"data"
],
"title": "NoiseLearnerV3 v0.2 NoiseLearnerV3ResultsModel",
"type": "object"
},
{
"description": "Résultat de l'exécution d'une tâche d'apprentissage du bruit v3.",
"properties": {
"schema_version": {
"default": "v0.3",
"description": "Version du schéma du type de résultat.",
"title": "Version du schéma",
"type": "string",
"enum": [
"v0.3"
]
},
"data": {
"description": "Données obtenues pour chaque élément.",
"items": {
"description": "Résultats pour un élément « V3 » d'un apprenant unique sensible au bruit.",
"properties": {
"generators_sparse": {
"description": "Une représentation des générateurs au format clairsemé.",
"items": {
"items": {
"maxItems": 2,
"minItems": 2,
"type": "array"
},
"type": "array"
},
"title": "Générateurs clairsemés",
"type": "array"
},
"num_qubits": {
"description": "Le nombre de qubits sur lesquels agissent les générateurs.",
"title": "Nombre de qubits",
"type": "integer"
},
"rates": {
"description": "Modèle de données tensoriales adapté à l' f64",
"properties": {
"data": {
"description": "Base-64-encoded données au format little-endian.\n\nLes tableaux de booléens sont compressés en bits, contrairement aux autres types qui sont représentés sous forme d' IEEE753 s. Tout est en little-endian.\nLes tenseurs sont ordonnés selon l'ordre C.",
"title": "Données",
"type": "string"
},
"shape": {
"description": "La forme du tenseur.",
"items": {
"type": "integer"
},
"title": "Forme",
"type": "array"
},
"dtype": {
"default": "f64",
"title": "Type de données",
"type": "string",
"enum": [
"f64"
]
}
},
"required": [
"data",
"shape"
],
"title": "F64TensorModel",
"type": "object"
},
"rates_std": {
"description": "Modèle de données tensoriales adapté à l' f64",
"properties": {
"data": {
"description": "Base-64-encoded données au format little-endian.\n\nLes tableaux de booléens sont compressés en bits, contrairement aux autres types qui sont représentés sous forme d' IEEE753 s. Tout est en little-endian.\nLes tenseurs sont ordonnés selon l'ordre C.",
"title": "Données",
"type": "string"
},
"shape": {
"description": "La forme du tenseur.",
"items": {
"type": "integer"
},
"title": "Forme",
"type": "array"
},
"dtype": {
"default": "f64",
"title": "Type de données",
"type": "string",
"enum": [
"f64"
]
}
},
"required": [
"data",
"shape"
],
"title": "F64TensorModel",
"type": "object"
},
"metadata": {
"description": "Métadonnées d'exécution relatives à un seul résultat.",
"discriminator": {
"mapping": {
"lindblad": "#/components/schemas/NoiseLearnerV3V03LinbdbladResultMetadataModel",
"trex": "#/components/schemas/NoiseLearnerV3V03TREXResultMetadataModel"
},
"propertyName": "learning_protocol"
},
"oneOf": [
{
"description": "Les métadonnées d'un résultat TREX unique issu d'une tâche d'apprentissage du bruit v3.",
"properties": {
"learning_protocol": {
"default": "trex",
"description": "Le protocole d'apprentissage utilisé pour obtenir ce résultat.",
"title": "Protocole d'apprentissage",
"type": "string",
"enum": [
"trex"
]
},
"post_selection": {
"description": "Les métadonnées de sélection a posteriori d'un résultat TREX unique issu d'une tâche de l' v3 « Noise Learner ».",
"properties": {
"fraction_kept": {
"description": "Le pourcentage de tirs réussis.",
"maximum": 1,
"minimum": 0,
"title": "Fraction conservée",
"type": "number"
},
"success_rates": {
"additionalProperties": {
"maximum": 1,
"minimum": 0,
"type": "number"
},
"description": "La proportion d’essais au cours desquels la sélection postérieure a réussi à inverser chaque qubit.",
"title": "Taux de réussite",
"type": "object"
}
},
"required": [
"fraction_kept",
"success_rates"
],
"title": "NoiseLearnerV3 v0.3 TREXResultPostSelectionMetadataModel",
"type": "object"
}
},
"required": [
"post_selection"
],
"title": "NoiseLearnerV3 v0.3 TREXResultMetadataModel",
"type": "object"
},
{
"description": "Les métadonnées d'un résultat Lindblad unique issu d'une tâche de l' v3, un système d'apprentissage du bruit.",
"properties": {
"learning_protocol": {
"default": "lindblad",
"description": "Le protocole d'apprentissage utilisé pour obtenir ce résultat.",
"title": "Protocole d'apprentissage",
"type": "string",
"enum": [
"lindblad"
]
},
"post_selection": {
"description": "Les métadonnées de sélection des publications d'un résultat Linbdblad unique issu d'une tâche de l' v3.",
"properties": {
"fraction_kept": {
"additionalProperties": {
"maximum": 1,
"minimum": 0,
"type": "number"
},
"description": "La proportion de clichés conservés pour chaque paire de couches de profondeur.",
"title": "Fraction conservée",
"type": "object"
},
"success_rates": {
"additionalProperties": {
"additionalProperties": {
"maximum": 1,
"minimum": 0,
"type": "number"
},
"type": "object"
},
"description": "La proportion d'essais au cours desquels la sélection post-traitement a réussi à inverser chaque qubit, pour\nchaque profondeur de paire de couches.",
"title": "Taux de réussite",
"type": "object"
}
},
"required": [
"fraction_kept",
"success_rates"
],
"title": "NoiseLearnerV3 v0.3 LinbdbladResultPostSelectionMetadataModel",
"type": "object"
}
},
"required": [
"post_selection"
],
"title": "NoiseLearnerV3 v0.3 LinbdbladResultMetadataModel",
"type": "object"
}
],
"title": "Métadonnées"
}
},
"required": [
"generators_sparse",
"num_qubits",
"rates",
"rates_std",
"metadata"
],
"title": "NoiseLearnerV3 v0.3 NoiseLearnerV3ResultModel",
"type": "object"
},
"title": "Données",
"type": "array"
}
},
"required": [
"data"
],
"title": "NoiseLearnerV3 v0.3 NoiseLearnerV3ResultsModel",
"type": "object"
},
{
"type": "string",
"description": "Résultat final de l'emploi.",
"title": "LegacyJobResults"
}
]
} Remplacer les étiquettes d'emploi
Remplacer les étiquettes d'emploi
Autorisation
Pour appeler cette méthode, vous devez vous voir attribuer un ou plusieurs rôles d'accès IAM incluant les actions suivantes. Vous pouvez vérifier votre accès en vous rendant sur Users > User > Access
quantum-computing.job.update
Audit
L'appel de cette méthode génère les événements d'audit suivants.
quantum-computing.job.update
Entrée
Nom, type | Description |
|---|---|
id Obligatoire string | Un numéro d'identification de l'emploi |
Nom, type | Description |
|---|---|
tags Obligatoire string[] | Liste des balises de l'emploi ou du programme |
Si votre instance se trouve dans la région « eu-de », utilisez plutôt ce lien : URL: https://eu-de.quantum.cloud.ibm.com/api/v1/jobs/{id}/tags
curl -X PUT \
'https://quantum.cloud.ibm.com/api/v1/jobs/{id}/tags' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer YOUR-TOKEN' \
-H 'Service-CRN: YOUR-SERVICE-CRN' \
-H 'IBM-API-Version: 2024-01-01' \
-H 'Content-Type: application/json' \
-d '{"tags":["example"]}' Si votre instance se trouve dans la région « eu-de », utilisez plutôt ce lien : URL: https://eu-de.quantum.cloud.ibm.com/api/v1/jobs/{id}/tags
import requests
response = requests.request(
"PUT",
"https://quantum.cloud.ibm.com/api/v1/jobs/{id}/tags",
headers={
"Accept": "application/json",
"IBM-API-Version": "2024-01-01",
"Authorization": "Bearer YOUR-TOKEN",
"Service-CRN": "YOUR-SERVICE-CRN",
"Content-Type": "application/json"
},
data="{\"tags\":[\"example\"]}"
)
print(response.json())Sortie
Code d'état | Description |
|---|---|
| 204 | bouton OK |
| 401 | Non autorisé |
| 403 | Interdit |
| 404 | Introuvable |