IBM 于 2026 年 7 月 14 日宣布发布 Qiskit SDK v2.5,带来了旨在提升量子电路编译速度和构建编译流程灵活性的改进,同时扩展了 C 语言 API 的能力。该版本属于 Qiskit v2.x 系列,重点是打造更快速、更具可扩展性的软件基础,并尽可能保持现有工作流程的兼容性。
该版本新增了多表示形式编译器框架,以及用于将电路编译为与容错量子计算相关表示形式的现成路径;转换过程则受益于 LightSabre 算法、多线程以及专注于真实硬件执行精度的优化阶段改进。
扩展 C 接口以检查动态电路
Qiskit v2.5 支持直接通过 C 接口检查动态电路中的经典控制流,而不必在分析这些指令时返回 Python。支持的内容包括 if/else、while、for、switch、box、break 和 continue 操作。
开发者可以查询控制流类型,检查嵌套电路块,分析条件和循环参数,并访问嵌套块与原始电路之间的关联。IBM 还新增了用于检查经典表达式的配套接口,包括表达式树、变量、字面量、逻辑和算术运算、比较运算以及类型信息。
这些新增功能使编译器工具和底层软件能够完全通过 C 接口分析动态电路和经典表达式。不过,目前仍不支持从 C 创建控制流操作或经典表达式;该版本的支持范围仅限于检查。
用于多表示形式编译路径的框架
该版本引入了 MultiStagePassManager 组件,用于构建跨越多个中间表示形式运行的编译路径。整个工作流程不再必须绑定到单一表示形式,每个阶段都可以使用最适合其所执行任务的表示形式。
这一变化面向高级用户,例如构建自定义编译路径的研究人员和开发者,或从事容错量子计算工作流程的人员。该框架可以逐步与 Qiskit 中现有的 PassManager 配合使用,但用户必须指定各阶段之间的转换,因为系统不会自动推断这些转换。
面向容错计算的现成路径
Qiskit v2.5 新增了两个用于容错量子计算相关编译路径的现成 PassManager:
- generate_preset_pbc_pass_manager():将电路编译为基于 Pauli 的计算表示形式,其中操作使用 Pauli 测量和 Pauli 乘积旋转来表达。
- generate_preset_clifford_t_pass_manager():将电路编译为 Clifford+T 指令集,这是容错编译路径中常见的表示形式。
这些路径仍可进行定制,开发者可以检查和修改编译阶段,并添加其他优化技术。此外,Clifford+T 路径还支持调整近似精度与 T 门数量之间的权衡。
编译器性能改进与升级要求
新版本的编译过程受益于 LightSabre 算法改进。该算法现在以层为单位处理即将到来的门,而不是使用固定窗口进行前瞻限制。IBM 表示,这能够改善大型电路的可扩展性,同时保持或提升相较于先前实现的电路质量。
Qiskit 还扩大了多线程的使用范围,涵盖 TwoQubitPeepholeOptimization 和 Optimize1qGatesDecomposition 等阶段,并改进了 ConsolidateBlocks 和 UnitarySynthesis 等现有阶段。TwoQubitPeepholeOptimization 阶段侧重于真实硬件上的预期执行精度,利用后端错误率和设备特性;即使这有时会导致电路深度或门数量增加,也会如此。
IBM 说明,升级通常不需要修改代码,但 C 接口在次要版本之间仍不稳定,使用 Qiskit v2.4 构建的扩展可能需要重新编译。此外,Qiskit v2.5 要求 NumPy 2.0 或更高版本以及 SciPy 1.14 或更高版本。对于 Qiskit v1.x 系列用户,该系列已于 6 月 12 日发布 v1.4.6 后结束支持,包括错误修复、安全更新和其他所有修补。
与此同时,IBM 宣布将 Qiskit Runtime Service 更名为 IBM Quantum Compute Service,以明确区分 Qiskit(一个开源且不依赖硬件的开发套件)与 IBM 的托管服务(用于在 IBM 量子计算机上运行算法)。该变更自 7 月 14 日起并在随后数周内逐步实施,不会改变现有的 API、工作流程或集成。