Skip to Content

快速开始

概述

本章将引导你在 5 分钟内完成 UnitaryLab 算法库的上手流程。完成后,你将能够:

  • 导入算法类并调用 .run()
  • 查看返回的结果字典
  • 使用 .test() 进行零配置演示
  • 定位保存的线路图和结果文件

安装

算法库随 UnitaryLab 一同发布。安装完整包:

pip install unitarylab pip install unitarylab-algorithms

运行第一个算法——Grover 搜索

Grover 算法在包含 个条目的无序数据库中以 次查询找到目标。以下示例在 3 量子比特寄存器中搜索状态 '101'

from pathlib import Path from unitarylab_algorithms.fundamental_algorithm.grover.algorithm import GroverAlgorithm algo = GroverAlgorithm() result = algo.run(n=3, target="101") circuit_path = Path(result["circuit_path"]) txt_path = circuit_path.parent / result["plot"][0]["filename"] print(result["status"]) # 'ok' print(result["circuit_path"]) # SVG 线路图的路径 print(txt_path) # 文本结果文件的路径

预期输出:

ok /path/to/grover_circuit.svg /path/to/grover_algorithm_result.txt

使用 .test() 快速演示

每个算法都提供了一个 .test() 函数,使用内置的合理默认参数调用 .run()。这是验证安装并观察典型输出的最快方式。

from unitarylab_algorithms.fundamental_algorithm.grover.algorithm import test test()

test() 函数会将结构化结果直接输出到终端,并在本地保存线路图和结果文件。

读取结果字典

所有算法返回统一的字典结构:

result = algo.run(...) # 执行状态 print(result['status']) # 成功时为 'ok' # 线路 SVG 图路径 print(result['circuit_path']) # 文本结果文件名 print(result["plot"][0]["filename"])

部分算法包含额外字段。例如,Shor 算法会额外返回:

print(result.get('factors')) # 找到的质因数列表

运行 Shor 算法

from unitarylab_algorithms.cryptology.shor.algorithm import ShorAlgorithm algo = ShorAlgorithm() result = algo.run(N=15) print(result['status'])

运行 HHL 线性方程求解器

import numpy as np from unitarylab_algorithms.linear_algebra.hhl.algorithm import HHLAlgorithm A = np.array([[0.8, 0], [0, 0.4]]) b = np.array([1, 2]) algo = HHLAlgorithm() result = algo.run(A=A, b=b, d=11) print(result['status'])

运行变分量子本征求解器(VQE)

from unitarylab_algorithms.quantum_machine_learning.vqe.algorithm import VQEAlgorithm algo = VQEAlgorithm() result = algo.run(n=2, layers=2, max_iter=150) print(result['status'])

下一步

目标前往
一览所有可用算法API 使用总览
密码学算法(Shor、Simon、离散对数)密码学算法
基础量子原语基础量子算法
哈密顿量演化方法哈密顿量模拟
量子硬件上的线性代数线性代数算法
变分与生成模型量子机器学习
偏微分方程求解器薛定谔化方法
编写自定义算法算法模板指南
最后更新于