Skip to main content

Quingo 运行时系统

项目描述

Quingo 运行时系统

与 quingo 编译器一起,Quingo 运行时系统为用户提供编程和模拟 Quingo 程序的能力。

安装

Quingo 安装包括两个主要步骤:

安装运行时系统和模拟器

使用以下命令安装具有所需模拟器的 Quingo 运行时系统:

pip install quingo

成功后,它将自动安装 Quingo 运行时系统(此包)、PyQCAS 模拟器和 PyQCISim 模拟器。

安装 Quingo 编译器

已经开发了两个版本的 Quingo 编译器:

  1. 基于 mlir 的编译器,它可以生成可由 PyQCISim 模拟的 QCIS 指令。
  2. 基于xtext的编译器,它可以生成可以被PyQCAS模拟的eQASM指令

安装基于 Mlir 的编译器

我们可以通过两种方式安装基于 mlir 的 quingo 编译器:

  • 使用以下命令安装基于 mlir 的 Quingo 编译器:

    python -m quingo.install_quingoc
    
  • 下载基于 mlir 的 Quingo 编译器

    • Windows:解压 .zip 文件,将包含 quingoc 可执行文件的目录添加到系统环境 PATH。
    • Linux:如以下示例用法,Quingoc 将安装到用户定义的目录,然后将包含 quingoc 可执行文件的目录添加到系统环境 PATH。
     quingo-compiler-0.1.4.sh -prefix=/home/user/.local
    
    • Macos:解压 .dmg 文件,将 quingoc 可执行文件复制到用户定义的目录,然后将包含 quingoc 可执行文件的目录添加到系统环境 PATH 中。

安装基于 Xtext 的编译器

目前基于xtext编译器的java可执行文件还没有被自动下载,所以用户需要单独下载java可执行文件来获取基于xtext的编译器。

下载二进制文件后,您需要使用以下命令在 python 中调用一次指定编译器路径:

import quingo
# for xtext compiler
quingo.set_xtext_compiler_path(<path-to-quingo.jar>)

用法

一个简单的例子可以在目录中找到src/examples。您可以通过运行简单地运行 bell_state 示例:

cd src/examples/bell_state
python host.py

如果一切运行正常,您应该会看到以下输出:

connecting pyqcisim_quantumsim...
num_qubits:  2
The result of bell_state is:
(['q0', 'q1'], {'00': 504, '01': 0, '10': 0, '11': 496})

Quingo 运行时系统的 API

该类Quingo_interface公开以下方法:

  • set_log_level(<log_level>):<log_level>可以是DEBUG, INFO, WARNING,ERROR或之一CRITICAL
  • connect_backend(<backend>):<backend>目前可以是'pyqcas_quantumsim''pyqcisim_quantumsim'
  • get_backend_name():返回正在使用的后端的名称。如果没有设置后端,将返回一个空字符串。
  • set_compiler(<compiler_name>):<compiler_name>可以是'mlir''xtext'
  • get_last_qasm(): 获取上次执行生成的 qasm 代码。
  • config_execution(<mode>, <num_shots>)
    • 将执行模式配置为'one_shot''state_vector'
    • 当执行模式为'one_shot'时,可以同时使用该参数配置上传的量子电路运行次数num_shots
  • call_quingo(<qg_filename>, <qg_func_name>, *args)
    • 调用 Quingo 操作的主要入口。
    • <qg_filename (str)>: 包含宿主程序调用的量子函数的Qingo文件的名称。
    • <qg_func_name (str)>: 量子函数的名称
    • <args (dict)>: 一个可变长度的参数,用于调用Quingo 操作的形式qg_func_name(<args>)
  • read_result():从量子核中读取计算结果。
    • 对于基于 eQASM 的后端,结果是对量子计算结果进行编码的二进制块。
    • 对于基于 QCIS 的后端,结果格式由 PyQCISim 定义。请参考文档字符串quingo.if_backend.non_arch_backend.pyqcisim_quantumsim.PyQCISim_quantumsim::execute()

Quingo 编程教程

目前,青果运行时系统已包含、、、等示例程序,Bell_state详情请看这里GHZVQE

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

quingo-0.1.7.ta​​r.gz (21.9 kB 查看哈希)

已上传 source

内置分布

quingo-0.1.7-py3-none-any.whl (28.4 kB 查看哈希)

已上传 py3