Quantum Data Engineering Toolkit — A modular Python framework for quantum-enhanced data pipelines.
Project description
QuDET
Quantum Data Engineering Toolkit
A modular Python framework for building hybrid classical–quantum data pipelines.
Overview
QuDET bridges the gap between classical data engineering and quantum computing. It provides a production-ready, modular framework that lets AI engineers and researchers integrate quantum algorithms into data pipelines without deep quantum physics expertise.
QuDET follows scikit-learn conventions (fit / transform / predict) so you can drop quantum components into existing ML workflows with minimal friction.
Why QuDET?
- Practical quantum integration: Quantum components solve real problems (kernel methods, encoding, anomaly detection) rather than existing for novelty.
- Familiar API: scikit-learn compatible interfaces mean minimal learning curve.
- Modular architecture: Use only what you need. Each module works independently.
- Production-ready: Input validation, proper error handling, logging, and type hints throughout.
- Simulator-first: Works out of the box with Qiskit Aer. Optional IBM Quantum hardware support.
Architecture
QuDET is organized into six specialized layers:
| Module | Purpose | Key Classes |
|---|---|---|
| Connectors | Data ingestion & I/O | QuantumDataLoader, QuantumParquetLoader, QuantumSQLLoader |
| Transforms | Feature engineering | QuantumPCA, FeatureScaler, QuantumNormalizer, CoresetReducer |
| Encoders | Classical to Quantum | AngleEncoder, AmplitudeEncoder, IQPEncoder, RotationEncoder |
| Analytics | Quantum ML models | QuantumSVC, QuantumKernelRegressor, QuantumKMeans |
| Compute | Execution layer | BackendManager, CircuitOptimizer, QuantumErrorMitigation |
| Governance | Safety & operations | QuantumDriftDetector, ResourceEstimator, AuditLogger |
Installation
pip install qudet
Optional Dependencies
# SQL database connectors
pip install "qudet[sql]"
# Encryption and security features
pip install "qudet[crypto]"
# Distributed computing with Dask
pip install "qudet[distributed]"
# IBM Quantum hardware access
pip install "qudet[ibm]"
# Everything (including dev tools)
pip install "qudet[all]"
Testing the installation
Open a Python prompt and run this minimal code to verify QuDET is installed correctly:
import numpy as np
from qudet.encoders import AngleEncoder
# Create dummy data and encode it
data = np.array([0.5, 0.8])
encoder = AngleEncoder(n_qubits=2)
circuit = encoder.encode(data)
print(f"QuDET installed successfully! Generated a {circuit.num_qubits}-qubit circuit.")
Examples & Tutorials
Check out the examples/ directory in this repository! We provide a highly informative Kickstart Guide (kickstart_guide.ipynb) that walks you through an end-to-end real-world workflow using all 6 QuDET modules on a wine quality dataset.
Development Setup
git clone https://github.com/satwiksps/qudet-dev.git
cd qudet-dev
python -m venv .venv
# Linux/macOS
source .venv/bin/activate
# Windows
.venv\Scripts\activate
pip install -e ".[dev]"
Feedback and Contributions
We welcome any feedback on how QuDET is working and are happy to receive bug reports, pull requests, and other feedback:
Contributions are welcome! Please:
- Fork the repository
- Create a feature branch (
git checkout -b feature/my-feature) - Write tests for your changes
- Ensure all tests pass (
pytest) - Format code (
black .andruff check .) - Submit a pull request
Testing
# Run all tests
pytest
# Run with coverage
pytest --cov=qudet --cov-report=term-missing
# Run specific module tests
pytest tests/test_encoders/ -v
# Run only fast tests
pytest -m "not slow"
License
Distributed under the Apache 2.0 License. See LICENSE for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file qudet-1.0.0.tar.gz.
File metadata
- Download URL: qudet-1.0.0.tar.gz
- Upload date:
- Size: 98.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7baf919caf2682ed947a11100d733451b8bc6ac9dc3fa7cf6ff264a94c80a347
|
|
| MD5 |
e56438e672f4db4d09eb9b56c2c8e461
|
|
| BLAKE2b-256 |
3507bbc4f393a895f860683f50639cabd7da492eac4cca35b20f759ccdcc8e9c
|
File details
Details for the file qudet-1.0.0-py3-none-any.whl.
File metadata
- Download URL: qudet-1.0.0-py3-none-any.whl
- Upload date:
- Size: 124.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cbcadde3bc35d6cbc4bf66a58e46f390010529f1748a735f3c93b5b5b232b8b4
|
|
| MD5 |
5123137f175eb34f59bebecb5090808e
|
|
| BLAKE2b-256 |
6081aacd7cb1f1125e451877a72b791c439991c6a4751d6284c7ecc71742bca5
|