The Backend in the Tergite software stack of the WACQT quantum computer.
This project is developed by a core group of collaborators.
Chalmers Next Labs AB (CNL) takes on the role of managing and maintaining this project.
The tergite stack is developed on a separate version control system and mirrored on Github. If you are reading this on GitHub, then you are looking at a mirror.
- Ensure you have conda installed. (You could simply have python +3.12 installed instead.)
- Ensure you have the Redis server running
- Clone the repo
git clone git@github.com:tergite/tergite-backend.git- Create conda environment
conda create -n bcc -y python=3.12
conda activate bcc- Install dependencies
cd tergite-backend
pip install ."[dev]"- If you don't have a key certificate pair for MSS, generate them on the MSS machine and copy the public key certificate to the backend machine in this root folder.
openssl genpkey -algorithm RSA -out private-mss-key.pem -pkeyopt rsa_keygen_bits:4096
openssl rsa -pubout -in private-mss-key.pem -out public-mss-key.pem
# scp public-mss-key.pem backend-host:~/tergite-backend/- Copy the
dot-env-template.txtfile to.envand update the environment variables there appropriately.
cp dot-env-template.txt .envNote: If you don't want to use the simulator, set the variable EXECUTOR_TYPE=quantify in the .env
- If you have
EXECUTOR_TYPE=quantify, copy the quantify example config filequantify-config.example.jsonandquantify-metadata.example.ymlinto thequantify-config.jsonandquantify-metadata.ymlfile and update the variables there in.
Ignore this if you are using the qiskit pulse simulator
cp quantify-config.example.json quantify-config.json
cp quantify-metadata.example.yml quantify-metadata.yml Note: If you want to just run a dummy cluster, you can copy the one in the test fixtures
cp app/tests/fixtures/generic-quantify-config.yml quantify-config.json
cp app/tests/fixtures/generic-quantify-config.json quantify-metadata.yml- Copy the backend example config file
backend_config.example.tomlinto thebackend_config.tomlfile and update the variables there in.
cp backend_config.example.toml backend_config.tomlNote: If you are running the simulator, you can copy the one in the test fixtures
cp app/tests/fixtures/backend_config.simq1.toml backend_config.toml- Copy the example file for initial device calibrations
calibration.seed.example.tomlinto thecalibration.seed.tomlfile and update the variables accordingly.
cp calibration.seed.example.toml calibration.seed.toml- Run start script
./start_bcc.sh- Open your browser at http://localhost:8000/docs to see the interactive API docs
Find more documentation in the docs folder
If you would like to contribute, please have a look at our contribution guidelines
This project is a work of many contributors.
Special credit goes to the authors of this project as seen in the CREDITS file.
To view the changelog for each version, have a look at the CHANGELOG.md file.
This project was sponsored by:
- Knut and Alice Wallenberg Foundation under the Wallenberg Center for Quantum Technology (WACQT) project at Chalmers University of Technology
- Nordic e-Infrastructure Collaboration (NeIC) and NordForsk under the NordIQuEst project
- European Union's Horizon Europe under the OpenSuperQ project
- European Union's Horizon Europe under the OpenSuperQPlus project