qutai 0.1.0__tar.gz

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.
Files changed (128) hide show
  1. qutai-0.1.0/PKG-INFO +73 -0
  2. qutai-0.1.0/README.md +64 -0
  3. qutai-0.1.0/pyproject.toml +18 -0
  4. qutai-0.1.0/setup.cfg +4 -0
  5. qutai-0.1.0/src/qutai/__init__.py +7 -0
  6. qutai-0.1.0/src/qutai/backends/__init__.py +0 -0
  7. qutai-0.1.0/src/qutai/backends/cpu.py +595 -0
  8. qutai-0.1.0/src/qutai/backends/device.py +12 -0
  9. qutai-0.1.0/src/qutai/backends/storage.py +17 -0
  10. qutai-0.1.0/src/qutai/core/__init__.py +0 -0
  11. qutai-0.1.0/src/qutai/core/context.py +25 -0
  12. qutai-0.1.0/src/qutai/core/data.py +58 -0
  13. qutai-0.1.0/src/qutai/core/grad.py +47 -0
  14. qutai-0.1.0/src/qutai/core/operations/__init__.py +6 -0
  15. qutai-0.1.0/src/qutai/core/operations/convolution.py +44 -0
  16. qutai-0.1.0/src/qutai/core/operations/elementwise.py +122 -0
  17. qutai-0.1.0/src/qutai/core/operations/linalg.py +36 -0
  18. qutai-0.1.0/src/qutai/core/operations/normalization.py +68 -0
  19. qutai-0.1.0/src/qutai/core/operations/reductions.py +49 -0
  20. qutai-0.1.0/src/qutai/core/operations/transforms.py +82 -0
  21. qutai-0.1.0/src/qutai/core/shape.py +143 -0
  22. qutai-0.1.0/src/qutai/core/tensor.py +355 -0
  23. qutai-0.1.0/src/qutai/core/types.py +51 -0
  24. qutai-0.1.0/src/qutai/generation/__init__.py +2 -0
  25. qutai-0.1.0/src/qutai/generation/diffusion.py +83 -0
  26. qutai-0.1.0/src/qutai/generation/model.py +62 -0
  27. qutai-0.1.0/src/qutai/generation/serialization.py +29 -0
  28. qutai-0.1.0/src/qutai/lm/__init__.py +2 -0
  29. qutai-0.1.0/src/qutai/lm/model.py +113 -0
  30. qutai-0.1.0/src/qutai/lm/serialization.py +29 -0
  31. qutai-0.1.0/src/qutai/lm/tokenizer.py +22 -0
  32. qutai-0.1.0/src/qutai/nn/__init__.py +5 -0
  33. qutai-0.1.0/src/qutai/nn/cache.py +29 -0
  34. qutai-0.1.0/src/qutai/nn/dit.py +89 -0
  35. qutai-0.1.0/src/qutai/nn/layers.py +373 -0
  36. qutai-0.1.0/src/qutai/nn/losses.py +41 -0
  37. qutai-0.1.0/src/qutai/nn/model.py +27 -0
  38. qutai-0.1.0/src/qutai/nn/optimizers.py +153 -0
  39. qutai-0.1.0/src/qutai/nn/serialization.py +278 -0
  40. qutai-0.1.0/src/qutai/qnn/__init__.py +4 -0
  41. qutai-0.1.0/src/qutai/qnn/pqc.py +56 -0
  42. qutai-0.1.0/src/qutai/quantum/__init__.py +8 -0
  43. qutai-0.1.0/src/qutai/quantum/circuit.py +91 -0
  44. qutai-0.1.0/src/qutai/quantum/gates.py +161 -0
  45. qutai-0.1.0/src/qutai/quantum/grad.py +72 -0
  46. qutai-0.1.0/src/qutai/quantum/observables.py +114 -0
  47. qutai-0.1.0/src/qutai/quantum/qaoa.py +71 -0
  48. qutai-0.1.0/src/qutai/quantum/state.py +102 -0
  49. qutai-0.1.0/src/qutai/visualization/__init__.py +9 -0
  50. qutai-0.1.0/src/qutai/visualization/_svg.py +19 -0
  51. qutai-0.1.0/src/qutai/visualization/diagrams.py +235 -0
  52. qutai-0.1.0/src/qutai/visualization/images.py +82 -0
  53. qutai-0.1.0/src/qutai/visualization/plots.py +104 -0
  54. qutai-0.1.0/src/qutai/visualization/progress.py +27 -0
  55. qutai-0.1.0/src/qutai/visualization/quantum.py +164 -0
  56. qutai-0.1.0/src/qutai/visualization/tables.py +48 -0
  57. qutai-0.1.0/src/qutai.egg-info/PKG-INFO +73 -0
  58. qutai-0.1.0/src/qutai.egg-info/SOURCES.txt +126 -0
  59. qutai-0.1.0/src/qutai.egg-info/dependency_links.txt +1 -0
  60. qutai-0.1.0/src/qutai.egg-info/top_level.txt +1 -0
  61. qutai-0.1.0/tests/test_adamw.py +114 -0
  62. qutai-0.1.0/tests/test_adjoint.py +269 -0
  63. qutai-0.1.0/tests/test_adjoint_benchmark.py +40 -0
  64. qutai-0.1.0/tests/test_attention.py +96 -0
  65. qutai-0.1.0/tests/test_attention_cache.py +118 -0
  66. qutai-0.1.0/tests/test_batch_norm.py +156 -0
  67. qutai-0.1.0/tests/test_batched_matmul.py +122 -0
  68. qutai-0.1.0/tests/test_bloch.py +106 -0
  69. qutai-0.1.0/tests/test_cifar_data.py +130 -0
  70. qutai-0.1.0/tests/test_classification.py +210 -0
  71. qutai-0.1.0/tests/test_classification_training.py +44 -0
  72. qutai-0.1.0/tests/test_convolution.py +155 -0
  73. qutai-0.1.0/tests/test_convolution_layers.py +179 -0
  74. qutai-0.1.0/tests/test_core_architecture.py +112 -0
  75. qutai-0.1.0/tests/test_core_storage.py +90 -0
  76. qutai-0.1.0/tests/test_dit.py +139 -0
  77. qutai-0.1.0/tests/test_dit_serialization.py +118 -0
  78. qutai-0.1.0/tests/test_embedding.py +139 -0
  79. qutai-0.1.0/tests/test_generation_methods.py +164 -0
  80. qutai-0.1.0/tests/test_generation_model.py +189 -0
  81. qutai-0.1.0/tests/test_generation_visualization.py +104 -0
  82. qutai-0.1.0/tests/test_grad.py +246 -0
  83. qutai-0.1.0/tests/test_gradient_clipping.py +81 -0
  84. qutai-0.1.0/tests/test_graph_visualization.py +81 -0
  85. qutai-0.1.0/tests/test_image_data.py +181 -0
  86. qutai-0.1.0/tests/test_language_model.py +229 -0
  87. qutai-0.1.0/tests/test_layer_composition.py +208 -0
  88. qutai-0.1.0/tests/test_layer_norm.py +157 -0
  89. qutai-0.1.0/tests/test_layers.py +81 -0
  90. qutai-0.1.0/tests/test_lm_cache.py +154 -0
  91. qutai-0.1.0/tests/test_lm_data.py +103 -0
  92. qutai-0.1.0/tests/test_lm_notebook.py +59 -0
  93. qutai-0.1.0/tests/test_lm_sampling.py +124 -0
  94. qutai-0.1.0/tests/test_losses.py +48 -0
  95. qutai-0.1.0/tests/test_model.py +103 -0
  96. qutai-0.1.0/tests/test_multi_expectation.py +197 -0
  97. qutai-0.1.0/tests/test_nn_storage.py +95 -0
  98. qutai-0.1.0/tests/test_observables.py +107 -0
  99. qutai-0.1.0/tests/test_operations.py +104 -0
  100. qutai-0.1.0/tests/test_optimizer_state.py +159 -0
  101. qutai-0.1.0/tests/test_optimizers.py +138 -0
  102. qutai-0.1.0/tests/test_patch_embedding.py +81 -0
  103. qutai-0.1.0/tests/test_pqc.py +248 -0
  104. qutai-0.1.0/tests/test_pqc_serialization.py +102 -0
  105. qutai-0.1.0/tests/test_probability_notebook.py +73 -0
  106. qutai-0.1.0/tests/test_qaoa.py +210 -0
  107. qutai-0.1.0/tests/test_qaoa_notebook.py +102 -0
  108. qutai-0.1.0/tests/test_quantum.py +223 -0
  109. qutai-0.1.0/tests/test_quantum_grad.py +284 -0
  110. qutai-0.1.0/tests/test_quantum_probabilities.py +268 -0
  111. qutai-0.1.0/tests/test_quantum_storage.py +112 -0
  112. qutai-0.1.0/tests/test_quantum_visualization.py +128 -0
  113. qutai-0.1.0/tests/test_remaining_grad.py +170 -0
  114. qutai-0.1.0/tests/test_resnet_layers.py +153 -0
  115. qutai-0.1.0/tests/test_resnet_serialization.py +100 -0
  116. qutai-0.1.0/tests/test_resnet_state_edges.py +129 -0
  117. qutai-0.1.0/tests/test_sequence_loss.py +88 -0
  118. qutai-0.1.0/tests/test_serialization.py +224 -0
  119. qutai-0.1.0/tests/test_stack.py +90 -0
  120. qutai-0.1.0/tests/test_storage.py +133 -0
  121. qutai-0.1.0/tests/test_stream.py +189 -0
  122. qutai-0.1.0/tests/test_tensor_interface.py +189 -0
  123. qutai-0.1.0/tests/test_training.py +58 -0
  124. qutai-0.1.0/tests/test_training_resume.py +143 -0
  125. qutai-0.1.0/tests/test_transformer.py +179 -0
  126. qutai-0.1.0/tests/test_transformer_serialization.py +161 -0
  127. qutai-0.1.0/tests/test_visualization.py +189 -0
  128. qutai-0.1.0/tests/test_vqe.py +79 -0
