- MindSpore Quantum简介
- 量子编程准备
- 软件安装与配置
- 量子编程初体验
- 代码提交到MindQuantum代码仓流程
- FAQ
一、MindSpore Quantum 简介
1.1 什么是 MindSpore Quantum?
Mindspore Quantum是昇思MindSpore社区推出的新一代、开源量子经典混合计算框架,能够高效地支持主流的量子算法和经典量子混合算法,不但在量子机器学习、量子化学模拟和量子组合优化等变分量子算法上有着卓越的性能,而且在量子化学模拟规模上也处于领先地位,为量子计算的研究和发展提供了一个高效的开发平台。
1.2 核心特性
- 高性能模拟:推出CPU和GPU架构优化的高性能量子模拟器,支持单/双精度模拟模式切换,满足不同精度需求。
- NISQ算法支持:高效支持量子机器学习、量子化学模拟和量子组合优化等主流变分量子算法。
- 丰富的量子启发式算法:内置业界领先的量子启发式优化算法库,包含模拟分岔机、相干伊辛机、噪声平均场退火等多种高性能求解器,并针对不同硬件(CPU, GPU, NPU)进行了深度性能优化。
- 简捷易用:提供丰富且高度集成的量子编程接口,降低开发难度,提升开发效率。
- 深度学习集成:与MindSpore深度结合,让混合量子-经典算法开发更高效。
1.3 应用场景
- 量子机器学习
- 量子化学模拟
- 组合优化问题
- 量子算法研究
二、量子编程准备
1)访问AtomGit官网(https://atomgit.com/mindspore/mindquantum)注册并登录,如之前注册过Gitee账号,可绑定Gitee账号,同步数据。
2)欢迎 Watch、Star、Fork MindQuantum代码仓。

三、软件安装与配置
3.1 安装Python编程环境(如果已经安装Python或Anaconda,可跳过此步)
安装MindQuantum前,请确保您的 Python 环境是 Python 3.9, 3.10 或 3.11 版本。您可以使用 python --version 命令查看。
进入Python官网的安装页面,根据本地系统(Windows、Mac、Linux)选择合适的版本, 此处建议安装Python==3.9.0(MindQuantum支持py3.7~3.9) (如果Python官网无法进入或下载速度很慢,建议使用后面两个国内的镜像,华为源,第三方源,找到对应版本的安装包,下载安装)

页面拉到最下方,如下图,选择相应版本安装。

Python官网安装包

华为源Python安装包
注意:安装过程中请勾选Add Python 3.9 to PATH,会自动设置环境变量。
安装完成后,打开终端(点击电脑左下角的windows图标
,再点击命令提示符,如下图)输入python。

如果出现版本号,进入python交互式环境,说明安装成功;反之,安装失败。
退出python交互式环境,输入quit()

3.2 安装MindSpore
请根据MindSpore官网安装指南,安装2.6.0及以上版本的MindSpore。如果 MindSpore 版本不匹配,可能会导致安装或运行时出现兼容性问题。
3.3 安装MindQuantum
1)使用pip安装(推荐)
# 如果提示网络问题,可以设置下载源,华为源或清华源

如果pip联网安装,报错或出现问题,点击下方链接,找到对应操作系统的 whl 包下载,本地安装。
cid:link_2

打开终端,输入命令并执行:
2)检查是否安装成功
执行如下命令,如果没有报错No module named 'mindquantum',则说明安装成功。
安装完成后,在终端输入命令,会显示mindquantum的版本号,说明安装完成。

四、量子编程初体验
4.1 搭建参数化量子线路
首先新建一个py或者ipynb文件,使用 mindquantum搭建包括H门、RX门和RY门的量子线路,并得到量子态。
运行上述代码,将会输出量子线路和末态
4.2 训练量子神经网络
运行上述代码,训练得到参数为:
更多样例教程,请查看:https://www.mindspore.cn/mindquantum/docs/zh-CN/r0.12/index.html
五、代码提交到MindQuantum代码仓流程
5.1 签署CLA(已签署可跳过此步)
首次参与MindSpore Quantum开源的开发者,建议在提交PR前,先签署CLA。在签署前请先完成以下操作:
(1)检查邮箱设置:设置-用户资料-【公开个人邮箱】开启,签署的邮箱与提交邮箱保持一致。若未开启,提交PR后会导致CLA签署失败。

