pennylane by davila7/claude-code-templates
npx skills add https://github.com/davila7/claude-code-templates --skill pennylanePennyLane 是一个量子计算库,能够像训练神经网络一样训练量子计算机。它提供量子电路的自动微分、设备无关的编程,以及与经典机器学习框架的无缝集成。
使用 uv 安装:
uv pip install pennylane
如需访问量子硬件,请安装设备插件:
# IBM Quantum
uv pip install pennylane-qiskit
# Amazon Braket
uv pip install amazon-braket-pennylane-plugin
# Google Cirq
uv pip install pennylane-cirq
# Rigetti Forest
uv pip install pennylane-rigetti
# IonQ
uv pip install pennylane-ionq
构建量子电路并优化其参数:
import pennylane as qml
from pennylane import numpy as np
# 创建设备
dev = qml.device('default.qubit', wires=2)
# 定义量子电路
@qml.qnode(dev)
def circuit(params):
qml.RX(params[0], wires=0)
qml.RY(params[1], wires=1)
qml.CNOT(wires=[0, 1])
return qml.expval(qml.PauliZ(0))
# 优化参数
opt = qml.GradientDescentOptimizer(stepsize=0.1)
params = np.array([0.1, 0.2], requires_grad=True)
for i in range(100):
params = opt.step(circuit, params)
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
使用门、测量和态制备构建电路。请参阅 references/quantum_circuits.md 了解:
创建混合量子-经典模型。请参阅 references/quantum_ml.md 了解:
模拟分子并计算基态能量。请参阅 references/quantum_chemistry.md 了解:
在模拟器或量子硬件上执行。请参阅 references/devices_backends.md 了解:
使用各种优化器训练量子电路。请参阅 references/optimization.md 了解:
利用模板、变换和编译。请参阅 references/advanced_features.md 了解:
# 1. 定义拟设
@qml.qnode(dev)
def classifier(x, weights):
# 编码数据
qml.AngleEmbedding(x, wires=range(4))
# 变分层
qml.StronglyEntanglingLayers(weights, wires=range(4))
return qml.expval(qml.PauliZ(0))
# 2. 训练
opt = qml.AdamOptimizer(stepsize=0.01)
weights = np.random.random((3, 4, 3)) # 3 层, 4 条线
for epoch in range(100):
for x, y in zip(X_train, y_train):
weights = opt.step(lambda w: (classifier(x, w) - y)**2, weights)
from pennylane import qchem
# 1. 构建哈密顿量
symbols = ['H', 'H']
coords = np.array([0.0, 0.0, 0.0, 0.0, 0.0, 0.74])
H, n_qubits = qchem.molecular_hamiltonian(symbols, coords)
# 2. 定义拟设
@qml.qnode(dev)
def vqe_circuit(params):
qml.BasisState(qchem.hf_state(2, n_qubits), wires=range(n_qubits))
qml.UCCSD(params, wires=range(n_qubits))
return qml.expval(H)
# 3. 优化
opt = qml.AdamOptimizer(stepsize=0.1)
params = np.zeros(10, requires_grad=True)
for i in range(100):
params, energy = opt.step_and_cost(vqe_circuit, params)
print(f"Step {i}: Energy = {energy:.6f} Ha")
# 相同的电路,不同的后端
circuit_def = lambda dev: qml.qnode(dev)(circuit_function)
# 在模拟器上测试
dev_sim = qml.device('default.qubit', wires=4)
result_sim = circuit_def(dev_sim)(params)
# 在量子硬件上运行
dev_hw = qml.device('qiskit.ibmq', wires=4, backend='ibmq_manila')
result_hw = circuit_def(dev_hw)(params)
如需了解特定主题的全面覆盖,请查阅参考文件:
references/getting_started.md - 安装、基本概念、第一步references/quantum_circuits.md - 门、测量、电路模式references/quantum_ml.md - 混合模型、框架集成、量子神经网络references/quantum_chemistry.md - VQE、分子哈密顿量、化学工作流references/devices_backends.md - 模拟器、硬件插件、设备配置references/optimization.md - 优化器、梯度、变分算法references/advanced_features.md - 模板、变换、JIT 编译、噪声default.qubit 上测试qml.specs() 分析电路复杂度每周安装量
125
代码仓库
GitHub 星标数
22.6K
首次出现
2026年1月21日
安全审计
安装于
claude-code108
opencode99
cursor92
gemini-cli91
antigravity84
codex79
PennyLane is a quantum computing library that enables training quantum computers like neural networks. It provides automatic differentiation of quantum circuits, device-independent programming, and seamless integration with classical machine learning frameworks.
Install using uv:
uv pip install pennylane
For quantum hardware access, install device plugins:
# IBM Quantum
uv pip install pennylane-qiskit
# Amazon Braket
uv pip install amazon-braket-pennylane-plugin
# Google Cirq
uv pip install pennylane-cirq
# Rigetti Forest
uv pip install pennylane-rigetti
# IonQ
uv pip install pennylane-ionq
Build a quantum circuit and optimize its parameters:
import pennylane as qml
from pennylane import numpy as np
# Create device
dev = qml.device('default.qubit', wires=2)
# Define quantum circuit
@qml.qnode(dev)
def circuit(params):
qml.RX(params[0], wires=0)
qml.RY(params[1], wires=1)
qml.CNOT(wires=[0, 1])
return qml.expval(qml.PauliZ(0))
# Optimize parameters
opt = qml.GradientDescentOptimizer(stepsize=0.1)
params = np.array([0.1, 0.2], requires_grad=True)
for i in range(100):
params = opt.step(circuit, params)
Build circuits with gates, measurements, and state preparation. See references/quantum_circuits.md for:
Create hybrid quantum-classical models. See references/quantum_ml.md for:
Simulate molecules and compute ground state energies. See references/quantum_chemistry.md for:
Execute on simulators or quantum hardware. See references/devices_backends.md for:
Train quantum circuits with various optimizers. See references/optimization.md for:
Leverage templates, transforms, and compilation. See references/advanced_features.md for:
# 1. Define ansatz
@qml.qnode(dev)
def classifier(x, weights):
# Encode data
qml.AngleEmbedding(x, wires=range(4))
# Variational layers
qml.StronglyEntanglingLayers(weights, wires=range(4))
return qml.expval(qml.PauliZ(0))
# 2. Train
opt = qml.AdamOptimizer(stepsize=0.01)
weights = np.random.random((3, 4, 3)) # 3 layers, 4 wires
for epoch in range(100):
for x, y in zip(X_train, y_train):
weights = opt.step(lambda w: (classifier(x, w) - y)**2, weights)
from pennylane import qchem
# 1. Build Hamiltonian
symbols = ['H', 'H']
coords = np.array([0.0, 0.0, 0.0, 0.0, 0.0, 0.74])
H, n_qubits = qchem.molecular_hamiltonian(symbols, coords)
# 2. Define ansatz
@qml.qnode(dev)
def vqe_circuit(params):
qml.BasisState(qchem.hf_state(2, n_qubits), wires=range(n_qubits))
qml.UCCSD(params, wires=range(n_qubits))
return qml.expval(H)
# 3. Optimize
opt = qml.AdamOptimizer(stepsize=0.1)
params = np.zeros(10, requires_grad=True)
for i in range(100):
params, energy = opt.step_and_cost(vqe_circuit, params)
print(f"Step {i}: Energy = {energy:.6f} Ha")
# Same circuit, different backends
circuit_def = lambda dev: qml.qnode(dev)(circuit_function)
# Test on simulator
dev_sim = qml.device('default.qubit', wires=4)
result_sim = circuit_def(dev_sim)(params)
# Run on quantum hardware
dev_hw = qml.device('qiskit.ibmq', wires=4, backend='ibmq_manila')
result_hw = circuit_def(dev_hw)(params)
For comprehensive coverage of specific topics, consult the reference files:
references/getting_started.md - Installation, basic concepts, first stepsreferences/quantum_circuits.md - Gates, measurements, circuit patternsreferences/quantum_ml.md - Hybrid models, framework integration, QNNsreferences/quantum_chemistry.md - VQE, molecular Hamiltonians, chemistry workflowsreferences/devices_backends.md - Simulators, hardware plugins, device configurationreferences/optimization.md - Optimizers, gradients, variational algorithmsreferences/advanced_features.md - Templates, transforms, JIT compilation, noisedefault.qubit before deploying to hardwareqml.specs() to analyze circuit complexityWeekly Installs
125
Repository
GitHub Stars
22.6K
First Seen
Jan 21, 2026
Security Audits
Gen Agent Trust HubPassSocketPassSnykPass
Installed on
claude-code108
opencode99
cursor92
gemini-cli91
antigravity84
codex79
AI 代码实施计划编写技能 | 自动化开发任务分解与 TDD 流程规划工具
49,800 周安装