[Quantum] Submit jobs directly to service, Phase 1#5290
[Quantum] Submit jobs directly to service, Phase 1#5290kairu-ms merged 72 commits intoAzure:mainfrom
Conversation
|
Quantum |
|
/azp run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
| ] | ||
|
|
||
| DEPENDENCIES = [ | ||
| 'azure-storage-blob~=12.14.1' |
There was a problem hiding this comment.
Hi @evelyn-ys, can an extension dependence on a specific version of 'azure-storage-blob'?
There was a problem hiding this comment.
we don't recommend one extension to depend on another one....
Why does quantum need to use azure-storage-blob?
There was a problem hiding this comment.
It is not depending on another extension. It is depending on a published PyPi package, azure-storage-blob from the Azure SDK for Python.
Why?
To submit a job to quantum hardware or a simulator, the client of the quantum service must upload a quantum program to a blob in an Azure storage account. In the past, there was only one method of submitting a quantum job with the CLI: Create a Q# program and use the Q# compiler. The compiler builds a .NET executable that performs the upload. To generalize CLI job-submission to support many other quantum programming languages in addition to Q#, the quantum CLI extension needs to perform this blob upload.
The Quantum QDK provides an SDK called qdk-python that aids in managing Azure Quantum programming with a Python client. The blob-upload code being added to the CLI extension in this PR is based on code in qdk-python. The qdk-python code depends on the azure-storage-blob PyPi package.
There was a problem hiding this comment.
Other extensions have dependencies on various PyPi packages, for example:
src\cloudservice\setup.py
DEPENDENCIES = [
'azure-mgmt-compute~=20.0.0'
]
src\connectedk8s\setup.py
DEPENDENCIES = [
'kubernetes==24.2.0',
'pycryptodome==3.14.1',
'azure-mgmt-hybridcompute==7.0.0'
]
src\db-up\setup.py
DEPENDENCIES = [
'Cython==0.29.17',
'mysql-connector-python==8.0.14',
'psycopg2-binary==2.9.1'
]
There was a problem hiding this comment.
It seems azure-storage-blob is not used in azure-cli repo. Approved.
Submit jobs directly to the Quantum service data-plane layer from the CLI. This will support submission of QIR and pass-through jobs. Minimal support is included for QIO jobs that only require gzip compression, not protobuf input.
Four new command parameters were added:
--job-input-file--job-input-format--job-output-format--entry-pointAdditional parameters can be passed using
--job-paramsRelated commands
az quantum job submitaz quantum executeaz quantum runGeneral Guidelines
This checklist is used to make sure that common guidelines for a pull request are followed.
azdev style <YOUR_EXT>locally? (pip install azdevrequired)python scripts/ci/test_index.py -qlocally?