207 lines
16 KiB
Plaintext
207 lines
16 KiB
Plaintext
---
|
||
title: Latest updates
|
||
description: The latest updates from Qiskit and IBM Quantum, including the latest package release summaries, news, and events.
|
||
---
|
||
|
||
# Latest updates
|
||
|
||
*Last updated 22 October 2024*
|
||
{/* remember to update the date in the previous line each time this page is updated!!! */}
|
||
|
||
Keep up with the latest and greatest from Qiskit and IBM Quantum™! Gathered here are the the most recent Qiskit package release summaries, documentation updates, blogs, community events, and more.
|
||
|
||
## Latest release summaries
|
||
|
||
{/* release summaries written by product owners */}
|
||
|
||
### Qiskit SDK v1.2.0
|
||
|
||
*To see the release notes for all versions, visit the [Qiskit SDK release notes](/api/qiskit/release-notes).*
|
||
|
||
Qiskit 1.2 (stable release) is now available on [PyPI](https://pypi.org/project/qiskit/1.2.0/) and [GitHub](https://github.com/Qiskit/qiskit/releases/tag/1.2.0). Thanks to the maintainers and open-source contributors!
|
||
|
||
- Many of the core structures have been moved to Rust, allowing for significant speedups mostly in the construction, manipulation (including copy and parameter assignment), and synthesis of circuits.
|
||
- Better compiler quality due to the addition of unitary peephole optimization (for optimization levels 2 and 3) and improvements in Sabre.
|
||
- [`generate_preset_pass_manager`](/api/qiskit/transpiler_preset#generate_preset_pass_manager) importance highlight, which is now importable from the top level.
|
||
|
||
Important deprecations:
|
||
- Primitive V1 reference implementations (like `qiskit.primitives.Estimator`) and tooling are deprecated in favor of [V2 primitives](/api/qiskit/primitives). The primitive V1 base classes remain available.
|
||
- [`BackendV1`](/api/qiskit/qiskit.providers.BackendV1) is now deprecated in favor of [`BackendV2`](/api/qiskit/qiskit.providers.BackendV2), including the deprecation of `Qobj`, `assemble`, and other scaffolding related to the old V1.
|
||
- Support for Python 3.8 will be dropped in the next release, v1.3. Python 3.9 will then be the new minimal required version.
|
||
|
||
Remember, because this a minor release, it will not introduce breaking changes for users moving from Qiskit SDK v1.0. Any deprecations announced with this release refer only to things that will now start throwing deprecation warnings. None of these will be removed until the release of Qiskit v2.0, pursuant to Qiskit’s official [deprecation policy](https://github.com/Qiskit/qiskit/blob/main/DEPRECATION.md#).
|
||
|
||
For more details, read the post about the release on the [IBM Quantum blog](https://www.ibm.com/quantum/blog/qiskit-1-2-release-summary), and explore the [v1.2 release notes](/api/qiskit/release-notes/1.2).
|
||
|
||
{/* use url format /api/qiskit/release-notes/X.X to link to the specific X.X version of the release notes */}
|
||
|
||
### Qiskit Runtime client 0.28.0
|
||
|
||
*To see the release notes for all versions, visit the [Qiskit Runtime client release notes](/api/qiskit-ibm-runtime/release-notes).*
|
||
|
||
**Highlights from the 0.28.0 (2024-08-15) version release**
|
||
|
||
#### Removal
|
||
|
||
- The V1 primitives `SamplerV1` and `EstimatorV1` have been completely removed. Refer to the [migration guide](/migration-guides/v2-primitives) for instructions on migrating to V2 primitives.
|
||
- The `service` parameter is now required in `Session.from_id()`.
|
||
|
||
#### New features
|
||
|
||
- You can now use the `layer_noise_model` option in `ResilienceOptionsV2` to pass in a noise model. When this field is set, all the mitigation strategies that require noise data skip the noise learning stage, and instead gather the required information from `layer_noise_model`. You can use the [NoiseLearner](/api/qiskit-ibm-runtime/qiskit_ibm_runtime.noise_learner.NoiseLearner) class to learn noise and use it in a subsequent `Estimator` call.
|
||
|
||
See the full [0.28.0 release notes](/api/qiskit-ibm-runtime/release-notes#0280-2024-08-15).
|
||
{/* use url format /api/qiskit-ibm-runtime/release-notes#0XYZ to link to the specific 0.XY.Z version of the release notes */}
|
||
|
||
### Qiskit Transpiler Service client v0.3.0
|
||
|
||
We’re pleased to share that the beta release of the Qiskit Transpiler Service is now available to all IBM Quantum™ Premium Plan users.
|
||
|
||
The Qiskit Transpiler Service leverages the resources of IBM Cloud® to provide users with the latest transpilation capabilities from the Qiskit SDK. It offers a Python library that helps users seamlessly integrate the service into their current Qiskit patterns and workflows. Perhaps most importantly, the service invites users to experiment with new and improved AI-powered transpiler passes — cutting-edge tools that might be faster and produce better results than traditional transpilation methods.
|
||
|
||
On the IBM Quantum blog, we take a deep dive into the new beta release with a special focus on the new AI-powered passes. The blog includes detailed explanations showing how to use the Qiskit Transpiler Service for both full circuit transpilation and standalone AI-powered passes, with code examples for each. [Take a look.](https://www.ibm.com/quantum/blog/ai-transpiler-passes)
|
||
|
||
{/* no other release notes available yet */}
|
||
|
||
### Qiskit Functions Catalog Service client v0.1.0
|
||
|
||
Introducing the Qiskit Functions preview, for IBM Quantum Premium Plan users. To get started, `pip install qiskit-ibm-catalog`, and explore the [Qiskit Functions documentation](/guides/functions). With the Qiskit Functions Catalog client, you can submit workloads to abstracted services designed to accelerate your research - sign in with your existing IBM Quantum Platform credentials.
|
||
|
||
Premium Plan users can get started right away with the IBM® Circuit function, or request access to circuit or application functions from our partners.
|
||
|
||
## Qiskit Runtime service updates
|
||
|
||
This summary of the latest changes to the Qiskit Runtime service applies to anyone using Qiskit Runtime, regardless of how you communicate with the service (using qiskit-ibm-runtime or otherwise), or which version of the client SDK you use.
|
||
|
||
### 15 August 2024
|
||
|
||
- Probabilistic error amplification (PEA) error mitigation method is now available for Estimator V2. See the [`ZneOptions` API reference](/api/qiskit-ibm-runtime/qiskit_ibm_runtime.options.ZneOptions) for more details.
|
||
- A new helper program `noise-learner` is now available. It allows characterizing the noise processes affecting the gates in one or more circuits of interest, based on the Pauli-Lindblad noise model. The output noise model can then be passed to Estimator via the `layer_noise_model` option.
|
||
- V1 primitives are no longer supported.
|
||
|
||
### 3 July 2024
|
||
|
||
The following endpoints are deprecated and will be removed on or after 3 October 2024: [`GET /stream/jobs`](/api/runtime/tags/jobs#tags__jobs__operations__get_stream_jobs_state_updates) and [`GET /stream/jobs/{id}`](/api/runtime/tags/jobs#tags__jobs__operations__get_stream_job_logs_jid). This removal has the following impacts:
|
||
|
||
- After the endpoints are removed, `job.stream_results()` and `job.interim_results()` will be removed from the [qiskit-ibm-runtime](/api/qiskit-ibm-runtime) client.
|
||
- Additional methods, such as `job.result()` currently use the deprecated endpoints. Upgrade to `qiskit_ibm_runtime` 0.25 or later before the endpoints are removed to avoid disruption.
|
||
|
||
### 18 June 2024
|
||
|
||
The `optimization_level` option is deprecated for Estimator V2 and will be removed no sooner than 30 September 2024.
|
||
|
||
### 3 June 2024
|
||
|
||
Probabilistic error amplification (PEA) error mitigation method is now available as an experimental option for Estimator V2. See the [`EstimatorOptions` API reference](/api/qiskit-ibm-runtime/qiskit_ibm_runtime.options.EstimatorOptions) for more details.
|
||
|
||
### 28 March 2024
|
||
|
||
Qiskit Runtime primitives now support OpenQASM 3 as the input format for circuits and standard JSON output format. See [Qiskit Runtime REST API](/api/runtime) for examples.
|
||
|
||
## Qiskit Functions Catalog updates
|
||
|
||
### 16 September 2024
|
||
|
||
The Qiskit Functions Catalog preview provides access to Premium Plan users to explore the available functions, including those written by IBM and those written by other members of our ecosystem. The catalog contains two kinds of functions: circuit functions and application functions.
|
||
|
||
- **Circuit functions** provide a simplified interface for running circuits. They receive user-provided abstract circuits and observables as input, then manage synthesis, optimization, and execution of the representative ISA circuit. Circuit functions bring together the latest capabilities in transpilation, error suppression, and error mitigation to make utility-grade performance accessible out of the box. This allows computational scientists to focus on mapping their problems to circuits, rather than building the pattern for each problem from scratch.
|
||
|
||
- **Application functions** cover higher-level tasks, like exploring algorithms and domain-specific use cases. Enterprise developers and data scientists may not have the background quantum information science knowledge for working with circuits, and instead hope to bring their domain knowledge to advance quantum computing algorithms and applications. With application functions, users can enter their classical inputs and receive solutions so they can more easily experiment with plugging quantum into their domain-specific workflows.
|
||
|
||
With the launch of the Qiskit Functions Catalog, Premium Plan developers will be able to start exploring the IBM Circuit function. The IBM Circuit function includes the latest AI-powered extensions to Qiskit for circuit synthesis, optimization, and scheduling, as well as advanced error mitigation methods to return the most accurate estimations possible with today's hardware.
|
||
|
||
Users can purchase licenses for the following functions contributed by our partners at Q-CTRL, QEDMA, Algorithmiq, and Qunasys.
|
||
|
||
### Circuit functions
|
||
|
||
- Q-CTRL is releasing a circuit function that applies AI-driven quantum control techniques, with which users can scale successfully to larger problems.
|
||
- Algorithmiq is releasing a circuit function that applies TEM (tensor-network error mitigation), an error mitigation method for obtaining estimators with fewer shots than the PEC (probabilistic error cancellation) method.
|
||
- QEDMA is releasing a circuit function that uses proprietary protocols for efficient and accurate characterization of the noisy QPU operations, and applies error suppression and error mitigation based on the characterization data.
|
||
|
||
### Application functions
|
||
|
||
- QunaSys is releasing a chemistry application function comprising three algorithms meant to solve the ground state energy estimation (GSEE) problem.
|
||
- Q-CTRL is also releasing an optimization solver with which users can pass a graph or an objective, and receive solution costs.
|
||
|
||
To get started, explore the [Qiskit Functions documentation](/guides/functions).
|
||
|
||
|
||
## IBM Quantum blog: A closer look at Qiskit Code Assistant
|
||
|
||
*Browse all blogs at the [IBM Quantum blog page](https://www.ibm.com/quantum/blog).*
|
||
|
||
{/* Bring over the Quantum news (blog) announcement post */}
|
||
|
||
We recently made Qiskit Code Assistant [available as a preview release](/announcements/product-updates/2024-09-16-code-assistant) for IBM Quantum Premium Plan users. In our latest post on the IBM Quantum blog, we take a look at the inner workings of the `granite-8b-qiskit` model behind this powerful new quantum code generation tool, and the unique challenges that went into building it.
|
||
|
||
The blog opens with a high-level overview of our motivations for building Qiskit Code Assistant, long-term plans for open-sourcing the code assistant model, and instructions for getting started with Qiskit Code Assistant in popular coding environments VS Code and JupyterLab. A more detailed version of these instructions can be found in the [documentation](/guides/qiskit-code-assistant).
|
||
|
||
From there, the blog goes on to deliver popular summaries of two recent arXiv papers detailing our work developing the `granite-8b-qiskit` model, and the Qiskit HumanEval benchmarking method we use to evaluate the performance of quantum code generation tools. Interested readers can [explore the blog](https://www.ibm.com/quantum/blog/qiskit-code-assistant), and those looking for more technical detail can find the aforementioned arXiv papers [here](https://arxiv.org/abs/2405.19495/) and [here](https://arxiv.org/pdf/2406.14712).
|
||
|
||
## What's new in the documentation
|
||
|
||
{/* Copy over the latest "What's new in the docs" announcement */}
|
||
|
||
IBM Quantum documentation recently added a number of user-facing improvements, including content updates and new features. Many of these changes are a result of specific user requests! Check out the highlights below.
|
||
|
||
### Updated content
|
||
|
||
**New pages**
|
||
|
||
New pages include documentation for [Qiskit Functions](/guides/functions), [Qiskit addons](/guides/addons), and [Qiskit Code Assistant](/guides/qiskit-code-assistant), as well as a guide about [job limits](/guides/job-limits).
|
||
|
||
- Qiskit Functions [Introduction](/guides/functions)
|
||
- [IBM® Circuit function](/guides/ibm-circuit-function)
|
||
- [Algorithmiq TEM function](/guides/algorithmiq-tem)
|
||
- [Q-CTRL Performance Management](/guides/q-ctrl-performance-management)
|
||
- [Qedma QESEM](/guides/qedma-qesem)
|
||
- [Q-CTRL Optimization Solver](/guides/q-ctrl-optimization-solver)
|
||
- [QunaSys QURI Chemistry](/guides/qunasys-quri-chemistry)
|
||
- Qiskit Code Assistant [Overview](/guides/qiskit-code-assistant)
|
||
- [Use Qiskit Code Assistant in JupyterLab](/guides/qiskit-code-assistant-jupyterlab)
|
||
- [Use Qiskit Code Assistant in Visual Studio Code](/guides/qiskit-code-assistant-vscode)
|
||
|
||
**Content additions and improvements**
|
||
|
||
- Added content to the [Execution modes](/guides/execution-modes) guides and improved explanatory content in the [Introduction to primitives](/guides/primitives) page
|
||
|
||
- Clarified how the [Estimator primitive calculates error](/guides/primitive-input-output#how-the-estimator-calculates-error)
|
||
|
||
- A new [FAQ](/faq) page
|
||
|
||
- Improvements to the [Support](/support) page
|
||
|
||
- Some error codes now link out to relevant documentation ([example](/errors#8055))
|
||
|
||
- Information about [benchmarking and the Benchpress package](/guides#benchmarking-and-the-benchpress-package)
|
||
|
||
- Copyediting and typo fixes across the documentation, including bugs reported by open-source contributors - thank you!
|
||
|
||
**New API reference documentation**
|
||
|
||
- [qiskit-ibm-runtime 0.29-0.31](/api/qiskit-ibm-runtime/release-notes)
|
||
- [qiskit-ibm-transpiler 0.7](/api/qiskit-ibm-transpiler/release-notes)
|
||
|
||
### User experience improvements
|
||
|
||
Updates to the infrastructure and design of the documentation include the following:
|
||
|
||
- We fixed GitHub source code links for functions using decorators - thanks to the open-source contributor who opened an issue for this!
|
||
- When you change the version in the left sidebar of the API reference docs, you arrive at the equivalent page in the new version. If the page does not exist in the new version, you land on the index page.
|
||
- We improved the design and color of the warning banner for when you access outdated API pages to make it more obvious that newer docs are available. The banner persists as you scroll down the page.
|
||
- Source code links and release notes have been added to the [Qiskit Transpiler Service client API documentation](/api/qiskit-ibm-transpiler).
|
||
- Code blocks that write to a file now display the file path; see examples in this [Qiskit Serverless guide](/guides/serverless-first-program).
|
||
- Tips to use the Qiskit Code Assistant now appear throughout the guides.
|
||
|
||
*A huge thank you goes out to everyone in the open-source community who contributed and gave feedback!* Please [open an issue](https://github.com/Qiskit/documentation/issues/new/choose) if you find a bug, have a suggestion, or want to share your experience.
|
||
|
||
## Qiskit global community events
|
||
|
||
Join, participate, contribute! See what events are coming up on the [Qiskit community events calendar](https://www.ibm.com/quantum/community#events).
|
||
|
||
## See all product updates
|
||
|
||
<Admonition type="tip" title="">
|
||
Visit the [Product announcements](/announcements/product-updates) to browse all product updates and news.
|
||
</Admonition>
|