Home

Awesome

English | 简体中文

Quantum Leaf (in Chinese: 量易伏) - QComputeSDK

Quantum Leaf is the world's first cloud-native quantum computing platform developed by the Institute for Quantum Computing at Baidu Research. Users can use the Quantum Leaf for quantum programming, quantum simulation and running real quantum computers. Quantum Leaf aims to provide a quantum foundation development environment for QaaS (Quantum infrastructure as a Service).

The QComputeSDK installation package is a complete open-source quantum computing framework implemented in Python. It adopts the classic quantum hybrid programming method and presets various advanced modules. Users can use the quantum environment object (QEnv) to quickly build quantum circuits, and can also use it to develop various complex quantum algorithms. QComputeSDK has multiple interfaces for local simulators, cloud simulators and real machines, allowing users to quickly simulate and verify quantum algorithms in local, and submit circuit tasks to real quantum hardware (superconductors, ion traps) or high-performance simulators on cloud.

Features

Install

Environment Setup

We recommend using conda to manager virtual environments,

conda create -n qcompute_env python=3.10
conda activate qcompute_env

Please refer to Anaconda's official installation.

Note: Python version >= 3.9

Install QComputeSDK

Install QComputeSDK with pip,

pip install qcompute

or download all the files to install from sources. We recommend this installation. You can download from GitHub,

git clone https://github.com/baidu/QCompute.git
cd QCompute
pip install -e .

or download from Gitee,

git clone https://gitee.com/baidu/qcompute.git
cd qcompute
pip install -e .

Run Example

If all the files have been downloaded, you can now try to run a program to verify whether the installation is successful. Here we run the test script provided by QComputeSDK,

python -m Test.PostInstall.PostInstall_test

User Token needs to be given on the command line before cloud testing, You can log in to Quantum Leaf to check your Token. If you don't need to do cloud testing, please type Ctrl+c.

Note: Please skip this step if you installed with pip.

Breaking Change

Starting with QComputeSDK 3.0.0, developers can run Baidu's superconducting quantum computer through QComputeSDK (device identifier: CloudBaiduQPUQian). The device provides services regularly, which can be viewed from the Services Status.

Introduction and Developments

Tutorials

QComputeSDK is a quantum computing development framework that implements backend access to real quantum hardware. It builds a bridge between quantum computing and quantum hardware, providing strong support for the research and development of quantum algorithms and applications, and also providing a wealth of cases for developers to learn from.

Here we provide primary, intermediate and advanced cases. With primary case, you can quickly get started with QComputeSDK, it includes quantum state preparation, classical quantum hybrid programming, circuit task submission to quantum computers, etc. The intermediate case is the use of QComputeSDK, including the calling of modules, the use of convertors, etc. The advanced case is the implementation of advanced quantum algorithms on QComputeSDK. We have provided detailed tutorial documents for these algorithms.

In recent updates, QComputeSDK has added a photonic quantum computing simulator (LocalBaiduSimPhotonic). Unlike traditional quantum circuit, photonic quantum computing has its own unique way of running. QComputeSDK supports the optical system on the architecture, and also becomes the first quantum development kit that integrates quantum computing and photonic quantum computing. Interested readers can refer to Photonic Quantum Computing Simulator Tutorial.

API Documentation

To learn more about how to use QComputeSDK, please refer to the API documentation, which contains detailed descriptions and usage of all functions and classes available to users.

Development

QComputeSDK includes quantum computing architecture, quantum computing simulator, tutorials, and extensions. For developers who need to involve the code of the architecture or simulator, it is recommended to install from sources. For developers or researchers who use QComputeSDK to develop quantum algorithm applications, it is recommended to use GHZ_Cloud.py as the code framework. Modifying and using this file can effectively help you learn the syntax of this quantum development kit. It is recommended that developers be familiar with the circuit construction of QComputeSDK, and pay attention to the qubit output order.

Discussion and Feedbacks

Develop with QComputeSDK

We welcome developers to use QComputeSDK for quantum application development. If your work uses QComputeSDK, we also welcome you to contact us. The following are quantum applications developed based on QComputeSDK:

FAQ

  1. Question: What can be done with QComputeSDK? What are the applications?

    Answer: QComputeSDK is a quantum computing development framework based on Python that can be used to build, run, and optimize quantum circuits. We have built a comprehensive and complete infrastructure in QComputeSDK to support the implementation of various quantum algorithms, it has a wide range of application scenarios in the development of quantum applications. Specific work can be referred to but not limited to the Extensions in QComputeSDK.

  2. Question:I want to use QComputeSDK for quantum programming, but I don't know much about quantum computing. How do I get started?

    Answer: Quantum Computation and Quantum Information by Nielsen & Chuang is the classic introductory textbook to QC. We recommend readers to study Chapter 1, 2, and 4 of this book first. These chapters introduce the basic concepts, provide solid mathematical and physical foundations, and discuss the quantum circuit model widely used in QC. Readers can also learn on QuLearn, which is an online quantum learning knowledge base that not only contains quantum computing tutorials, but also rich video sources. Readers can also download the Quantum Leaf APP (https://quantum-hub.baidu.com/qmobile), and the Playground on the APP contains a wealth of interesting quantum examples to help readers learn anytime, anywhere.

  3. Question: Is QComputeSDK free?

    Answer: QComputeSDK is free. QComputeSDK is an open source SDK. It is free for users to execute local simulation tasks. When the user submits the task to the cloud simulator or the real machine through QComputeSDK, a certain number of points will be deducted. For detailed deduction rules, please refer to the User Guide. When the user creates an account, we will give away points. The point balance can be viewed in the Personal Center.

  4. Question: How can I get more points?

    Answer: Points are currently only used for resource control. If the points are insufficient, you can submit an application from the Feedback on the Quantum Leaf website or the User Feedback of Quantum Leaf APP. We will deal with your request in three working days.

Copyright and License

QComputeSDK uses Apache-2.0 license.

Authors: