一个通过amazonbraket与DWave的海洋图书馆交互的开源框架
amazon-braket-ocean-plugin的Python项目详细描述
Amazon Braket海洋插件
amazonbraket海洋插件是Python中的一个开源库,它提供了一个框架,可以用来与amazonbraket之上的海洋工具进行交互。在
先决条件
在开始使用Amazon Braket Ocean插件之前,请确保已安装或配置了以下先决条件。在
Python 3.7.2或更高版本
从Python.org下载并安装Python3.7.2或更高版本。 如果您正在使用Windows,请在开始安装之前选择Add Python to environment variables。在
Amazon Braket SDK
按照README中的说明,确保您的AWS帐户已登录到amazonbraket。在
海洋工具
下载并安装Ocean tools。在
pip install dwave-ocean-sdk
安装Amazon Braket Ocean插件
Amazon Braket Ocean插件可以与pip一起安装,如下所示:
^{pr2}$也可以通过克隆此存储库并在存储库的根目录中运行pip install命令从源安装:
git clone https://github.com/aws/amazon-braket-ocean-plugin-python.git
cd amazon-braket-ocean-plugin-python
pip install .
您可以使用pip show
检查当前安装的amazon-braket-ocean-plugin
版本:
pip show amazon-braket-ocean-plugin
或者从Python中选择:
>>> from braket import ocean_plugin
>>> ocean_plugin.__version__
文件
详细的文档,包括API参考,可以在Read the Docs上找到。在
在本地环境中生成API引用HTML
首先,你必须安装毒药。在
pip install tox
然后,可以使用tox运行以下命令来生成文档:
tox -e docs
要查看生成的文档,请在浏览器中打开以下文件:
BRAKET_OCEAN_PLUGIN_ROOT/build/documentation/html/index.html
使用
此软件包提供了使用Braket solvers的采样器。这些采样器扩展了Ocean的dimod中提供的抽象基类,因此具有与Ocean中其他采样器相同的接口。在
BraketSampler
是一个使用Braket格式的参数和属性的结构化采样器。例如,Braket使用resultFormat
,而不是用于D波QPU采样器的answer_mode
。
Linked是使用BraketSampler
解决minimum vertex cover问题的一个示例。在
BraketDWaveSampler
是使用D波格式参数和属性的结构化采样器。它可以与D波的DWaveSampler
互换。
Linked是上面解决最小顶点覆盖问题的同一个例子。只有解算器的参数输入被更改为D波格式(例如,answer_mode
而不是resultFormat
)。在
这些用法示例可以在BRAKET_OCEAN_PLUGIN_ROOT/examples/
文件夹中找到python脚本。在
调试日志
发送到qpu的任务并不总是立即完成。要查看任务状态,可以启用调试日志。repo中包含了一个如何启用这些日志的示例:BRAKET_OCEAN_PLUGIN_ROOT/examples/debug_*
。这些示例启用任务日志记录,以便在执行quantum任务后,将状态更新连续打印到终端。日志也可以配置为保存到文件或输出到另一个流。可以使用调试示例获取有关所提交任务的信息,例如当前状态,以便知道任务何时完成。在
安装附加软件包进行测试
请确保首先安装测试依赖项:
pip install -e "amazon-braket-ocean-plugin-python[test]"
单元测试
要运行单元测试:
tox -e unit-tests
还可以传入各种pytest参数以运行选定的测试:
tox -e unit-tests -- your-arguments
有关详细信息,请参阅pytest usage。在
要运行linters和doc生成器以及单元测试,请执行以下操作:
tox
集成测试
按照amazonbraketsdkpythonREADME中的说明设置AWS_PROFILE
。在
exportAWS_PROFILE=YOUR_PROFILE_NAME
运行集成测试将在与AWS_PROFILE
相同的帐户中创建一个S3 bucket,使用以下命名约定amazon-braket-ocean-plugin-integ-tests-{account_id}
。在
运行测试:
tox -e integ-tests
与单元测试一样,还可以传入各种pytest参数:
tox -e integ-tests -- your-arguments
许可证
这个project是在Apache-2.0许可下授权的。在
- 项目
标签: