---
title: Introduction
description: Introduction to Qiskit and IBM Quantum Compute Service.
source: https://quantum.cloud.ibm.com/docs/en/guides
---

# Introduction

## Introduction to Qiskit and IBM Quantum

Welcome to the documentation for [Qiskit](/docs/guides/tools-intro), its related packages, and IBM Quantum® Platform. This documentation includes how-to guides to get you started on our tools, specific use-case tutorials that include end-to-end examples, and a collection of API references.

Qiskit provides a modular and extensible framework for quantum research and development across algorithms, high-performance computing, and quantum information science. With it, researchers can build, optimize, and execute quantum workflows with [specialized addons](/docs/guides/addons), software tools, and extensive resources. Through IBM Quantum Platform, users can access [IBM Quantum Compute Service](/docs/guides/compute-services) and the [Qiskit Functions Catalog](/functions) to run workloads efficiently on the IBM® fleet of quantum computers.

![A graphic showing the different components of IBM Quantum Platform and Qiskit.](https://quantum.cloud.ibm.com/docs/images/guides/index/overview-image.avif)

Beyond Qiskit and its related packages is the [Qiskit ecosystem](https://www.ibm.com/quantum/ecosystem), a catalog of open-source projects that interface with Qiskit to extend its functionality.

## Get started

- [**Quickstart**](/docs/guides/quick-start) — Build a quantum circuit in under two minutes - no sign-in or API key required.
- [**Tutorials**](/docs/tutorials) — Try end-to-end examples that apply Qiskit to common quantum computing use cases.

## Explore capabilities

- [**Circuit building**](/docs/guides/construct-circuits) — Construct quantum circuits by using the Qiskit SDK.
- [**Optimization**](/docs/guides/transpile) — Construct high-fidelity circuits with reduced depth that are ready for execution with the Qiskit SDK transpiler.
- [**Error mitigation**](/docs/guides/error-mitigation-and-suppression-techniques) — Explore the available error mitigation and suppression techniques available from IBM Quantum.
- [**Execution**](/docs/guides/primitives) — Use IBM Quantum primitives to run quantum circuits on IBM Quantum hardware.
- [**Post-processing**](/docs/addons/qiskit-addon-sqd) — Refine your results by using post-processing techniques for specialized applications available as Qiskit addons.
- [**Qiskit Functions**](/docs/guides/functions) — Accelerate quantum workload creation with pre-built tools created by partner organizations.

## Support

- [**Error code registry**](/docs/errors) — Look up error codes and suggested solutions.
- [**Support page**](/docs/guides/support) — Find answers to frequently-asked questions, learn how to report bugs, discover communities to join, and more.


## Contents

- Get started
  - [Introduction](/docs/guides)
  - [Quickstart](/docs/guides/quick-start)
  - [IBM Quantum Composer](/docs/guides/composer)
  - [Changelog](/docs/guides/latest-updates)
- Qiskit
  - [Introduction to Qiskit](/docs/guides/tools-intro)
  - Install
    - [Install Qiskit](/docs/guides/install-qiskit)
    - [Install the Qiskit SDK from source](/docs/guides/install-qiskit-source)
    - [Configure the Qiskit SDK locally](/docs/guides/configure-qiskit-local)
    - [Install the Qiskit C API](/docs/guides/install-c-api)
    - [Extend Qiskit in Python with C](/docs/guides/c-extension-for-python)
    - [Online lab environments](/docs/guides/online-lab-environments)
  - Circuits and operators
    - [Overview](/docs/guides/construct-circuits)
    - [Circuit library](/docs/guides/circuit-library)
    - [Save circuits to disk](/docs/guides/save-circuits)
    - [Measure qubits](/docs/guides/measure-qubits)
    - Operators module
      - [Overview of operator classes](/docs/guides/operators-overview)
      - [The Operator class](/docs/guides/operator-class)
      - [Synthesize unitary operators](/docs/guides/synthesize-unitary-operators)
      - [Specify observables in the Pauli basis](/docs/guides/specify-observables-pauli)
    - Advanced circuit building
      - [Deferred timing resolution using stretch](/docs/guides/stretch)
      - [Classical feedforward and control flow](/docs/guides/classical-feedforward-and-control-flow)
      - [Bit-ordering in the Qiskit SDK](/docs/guides/bit-ordering)
    - OpenQASM
      - [Intro to OpenQASM](/docs/guides/introduction-to-qasm)
      - [OpenQASM 2 and the Qiskit SDK](/docs/guides/interoperate-qiskit-qasm2)
      - [OpenQASM 3 and the Qiskit SDK](/docs/guides/interoperate-qiskit-qasm3)
      - [OpenQASM 3 feature table](/docs/guides/qasm-feature-table)
      - [OpenQASM 3.x live specification](https://openqasm.com/)
  - Transpilation
    - [Introduction to transpilation](/docs/guides/transpile)
    - [Transpiler stages](/docs/guides/transpiler-stages)
    - [Transpile with pass managers](/docs/guides/transpile-with-pass-managers)
    - [Create a pass manager for dynamical decoupling](/docs/guides/dynamical-decoupling-pass-manager)
    - Configure preset pass managers
      - [Default settings and configuration options](/docs/guides/defaults-and-configuration-options)
      - [Set optimization level](/docs/guides/set-optimization)
      - [Commonly used parameters for transpilation](/docs/guides/common-parameters)
      - [Represent quantum computers for the transpiler](/docs/guides/represent-quantum-computers)
    - [Compare transpiler settings](/docs/guides/circuit-transpilation-settings)
    - Advanced transpilation resources
      - [Write a custom transpiler pass](/docs/guides/custom-transpiler-pass)
      - [Create and transpile against custom backends](/docs/guides/custom-backend)
      - [Install and use transpiler plugins](/docs/guides/transpiler-plugins)
      - [Create a transpiler plugin](/docs/guides/create-transpiler-plugin)
      - [Work with DAGs in transpiler passes](/docs/guides/DAG-representation)
      - [AI-powered transpiler passes](/docs/guides/ai-transpiler-passes)
  - Primitives
    - [Introduction to primitives](/docs/guides/primitives)
    - [Primitive inputs and outputs](/docs/guides/primitive-input-output)
    - [Get started with the backend primitives](/docs/guides/get-started-with-backend-primitives)
    - [Exact simulation with Qiskit SDK primitives](/docs/guides/simulate-with-qiskit-sdk-primitives)
  - Debugging
    - Simulate circuits with noise
      - [Introduction](/docs/guides/debugging-tools)
      - [Exact and noisy simulation with Qiskit Aer primitives](/docs/guides/simulate-with-qiskit-aer)
      - [Exact simulation with Qiskit SDK primitives](/docs/guides/simulate-with-qiskit-sdk-primitives)
      - [Build noise models](/docs/guides/build-noise-models)
      - [Efficient simulation of stabilizer circuits with Qiskit Aer primitives](/docs/guides/simulate-stabilizer-circuits)
    - Visualization
      - [Visualize circuits](/docs/guides/visualize-circuits)
      - [Visualize circuit timing](/docs/guides/visualize-circuit-timing)
      - [Plot quantum states](/docs/guides/plot-quantum-states)
      - [Visualize results](/docs/guides/visualize-results)
  - [Advanced techniques - Qiskit addons](/docs/guides/addons)
  - [Integrate external quantum resources with Qiskit](/docs/guides/create-a-provider)
  - Integrations
    - [Quantum resource management interface (QRMI)](/docs/guides/qrmi)
    - [SPANK plugin for QRMI](/docs/guides/slurm-plugin)
    - [SPANK plugin user guide](/docs/guides/slurm-hpc-ux)
    - [Qiskit MCP servers](/docs/guides/qiskit-mcp-servers)
  - [Qiskit Code Assistant](/docs/guides/qiskit-code-assistant)
- IBM Quantum services
  - [Introduction to IBM Quantum services](/docs/guides/compute-services)
  - Install
    - [Install the IBM Quantum Compute client](/docs/guides/install-qiskit-runtime)
    - [Install the IBM Quantum Compute client from source](/docs/guides/install-qiskit-runtime-source)
  - [Run your first circuit on hardware](/docs/guides/hello-world)
  - IBM Quantum Platform
    - Set up IBM Quantum Platform
      - [Set up your IBM Cloud account](/docs/guides/cloud-setup)
      - [Set up your IBM Cloud account - invited users](/docs/guides/cloud-setup-invited)
      - [Set up your IBM Cloud account in an untrusted environment](/docs/guides/cloud-setup-untrusted)
      - [Set up to use IBM Quantum Platform with REST API](/docs/guides/cloud-setup-rest-api)
      - [Save your login credentials](/docs/guides/save-credentials)
      - [Initialize your IBM Quantum Compute Service account](/docs/guides/initialize-account)
      - [Create a Classroom Account](/docs/guides/classroom-accounts)
      - Set up for an organization
        - [Setup considerations](/docs/guides/considerations-set-up-runtime)
        - [Configure IBM Quantum Platform](/docs/guides/quickstart-steps-org)
    - IBM Quantum plans
      - [Plans overview](/docs/guides/plans-overview)
      - [Upgrade from the Open Plan](/docs/guides/upgrade-from-open)
      - [Manage cost on the Pay-As-You-Go Plan](/docs/guides/manage-cost)
    - Work with instances
      - [Create and manage instances](/docs/guides/instances)
      - [Set allocation limits](/docs/guides/allocation-limits)
      - [Use IBM Cloud Resource Controller API to manage instances](/docs/guides/access-instances-platform-apis)
    - Accounts, access groups, and policies
      - [Cloud account structure](/docs/guides/cloud-account-structure)
      - [Create access groups and policies](/docs/guides/access-groups)
      - [Set up custom roles](/docs/guides/custom-roles)
    - Manage users
      - [Invite users and manage access](/docs/guides/invite-and-manage-users)
      - [Manage ID provider users](/docs/guides/manage-appid)
      - [Manage IBM Cloud users](/docs/guides/manage-cloud-users)
    - [Logging](/docs/guides/logging)
  - Execute with primitives
    - [Introduction to IBM Quantum primitives](/docs/guides/qiskit-runtime-primitives)
    - [Directed execution model (beta)](/docs/guides/directed-execution-model)
    - [Introduction to options](/docs/guides/runtime-options-overview)
    - Estimator
      - [Get started](/docs/guides/get-started-with-estimator)
      - [Inputs and outputs](/docs/guides/estimator-input-output)
      - [Options](/docs/guides/estimator-options)
      - [Configure noise management](/docs/guides/estimator-noise-management)
      - [Examples](/docs/guides/estimator-examples)
      - [REST API](/docs/guides/estimator-rest-api)
    - Sampler
      - [Get started](/docs/guides/get-started-with-sampler)
      - [Inputs and outputs](/docs/guides/sampler-input-output)
      - [Options](/docs/guides/sampler-options)
      - [Configure noise management](/docs/guides/sampler-noise-management)
      - [Examples](/docs/guides/sampler-examples)
      - [REST API](/docs/guides/sampler-rest-api)
    - Executor
      - [Get started](/docs/guides/get-started-with-executor)
      - [Inputs and outputs](/docs/guides/executor-input-output)
      - [Broadcasting](/docs/guides/executor-broadcasting)
      - [Options](/docs/guides/executor-options)
      - [Examples](/docs/guides/executor-examples)
    - Manage noise
      - [Overview of noise management techniques](/docs/guides/error-mitigation-overview)
      - [Error mitigation and suppression](/docs/guides/error-mitigation-and-suppression-techniques)
      - [Noise learning](/docs/guides/noise-learning)
      - [Use postselection in workloads](/docs/guides/post-selection)
    - [Debug jobs with NEAT](/docs/guides/debug-qiskit-runtime-jobs)
    - [Local testing mode](/docs/guides/local-testing-mode)
  - Advanced execution features
    - [Fractional gates](/docs/guides/fractional-gates)
    - [Execute dynamic circuits](/docs/guides/execute-dynamic-circuits)
    - [Visualize circuit timing](/docs/guides/qiskit-runtime-circuit-timing)
  - IBM quantum computers
    - [Processor types](/docs/guides/processor-types)
    - [View backend details](/docs/guides/qpu-information)
    - [Monitoring, calibrations, and benchmarking](/docs/guides/calibration-jobs)
    - [Qubit initialization](/docs/guides/repetition-rate-execution)
    - [Retired cloud QPUs](/docs/guides/retired-qpus)
    - [Fair-share scheduler](/docs/guides/fair-share-scheduler)
    - [View cost](/docs/guides/view-cost)
  - Manage workload execution
    - [Monitor or cancel a job](/docs/guides/monitor-job)
    - [Workload usage](/docs/guides/estimate-job-run-time)
    - [Minimize job run time](/docs/guides/minimize-time)
    - [Maximum execution time](/docs/guides/max-execution-time)
    - [Job limits](/docs/guides/job-limits)
    - [Organize and search by job tags](/docs/guides/add-job-tags)
    - [Retrieve and save job results](/docs/guides/save-jobs)
  - Execution modes
    - [Introduction to execution modes](/docs/guides/execution-modes)
    - [Choose the right execution mode](/docs/guides/choose-execution-mode)
    - [Run jobs in a batch](/docs/guides/run-jobs-batch)
    - [Run jobs in a session](/docs/guides/run-jobs-session)
    - [Execution modes using REST API](/docs/guides/execution-modes-rest-api)
    - [Execution modes FAQ](/docs/guides/execution-modes-faq)
  - Qiskit Serverless
    - [Introduction to Qiskit Serverless](/docs/guides/serverless)
    - [Write your first Qiskit Serverless program](/docs/guides/serverless-first-program)
    - [Run your first Qiskit Serverless workload remotely](/docs/guides/serverless-run-first-workload)
    - [Manage Qiskit Serverless compute and data resources](/docs/guides/serverless-manage-resources)
    - [Port code to Qiskit Serverless](/docs/guides/serverless-port-code)
- Applications research tools
  - [Introduction to Qiskit Functions](/docs/guides/functions)
  - [Get started with Qiskit Functions](/docs/guides/functions-get-started)
  - Circuit functions
    - [Algorithmiq Tensor-network error mitigation](/docs/guides/algorithmiq-tem)
    - [Q-CTRL Performance Management](/docs/guides/q-ctrl-performance-management)
    - [Qedma QESEM](/docs/guides/qedma-qesem)
    - [Quantum Elements Orbit](/docs/guides/quantum-elements-orbit)
  - Application functions
    - [Kipu Quantum Iskay Quantum Optimizer](/docs/guides/kipu-optimization)
    - [Multiverse Computing Singularity](/docs/guides/multiverse-computing-singularity)
    - [Q-CTRL Optimization Solver](/docs/guides/q-ctrl-optimization-solver)
    - [Quantum Portfolio Optimizer: A Qiskit Function by Global Data Quantum](/docs/guides/global-data-quantum-optimizer)
    - [QUICK-PDE: A Qiskit Function by ColibriTD](/docs/guides/colibritd-pde)
    - [Qunova Computing HI-VQE Chemistry](/docs/guides/qunova-chemistry)
  - Qiskit Function templates
    - [Introduction to Qiskit Function templates](/docs/guides/qiskit-function-templates)
    - [Template for chemistry simulation](/docs/guides/function-template-chemistry-workflow)
    - [Template for Hamiltonian simulation](/docs/guides/function-template-hamiltonian-simulation)
  - [Sample-based quantum diagonalization (SQD)](/docs/addons/qiskit-addon-sqd)
- Additional resources
  - Support and FAQ
    - [Support](/docs/guides/support)
    - [Frequently-asked questions](/docs/guides/faq)
  - [Development workflow](/docs/guides/intro-to-patterns)
  - Migration guides
    - Migrate to Qiskit 2.0
      - [Qiskit v2.0 migration guide](/docs/guides/qiskit-2.0)
      - [Migrate from BackendV1 to BackendV2](/docs/guides/qiskit-backendv1-to-v2)
    - Migrate to Qiskit 1.0
      - [Introduction](/docs/guides/qiskit-1.0)
      - [Understand the breaking package changes](/docs/guides/metapackage-migration)
      - [Install the new Qiskit v1.0 package](/docs/guides/qiskit-1.0-installation)
      - [Qiskit v1.0 feature changes](/docs/guides/qiskit-1.0-features)
    - [Migrate from Qiskit Pulse to fractional gates](/docs/guides/pulse-migration)
    - [Migrate to local simulators](/docs/guides/local-simulators)
  - Open-source resources
    - [Introduction](/docs/guides/open-source)
    - [Code of conduct](/docs/guides/code-of-conduct)
    - Contributor license agreements
      - [Individual contributor](/docs/open-source/qiskit-cla.pdf)
      - [Corporate contributor](/docs/open-source/qiskit-corporate-cla.pdf)
    - Qiskit SDK
      - [Version strategy](/docs/guides/qiskit-sdk-version-strategy)
      - [Contributor guide](https://github.com/Qiskit/qiskit/blob/main/CONTRIBUTING.md)
      - [Maintainer guide](https://github.com/Qiskit/qiskit/blob/main/MAINTAINING.md)
    - [Qiskit ecosystem](https://www.ibm.com/quantum/ecosystem)
  - Security and compliance
    - [Securing your data](/docs/guides/secure-data)
    - [Understanding your responsibilities when using IBM Quantum Compute Service](/docs/guides/responsibilities)
    - [Use virtual private endpoints for VPC](/docs/guides/virtual-private-endpoints)
    - [High availability and disaster recovery](/docs/guides/ha-dr)
    - [Activity tracking events for IBM Quantum Compute Service](/docs/guides/observability-runtime-rest)
    - [Activity tracking events for the IBM Quantum System service](/docs/guides/observability-quantum-system)
    - [Repository security policies](/docs/guides/security-policies)
    - [Protecting IBM Quantum Compute Service resources with context-based restrictions](/docs/guides/context-based-restrictions)
