首页/博客/IBM Quantum 免费套餐:2026 年你能使用的一切
IBMHardwareQiskit

IBM Quantum 免费套餐:2026 年你能使用的一切

详细解读 IBM Quantum 免费 Open Plan 包含哪些内容、排队时间如何运作,以及如何充分利用你的免费 QPU 使用权。

FreeQuantumComputing
·· 8 min read

IBM Quantum 拥有量子计算行业中最易获取的免费套餐。只需一个免费的 IBM ID,你就能访问最多 127 个量子比特的真实量子处理器——无需付费、无需信用卡、无需申请。下面就来说明这在实践中究竟意味着什么。

免费套餐包含哪些内容

IBM Quantum 的 Open Plan 为你提供:

  • 无限访问所有公开可用的量子系统
  • 每月 10 分钟的量子时间(你的电路在 QPU 上实际运行的时间)
  • 访问 IBM 模拟器且无时间限制(statevector、QASM、matrix product state)
  • Qiskit Runtime——IBM 现代化的电路执行环境
  • IBM Quantum Learning 平台,包含教程和课程

每月 10 分钟的限制听起来很受限,但实际上大多数研究电路的实际 QPU 运行时间仅为毫秒级。对于试验量子算法的个人开发者来说,很少会触及这个上限。

可用的免费 QPU

截至 2026 年初,IBM 的 Open Plan 包含以下访问权限:

系统量子比特技术典型排队时间
IBM Eagle127超导10–60 分钟
IBM Heron r1133Heron 处理器30–120 分钟
IBM Falcon27超导5–30 分钟

IBM 会定期退役和新增系统。使用 Qiskit Runtime 服务查看当前列表:

from qiskit_ibm_runtime import QiskitRuntimeService

service = QiskitRuntimeService(channel="ibm_quantum")
backends = service.backends(
    operational=True,
    simulator=False,
    min_num_qubits=1
)
for b in backends:
    print(f"{b.name}: {b.num_qubits} qubits, status: {b.status().status_msg}")

10 分钟完成设置

第 1 步:创建你的免费账户

前往 quantum.ibm.com 创建一个免费的 IBM ID。无需提供任何支付信息。

第 2 步:安装 SDK

pip install qiskit qiskit-ibm-runtime

第 3 步:保存你的凭据

登录 IBM Quantum 控制台后,从 Account 页面复制你的 API token。

from qiskit_ibm_runtime import QiskitRuntimeService

# Run this once to save your token locally
QiskitRuntimeService.save_account(
    channel="ibm_quantum",
    token="YOUR_API_TOKEN_HERE",
    overwrite=True
)

你的凭据会保存到 ~/.qiskit/qiskit-ibm.json——之后无需再次执行此操作。

第 4 步:提交你的第一个任务

from qiskit import QuantumCircuit
from qiskit.transpiler.preset_passmanagers import generate_preset_pass_manager
from qiskit_ibm_runtime import QiskitRuntimeService, SamplerV2 as Sampler

# Build a Bell state
qc = QuantumCircuit(2, 2)
qc.h(0)
qc.cx(0, 1)
qc.measure([0, 1], [0, 1])

# Connect and pick the least-busy free QPU
service = QiskitRuntimeService(channel="ibm_quantum")
backend = service.least_busy(
    operational=True,
    simulator=False,
    min_num_qubits=2
)
print(f"Submitting to: {backend.name}")

# Transpile for the target device
pm = generate_preset_pass_manager(backend=backend, optimization_level=1)
isa_qc = pm.run(qc)

# Submit
sampler = Sampler(mode=backend)
job = sampler.run([isa_qc], shots=1024)

print(f"Job ID: {job.job_id()}")
print(f"Status: {job.status()}")
result = job.result()
print(result[0].data.c.get_counts())

理解排队时间

排队时间是免费套餐最常见的困扰。以下是背后的原理:

  • 你与全球所有其他 Open Plan 用户共享 QPU
  • 任务按系统分别排队——least_busy() 有助于找到等待最短的系统
  • 典型等待时间:视系统负载而定,从 5 分钟到 2 小时不等

减少排队时间的技巧:

  • 在非高峰时段运行(欧洲的早晨 = 美洲的夜晚)
  • 使用 service.least_busy() 而非指定某个特定系统
  • 开发阶段在本地使用 Aer 模拟器——仅在最终验证时提交到真实硬件
  • 使用 SamplerV2 的列表输入将多个电路批量打包到单个任务中

改用免费的云端模拟器

对于大多数开发工作,IBM 的云端托管模拟器比排队等待真实硬件更快:

# IBM cloud QASM simulator (up to 32 qubits, no queue)
backend = service.backend("ibmq_qasm_simulator")

# Or use the Statevector simulator (exact simulation)
backend = service.backend("simulator_statevector")

这些模拟器没有排队时间,可即时运行。当你需要真实的噪声特性或想在真实硬件上进行基准测试时,再使用真实的 QPU。

将 HLQuantum 与 IBM Quantum 配合使用

如果你使用多个 SDK,HLQuantum 提供了一个更简洁的接口来访问 IBM 硬件:

import hlquantum as hlq

qc = hlq.Circuit(2)
qc.h(0).cx(0, 1).measure_all()

# Run on IBM's free QPU
result = hlq.run(
    qc,
    backend="qiskit",
    device="ibm_sherbrooke",  # or use "auto" for least busy
    shots=1024,
    error_mitigation="zne"
)
print(result)

HLQuantum 会自动处理转译、任务提交和结果解析。有关高级配置,请参阅完整的 Qiskit SDK 指南