Add account management functionality#49
Conversation
39ad0af to
84f333f
Compare
|
@rathishcholarajan can you take a look? Are you fine with integrating it at this stage? PS: Tests fail with the same pattern like all other open PRs. I think those might be caused by a downstream dependency update but given that we're seeing this issue across branches, I am confident that my code changes are not the culprit. |
a5e103d to
89b9fdd
Compare
| instance=instance, | ||
| proxies=proxies, | ||
| verify=verify, | ||
| ) |
There was a problem hiding this comment.
It’d be nice if IBMRuntimeService is able to delegate Account creation to one class. So the code can be lot simpler here. Something like:
self.account = AccountManager.get(auth, token, url, instance, proxies, verify, name)
There was a problem hiding this comment.
Agree. Planning to consolidate that in a next step by addressing the listed TODOs:
# TODO: add support for loading default account when optional parameters are not set
# i.e. fallback to environment variables
# i.e. fallback to default account saved on disk
| instance=self.account.instance, | ||
| proxies=self.account.proxies, | ||
| verify=self.account.verify, | ||
| ) |
There was a problem hiding this comment.
Do we even need a Credentials class? Can it be merged with Account class?
There was a problem hiding this comment.
Agree we don't need the credentials module any longer. I suggest a staged approach to reduce risk and keep the size of the PR reasonable.
Co-authored-by: Rathish Cholarajan <rathishc24@gmail.com>
Co-authored-by: Rathish Cholarajan <rathishc24@gmail.com>
ab5d3c2 to
d567ed2
Compare
# Conflicts: # qiskit_ibm_runtime/ibm_runtime_service.py
d567ed2 to
91d6d31
Compare
jyu00
left a comment
There was a problem hiding this comment.
Some minor comments otherwise this is good to go
Co-authored-by: Jessie Yu <jessieyu@us.ibm.com>
|
@jyu00 addressed your review comments. |
* update doc on access * make wording more generic
* Initial commit * [WIP] Add RuntimeResult class * change headers * cleanup * add setup file * Add a quasidistribution test * style fixes * Start the documentation * Add classes * Add result to docs * fix header * tweak doc string * add intro and upload tutorials * remove bad import * update some texts * move things into circuit-runner folder * rename to RunnerResult * move to runner * update to runner dir * rename apidoc entry * fix directories * Move to automodapi * remove unused docs * fix what I thought I fixed earlier * update docs requirements * add to/from json * Fix docs doing inherited members * rename intro * fix json * add circuit runner tutorial * update README * version should be string * add shields * fix json * fix plot * add 120x wording * Add CI configuration (#8) * Add CI configuration This commit adds a basic CI configuration for the qiskit-runtime repository. It adds 3 jobs, a unittest job that runs the repository's sole unit test on all supported platforms, a docs build job that verifies the docs build, and a doc publishing job that will build the documentation on tags and upload the built html to https://qiskit.org/documentation/partners/qiskit_runtime . We should add some lint/style jobs but that can be done in a follow up commit because it's likely that we'll need to update the code to conform to whichever tooling we decide on. * Add missing docs artifact upload to docs PR/Push ci job * Fix typo in deploy_documentation.sh The output path for the built documentation is `docs/_build/html` not `docs/build/html`. * Add ``VQEProgram`` (#9) * VQEProgram + lightweight tests * fix aux_values * add tutorial * small fixes * fix allowed settings for qn-spsa * fix missing optimal_value in result dict * remove print of job id * add tutorial * remove old tutorial * rm tutorial from this PR * fix leftover todos * rename program_name to program_id * callback stddev has been fixed * initial_point can be none * also cast aux_ops to PauliSumOp * Adding QKA files (#12) * Create kernel_matrix.py * Create featuremaps.py * Create temp.py * Add files via upload * Delete temp.py * Add a tutorial for the VQE script and ``VQEProgram`` (#11) * add tutorial * update the VQE tutorital texts replace runtime for Qiskit Runtime. and add some context to differientate Qiskit Runtime programs, and Qiskit Runtime service * rerun notebook once to get final cell executed * add link to qiskit nature tutorials Co-authored-by: Ismael Faro <Ismael.Faro1@ibm.com> * Fix circuit runner parameters (#14) * fix runner parameters * remove update_program * add job retrieval to intro * Move circuit runner tests (#15) * remove program update from title (#16) * Add docs logistics (#17) * Add docs logistics * add nbsphinx * Add some frontmatter (#18) * Add docs meat (#19) * Add some frontmatter * updates * tweaks * add links (#20) * Start a list of current runtime limitations (#21) * Add runtime limitations * add note about missing upload support * Tweak the nav bar to simplify things (#22) * Tweak the nav bar to simplify things * slide in a text fix * fix a lint error * Fix README text and link (#24) * fix install in README * fix tutorial link * Add init file (#25) * Create __init__.py * Update featuremaps.py * Update kernel_matrix.py * add API direct tutorial (#30) * runtime to program inputs (#28) * update the installation process (#33) * update the installation process * update qiskit install to force update * Add lint configuration and run in CI (#27) This commit adds a lint configuration based on the current pattern used in upstream Qiskit. Leverage black for auto code formatting and then pylint for a deeper analysis and catch common issues. The code style is updated to then conform to these guidelines. Fixes #23 * Remove API docs (#34) * remove api docs * remove unused test * Update installation wording in README (#35) * update installation wording * add additional requirements * a word * remove unused badges * move runnerresult import (#36) * Move api direct tutorial from 05 to 01 (#32) * move api direct tutorial * number uploading * renumber * Update intro wording (#39) * fix wording and directory * update intro tutorial * update qiskit requirements (#41) * Add circuit runner overview (#40) * Add circuit runner overview * remove VQE listed twice * specify it is an overview section * move circuit runner nb to tutorials * Move REST API to navbar (#42) * Move REST API to navbar * update arch image while I am here * capitalize Runtime * Update getting started (#43) * Update the getting started. * add links to the IQX docs * Build docs on merges with main (#44) * Fix source path for docs upload The tools/deploy_documentation.sh script had a typo and was trying to upload the wrong source path which was causing a job error. This commit fixes the path so that the built documentation will actually be uploaded. * Update VQE tutorial (#45) * update to latest VQEProgram version from nature * update imoprt location and REM -> MEM, and re-run * add nature to the requirements * Add qka files and figs (#37) * Create qka.py * Add figs for qka notebook * Add qka notebook * Update qka.ipynb * Update requirements.txt added `pandas` and `scikit-learn` * Delete qka.ipynb * Upload updated qka notebook * Update qka.py Fix linter errors * Update qka.py Fix more linter errors * Update qka.py Fix one more tiny linter error * Update qka.py Fix more linter errors * Update qka.py * Update qka.py * Delete chip.png * Delete subgraphs.png * Add images for the QKA tutorial * Update QKA tutorial with new image location * Update qka.py * Update qka.py fix more linter errors * Update qka.py and some more * Update qka.py * Update qka.py fix missing return type doc * Update qka.py * Create temp.py * Add images for qka to tutorials folder * Delete qka.ipynb * Add updated qka tutorial * Delete temp.py * Update path to images * Update path again * update path one more time * Delete qka.ipynb * Add updated tutorial * Delete qka.ipynb * Add qka tutorial with updated eqrefs * Update qka.py Update comment and remove `warnings` * Delete chip.png * Delete subgraphs.png * add qka and remove vqe (#47) * Update documentation about simulator access (#49) * update doc on access * make wording more generic * Update 01_circuit_runner.ipynb (#50) Minor editing suggestions. * Rename runtime-simple to sample-program (#52) * rename simple program to sample * fix import * add querying for backends (#53) * remove 5 circ limit on circuit runner (#55) * remove 5 circ limit on circuit runner * remove payload size from readme * 63 Add tests (#62) * remove vqe program and tests * add empty test file * Revert "remove vqe program and tests" This reverts commit 463986347a660e2bae99f26c880780be6d19e4b6. * add tests * address some comments * address comments * format * address comments * address comments * address comments and fix lint * fix serialize inputs Co-authored-by: Lucy-Xing <Lucy.Xing@ibm.com> * Update tutorials (#65) * update tutorials * return final result * fix test * use returned result * lint fix * add to docstring * add return type Co-authored-by: Lucy-Xing <Lucy.Xing@ibm.com> * Add IEEE workshop tutorial (#67) * add ieee tutorial * rename file * use image files * Remove system limitation (#68) * remove system limitation * remove simulators * update upload tutorial (#69) * update upload tutorial * add more details * address comments * update tutorial (#71) * update requirements (#72) * Move IEEE tutorial (#73) * move ieee tutorial * fix wording * Circuit runner tutorial not using proper format (#74) * add binary_probabilities * remove has_service call * use quasi obj * fix max execution time * Update README.md (#75) * Update README.md (#76) * Add full custom program tutorial (#77) * fix some typos, lang consistency, etc. (#78) * fix some typos, lang consistency, etc. * Update tutorials/sample_vqe_program/qiskit_runtime_vqe_program.ipynb oops missed one * Add back cell contents (#79) * Tweaks to full example based on review (#80) * tweaks based on review * one more tweak * Fix readme to avoid saying premium users (#81) * avoid premium * fix format * Add UUID to program name in full example (#82) * Add custom expval program (#83) * Add custom expval program * Add QV example * Update IEEE tutorial (#84) * add qce21 tutorial * revert accidental changes * minor update the sample expval program (#85) * Add missing files (#86) * add missing files * add vqe * fix version * Update tutorials (#90) * Update tutorials * Undo changes about which backend was used * Remove version from 02_uploading_program * Fixes - Update metadata for sample_expval and sample_vqe_program - Undo backend change in execution_count 7 of 01_circuit_runner * Update cells where programs are printed * Update tutorials sample notebooks * Fixes for tutorials sample notebooks * Update tutorials/02_uploading_program.ipynb Co-authored-by: Jessie Yu <jessieyu@us.ibm.com> * Address PR comments - Remove last cell with version info in 00_introduction - Rerun cell with spec populated Co-authored-by: Jane Kwon <janeheekwon@ibm.com> Co-authored-by: Jessie Yu <jessieyu@us.ibm.com> * Update wording on public programs (#88) * update wording on public programs * consistent wording * update Qiskit version * Add link to article on 120x quantum speedup (#91) * Introduction Tutorial - more updates (#92) * More tutorial updates * Update tutorials/00_introduction.ipynb Co-authored-by: Jessie Yu <jessieyu@us.ibm.com> * Fix review comments * lower case Co-authored-by: Jessie Yu <jessieyu@us.ibm.com> * Update tutorials for ibmq-provider 0.18 (#93) * reflect ibmq provider 0.18 changes * fix 02 * program names need not be unique * no more version * QAOA runtime (#94) * * QAOA runtime. * * Runtime script. * * Black. * 71 rename sample_program to hello_world (#96) * rename to hello_world * update docs * add back sample program * Update qiskit_runtime/hello_world/hello_world.py Co-authored-by: Jessie Yu <jessieyu@us.ibm.com> * Update qiskit_runtime/sample_program/sample_program.json Co-authored-by: Jessie Yu <jessieyu@us.ibm.com> Co-authored-by: Jessie Yu <jessieyu@us.ibm.com> * remove files/folders no longer needed * delete notebook that is no longer needed Co-authored-by: Jessie Yu <jessieyu@us.ibm.com> Co-authored-by: Paul Nation <nonhermitian@gmail.com> Co-authored-by: Ismael Faro <Ismael.Faro1@ibm.com> Co-authored-by: Matthew Treinish <mtreinish@kortar.org> Co-authored-by: Julien Gacon <gaconju@gmail.com> Co-authored-by: Jen Glick <41485571+jenglick@users.noreply.github.com> Co-authored-by: Ismael Faro Sertage <ismael.faro.sertage@gmail.com> Co-authored-by: beckykd <66339736+beckykd@users.noreply.github.com> Co-authored-by: Lucy Xing <88128115+LucyXing@users.noreply.github.com> Co-authored-by: Lucy-Xing <Lucy.Xing@ibm.com> Co-authored-by: Jay Gambetta <jay.gambetta@us.ibm.com> Co-authored-by: abbycross <across@us.ibm.com> Co-authored-by: Hwajung Kang <hwajungkang@gmail.com> Co-authored-by: kwoane <12764049+kwoane@users.noreply.github.com> Co-authored-by: Jane Kwon <janeheekwon@ibm.com> Co-authored-by: Rathish Cholarajan <rathishc24@gmail.com> Co-authored-by: Daniel J. Egger <38065505+eggerdj@users.noreply.github.com>
* Bumping to 0.7.0. * Black. * CR. * Remove PauliLindbladMap model. * Bug removing Paulis. * Another bug. * Update noise map source location --------- Co-authored-by: Ian Hincks <ian.hincks@ibm.com>
Summary
This PR groups changes related to a streamlined account management approach that works across legacy and Cloud accounts and stores configuration data in a JSON file.
Details
This initial PR enables below minimal code paths as per #58.
Next Steps
Given that the library is not released yet, I would favor to integrate these changes to enable for more parallelism and avoid additional merge conflicts. In a next step, I will
Details and comments
Relates to