宾尼兰图书馆的rigetti后端

PennyLane-Forest的Python项目详细描述


Build StatusDocumentation Status

包含Pennylane Forest插件。这个插件允许三个rigetti设备与pennylane一起工作-波函数模拟器,量子虚拟机(qvm)和量子处理单元(qpu)。

pyQuil是使用量子指令语言(quil)进行量子编程的python库,生成的量子程序可以使用Rigetti Forest SDKRigetti QCS执行。

PennyLane是一个用于混合量子经典计算优化和自动微分的机器学习库。

功能

  • 提供四个与Pennylane一起使用的设备:^{TT1}$、^{TT2}$、^{TT3}$和^{TT4}$。它们分别提供对pyqvm-numpy波函数模拟器、forest波函数模拟器、量子虚拟机(qvm)和量子处理单元(qpu)的访问。
  • 所有提供的设备都支持所有核心的qubit pennylane操作和可观察性。
  • 提供自定义Pennylane操作以覆盖其他Pyquil操作:^{TT5}$,^{TT6}$,^{TT7}$,^{TT8}$,^{TT9}$,以及更多操作。每个自定义操作都支持分析差异化。
  • 将Forest和Rigetti云服务与Pennylane的自动差异化和优化结合起来。

安装

Pennylane森林需要Pennylane和Pyquil。它可以通过pip

安装
$ python -m pip install pennylane-forest

开始

一旦安装了Pennylane Forest插件,就可以在Pennylane中直接访问提供的三个Pyquil设备。

您可以为Pennylane实例化这些设备,如下所示:

importpennylaneasqmldev_numpy=qml.device('forest.numpy_wavefunction',wires=2)dev_simulator=qml.device('forest.wavefunction',wires=2)dev_pyqvm=qml.device('forest.qvm',device='2q-pyqvm',shots=1000)dev_qvm=qml.device('forest.qvm',device='2q-qvm',shots=1000)dev_qpu=qml.device('forest.qpu',device='Aspen-0-12Q-A',shots=1000)

这些设备可以像其他设备一样用于定义和评估Pennylane中的Qnode。有关更多详细信息,请参阅plugin usage guide,并参阅pennylane文档。

贡献

我们欢迎您的贡献-只需叉出Pennylane森林资源库,然后 pull request包含您的贡献。Pennylane Forest的所有贡献者都将被列为发行版的作者。

我们还鼓励错误报告、新功能和增强的建议,甚至链接到基于Pennylane和Pyquil构建的酷项目或应用程序。

支架

如果您有问题,请通过在我们的github问题跟踪器上发布该问题来通知我们。

许可证

Pennylane Forest是freeopen source,根据BSD 3子句license发布。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java使用spring并在CXF中生成服务器和客户端   重载是否可以重载抽象Java类中的抽象方法,但只实现子类中的一个重载方法?   javawhy系统。currentTimeMillis()是否生成不正确的长值?   java使用Apache POI API将xlsx转换为csv   资源Java找不到文件?   java APDU命令验证返回6a88   JAVAlang.ExceptionInInitializerError是在交换机中构造对象时创建的   java使用嵌套while循环打印星形金字塔   sql Java ResultSet获取返回的字段名   java无法将字符串更改为整数,因为负号跟在数字后面   为什么番石榴/爪哇使用“可能”。isPresent()与可选项相反。是否显示(可能)?   JavaJUnit4看不到bean   JavaJBoss以错误的顺序启动servlet   java无法下载Maven依赖项AnypointStudio   安卓如何在java中存储持久数据   java SQL Server JDBC的驱动程序类名是什么   java中针对大输入的性能优化BufferedReader   java eclipse自动完成内容助理