qutai-0.1.0/PKG-INFO ADDED
@@ -0,0 +1,73 @@
1
+ Metadata-Version: 2.4
2
+ Name: qutai
3
+ Version: 0.1.0
4
+ Summary: A lightweight numerical, machine learning and quantum computing SDK.
5
+ Project-URL: Repository, https://github.com/utai-utai/Qutai
6
+ Project-URL: Issues, https://github.com/utai-utai/Qutai/issues
7
+ Requires-Python: >=3.14
8
+ Description-Content-Type: text/markdown
9
+
10
+ <p align="center">
11
+ <img src="https://raw.githubusercontent.com/utai-utai/Qutai/main/logo.png" alt="Qutai" width="380">
12
+ </p>
13
+
14
+ <big align="center"><strong>从零手写的轻量计算 SDK:数值计算、神经网络与量子计算。</strong></b>
15
+ ---
16
+
17
+ Python 标准库实现,无第三方运行依赖。当前支持 CPU,CUDA 后端后续开发。
18
+
19
+ ## 安装
20
+
21
+ 需要 **Python 3.14 或以上**。
22
+
23
+ ```bash
24
+ pip install qutai
25
+ ```
26
+
27
+ ## 快速开始
28
+
29
+ 直接用列表创建 Tensor,运算时自动记录梯度:
30
+
31
+ ```python
32
+ from qutai import Tensor
33
+
34
+ x = Tensor([1, 2, 3], requires_grad=True)
35
+ loss = (x + x).sum()
36
+ loss.backward()
37
+
38
+ print(loss.item()) # 12.0
39
+ print(x.grad.tolist()) # [2.0, 2.0, 2.0]
40
+ ```
41
+
42
+ 构造并运行一个 Bell 态电路:
43
+
44
+ ```python
45
+ from qutai import quantum
46
+
47
+ circuit = quantum.Circuit(2, [quantum.H(0), quantum.CNOT(0, 1)])
48
+ state = circuit.run()
49
+ print(state.probabilities()) # 约 [0.5, 0.0, 0.0, 0.5]
50
+ ```
51
+
52
+ ## 模块
53
+
54
+ | 模块 | 功能 |
55
+ | --- | --- |
56
+ | `Tensor`、根入口数学函数 | 广播、矩阵运算、卷积与自动求导 |
57
+ | `nn` | 神经网络层、Transformer、损失、优化器与保存加载 |
58
+ | `lm` | 字符语言模型、随机续写与 KV cache |
59
+ | `generation` | Diffusion、Flow Matching 与 DiT |
60
+ | `quantum` | 量子态、门、电路、测量、可求导读出与 QAOA |
61
+ | `qnn` | 参数化量子电路 PQC,与经典网络混合训练 |
62
+ | `visualization` | 曲线、表格、图片、网络、电路与 Bloch 球 |
63
+
64
+ ## 示例与开发
65
+
66
+ [Notebook 示例](https://github.com/utai-utai/Qutai/blob/main/examples/README.md)涵盖回归、Iris、LeNet、ResNet、ViT、语言模型、DiT、Bell 态、混合网络、VQE 和 QAOA。量子训练支持伴随求导与参数移位对照;多数较大模型仅训练两步验证流程。
67
+
68
+ 从源码安装并运行测试:
69
+
70
+ ```bash
71
+ python -m pip install -e .
72
+ python -m unittest discover -s tests
73
+ ```
qutai-0.1.0/README.md ADDED
@@ -0,0 +1,64 @@
1
+ <p align="center">
2
+ <img src="https://raw.githubusercontent.com/utai-utai/Qutai/main/logo.png" alt="Qutai" width="380">
3
+ </p>
4
+
5
+ <big align="center"><strong>从零手写的轻量计算 SDK:数值计算、神经网络与量子计算。</strong></b>
6
+ ---
7
+
8
+ Python 标准库实现,无第三方运行依赖。当前支持 CPU,CUDA 后端后续开发。
9
+
10
+ ## 安装
11
+
12
+ 需要 **Python 3.14 或以上**。
13
+
14
+ ```bash
15
+ pip install qutai
16
+ ```
17
+
18
+ ## 快速开始
19
+
20
+ 直接用列表创建 Tensor,运算时自动记录梯度:
21
+
22
+ ```python
23
+ from qutai import Tensor
24
+
25
+ x = Tensor([1, 2, 3], requires_grad=True)
26
+ loss = (x + x).sum()
27
+ loss.backward()
28
+
29
+ print(loss.item()) # 12.0
30
+ print(x.grad.tolist()) # [2.0, 2.0, 2.0]
31
+ ```
32
+
33
+ 构造并运行一个 Bell 态电路:
34
+
35
+ ```python
36
+ from qutai import quantum
37
+
38
+ circuit = quantum.Circuit(2, [quantum.H(0), quantum.CNOT(0, 1)])
39
+ state = circuit.run()
40
+ print(state.probabilities()) # 约 [0.5, 0.0, 0.0, 0.5]
41
+ ```
42
+
43
+ ## 模块
44
+
45
+ | 模块 | 功能 |
46
+ | --- | --- |
47
+ | `Tensor`、根入口数学函数 | 广播、矩阵运算、卷积与自动求导 |
48
+ | `nn` | 神经网络层、Transformer、损失、优化器与保存加载 |
49
+ | `lm` | 字符语言模型、随机续写与 KV cache |
50
+ | `generation` | Diffusion、Flow Matching 与 DiT |
51
+ | `quantum` | 量子态、门、电路、测量、可求导读出与 QAOA |
52
+ | `qnn` | 参数化量子电路 PQC,与经典网络混合训练 |
53
+ | `visualization` | 曲线、表格、图片、网络、电路与 Bloch 球 |
54
+
55
+ ## 示例与开发
56
+
57
+ [Notebook 示例](https://github.com/utai-utai/Qutai/blob/main/examples/README.md)涵盖回归、Iris、LeNet、ResNet、ViT、语言模型、DiT、Bell 态、混合网络、VQE 和 QAOA。量子训练支持伴随求导与参数移位对照;多数较大模型仅训练两步验证流程。
58
+
59
+ 从源码安装并运行测试:
60
+
61
+ ```bash
62
+ python -m pip install -e .
63
+ python -m unittest discover -s tests
64
+ ```
@@ -0,0 +1,18 @@
1
+ [build-system]
2
+ requires = ["setuptools"]
3
+ build-backend = "setuptools.build_meta"
4
+
5
+ [project]
6
+ name = "qutai"
7
+ version = "0.1.0"
8
+ description = "A lightweight numerical, machine learning and quantum computing SDK."
9
+ readme = "README.md"
10
+ requires-python = ">=3.14"
11
+ dependencies = []
12
+
13
+ [project.urls]
14
+ Repository = "https://github.com/utai-utai/Qutai"
15
+ Issues = "https://github.com/utai-utai/Qutai/issues"
16
+
17
+ [tool.setuptools.packages.find]
18
+ where = ["src"]
qutai-0.1.0/setup.cfg ADDED
@@ -0,0 +1,4 @@
1
+ [egg_info]
2
+ tag_build =
3
+ tag_date = 0
4
+
@@ -0,0 +1,7 @@
1
+ from .core.tensor import (
2
+ Tensor,
3
+ add, subtract, multiply, divide, negate, square, relu, gelu,
4
+ matmul, transpose, sum, mean, reshape, stack, exp, log, argmax,
5
+ conv2d, max_pool2d,
6
+ )
7
+ from .core.data import Stream
File without changes