Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Sauvegarde et redémarrage de tâches hybrides à l'aide de points de contrôle
Vous pouvez enregistrer les itérations intermédiaires de vos tâches hybrides à l'aide de points de contrôle. Dans l'exemple de script d'algorithme de la section précédente, vous devez ajouter les lignes suivantes commentées par # ADD pour créer des fichiers de points de contrôle.
from braket.aws import AwsDevice from braket.circuits import Circuit from braket.jobs import save_job_checkpoint #ADD import os def start_here(): print("Test job starts!!!!!") device = AwsDevice(os.environ["AMZN_BRAKET_DEVICE_ARN"]) #ADD the following code job_name = os.environ["AMZN_BRAKET_JOB_NAME"] save_job_checkpoint( checkpoint_data={"data": f"data for checkpoint from {job_name}"}, checkpoint_file_suffix="checkpoint-1", ) #End of ADD bell = Circuit().h(0).cnot(0, 1) for count in range(5): task = device.run(bell, shots=100) print(task.result().measurement_counts) print("Test hybrid job completed!!!!!")
Lorsque vous exécutez la tâche hybride, elle crée le fichier -checkpoint-1.json <jobname>dans les artefacts de votre tâche hybride dans le répertoire des points de contrôle avec un chemin par défaut. /opt/jobs/checkpoints
Le script de tâche hybride reste inchangé, sauf si vous souhaitez modifier ce chemin par défaut.
Si vous souhaitez charger une tâche hybride à partir d'un point de contrôle généré par une tâche hybride précédente, le script d'algorithme utilisefrom braket.jobs import load_job_checkpoint
. La logique à charger dans votre script d'algorithme est la suivante.
checkpoint_1 = load_job_checkpoint( "previous_job_name", checkpoint_file_suffix="checkpoint-1", )
Après avoir chargé ce point de contrôle, vous pouvez poursuivre votre logique en fonction du contenu chargé dans. checkpoint-1
Note
Le checkpoint_file_suffix doit correspondre au suffixe précédemment spécifié lors de la création du point de contrôle.
Votre script d'orchestration doit spécifier celui job-arn
de la tâche hybride précédente avec la ligne commentée par #. ADD
job = AwsQuantumJob.create( source_module="source_dir", entry_point="source_dir.algorithm_script:start_here", device_arn="arn:aws:braket:::device/quantum-simulator/amazon/sv1", copy_checkpoints_from_job="<previous-job-ARN>", #ADD )