Skip to content

Commit

Permalink
Add new FAQ about metapackage and include install snippets to intro (#…
Browse files Browse the repository at this point in the history
…2516)

Closes #2486 and closes #2488

---------

Co-authored-by: abbycross <[email protected]>
Co-authored-by: Abby Mitchell <[email protected]>
  • Loading branch information
3 people authored Jan 17, 2025
1 parent 991eeb9 commit 8725d49
Show file tree
Hide file tree
Showing 2 changed files with 62 additions and 0 deletions.
10 changes: 10 additions & 0 deletions docs/faq.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,16 @@ Example of citing IBM Quantum Composer:

> IBM Quantum Composer. 2023. url: https://<span>quantum.ibm.com/composer</span>
## What happened to Python distributions such as Qiskit Aer, Qiskit Nature, and Qiskit Experiments?

Since the release of the Qiskit SDK v1.0, the command `pip install qiskit` will **only** install the [Qiskit SDK](https://github.com/Qiskit/qiskit). This means that some modules that you have used in the past, such as `qiskit-aer` or `qiskit-nature`, now have to be installed separately.

Before the release of the Qiskit SDK v1.0, Qiskit was comprised of many different Python distributions, such as `qiskit-terra`, the compiler core; `qiskit-aer`, the high-performance simulator; the original IBM Quantum™ provider; and several now-obsolete packages providing particular exploratory algorithmic or experiment-running features.

These separate software packages were combined into what was called the Qiskit *metapackage*, which allowed users to install all of these components together through `pip install qiskit`. This metapackage architecture was removed with the release of the Qiskit SDK v1.0, and now each of the individual software distributions needs to be installed separately.

If you want to install the packages that used to be included in the Qiskit metapackage, visit the [Qiskit ecosystem](https://www.ibm.com/quantum/ecosystem) to find a range of packages to suit your needs. You can also read the [v1.0 migration guide](/migration-guides/qiskit-1.0-installation#why-these-changes-happened) for more information about this change.

## Why do I receive the error message "AttributeError: `QuantumCircuit` object has no attribute `save_state`" when using `save_*`method on a circuit?

The `save_*` instructions are part of Qiskit Aer project,
Expand Down
52 changes: 52 additions & 0 deletions docs/guides/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,14 @@ Some of the most useful features of the Qiskit SDK include:

- **Primitives** ([`qiskit.primitives`](/api/qiskit/primitives)) - The module that contains the base definitions and reference implementations of the Sampler and Estimator primitives, from which different quantum hardware providers can derive their own implementations. See more information about the Qiskit Runtime primitives [in the documentation](./primitives).

### Installation

For a more detailed introduction to installing the Qiskit SDK, check out the [installation page](./install-qiskit). If you're ready to install it now, simply run:

```bash
pip install qiskit
```

### Benchmarking and the Benchpress package

Benchmarking is important for comparing the relative performance of quantum software across different stages of a development workflow. Benchmarking tests for quantum software might, for example, look at the speed and quality of building, manipulating, and transpiling circuits. IBM Quantum is committed to delivering the most performant SDK possible, and to that end, the Qiskit SDK is benchmarked using over 1,000 tests developed by leading universities, national labs, and researchers at IBM. The benchmarking suite used for these tests, named Benchpress, is now available as [an open-source package](https://github.com/qiskit/benchpress). You can now use the Benchpress package to perform your own analysis of quantum SDK performance.
Expand All @@ -44,6 +52,13 @@ Qiskit Runtime is designed to use additional classical and quantum compute resou

Qiskit Runtime also includes three types of execution modes for running your quantum program on IBM hardware: _Job_, _Session_, and _Batch_, each of which have different use cases and implications for the quantum job queue. A Job is a single query to a primitive that can be run over a specified number of shots. [Sessions](./sessions) allow you to efficiently run multiple jobs in iterative workloads on quantum computers. [Batch mode](./run-jobs-batch) allows you to submit all your jobs at once for parallel processing.

To quickly install Qiskit Runtime, run the following command
```bash
pip install qiskit-ibm-runtime
```

More details on setting up a development environment for building quantum programs can be found in the [installation page](./install-qiskit).

### Is Qiskit Runtime open-source?
The short answer is, _not all of it_. The Qiskit Runtime service software that handles the technicalities of running your quantum program on an IBM Quantum device (including any error mitigation and suppression) is **not** open-source. However, the Qiskit Runtime client (the interface for users to access the Qiskit Runtime service), the Qiskit SDK running on the server side, and some of the software used for error mitigation, **are** open-source. To get involved with the Qiskit open-source efforts, visit our GitHub organization at [github.com/Qiskit](https://github.com/Qiskit) and [github.com/Qiskit-Extensions](https://github.com/Qiskit-Extensions/).

Expand All @@ -55,6 +70,11 @@ Creating utility-scale quantum applications generally requires a variety of comp
- Persist long-running workloads in the cloud, even if your laptop is turned off
- Deploy reusable programs in the cloud

To start using Qiskit Serverless right away, install it with pip:
```bash
pip install qiskit_serverless
```


## Qiskit Functions

Expand All @@ -65,13 +85,45 @@ Qiskit Functions (`qiskit-ibm-catalog.QiskitFunctionsCatalog`) are abstracted se

Premium Plan members can access IBM-provided functions right away, or purchase licenses for the partner-provided functions directly from those partners.

The catalog can be installed with pip:
```bash
pip install qiskit-ibm-catalog
```

## Qiskit Transpiler as a Service
The Qiskit Transpiler Service ([package name `qiskit-ibm-transpiler`](https://pypi.org/project/qiskit-ibm-transpiler/)) is a new experimental service that provides remote transpilation capabilities on the cloud to IBM Quantum Premium Plan users. In addition to the local Qiskit SDK transpiler capabilities, your transpilation tasks can benefit from both IBM Quantum cloud resources and AI-powered transpiler passes using this service. To learn more about how to integrate cloud-based transpilation into your Qiskit workflow you can [check out the documentation](./qiskit-transpiler-service).

The transpiler service can be installed with pip:
```bash
pip install qiskit-ibm-transpiler
```

## Qiskit addons

Qiskit addons are a collection of research capabilities for utility-scale algorithm discovery. These capabilities build upon Qiskit’s performant foundation of tools for creating and running quantum algorithms. Addons are modular software components that plug into a workflow to scale or design new quantum algorithms. To learn more about the set of available Qiskit addons and how to get started using them, visit the [documentation](/guides/addons).

There are a number of addons depending on what research capability you are interested in. Each of them can be installed with pip.

[Sample-based quantum diagonalization (SQD)](/guides/qiskit-addons-sqd):
```bash
pip install qiskit-addon-sqd
```

[Approximate quantum compilation (AQC)](/guides/qiskit-addons-aqc):
```bash
pip install qiskit-addon-aqc-tensor[quimb-jax]
```

[Operator backpropagation (OBP)](/guides/qiskit-addons-obp):
```bash
pip install qiskit-addon-obp
```

[Multi-product formulas (MPF)](/guides/qiskit-addons-mpf):
```bash
pip install qiskit-addon-mpf
```

## The Qiskit ecosystem

Beyond Qiskit there are many open-source projects that use the "Qiskit" name but are not part of Qiskit itself; rather, they interface with Qiskit and can provide valuable additional functionality to supplement the core Qiskit workflow. Some of these projects are maintained by IBM Quantum teams, whereas others are supported by the broader open-source community. The Qiskit SDK is designed in a modular, extensible way to make it easy for developers to create projects like these that extend its capabilities.
Expand Down

0 comments on commit 8725d49

Please sign in to comment.