宾尼兰图书馆的rigetti后端
PennyLane-Forest的Python项目详细描述
包含Pennylane Forest插件。这个插件允许三个rigetti设备与pennylane一起工作-波函数模拟器,量子虚拟机(qvm)和量子处理单元(qpu)。
pyQuil是使用量子指令语言(quil)进行量子编程的python库,生成的量子程序可以使用Rigetti Forest SDK和Rigetti 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构建的酷项目或应用程序。
支架
- 源代码:https://github.com/rigetti/pennylane-forest
- 问题跟踪程序:https://github.com/rigetti/pennylane-forest/issues
如果您有问题,请通过在我们的github问题跟踪器上发布该问题来通知我们。
许可证
Pennylane Forest是free和open source,根据BSD 3子句license发布。