Skip to main content

QpiAI Quantum SDK

A comprehensive quantum computing framework with modular implementations, built for researchers, educators, and quantum application developers.

PyPI version Python Versions License

Architecture

The following diagram illustrates how QpiAI's products work together. The QpiAI Quantum SDK can execute circuits locally via built-in simulators, or submit jobs remotely to QpiAI QCloud for access to high-performance cloud simulators and QPUs.

Architecture Diagram

Show Mermaid Source Code
flowchart LR
    %% 1. Client Layer
    subgraph Client ["Client"]
        Notebooks["Jupyter Notebooks/
Python Program"]
        Agents["AI Agents"]
    end

    %% 2. SDK Layer
    SDK["QpiAI SDK"]

    %% 3. Execution Branches
    subgraph Local ["Local Execution"]
        LocalSim["Local Simulator"]
    end

    %% Remote Execution Layer
    subgraph Remote ["QpiAI QCloud"]
        CloudSims["QCloud Simulators"]
        QPU{{"QPU"}}
    end

    %% The Pipeline Flow
    Notebooks --> SDK
    Agents --> SDK
    SDK -->|Local Run| LocalSim
    SDK -->|Remote Job| Remote

Features

Core Quantum Computing

  • Circuit Building: Intuitive quantum circuit construction with support for quantum and classical registers
  • Gate Operations: Comprehensive set of quantum gates including:
    • Single-qubit: H, X, Y, Z, S, S†, T, T†, SX, ID
    • Rotation: RX, RY, RZ, P (phase)
    • Two-qubit: CX (CNOT), CY, CZ, SWAP, iSWAP, CP, RZZ
    • Multi-qubit: CCX (Toffoli), CSWAP (Fredkin)
  • Measurement: Flexible measurement operations with classical register support
  • Simulation Backends: Statevector simulator, Density matrix simulator, and Tensor network simulator
  • QPU Access: Run circuits on QpiAI Indus quantum processing unit
  • Circuit Utilities: Circuit depth, size, gate statistics (list_gates), composition (compose), inverse, and barrier operations

Quantum Algorithms

  • Grover's Search: Amplitude amplification for unstructured search
  • Shor's Algorithm: Integer factorization (educational implementation for small N)
  • Quantum Fourier Transform (QFT): Core subroutine for many quantum algorithms
  • Quantum Phase Estimation (QPE): Eigenvalue estimation
  • Simon's Algorithm: Finding hidden bit strings
  • Bernstein-Vazirani: Determining hidden linear functions
  • Deutsch-Jozsa: Distinguishing constant from balanced functions
  • Quantum Random Number Generator (QRNG): True quantum randomness
  • Amplitude Estimation: Canonical QPE-based amplitude estimation, plus the iterative (maximum-likelihood) variant for Monte Carlo-style workflows

Quantum Information & States

  • Statevector: Full quantum state representation and manipulation
  • Density Matrix: Mixed state representation with comprehensive operations
  • Entangled State Generation: Bell states, GHZ states, W states, and Cluster states

Visualization Tools

  • Circuit Diagrams: Matplotlib-based circuit rendering with light/dark themes and math-text support
  • Plotly Visualizer: Interactive circuit and result visualization
  • Bloch Sphere: Interactive 3D Bloch sphere visualization (Plotly-based)
  • Histogram Plots: Measurement outcome visualization
  • State Vector Plots: Amplitude and phase visualization

Backend & Job Management

  • Direct Execution: Run circuits with configurable shots, device, and simulation method
  • JobManager: Unified interface for job submission, status tracking, cancellation, and history
  • Job Result Handling: Structured results with counts, statevectors, and density matrices

Authentication & Cloud

  • QpiAI Cloud Authentication: Secure access to QpiAI cloud platform and QPU resources via QpiAIQuantumAuth

Installation

The QpiAI Quantum SDK is available as an open-source package. Install directly from PyPI:

pip install qpiai-quantum

Verify Installation

python -c 'import qpiai_quantum; print(f"QpiAI Quantum SDK v{qpiai_quantum.__version__} installed successfully")'

Requirements

  • Python 3.10 or higher
  • Dependencies are automatically installed with pip

Quick Start

Basic Circuit Example

from qpiai_quantum import Circuit

# Create a quantum circuit with 2 qubits and 2 classical bits
circuit = Circuit(2, 2)

# Apply quantum gates
circuit.h(0)        # Hadamard gate on qubit 0
circuit.cx(0, 1)    # CNOT gate (control: qubit 0, target: qubit 1)

# Measure qubits
circuit.measure([0, 1], [0, 1])

# Visualize the circuit
circuit.show()

print("Bell state circuit created successfully!")

Authentication & API Key Setup

Before running circuits on any backend (including the local simulator), you need to authenticate with your API key:

from qpiai_quantum import QpiAIQuantumAuth

# Login with your API key (obtain from https://qcloud.qpiai.tech/)
QpiAIQuantumAuth.login(api_key="your_api_key_here")

# Verify your API key
QpiAIQuantumAuth.verify_api_key()

# View available remote compute resources (Note: this does not list the local simulator)
QpiAIQuantumAuth.list_compute_resources()

Alternatively, set your API key in a qcloud.env file in your project root:

API_KEY="your_api_key_here"

Running a Circuit on QpiAI Simulators

from qpiai_quantum import Circuit

# Create a circuit
circuit = Circuit(2, 2)
circuit.h(0)
circuit.cx(0, 1)
circuit.measure([0, 1], [0, 1])

# Execute on the statevector simulator
job_result = circuit.run(shots=10000, experiment_name="Bell State", device_name="QpiAI-QSV-Local")

# Get results
counts = job_result.get_counts()
print(f"Measurement results: {counts}")

Quantum Algorithms

from qpiai_quantum import GroverSearch, QFT, ShorsAlgorithm

# Grover's search
grover = GroverSearch(num_qubits=3, target="101")
circuit = grover.build_circuit()

# Quantum Fourier Transform
qft = QFT(num_qubits=4)

# Shor's algorithm for factorization
shor = ShorsAlgorithm(N=15)

State Preparation

from qpiai_quantum import BellStateGenerator, GHZStateGenerator, WStateGenerator, ClusterStateGenerator

# Generate Bell state (maximally entangled 2-qubit state)
bell_gen = BellStateGenerator(num_qubits=2)
bell_circuit = bell_gen.generate_state()

# Generate GHZ state (n-qubit entangled state)
ghz_gen = GHZStateGenerator(num_qubits=3)
ghz_circuit = ghz_gen.generate_state()

# Generate W state (n-qubit entangled state)
w_gen = WStateGenerator(num_qubits=3)
w_circuit = w_gen.generate_state()

# Generate Cluster state (graph-state entanglement)
cluster_gen = ClusterStateGenerator(num_qubits=4)
cluster_circuit = cluster_gen.generate_state()

Quantum Information

from qpiai_quantum import Statevector, DensityMatrix

# Create and inspect a statevector
sv = Statevector([1, 0])  # |0⟩ state

# Create a density matrix
dm = DensityMatrix([[1, 0], [0, 0]])  # |0⟩⟨0|

Documentation & Tutorials

Use Cases

Research

Experiment with quantum logic gates and circuits, develop new quantum computing approaches, and prototype novel quantum applications.

Education

Learn quantum computing concepts with practical, hands-on implementations. Perfect for students, educators, and quantum computing enthusiasts.

Development

Build quantum applications and integrate quantum computing capabilities into your projects with a clean, intuitive API.

Contributing

We welcome contributions from the community! Whether it's bug reports, feature requests, or questions, we'd love to hear from you.

Please see CONTRIBUTING.md for guidelines on:

  • Reporting bugs and issues
  • Requesting new features
  • Contributing code
  • Asking questions and getting support
  • Code of conduct

License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.

Citation

If you use the QpiAI Quantum SDK in your research, please cite it as follows:

@software{qpiai_quantum_sdk,
  author = {{QpiAI}},
  title = {QpiAI Quantum SDK},
  year = {2026},
  url = {https://github.com/qpiai/quantum-sdk},
  note = {Company Website: \url{https://www.qpiai.tech/}}
}

Copyright © 2026 QpiAI. All rights reserved.

Metadata

Release files for qpiai-quantum 0.7.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for qpiai-quantum 0.7.4
File Size Uploaded
qpiai_quantum-0.7.4.tar.gz 182.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for qpiai-quantum 0.7.4
File Interpreter ABI Platform
qpiai_quantum-0.7.4-py3-none-any.whl Python 3 none any Details

Total release size: 407.5 kB

Release files / qpiai_quantum-0.7.4.tar.gz

Download URL qpiai_quantum-0.7.4.tar.gz
Size 182.9 kB
Tags Source
SHA-256 checksum
How to use checksums
e0515f243c87693a87956c4781c387128bba0fd7a6287b289bd755aa15e26338
BLAKE2b-256 checksum
How to use checksums
c466b7795892bc813cb4e679c34df0ed244582ac372e357c5e11926337c0663e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.10.19

Release files / qpiai_quantum-0.7.4-py3-none-any.whl

Download URL qpiai_quantum-0.7.4-py3-none-any.whl
Size 224.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a1080b81164b39d201a8a1f0db2f136714e3dd05fa9c117f6c166c0c745a1a30
BLAKE2b-256 checksum
How to use checksums
d2ad1465f4f3e59dc4e1376212562138c1388997eb016c90402f0fe60896a4c6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.10.19
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page