Qiskit IBM Experiment service
Qiskit is an open-source SDK for working with quantum computers at the level of circuits, algorithms, and application modules.
This project contains a service that allows accessing the IBM Quantum
experiment database.
Installation
The provider can be installed via pip:
pip install qiskit-ibm-experiment
Provider Setup
-
Create an IBM Quantum account or log in to your existing account by visiting the IBM Quantum login page.
-
Ensure you have access to the experiment database.
-
Copy (and/or optionally regenerate) your API token from your
IBM Quantum account page.
-
Take your token from step 2, here called MY_API_TOKEN
, and save it by calling IBMExperimentService.save_account()
:
from qiskit_ibm_experiment import IBMExperimentService
IBMExperimentService.save_account(token='MY_API_TOKEN')
The command above stores your credentials locally in a configuration file called qiskit-ibm.json
. By default, this file is located in $HOME/.qiskit
, where $HOME
is your home directory.
Once saved you can then instantiate the experiment service without using the API token:
from qiskit_ibm_experiment import IBMExperimentService
service = IBMExperimentService()
print(service.backends())
experiment_list = service.experiments()
You can also save specific configuration under a given name:
from qiskit_ibm_experiment import IBMExperimentService
IBMExperimentService.save_account(name='my_config', token='MY_API_TOKEN')
And explicitly load it:
from qiskit_ibm_experiment import IBMExperimentService
service = IBMExperimentService(name='my_config')
print(service.backends())
Load Account from Environment Variables
Alternatively, the IBM Provider can discover credentials from environment variables:
export QISKIT_IBM_EXPERIMENT_TOKEN='MY_API_TOKEN'
export QISKIT_IBM_EXPERIMENT_URL='https://auth.quantum-computing.ibm.com/api'
Then instantiate the provider without any arguments and access the backends:
from qiskit_ibm_experiment import IBMExperimentService
service = IBMExperimentService()
Environment variable take precedence over the default account saved to disk via save_account
,
if one exists; but if the name
parameter is given, the environment variables are ignored.
Enable Account for Current Session
As another alternative, you can also enable an account just for the current session by instantiating the service with the token
from qiskit_ibm_experiment import IBMExperimentService
service = IBMExperimentService(token='MY_API_TOKEN')
Contribution Guidelines
If you'd like to contribute to IBM Quantum Experiment Service, please take a look at our
contribution guidelines. This project adheres to Qiskit's code of conduct.
By participating, you are expect to uphold to this code.
We use GitHub issues for tracking requests and bugs. Please use our Slack
for discussion and simple questions. To join our Slack community, use the
invite link here.
Next Steps
Now you're set up and ready to check out some of the other examples from our
Qiskit Tutorial repository.
Authors and Citation
The Qiskit IBM Quantum Experiment Service is the work of many people who contribute to the
project at different levels. If you use Qiskit, please cite as per the included
BibTeX file.
License
Apache License 2.0.