Qiskit Terra
raw JSON → 2.4.1 verified Mon Apr 27 auth: no python
Qiskit is an open-source SDK for working with quantum computers at the level of circuits, transpilation, and pulse control. The qiskit-terra package is the foundational component, providing circuit construction, transpilation, simulation, and IBM Quantum backend access. As of version 2.x, the package is simply called 'qiskit' on PyPI (qiskit-terra is a legacy distribution). Current version: 2.4.1, with quarterly releases.
pip install qiskit Common errors
error ModuleNotFoundError: No module named 'qiskit' ↓
cause Qiskit is not installed.
fix
pip install qiskit
error ModuleNotFoundError: No module named 'qiskit.extensions' ↓
cause qiskit.extensions was removed in Qiskit 1.0.
fix
Import gates directly: from qiskit.circuit.library import HGate, CXGate
error ImportError: cannot import name 'Aer' from 'qiskit' ↓
cause Aer was moved to a separate package in qiskit-terra 0.44.
fix
pip install qiskit-aer and import from qiskit_aer
error AttributeError: 'QuantumCircuit' object has no attribute 'qasm' ↓
cause The qasm() method was removed in Qiskit 1.0.
fix
Use qiskit.qasm2.dumps(circuit) or qiskit.qasm3.dumps(circuit)
Warnings
breaking Qiskit 1.0 removed many legacy modules: qiskit.tools, qiskit.quantum_info.random, qiskit.extensions, and more. Update imports and usage accordingly. ↓
fix Refer to the Qiskit 1.0 migration guide: https://docs.quantum.ibm.com/migration-guides/v1
deprecated Qiskit 2.x deprecated the use of the Qiskit Terra PyPI package name; use `qiskit` instead. ↓
fix Install via `pip install qiskit` (qiskit-terra may be for legacy compatibility only).
gotcha Aer is no longer part of qiskit-terra. Importing from qiskit.providers.aer will fail. You must install qiskit-aer separately. ↓
fix pip install qiskit-aer and import from qiskit_aer
gotcha The BasicAer backend was removed in Qiskit 1.0. Use BasicProvider from qiskit.providers.basic_provider instead. ↓
fix from qiskit.providers.basic_provider import BasicProvider
deprecated QuantumCircuit.draw() with the 'mpl' style may require matplotlib to be installed separately. ↓
fix pip install matplotlib, or use 'text' style
Install
pip install qiskit-terra Imports
- QuantumCircuit wrong
from qiskit-terra import QuantumCircuitcorrectfrom qiskit import QuantumCircuit - transpile wrong
from qiskit.compiler import transpilecorrectfrom qiskit import transpile - Aer wrong
from qiskit import Aercorrectfrom qiskit_aer import Aer - plot_histogram wrong
from qiskit.tools.visualization import plot_histogramcorrectfrom qiskit.visualization import plot_histogram
Quickstart
from qiskit import QuantumCircuit
from qiskit import transpile
from qiskit.providers.basic_provider import BasicProvider
# Create a simple circuit
qc = QuantumCircuit(2)
qc.h(0)
qc.cx(0, 1)
qc.measure_all()
# Transpile for basic simulator
qc = transpile(qc, backend=BasicProvider().get_backend('basic_simulator'))
print(qc)