qumat-qdp 0.1.0__cp312-cp312-manylinux_2_31_x86_64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
_qdp/__init__.py
ADDED
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: qumat-qdp
|
|
3
|
+
Version: 0.1.0
|
|
4
|
+
Classifier: Programming Language :: Rust
|
|
5
|
+
Classifier: Programming Language :: Python :: Implementation :: CPython
|
|
6
|
+
Classifier: Programming Language :: Python :: Implementation :: PyPy
|
|
7
|
+
Requires-Dist: qumat>0.4.0
|
|
8
|
+
Requires-Python: >=3.10, <3.13
|
|
9
|
+
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
|
|
10
|
+
|
|
11
|
+
# qumat-qdp
|
|
12
|
+
|
|
13
|
+
GPU-accelerated quantum state encoding for [Apache Mahout Qumat](https://github.com/apache/mahout).
|
|
14
|
+
|
|
15
|
+
## Installation
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
pip install qumat[qdp]
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
Requires CUDA-capable GPU.
|
|
22
|
+
|
|
23
|
+
## Usage
|
|
24
|
+
|
|
25
|
+
```python
|
|
26
|
+
import qumat.qdp as qdp
|
|
27
|
+
import torch
|
|
28
|
+
|
|
29
|
+
# Initialize engine on GPU 0
|
|
30
|
+
engine = qdp.QdpEngine(device_id=0)
|
|
31
|
+
|
|
32
|
+
# Encode data into quantum state
|
|
33
|
+
qtensor = engine.encode([1.0, 2.0, 3.0, 4.0], num_qubits=2, encoding_method="amplitude")
|
|
34
|
+
|
|
35
|
+
# Zero-copy transfer to PyTorch
|
|
36
|
+
tensor = torch.from_dlpack(qtensor)
|
|
37
|
+
print(tensor) # Complex tensor on CUDA
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
## Encoding Methods
|
|
41
|
+
|
|
42
|
+
| Method | Description |
|
|
43
|
+
|--------|-------------|
|
|
44
|
+
| `amplitude` | Normalize input as quantum amplitudes |
|
|
45
|
+
| `angle` | Map values to rotation angles (one per qubit) |
|
|
46
|
+
| `basis` | Encode integer as computational basis state |
|
|
47
|
+
| `iqp` | IQP-style encoding with entanglement |
|
|
48
|
+
|
|
49
|
+
## Input Sources
|
|
50
|
+
|
|
51
|
+
```python
|
|
52
|
+
# Python list
|
|
53
|
+
qtensor = engine.encode([1.0, 2.0, 3.0, 4.0], 2, "amplitude")
|
|
54
|
+
|
|
55
|
+
# NumPy array
|
|
56
|
+
qtensor = engine.encode(np.array([[1, 2, 3, 4], [4, 3, 2, 1]]), 2, "amplitude")
|
|
57
|
+
|
|
58
|
+
# PyTorch tensor (CPU or CUDA)
|
|
59
|
+
qtensor = engine.encode(torch.tensor([1.0, 2.0, 3.0, 4.0]), 2, "amplitude")
|
|
60
|
+
|
|
61
|
+
# File formats
|
|
62
|
+
qtensor = engine.encode("data.parquet", 10, "amplitude")
|
|
63
|
+
qtensor = engine.encode("data.arrow", 10, "amplitude")
|
|
64
|
+
qtensor = engine.encode("data.npy", 10, "amplitude")
|
|
65
|
+
qtensor = engine.encode("data.pt", 10, "amplitude")
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
## Links
|
|
69
|
+
|
|
70
|
+
- [Documentation](https://mahout.apache.org/)
|
|
71
|
+
- [GitHub](https://github.com/apache/mahout)
|
|
72
|
+
- [Qumat Package](https://pypi.org/project/qumat/)
|
|
73
|
+
|
|
74
|
+
## License
|
|
75
|
+
|
|
76
|
+
Apache License 2.0
|
|
77
|
+
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
_qdp/__init__.py,sha256=X4iH-mA-OE8pIBuvwHV4NmNKnprI1BRXS7gPQ6PJB9M,99
|
|
2
|
+
_qdp/_qdp.cpython-312-x86_64-linux-gnu.so,sha256=5kg8GstdjTOwsc3UVBDPJyj8zDoTXAHwLaQOpQpMNB0,8884025
|
|
3
|
+
_qdp.libs/libcudart-b5a066d7.so.12,sha256=th9nVTT0G8EusOJaYoVdI17D6-j2A9hjnafJc966j8s,699265
|
|
4
|
+
qumat_qdp-0.1.0.dist-info/METADATA,sha256=xRRsO_5gXLD7VMFGpDSxEVPBlCJmw5eHumDwhjnHmWA,1942
|
|
5
|
+
qumat_qdp-0.1.0.dist-info/WHEEL,sha256=p0TksEV1UIXwE_TVbVDx6WlHzgTFPeAWiOTHQhfU41A,109
|
|
6
|
+
qumat_qdp-0.1.0.dist-info/RECORD,,
|