46 个版本 (12 个重大更改)
0.17.0 | 2024 年 7 月 22 日 |
---|---|
0.16.3 | 2024 年 5 月 22 日 |
0.15.0 | 2024 年 3 月 25 日 |
0.12.0 | 2023 年 12 月 12 日 |
0.5.4 | 2022 年 7 月 20 日 |
#64 in 模拟
每月 387 次下载
445KB
6.5K SLoC
qoqo-qryd
qoqo-qryd
Python 包实现了用于支持 qoqo 在量子计算机和 QRydDemo 项目中的量子计算机模拟器的模块。
QRydDemo 项目基于 Rydberg 原子构建量子计算机。qoqo 是由 HQS Quantum Simulations 提供的量子计算工具包。
qoqo-qryd 包包含以下功能
当前 QRydDemo WebAPI 的接口
目前 QRydDemo WebAPI 允许访问不同设备拓扑的量子硬件模拟器。qoqo-qryd 支持与相应的 REST-API 的低级调用以及 qoqo 量子程序的高级后端。为此,它提供了用于评估 qoqo 量子程序的 APIBackend
和表示模拟器上可用设备的 api_devices
模块。
QRydDemo 特定的硬件操作(原型)
基于 Rydberg 原子的量子设备支持,原则上支持在其他量子硬件中不常见的一些操作。设备拓扑结构的变化是这些操作之一。qoqo-qryd 通过其 pragma_operations
模块中的操作,将设备拓扑结构变化的支持添加到 qoqo 中。请注意,这是一个预览原型,并不代表 QRydDemo 硬件上最终的操作集合。
支持特定硬件操作的本地区域模拟器
qoqo-qryd 包含一个基于 QuEST 的本地模拟器,该模拟器支持 Rydberg 特定的量子操作。该模拟器旨在使用附加操作让用户测试量子硬件的能力。qoqo-qryd 通过 qoqo 兼容的 SimulatorBackend
后端提供模拟器,该后端使用其在 qryd_devices
模块中的设备原型。请注意,模拟器的设备不代表 QRydDemo 的最终设计。
访问 QRydDemo WebAPI
要使用 WebAPI,需要 QRydDemo 账户。用户可以通过 在线注册表单 进行注册。
安装
qoqo-qryd
软件包以源代码分发的形式在 PyPi 上提供,并且作为 x86 平台上适用于 Linux 和 macOS 的预编译轮文件。其他平台需要从源代码分发进行安装。
对于源代码分发和预构建轮文件,可以通过以下方式安装
pip install qoqo-qryd
从源码构建 qoqo-qryd
需要 rust、maturin 和 cmake 在本地安装。我们建议使用 rustup 来设置 rust 工具链。pip 命令还应该自动安装 maturin 以在本地构建 Python 软件包并安装它。
要快速安装依赖项,您还可以使用
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
pip install maturin
文档
用户文档可在 github pages 上提供,地址为 https://hqsquantumsimulations.github.io/qoqo_qryd/。qoqo-qryd 的 API 文档可在用户文档的附录中找到。
示例
在 QRydDemo 项目的 GitHub 仓库中可以找到一系列 示例 Python 脚本。这些示例包括
howto_webapi_qoqo.ipynb
提供了一个使用 qoqo 访问 QRydDemo 模拟器的示例。switch_layout_example.py
展示了如何构建 QRydDemo 设备并使用 PragmaChangeQrydLayout 操作在量子电路中切换布局。shift_qubits_example.py
展示了如何构建 QRydDemo 设备并使用 PragmaShiftQrydQubit 操作在量子电路中的 tweezer 位置之间移动量子比特。multi_qubit_example.py
展示了如何使用多量子比特操作。serialisation_example.py
展示了如何将量子程序序列化为 JSON 格式。
OpenSSL
与使用 OpenSSL 进行 http 请求相关的致谢
"此产品包括由 OpenSSL 项目开发并用于 OpenSSL 工具包的软件(http://www.openssl.org/)."
此产品包括由 Eric Young ([email protected]) 编写的加密软件。此产品包括由 Tim Hudson ([email protected]) 编写的软件。
依赖项
~17–30MB
~513K SLoC