(2)进入CLA签署页面,选择【sign Individual CLA】,并根据AtomGit上个人信息,填写签署信息。
5.2 提交代码到个人仓库
1)Fork MindQuantum代码仓
在提交代码至MindQuantum项目之前,请确保已fork此项目到您自己的代码仓。MindQuantum代码仓和您自己的代码仓之间可能会并行开发,请注意它们之间的一致性。
2)克隆远程代码仓
代码下载到本地计算机,可使用Git方法
3)本地开发代码
避免分支不一致,建议切换到新分支:
以master分支为例,如果MindQuantum需要创建版本分支和下游开发分支,请先修复上游的bug,再更改代码。
4)将代码推送到远程代码仓
代码更新后,以正式的方式推送更新:
5.3 新建PR提交代码到主仓库
(1)回到AtomGit个人MindQuantum分支界面创建PR,点击【Pull Request】,将个人远程代码仓提交到主仓库,完成最终代码的提交。

(2)选择源分支和目标分支,比较更新后的代码差异。提交PR请求后,评论区会出现MindSpore-Bot小助手进行操作说明。
六、FAQ
1、已成功签署cla后,PR中仍显示mindspore-cla/no 标签的可能原因?
1) 签署邮箱与提交邮箱不一致。
解决方法:使用提交邮箱签署cla。
2)AtomGit 用户资料未开启“公开个人邮箱”。
解决方法:点击右上角个人账户->用户资料-开启“公开个人邮箱”;然后需要撤回已提交的commit,重新提交。
3)如何检查具体报错原因
访问PR网页(https://docs.atomgit.com/docs/apis/get-api-v-5-repos-owner-repo-pulls-number-commits/),输入PR信息进行检查。
检查commit使用的email是否与签署cla的邮箱对应。
参考资料:
MindSpore Quantum社区(新):https://atomgit.com/mindspore/mindquantum(原社区https://gitee.com/mindspore/mindquantum已迁移到atomgit)
MindSpore Quantum教程文档:https://www.mindspore.cn/mindquantum/docs/zh-CN/r0.12/index.html
MindSpore Quantum贡献指南:https://gitcode.com/mindspore/mindquantum/blob/master/CONTRIBUTING_CN.md
一、MindSpore Quantum 简介
1.1 什么是 MindSpore Quantum?
Mindspore Quantum是昇思MindSpore社区推出的新一代、开源量子经典混合计算框架,能够高效地支持主流的量子算法和经典量子混合算法,不但在量子机器学习、量子化学模拟和量子组合优化等变分量子算法上有着卓越的性能,而且在量子化学模拟规模上也处于领先地位,为量子计算的研究和发展提供了一个高效的开发平台。
1.2 核心特性
1.3 应用场景
二、量子编程准备
1)访问AtomGit官网(https://atomgit.com/mindspore/mindquantum)注册并登录,如之前注册过Gitee账号,可绑定Gitee账号,同步数据。
2)欢迎 Watch、Star、Fork MindQuantum代码仓。
三、软件安装与配置
3.1 安装Python编程环境(如果已经安装Python或Anaconda,可跳过此步)
安装MindQuantum前,请确保您的 Python 环境是 Python 3.9, 3.10 或 3.11 版本。您可以使用 python
--version 命令查看。进入Python官网的安装页面,根据本地系统(Windows、Mac、Linux)选择合适的版本, 此处建议安装Python==3.9.0(MindQuantum支持py3.7~3.9) (如果Python官网无法进入或下载速度很慢,建议使用后面两个国内的镜像,华为源,第三方源,找到对应版本的安装包,下载安装)
页面拉到最下方,如下图,选择相应版本安装。
Python官网安装包
华为源Python安装包
注意:安装过程中请勾选Add Python 3.9 to PATH,会自动设置环境变量。
安装完成后,打开终端(点击电脑左下角的windows图标
,再点击命令提示符,如下图)输入python。
如果出现版本号,进入python交互式环境,说明安装成功;反之,安装失败。
退出python交互式环境,输入quit()
3.2 安装MindSpore
请根据MindSpore官网安装指南,安装2.6.0及以上版本的MindSpore。如果 MindSpore 版本不匹配,可能会导致安装或运行时出现兼容性问题。
3.3 安装MindQuantum
1)使用pip安装(推荐)
# 如果提示网络问题,可以设置下载源,华为源或清华源
如果pip联网安装,报错或出现问题,点击下方链接,找到对应操作系统的 whl 包下载,本地安装。
cid:link_2
打开终端,输入命令并执行:
2)检查是否安装成功
执行如下命令,如果没有报错No module named 'mindquantum',则说明安装成功。
安装完成后,在终端输入命令,会显示mindquantum的版本号,说明安装完成。
四、量子编程初体验
4.1 搭建参数化量子线路
首先新建一个py或者ipynb文件,使用 mindquantum搭建包括H门、RX门和RY门的量子线路,并得到量子态。
from mindquantum import * import numpy as np encoder = Circuit().h(0).rx({'a0': 2}, 0).ry('a1', 1) print(encoder) print(encoder.get_qs(pr={'a0': np.pi / 2, 'a1': np.pi / 2}, ket=True))运行上述代码,将会输出量子线路和末态
┏━━━┓ ┏━━━━━━━━━━┓ q0: ──┨ H ┠─┨ RX(2*a0) ┠─── ┗━━━┛ ┗━━━━━━━━━━┛ ┏━━━━━━━━┓ q1: ──┨ RY(a1) ┠─────────── ┗━━━━━━━━┛ -1/2j¦00⟩ -1/2j¦01⟩ -1/2j¦10⟩ -1/2j¦11⟩4.2 训练量子神经网络
ansatz = CPN(encoder.hermitian(), {'a0': 'b0', 'a1': 'b1'}) sim = Simulator('mqvector', 2) ham = Hamiltonian(-QubitOperator('Z0 Z1')) grad_ops = sim.get_expectation_with_grad( ham, encoder.as_encoder() + ansatz.as_ansatz(), ) import mindspore as ms ms.set_context(mode=ms.PYNATIVE_MODE, device_target='CPU') net = MQLayer(grad_ops) encoder_data = ms.Tensor(np.array([[np.pi / 2, np.pi / 2]])) opti = ms.nn.Adam(net.trainable_params(), learning_rate=0.1) train_net = ms.nn.TrainOneStepCell(net, opti) for i in range(100): train_net(encoder_data) print(dict(zip(ansatz.params_name, net.trainable_params()[0].asnumpy())))运行上述代码,训练得到参数为:
{'b1': 1.5720831, 'b0': 0.006396801}更多样例教程,请查看:https://www.mindspore.cn/mindquantum/docs/zh-CN/r0.12/index.html
五、代码提交到MindQuantum代码仓流程
5.1 签署CLA(已签署可跳过此步)
首次参与MindSpore Quantum开源的开发者,建议在提交PR前,先签署CLA。在签署前请先完成以下操作:
(1)检查邮箱设置:设置-用户资料-【公开个人邮箱】开启,签署的邮箱与提交邮箱保持一致。若未开启,提交PR后会导致CLA签署失败。
(2)进入CLA签署页面,选择【sign Individual CLA】,并根据AtomGit上个人信息,填写签署信息。
5.2 提交代码到个人仓库
1)Fork MindQuantum代码仓
在提交代码至MindQuantum项目之前,请确保已fork此项目到您自己的代码仓。MindQuantum代码仓和您自己的代码仓之间可能会并行开发,请注意它们之间的一致性。
2)克隆远程代码仓
代码下载到本地计算机,可使用Git方法
#在AtomGit上 git clone https://atomgit.com/{insert_your_forked_repo}/mindquantum.git3)本地开发代码
避免分支不一致,建议切换到新分支:
git checkout -b {新分支名称} origin/master以master分支为例,如果MindQuantum需要创建版本分支和下游开发分支,请先修复上游的bug,再更改代码。
4)将代码推送到远程代码仓
代码更新后,以正式的方式推送更新:
git add . # 提交代码 git status # 查看更新状态 git commit -m "commit message" #commit message是提交的标题 git commit -s --amend # 添加commit的具体描述,可选。 git push origin {新分支名称}5.3 新建PR提交代码到主仓库
(1)回到AtomGit个人MindQuantum分支界面创建PR,点击【Pull Request】,将个人远程代码仓提交到主仓库,完成最终代码的提交。
(2)选择源分支和目标分支,比较更新后的代码差异。提交PR请求后,评论区会出现MindSpore-Bot小助手进行操作说明。
六、FAQ
1、已成功签署cla后,PR中仍显示mindspore-cla/no 标签的可能原因?
1) 签署邮箱与提交邮箱不一致。
解决方法:使用提交邮箱签署cla。
2)AtomGit 用户资料未开启“公开个人邮箱”。
解决方法:点击右上角个人账户->用户资料-开启“公开个人邮箱”;然后需要撤回已提交的commit,重新提交。
3)如何检查具体报错原因
访问PR网页(https://docs.atomgit.com/docs/apis/get-api-v-5-repos-owner-repo-pulls-number-commits/),输入PR信息进行检查。
检查commit使用的email是否与签署cla的邮箱对应。
参考资料:
MindSpore Quantum社区(新):https://atomgit.com/mindspore/mindquantum(原社区https://gitee.com/mindspore/mindquantum已迁移到atomgit)
MindSpore Quantum教程文档:https://www.mindspore.cn/mindquantum/docs/zh-CN/r0.12/index.html
MindSpore Quantum贡献指南:https://gitcode.com/mindspore/mindquantum/blob/master/CONTRIBUTING_CN.md