Skip to main contentIBM 

Announcing the Qiskit Functions Catalog

Last year, researchers began exploring problems that are difficult to simulate with brute-force classical methods, thanks to utility-scale quantum computers available on IBM QuantumTM Platform. But those experiments required a deep understanding of not just the quantum processing unit (QPU), but also the various error suppression and mitigation methods required to scale each individual problem.

Announcing the Qiskit Functions Catalog

16 Sep 2024

Suhare Nur

Tushar Mittal

Jennifer Glick

Sanket Panda

Ryan Mandelbaum

Functions are abstracted services, designed to accelerate algorithm discovery and application prototyping. Premium Plan members can get started with the IBM Circuit function, or purchase licenses from our partners. Learn more.

Now, as we embark on a mission to make utility more accessible, we’re launching a platform called the Qiskit Functions Catalog. Using the Qiskit Functions Catalog, developers can release Qiskit Functions that unlock those capabilities for enterprise developers and quantum computational scientists.

Today at IEEE Quantum Week, IBM Quantum VP Jay Gambetta announced the release of the Qiskit Functions Catalog in preview for our Premium Plan users. Developers can browse the catalog to access Qiskit Functions built by startups in the IBM Quantum Network, plus one IBM® function. Qiskit Functions are services that allow users to abstract away parts of the quantum software development workflow.

We hope that functions will greatly accelerate the algorithm and application development

We compared Qiskit's performance against the world's leading quantum SDKs using Benchpress, a new open-source package for quantum benchmarking. Read more.

process for our quantum computational scientists, while making it easier than ever for our enterprise developers to experiment with how quantum might accelerate use cases in their specific domain areas. We hope that the Qiskit Functions Catalog will become a go-to place for developers to offer tools that extend utility-scale quantum computing for the ever-growing quantum community.

A new way to code with Qiskit

At present, researchers mostly write quantum programs at the circuit level, requiring hand-coding that incorporates the intricacies of our hardware. Therefore, there’s still a lot of development time and expertise required in order to access the utility-scale performance of our hardware and software. Further, utility-scale programming might sit beyond the abilities of those without the deepest quantum computing backgrounds. That’s what Qiskit Functions and the Qiskit Functions Catalog are for.

Qiskit Functions is a programming service that allow access to high-performance quantum hardware and software at a higher abstraction level. After importing the Qiskit Function Catalog and passing it their API token, users add the function to their code and pass it the required inputs — such as classical data they’d like to map and run on quantum circuits. The IBM-managed service runs the code on a quantum computer and applies error suppression and mitigation, then the user receives their results.

Taking optimization as an example, today, the user must take the linear system graph, map the graph to Ising circuits and observables, transpile the code for the target hardware, run the runtime primitives, and tweak the error mitigation and suppression so that you can get good result — requiring knowledge of what a good result looks like. You further need to iterate over the circuit running to establish the best parameters. But with Q-CTRL’s Fire Opal Optimization Solver, the user only needs to pass the graph to the function, and the Solver will return highly accurate solutions alongside various information about the optimization process, such as the number of iterations.

Building a catalog with IBM Quantum Network startups

The Qiskit Functions Catalog lets Premium Plan users explore the available functions, including those written by IBM and those written by other members of our ecosystem. That includes 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 manages 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. Application Functions allow users to 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 will include IBM latest AI powered extensions to Qiskit for circuit synthesis, optimization and scheduling and 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 Algorithmiq, Q-CTRL, Qedma, and QunaSys:

Circuit Functions

Q-CTRL is releasing a Performance Management function that applies AI-driven error suppression to automatically reduce errors, improve scalability, and save compute time.

Algorithmiq is releasing a circuit function that applies TEM (tensor-network error mitigation), an error mitigation method that allows the user to obtain unbiased estimators with the optimal number of shots, capable of using less runtime than probabilistic error correction (PEC) and zero-noise extrapolation-probabilistic error amplification (ZNE-PEA) and reducing the usage of quantum runtime by working entirely in post-processing.

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 to solve the ground-state problem for molecules.

Q-CTRL is also releasing an Optimization Solver as an application function that solves utility-scale problems, requiring no quantum expertise, as described above.

Laying the groundwork for a quantum applications ecosystem

We hope that the Qiskit Functions Catalog will be the go-to platform for developers hoping to develop and release quantum computing tools. Meanwhile, we hope to further enable users to release functions of their own with the help of Qiskit addons.

Quantum algorithms have a four-step pattern:

  1. Map the problem to circuits,
  2. optimize those circuits for the target hardware,
  3. execute those circuits with Qiskit Runtime,
  4. and post process.

Qiskit addons are a collection of modular tools that can plug into this workflow to scale or design new algorithms at the utility scale.

The first, multi-product formulas (MPF), reduce algorithmic errors known as Trotter errors through a weighted combination of several circuit executions during the mapping step.

The second, operator backpropagation (OBP), reduces circuit depth during the optimize step by trimming operations from the end of the circuit.

The third, sample-based quantum diagonalization (SQD), classically post-processes noisy samples from a quantum processor to produce more accurate eigenvalue estimations of, e.g., chemistry Hamiltonians.

We hope that these Qiskit addons will further enable algorithm discovery, and we encourage you to get started by checking out their respective GitHub pages.

Those interested in releasing functions are also encouraged to familiarize themselves with Qiskit Serverless, the service that underpins the functions. Quantum workflows inherently require both quantum and classical processing, and Serverless manages the classical and quantum resources required to efficiently execute functions.

We hope our Premium Plan users will start using the Qiskit Functions Catalog today to see how they can provide value by accelerating up the development process as they investigate quantum for their own use cases.


View documentation