Sessions
Créer une session
Créer une session
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.session.create
Audit
L'appel de cette méthode génère les événements d'audit suivants.
quantum-computing.session.create
Entrée
Nom, type | Description |
|---|---|
max_ttl integer | Durée maximale (en secondes) d'exécution de la session, sous réserve des limites du plan. Valeur par défaut: 28800Valeur minimale: 1Valeur maximale: 2147483647 |
mode string | Mode d'exécution de la session Valeurs possibles: batchdedicated |
backend string | Nom du backend |
backend_name string | Nom du backend (fallback) |
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/sessions
curl -X POST \
'https://quantum.cloud.ibm.com/api/v1/sessions' \
-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/sessions
import requests
response = requests.request(
"POST",
"https://quantum.cloud.ibm.com/api/v1/sessions",
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 | OK |
| 400 | Demande incorrecte |
| 401 | Non autorisé |
| 500 | Erreur interne |
{
"id": "example",
"backend_name": "example",
"started_at": "example",
"activated_at": "example",
"closed_at": "example",
"last_job_started": "example",
"last_job_completed": "example",
"interactive_ttl": 1,
"max_ttl": 1,
"active_ttl": 1,
"state": "open",
"state_reason": "example",
"accepting_jobs": true,
"mode": "batch",
"timestamps": [
{
"status": "open",
"timestamp": "example"
}
],
"user_id": "example",
"elapsed_time": 1.432
}{
"type": "object",
"description": "Session de travail",
"properties": {
"id": {
"type": "string",
"description": "ID de travail"
},
"backend_name": {
"type": "string",
"description": "Nom du backend. Ne peut pas être réglé lorsqu'il est à l'état \"ouvert\".",
"nullable": true
},
"started_at": {
"type": "string",
"format": "date-time",
"description": "Horodatage du début de la session"
},
"activated_at": {
"type": "string",
"format": "date-time",
"description": "Horodatage du passage de l'état de la session à l'état actif"
},
"closed_at": {
"type": "string",
"format": "date-time",
"description": "Date de clôture de la session"
},
"last_job_started": {
"type": "string",
"format": "date-time",
"description": "Horodatage du démarrage du dernier travail de la session"
},
"last_job_completed": {
"type": "string",
"format": "date-time",
"description": "Date à laquelle le dernier travail de la session s'est achevé"
},
"interactive_ttl": {
"type": "integer",
"format": "int32",
"minimum": 1,
"maximum": 2147483647,
"description": "Le temps maximum (en secondes) entre les tâches pour maintenir la session active"
},
"max_ttl": {
"type": "integer",
"format": "int32",
"minimum": 1,
"maximum": 2147483647,
"description": "Durée maximale (en secondes) d'exécution de la session, sous réserve des limites du plan"
},
"active_ttl": {
"type": "integer",
"format": "int32",
"minimum": 1,
"maximum": 2147483647,
"description": "Le temps restant (en secondes) pour que la session soit dans l'état actif pendant que des travaux sont en cours."
},
"state": {
"type": "string",
"enum": [
"open",
"active",
"inactive",
"closed"
],
"description": "L'état de la session.\n\n* ouvert : La session est en attente d'exécution de travaux.\n* active : La session a la priorité pour exécuter des tâches sur le backend et exécute des tâches ou attend que d'autres tâches soient exécutées.\n* inactive : La session n'est pas prioritaire et n'exécute aucun travail.\n* fermé : La session n'exécute aucun travail et n'acceptera ni n'exécutera de nouveaux travaux."
},
"state_reason": {
"type": "string",
"description": "La raison du changement d'état."
},
"accepting_jobs": {
"type": "boolean",
"description": "Si vrai, la session accepte activement de nouveaux travaux à mettre en file d'attente. Si elle est fausse, les travaux seront rejetés à la création et la session sera immédiatement fermée lorsqu'il n'y aura plus de travaux à exécuter dans la session."
},
"mode": {
"type": "string",
"description": "Mode d'exécution de la session",
"enum": [
"batch",
"dedicated"
]
},
"timestamps": {
"type": "array",
"items": {
"type": "object",
"description": "Contient des informations sur l'heure à laquelle une transition d'état spécifique s'est produite",
"properties": {
"status": {
"type": "string",
"enum": [
"open",
"active",
"inactive",
"closed"
],
"description": "L'état de la session.\n\n* ouvert : La session est en attente d'exécution de travaux.\n* active : La session a la priorité pour exécuter des tâches sur le backend et exécute des tâches ou attend que d'autres tâches soient exécutées.\n* inactive : La session n'est pas prioritaire et n'exécute aucun travail.\n* fermé : La session n'exécute aucun travail et n'acceptera ni n'exécutera de nouveaux travaux."
},
"timestamp": {
"type": "string",
"format": "date-time",
"description": "Horodatage de la transition de la session vers le statut donné"
}
},
"required": [
"status",
"timestamp"
]
}
},
"user_id": {
"type": "string",
"description": "L'identifiant de l'utilisateur qui a créé la session."
},
"elapsed_time": {
"type": "number",
"description": "Utilisation en secondes. Peut être nul pour des sessions continues.",
"example": 1.432
}
},
"required": [
"id",
"backend_name",
"mode"
]
}Obtenir une session
Obtenir une session
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.session.read
Audit
L'appel de cette méthode génère les événements d'audit suivants.
quantum-computing.session.read
Entrée
Nom, type | Description |
|---|---|
id Obligatoire string | ID de la session de travail |
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/sessions/{id}
curl -X GET \
'https://quantum.cloud.ibm.com/api/v1/sessions/{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/sessions/{id}
import requests
response = requests.request(
"GET",
"https://quantum.cloud.ibm.com/api/v1/sessions/{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é |
| 404 | Introuvable |
| 500 | Erreur interne |
{
"id": "example",
"backend_name": "example",
"started_at": "example",
"activated_at": "example",
"closed_at": "example",
"last_job_started": "example",
"last_job_completed": "example",
"interactive_ttl": 1,
"max_ttl": 1,
"active_ttl": 1,
"state": "open",
"state_reason": "example",
"accepting_jobs": true,
"mode": "batch",
"timestamps": [
{
"status": "open",
"timestamp": "example"
}
],
"user_id": "example",
"elapsed_time": 1.432
}{
"type": "object",
"description": "Session de travail",
"properties": {
"id": {
"type": "string",
"description": "ID de travail"
},
"backend_name": {
"type": "string",
"description": "Nom du backend. Ne peut pas être réglé lorsqu'il est à l'état \"ouvert\".",
"nullable": true
},
"started_at": {
"type": "string",
"format": "date-time",
"description": "Horodatage du début de la session"
},
"activated_at": {
"type": "string",
"format": "date-time",
"description": "Horodatage du passage de l'état de la session à l'état actif"
},
"closed_at": {
"type": "string",
"format": "date-time",
"description": "Date de clôture de la session"
},
"last_job_started": {
"type": "string",
"format": "date-time",
"description": "Horodatage du démarrage du dernier travail de la session"
},
"last_job_completed": {
"type": "string",
"format": "date-time",
"description": "Date à laquelle le dernier travail de la session s'est achevé"
},
"interactive_ttl": {
"type": "integer",
"format": "int32",
"minimum": 1,
"maximum": 2147483647,
"description": "Le temps maximum (en secondes) entre les tâches pour maintenir la session active"
},
"max_ttl": {
"type": "integer",
"format": "int32",
"minimum": 1,
"maximum": 2147483647,
"description": "Durée maximale (en secondes) d'exécution de la session, sous réserve des limites du plan"
},
"active_ttl": {
"type": "integer",
"format": "int32",
"minimum": 1,
"maximum": 2147483647,
"description": "Le temps restant (en secondes) pour que la session soit dans l'état actif pendant que des travaux sont en cours."
},
"state": {
"type": "string",
"enum": [
"open",
"active",
"inactive",
"closed"
],
"description": "L'état de la session.\n\n* ouvert : La session est en attente d'exécution de travaux.\n* active : La session a la priorité pour exécuter des tâches sur le backend et exécute des tâches ou attend que d'autres tâches soient exécutées.\n* inactive : La session n'est pas prioritaire et n'exécute aucun travail.\n* fermé : La session n'exécute aucun travail et n'acceptera ni n'exécutera de nouveaux travaux."
},
"state_reason": {
"type": "string",
"description": "La raison du changement d'état."
},
"accepting_jobs": {
"type": "boolean",
"description": "Si vrai, la session accepte activement de nouveaux travaux à mettre en file d'attente. Si elle est fausse, les travaux seront rejetés à la création et la session sera immédiatement fermée lorsqu'il n'y aura plus de travaux à exécuter dans la session."
},
"mode": {
"type": "string",
"description": "Mode d'exécution de la session",
"enum": [
"batch",
"dedicated"
]
},
"timestamps": {
"type": "array",
"items": {
"type": "object",
"description": "Contient des informations sur l'heure à laquelle une transition d'état spécifique s'est produite",
"properties": {
"status": {
"type": "string",
"enum": [
"open",
"active",
"inactive",
"closed"
],
"description": "L'état de la session.\n\n* ouvert : La session est en attente d'exécution de travaux.\n* active : La session a la priorité pour exécuter des tâches sur le backend et exécute des tâches ou attend que d'autres tâches soient exécutées.\n* inactive : La session n'est pas prioritaire et n'exécute aucun travail.\n* fermé : La session n'exécute aucun travail et n'acceptera ni n'exécutera de nouveaux travaux."
},
"timestamp": {
"type": "string",
"format": "date-time",
"description": "Horodatage de la transition de la session vers le statut donné"
}
},
"required": [
"status",
"timestamp"
]
}
},
"user_id": {
"type": "string",
"description": "L'identifiant de l'utilisateur qui a créé la session."
},
"elapsed_time": {
"type": "number",
"description": "Utilisation en secondes. Peut être nul pour des sessions continues.",
"example": 1.432
}
},
"required": [
"id",
"backend_name",
"mode"
]
}Mise à jour d'une session
Mise à jour d'une session
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.session.update
Audit
L'appel de cette méthode génère les événements d'audit suivants.
quantum-computing.session.update
Entrée
Nom, type | Description |
|---|---|
id Obligatoire string | ID de la session de travail |
Nom, type | Description |
|---|---|
accepting_jobs Obligatoire boolean | Si vrai, la session accepte activement de nouveaux travaux à mettre en file d'attente. Si elle est fausse, les travaux seront rejetés à la création et la session sera immédiatement fermée lorsqu'il n'y aura plus de travaux à exécuter dans la session. |
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/sessions/{id}
curl -X PATCH \
'https://quantum.cloud.ibm.com/api/v1/sessions/{id}' \
-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 '{"accepting_jobs":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/sessions/{id}
import requests
response = requests.request(
"PATCH",
"https://quantum.cloud.ibm.com/api/v1/sessions/{id}",
headers={
"Accept": "application/json",
"IBM-API-Version": "2024-01-01",
"Authorization": "Bearer YOUR-TOKEN",
"Service-CRN": "YOUR-SERVICE-CRN",
"Content-Type": "application/json"
},
data="{\"accepting_jobs\":true}"
)
print(response.json())Sortie
Code d'état | Description |
|---|---|
| 204 | Mise à jour réussie de la session |
| 401 | Non autorisé |
| 404 | Introuvable |
| 500 | Erreur interne |
Fermer la session de travail
Ferme la session d'exécution. La session n'accepte plus de nouveaux travaux et les travaux en file d'attente ne sont pas exécutés.
Les travaux en cours seront exécutés jusqu'à leur terme. Cette fonction est analogue à la fonction cancel() de Qiskit.
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.session.update
Audit
L'appel de cette méthode génère les événements d'audit suivants.
quantum-computing.session.update
Entrée
Nom, type | Description |
|---|---|
id Obligatoire string | ID session |
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/sessions/{id}/close
curl -X DELETE \
'https://quantum.cloud.ibm.com/api/v1/sessions/{id}/close' \
-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/sessions/{id}/close
import requests
response = requests.request(
"DELETE",
"https://quantum.cloud.ibm.com/api/v1/sessions/{id}/close",
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 | Fermeture réussie de la session d'exécution |