Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Input, output, variabel lingkungan, dan fungsi pembantu
Selain file atau file yang membentuk skrip algoritme lengkap Anda, pekerjaan hybrid Anda dapat memiliki input dan output tambahan. Saat pekerjaan hybrid Anda dimulai, Amazon Braket menyalin input yang disediakan sebagai bagian dari pembuatan pekerjaan hybrid ke dalam wadah yang menjalankan skrip algoritme. Saat pekerjaan hybrid selesai, semua output yang ditentukan selama algoritme akan disalin ke lokasi Amazon S3 yang ditentukan.
catatan
Metrik algoritma dilaporkan secara real time dan tidak mengikuti prosedur keluaran ini.
Amazon Braket juga menyediakan beberapa variabel lingkungan dan fungsi pembantu untuk menyederhanakan interaksi dengan input dan output kontainer.
Bagian ini menjelaskan konsep kunci dari AwsQuantumJob.create
fungsi yang disediakan oleh Amazon Braket Python SDK dan pemetaannya ke struktur file kontainer.
Di bagian ini:
Masukan
Data input: Data input dapat diberikan ke algoritma hybrid dengan menentukan file data input, yang diatur sebagai kamus, dengan input_data
argumen. Pengguna mendefinisikan input_data
argumen dalam AwsQuantumJob.create
fungsi di SDK. Ini menyalin data input ke sistem file kontainer di lokasi yang diberikan oleh variabel lingkungan"AMZN_BRAKET_INPUT_DIR"
. Untuk beberapa contoh bagaimana data input digunakan dalam algoritma hybrid, lihat QAOA dengan Amazon Braket Hybrid Jobs PennyLane dan dan Quantum machine learning di notebook Amazon Braket Hybrid Jobs Jupyter
catatan
Ketika data input besar (> 1GB), akan ada waktu tunggu yang lama sebelum pekerjaan hybrid diajukan. Hal ini disebabkan oleh fakta bahwa data input lokal pertama-tama akan diunggah ke bucket S3, kemudian jalur S3 akan ditambahkan ke permintaan pekerjaan hybrid, dan, akhirnya, permintaan pekerjaan hybrid diajukan ke layanan Braket.
Hyperparameters: Jika Anda masukhyperparameters
, mereka tersedia di bawah variabel "AMZN_BRAKET_HP_FILE"
lingkungan.
catatan
Checkpoints: Untuk menentukan pos pemeriksaan job-arn
yang ingin Anda gunakan dalam pekerjaan hybrid baru, gunakan perintah. copy_checkpoints_from_job
Perintah ini menyalin data pos pemeriksaan ke checkpoint_configs3Uri
pekerjaan hybrid baru, membuatnya tersedia di jalur yang diberikan oleh variabel lingkungan AMZN_BRAKET_CHECKPOINT_DIR
saat pekerjaan berjalan. Defaultnya adalahNone
, artinya data pos pemeriksaan dari pekerjaan hybrid lain tidak akan digunakan dalam pekerjaan hybrid baru.
Output
Quantum Tasks: Hasil tugas kuantum disimpan di lokasi s3://amazon-braket-<region>-<accountID>/jobs/<job-name>/tasks
S3.
Hasil pekerjaan: Semua yang disimpan skrip algoritme Anda ke direktori yang diberikan oleh variabel lingkungan "AMZN_BRAKET_JOB_RESULTS_DIR"
disalin ke lokasi S3 yang ditentukan. output_data_config
Jika Anda tidak menentukan nilai ini, defaultnya. s3://amazon-braket-<region>-<accountID>/jobs/<job-name>/<timestamp>/data
Kami menyediakan fungsi pembantu SDK save_job_result
, yang dapat Anda gunakan untuk menyimpan hasil dengan nyaman dalam bentuk kamus saat dipanggil dari skrip algoritme Anda.
Checkpoints: Jika Anda ingin menggunakan pos pemeriksaan, Anda dapat menyimpannya di direktori yang diberikan oleh variabel lingkungan. "AMZN_BRAKET_CHECKPOINT_DIR"
Anda juga dapat menggunakan fungsi save_job_checkpoint
pembantu SDK sebagai gantinya.
Metrik algoritma: Anda dapat menentukan metrik algoritme sebagai bagian dari skrip algoritme yang dipancarkan ke CloudWatch Amazon dan ditampilkan secara real time di Amazon konsol Braket saat pekerjaan hybrid Anda berjalan. Untuk contoh cara menggunakan metrik algoritme, lihat Menggunakan Pekerjaan Hibrid Amazon Braket untuk menjalankan algoritma QAOA.
Variabel lingkungan
Amazon Braket menyediakan beberapa variabel lingkungan untuk menyederhanakan interaksi dengan input dan output kontainer. Kode berikut mencantumkan variabel lingkungan yang digunakan Braket.
-
AMZN_BRAKET_INPUT_DIR
— Direktori data inputopt/braket/input/data. -
AMZN_BRAKET_JOB_RESULTS_DIR
— Direktori output opt/braket/model untuk menulis hasil pekerjaan ke. -
AMZN_BRAKET_JOB_NAME
- Nama pekerjaan. -
AMZN_BRAKET_CHECKPOINT_DIR
— Direktori pos pemeriksaan. -
AMZN_BRAKET_HP_FILE
— File yang berisi hyperparameters. -
AMZN_BRAKET_DEVICE_ARN
— Perangkat ARN (Nama AWS Sumber Daya). -
AMZN_BRAKET_OUT_S3_BUCKET
- Bucket Amazon S3 keluaran, seperti yang ditentukan dalamCreateJob
permintaan.OutputDataConfig
-
AMZN_BRAKET_SCRIPT_ENTRY_POINT
— Titik masuk seperti yang ditentukan dalamCreateJob
permintaanScriptModeConfig
. -
AMZN_BRAKET_SCRIPT_COMPRESSION_TYPE
— Jenis kompresi seperti yang ditentukan dalamCreateJob
permintaanScriptModeConfig
. -
AMZN_BRAKET_SCRIPT_S3_URI
— Lokasi Amazon S3 dari skrip pengguna seperti yang ditentukan dalamCreateJob
permintaan.ScriptModeConfig
-
AMZN_BRAKET_TASK_RESULTS_S3_URI
— Lokasi Amazon S3 tempat SDK akan menyimpan hasil tugas kuantum secara default untuk pekerjaan tersebut. -
AMZN_BRAKET_JOB_RESULTS_S3_PATH
— Lokasi Amazon S3 tempat hasil pekerjaan akan disimpan, seperti yang ditentukan dalamCreateJob
permintaan.OutputDataConfig
-
AMZN_BRAKET_JOB_TOKEN
— String yang harus diteruskan keCreateQuantumTask
jobToken
parameter untuk tugas kuantum yang dibuat dalam wadah pekerjaan.
Fungsi pembantu
Amazon Braket menyediakan beberapa fungsi pembantu untuk menyederhanakan interaksi dengan input dan output kontainer. Fungsi pembantu ini akan dipanggil dari dalam skrip algoritma yang digunakan untuk menjalankan Job Hybrid Anda. Contoh berikut menunjukkan cara menggunakannya.
get_checkpoint_dir() # Get the checkpoint directory get_hyperparameters() # Get the hyperparameters as strings get_input_data_dir() # Get the input data directory get_job_device_arn() # Get the device specified by the hybrid job get_job_name() # Get the name of the hybrid job. get_results_dir() # Get the path to a results directory save_job_result() # Save hybrid job results save_job_checkpoint() # Save a checkpoint load_job_checkpoint() # Load a previously saved checkpoint