项目介绍:PennyLane 的量子机器学习项目
QML 项目是关于量子机器学习和其他量子计算主题的一个丰富资源仓库。项目中包含大量的 Python 代码演示,这些演示是使用 PennyLane 编写的。PennyLane 是一个用于量子计算的跨平台 Python 库,专注于可微分编程。
项目内容
QML 项目的内容以教程、演示和操作指南的形式呈现,用户可以通过这些材料深入了解量子计算。所有教程都是完整可执行的,用户可以将其下载为 Jupyter 笔记本和 Python 脚本进行学习和使用。
如何贡献
项目欢迎用户通过提交流程请求来贡献新演示,提供量子计算最新论文或成果的实现。
添加演示
- 演示是以可执行的 Python 脚本形式编写的,执行过程中可导入
pyproject.toml
中所列的包。 - 图形会通过 Matplotlib 自动渲染并展示在 QML 网站上,尽量保证脚本执行时间在 10 分钟以内。
- 演示文件名需以
tutorial_
开头,存储在demonstrations
目录中。建议避免使用autograd
,推荐使用Jax
或torch
。 - 演示应该避免使用 LaTeX 宏,图像可以通过特殊语法添加。
- 在演示中加入作者照片、简介和元数据文件。
每个演示都需要经过代码审查,确保质量和正确性。有关贡献的详细步骤和相关标准,可以参阅项目中提供的文档。
依赖管理
项目使用 pyproject.toml
文件管理依赖,推荐使用 Poetry 工具安装所有依赖。
安装依赖
- 安装 Poetry 后,运行以下命令以设置环境:
make environment
master
分支使用 PennyLane 的最新稳定版,而dev
分支包含最新开发版本。- 要仅安装构建网站所需的基本依赖而不执行演示代码,可以使用:
make environment BASE_ONLY=true
添加新的依赖项或编辑现有依赖
- 所有新依赖项需添加到
pyproject.toml
中,并尽可能精确限制版本。 - 更新依赖项需同步 Poetry 锁文件,避免对现有包版本产生影响。
构建和本地运行
在本地构建网站可以运行 make html
命令,生成的 HTML 文件将储存在 _build/html
中,可以在浏览器中打开 index.html
查看已构建站点。
支持
如有任何问题,可以在 GitHub 上提交问题,我们致力于提供友好和安全的环境。
许可证
项目中的材料和演示是免费的、开源的,遵循 Apache 2.0 许可证。custom_directives.py
文件遵循 BSD 3-Clause 许可证。
通过这种详细的介绍,用户可以全面了解 QML 项目,并积极参与到项目的开发和贡献中去。