작업 결과 저장 - Amazon Braket

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

작업 결과 저장

알고리즘 스크립트에서 생성된 결과를 저장하여 하이브리드 작업 스크립트의 하이브리드 작업 객체와 Amazon S3의 출력 폴더( model.tar.gz라는 tar-zipped 파일)에서 사용할 수 있도록 할 수 있습니다.

출력은 JavaScript 객체 표기법(JSON) 형식을 사용하여 파일에 저장해야 합니다. 데이터가 텍스트에 쉽게 직렬화될 수 없는 경우, 마비 배열의 경우처럼 피클된 데이터 형식을 사용하여 직렬화하는 옵션을 전달할 수 있습니다. 자세한 내용은 braket.jobs.data_persistence 모듈을 참조하세요.

하이브리드 작업의 결과를 저장하려면 알고리즘 스크립트에 #ADD으로 주석이 지정된 다음 줄을 추가합니다.

from braket.aws import AwsDevice from braket.circuits import Circuit from braket.jobs import save_job_result #ADD def start_here(): print("Test job started!!!!!") device = AwsDevice(os.environ['AMZN_BRAKET_DEVICE_ARN']) results = [] #ADD bell = Circuit().h(0).cnot(0, 1) for count in range(5): task = device.run(bell, shots=100) print(task.result().measurement_counts) results.append(task.result().measurement_counts) #ADD save_job_result({ "measurement_counts": results }) #ADD print("Test job completed!!!!!")

그런 다음 #로 print(job.result()) 주석이 지정된 줄을 추가하여 작업 스크립트의 작업 결과를 표시할 수 있습니다ADD.

import time from braket.aws import AwsQuantumJob job = AwsQuantumJob.create( source_module="algorithm_script.py", entry_point="algorithm_script:start_here", device_arn="arn:aws:braket:::device/quantum-simulator/amazon/sv1", ) print(job.arn) while job.state() not in AwsQuantumJob.TERMINAL_STATES: print(job.state()) time.sleep(10) print(job.state()) print(job.result()) #ADD

이 예제에서는 세부 정보 출력을 억제wait_until_complete=True하기 위해 를 제거했습니다. 디버깅을 위해 다시 추가할 수 있습니다. 이 하이브리드 작업을 실행하면 식별자와 를 출력한 job-arn다음 하이브리드 작업이 가 될 때까지 10초마다 하이브리드 작업의 상태를 출력합니다. COMPLETED그러면 벨 회로의 결과가 표시됩니다. 다음 예를 참조하세요.

arn:aws:braket:us-west-2:111122223333:job/braket-job-default-1234567890123 INITIALIZED RUNNING RUNNING RUNNING RUNNING RUNNING RUNNING RUNNING RUNNING RUNNING RUNNING ... RUNNING RUNNING COMPLETED {'measurement_counts': [{'11': 53, '00': 47},..., {'00': 51, '11': 49}]}