Read the whole stack.
A learner-first, DIY-ready framework for tensors, kernels, and custom hardware.
Tutorials • Docs • Quick Start • Installation
TensorPlay is a Python package that provides two high-level features:
- Tensor computation (like NumPy) with strong GPU acceleration
- Deep neural networks built on an explicit, tape-based autograd system
The whole stack — Python API, C++ core, CUDA kernels, compiler — is engineered to be read: clean implementations, explicit computation graphs, and no black box between your model and the hardware.
- About TensorPlay
- Installation
- Getting Started
- Benchmarks
- Testing
- Resources
- Communication
- Releases and Contributing
- License
- The organization behind TensorPlay
About TensorPlay
A Transparent Tensor Library
At a granular level, TensorPlay consists of the following components:
| Component | Description |
|---|---|
| tensorplay | The Python API: tensors, autograd, nn, optim, data loading, serialization — the public surface |
| p10 | C++ core engine: tensor storage and memory management, foundational CPU and CUDA kernels |
| tpx | Autograd layer: explicit computation-graph construction and backward execution, fully decoupled from the core |
| stax | JIT compiler playground: static graph capture and operator fusion experiments, including native lowering of custom ops |
| tensorplay.nn | Neural network building blocks: Module, Linear, Conv2d, activations, losses, container abstractions |
| tensorplay.optim | Optimizers (SGD, Adam, AdamW) with learning-rate scheduling and weight decay |
| tensorplay.data | Dataset / DataLoader with multi-worker batching, prefetching and shuffling |
| tensorplay.library | First-class custom operators: register ops, attach fake/meta and autograd formulas, bring your own Triton kernels |
The four pillars — P10, TPX, Stax and NN — are deliberately decoupled libraries that can work together or independently. Domain subpackages such as linalg, fft, sparse, special, amp, distributed and serialization round out the API surface.
Every call is one short, visible path — no black box between your model and the hardware:
flowchart TB
py["Python API — tensorplay / nn / optim / data"] --> ag["TPX autograd — explicit DAG"]
py --> disp["P10 dispatcher — 13 dispatch keys"]
ag --> disp
disp --> cpu["CPU kernels"]
disp --> cuda["CUDA kernels"]
disp --> vulkan["Vulkan kernels"]
disp --> stax["Stax — graph capture & fusion"]
Why TensorPlay
TensorPlay is built on a philosophy of transparency: you can trace every operation from Python into the C++ core without getting lost in abstraction layers.
- Pure and readable implementations. Dive into the logic of every operator — from autograd to memory management. No black boxes.
- DIY acceleration. Simplified CPU and CUDA backends are a playground for experimenting with custom hardware kernels and learning parallel computing.
- Modular autograd. The decoupled TPX engine builds computation graphs explicitly, making backpropagation easy to understand and extend.
- Research ready. Prototype new layer types, optimizers, custom operators and storage formats with minimal boilerplate.
- Instantly familiar API. If you have worked with mainstream deep learning frameworks, the mental model carries over — spend your time on internals, not syntax.
Familiar and Python-First
TensorPlay is not a thin binding over an opaque engine. The public surface — tensorplay, nn, optim, data — is pure Python you can read end to end, and every call crosses a small, explicit boundary into the C++ core. Stack traces, error messages and the debugger show your code, not framework plumbing.
DIY Hardware Acceleration
The CPU and CUDA backends are deliberately simplified: one kernel family per file, one registration macro per unit, no hidden scheduling. That makes them a playground for learning parallel computing and prototyping kernels — bring your own device backend and wire it into the dispatcher without touching the framework itself.
An Explicit Autograd Engine
The autograd engine (TPX) is a standalone library, fully decoupled from the core. Computation graphs are built and executed explicitly — no hidden state — so backpropagation is something you can read, trace and extend in an afternoon.
Extensions Without Pain
First-class custom operators: register an op with tensorplay.library, attach fake/meta formulas for shape inference and an autograd formula for backward, and it composes with the whole stack — including native lowering into the Stax compiler or your own Triton kernels.
Installation
Binaries
# CPU wheels from PyPI
pip install tensorplay --upgrade
# CUDA wheels from the TensorPlay CUDA index (choose cu124, cu126, or cu130)
# Keep PyPI as an extra index for runtime dependencies.
pip install tensorplay \
--index-url https://download.tensorplay.cn/whl/cu124/ \
--extra-index-url https://pypi.org/simple
[!NOTE] Make sure your Python version matches the wheel tags (e.g.
cp310for Python 3.10). For CUDA wheels, the driver and runtime must support the CUDA version of the wheel.
Nightly (preview) builds
Try tomorrow's features today: every change that passes our build-and-smoke pipeline lands on the rolling nightly channel automatically, following the nightly version format (X.Y.0.dev<date>+cuXXX / +cpu). Only the latest build per variant is kept.
# CUDA nightly (choose cu124, cu126, or cu130)
pip install --pre tensorplay \
--index-url https://download.tensorplay.cn/whl/nightly/cu124/ \
--extra-index-url https://pypi.org/simple
# CPU nightly
pip install --pre tensorplay \
--index-url https://download.tensorplay.cn/whl/nightly/cpu/ \
--extra-index-url https://pypi.org/simple
From Source
Building from source gives you a hackable, debuggable install — the recommended setup for contributors and anyone working on kernels.
Prerequisites
- Python >= 3.10, < 3.14
- CMake >= 3.18 (< 4.0)
- A C++20-capable compiler (MSVC 2022 on Windows, GCC/Clang on Linux)
- CUDA Toolkit (optional, for GPU support); set
CMAKE_CUDA_ARCHITECTURESto target specific GPU architectures - ROCm 7.2.x (optional, for AMD GPU support); the HIP backend is currently built from source
- Ninja (installed automatically with the build dependencies)
Get the TensorPlay Source
git clone https://github.com/lexing-2026/TensorPlay.git
cd TensorPlay
Install Build Dependencies
Isolated PEP 517 builds fetch everything automatically. For faster iterative development, install the toolchain once and build without isolation:
pip install -r requirements-build.txt
Install TensorPlay
TensorPlay is built with scikit-build-core through the standard PEP 517 interface declared in pyproject.toml:
# Full build and install (add -v for verbose output)
pip install .
# Editable install for development
pip install -e . --no-build-isolation
# Or produce a wheel without installing
python -m build --wheel
On success, import tensorplay picks up the compiled _C extension from the installed package.
[!TIP] For day-to-day kernel work, the editable install (
pip install -e . --no-build-isolation) recompiles only what changed.
Adjusting Build Options (Optional)
Environment variables drive the build — no -D flags needed:
Examples and the full variable table
# CPU-only build
USE_CUDA=OFF pip install .
# AMD GPU build with ROCm 7.2 / HIP
USE_CUDA=OFF USE_ROCM=ON pip install .
# Target specific GPU architectures
CMAKE_CUDA_ARCHITECTURES="70;75;86" pip install .
| Variable | Default | Description |
|---|---|---|
USE_CUDA |
auto-detect | Enable/disable the CUDA build |
USE_ROCM |
OFF |
Enable the AMD GPU / HIP build (mutually exclusive with USE_CUDA) |
BUILD_TESTS |
OFF |
Build the C++ test suite |
USE_BLAS / USE_ONEDNN |
ON |
BLAS acceleration / oneDNN primitives |
MAX_JOBS |
machine default | Cap compile parallelism |
DEBUG |
unset | Build with -O0 -g |
CMAKE_CUDA_ARCHITECTURES |
native | Semicolon-separated GPU architectures |
TENSORPLAY_BUILD_VERSION / TENSORPLAY_BUILD_NUMBER |
unset | Override the package version (used by release CI) |
All USE_*, BUILD_* and CMAKE_* environment variables are forwarded to CMake automatically — no extra flags required.
Getting Started
Automatic Differentiation
import tensorplay as tp
x = tp.Tensor([[1.0, 2.0], [3.0, 4.0]], requires_grad=True)
y = tp.Tensor([[5.0, 6.0], [7.0, 8.0]], requires_grad=True)
z = x.matmul(y) + tp.ones_like(x)
loss = z.sum()
loss.backward()
print(x.grad) # [[6., 6.], [6., 6.]]
Under the hood, TPX records each operation into an explicit DAG and replays the chain rule node by node: $\dfrac{\partial \mathcal{L}}{\partial x} = \dfrac{\partial \mathcal{L}}{\partial z} \cdot \dfrac{\partial z}{\partial x}$ — every edge of that graph is code you can step through.
Defining a Neural Network
import tensorplay as tp
from tensorplay.nn import Module, Linear, ReLU, Sigmoid
class MLP(Module):
def __init__(self, input_dim: int, hidden_dim: int, output_dim: int):
super().__init__()
self.fc1 = Linear(input_dim, hidden_dim)
self.relu = ReLU()
self.fc2 = Linear(hidden_dim, output_dim)
self.sigmoid = Sigmoid()
def forward(self, x: tp.Tensor) -> tp.Tensor:
x = self.relu(self.fc1(x))
return self.sigmoid(self.fc2(x))
model = MLP(10, 32, 1)
print(model) # auto-generated architecture visualization
Training Loop
from tensorplay.data import DataLoader, TensorDataset
train_data = TensorDataset(tp.randn(100, 10), tp.randn(100, 1))
train_loader = DataLoader(dataset=train_data, batch_size=8, shuffle=True)
for batch_x, batch_y in train_loader:
predictions = model(batch_x)
# ... compute loss, call loss.backward(), step the optimizer
Structured tutorials — linear regression from scratch, MNIST CNN classification, custom datasets, model saving/loading with .mega + state_dict — live at tensorplay.cn. Deep dives, one pillar per post — dispatch, autograd engine, tensor storage, compiler — live in the blog series.
Benchmarks
The benchmark/ suite measures what a readable framework costs — and proves correctness at the same time. Every comparison runs both runtimes from identical initial weights, deterministic data order, and the same optimizer and batch settings; the gate is strict: logits must match within allclose tolerance and Top-1 predictions must be identical before any timing is reported.
- End-to-end training: ResNet-18 image classification on CPU and CUDA, eager and compiled (
stax, native lowering), reporting train/eval/test accuracy and throughput - Micro and subsystem: GEMM, optimizer steps, dataloader, serialization, autograd Function overhead, custom-op call overhead, LLaMA end-to-end
- Reports: every script emits a JSON report (
--json-out) — throughput, latency percentiles, compile cost — ready for plotting and for the white paper evaluation
Measured highlights (see the white paper, §9): the dispatcher adds the same sub-1% sliver on CPU, CUDA and Vulkan paths; the CUDA backend covers 1,274 unique ops (96% of the CPU surface); the Vulkan teaching backend ships 145 ops backed by 4.5k lines of GLSL shaders.
Scripts and methodology: benchmark/README.md.
Testing
The Python test suite runs with pytest against an installed (or built in-place) package:
pytest test/
CI builds the full wheel matrix (Python 3.10–3.13; CPU on Linux x86_64/aarch64, macOS arm64, and Windows x86_64; CUDA on Linux and Windows x86_64) and validates every wheel on every pull request and push to main; see .github/workflows/ (pull, trunk, publish, lint). Lint rules live under [tool.ruff] in pyproject.toml.
Resources
- Documentation: tensorplay.cn
- Tutorials: tensorplay.cn/en/guide/tutorials
- White Paper: docs/whitepaper/main.pdf — the whole stack with
path:linecitations - Blog: docs/blogs — one pillar per post
- Benchmarks: benchmark/
- Community: Discord
Communication
- Discord: discord.gg/u6T5e2kGJm — questions, ideas, showcase
- GitHub Issues: bug reports, feature requests, RFCs
- Email: feedback@tensorplay.cn
Releases and Contributing
The package version lives in version.txt (single source of truth; development installs carry a +git<sha> suffix). Releases are cut by pushing a vMAJOR.MINOR.0 tag; patch tags such as v1.2.1 do not publish binaries. CI then builds and validates the full wheel matrix, publishes CPU wheels to PyPI, and uploads CUDA wheels to a GitHub Release with a PEP 503 index on Cloudflare Pages. Wheel-matrix infrastructure (platform runners, CUDA variants, the optional ROCm channel) is documented in RELEASE.md.
We welcome contributions of all kinds — bug fixes, documentation, new features. See CONTRIBUTING.md for the development workflow and coding standards.
License
TensorPlay is licensed under the Apache 2.0 License.
The Organization: TensorPlay
|
|
ohtensorplay Open tools and infrastructure for people who want to understand, experiment with, and build AI systems. Organization mission · Make Everyone a Great AI-Builder |
Projects
- megatensors — the MEGA model-hub SDK powering
.megaserialization, themega://storage backend, and hub model loading (pip install megatensors)
Other dependencies
| Dependency |
|---|
| NumPy |
| SymPy |
| TensorBoard |
| Pillow |
| pybind11 |
Explore all ohtensorplay projects — give it a ⭐ and follow along.
Metadata
Release files for tensorplay 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
Total release size: 1.1 GB
Release files / tensorplay-1.0.0-cp313-cp313-win_amd64.whl
| Download URL | tensorplay-1.0.0-cp313-cp313-win_amd64.whl |
|---|---|
| Size | 101.0 MB |
| Tags | CPython 3.13 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
325a6fe9a50fd361c86b65139eb6a22c0a5c0af769a5ebe9b54fd8842cadb125
|
|
BLAKE2b-256 checksum How to use checksums |
8213e600e94a06c1afa5af3aa8e99e918b2936565ed416725326b80458b4b61f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.13
|
Release files / tensorplay-1.0.0-cp313-cp313-manylinux_2_39_aarch64.whl
| Download URL | tensorplay-1.0.0-cp313-cp313-manylinux_2_39_aarch64.whl |
|---|---|
| Size | 62.3 MB |
| Tags | CPython 3.13 Linux glibc 2.39+ ARM64 |
|
SHA-256 checksum How to use checksums |
d9142413fe9487aa9cbed438a3cbe16578a8e65f68a3e667b2b079609675a762
|
|
BLAKE2b-256 checksum How to use checksums |
d415bd30ace112605d734699379370f57c6136f7f8febf412f57e9a7ab3e4884
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 11, 2026.
Transparency logRelease files / tensorplay-1.0.0-cp313-cp313-manylinux_2_35_x86_64.whl
| Download URL | tensorplay-1.0.0-cp313-cp313-manylinux_2_35_x86_64.whl |
|---|---|
| Size | 86.8 MB |
| Tags | CPython 3.13 Linux glibc 2.35+ x86-64 |
|
SHA-256 checksum How to use checksums |
f4691ea266d2aa4aca194803c6e29a690849239410b3f4d5384c6fc2fe1e3b2d
|
|
BLAKE2b-256 checksum How to use checksums |
a02f96995a7a89b71e484dd684ec90295064df00da8bac9d9c424bc845a76276
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 11, 2026.
Transparency logRelease files / tensorplay-1.0.0-cp313-cp313-macosx_14_0_arm64.whl
| Download URL | tensorplay-1.0.0-cp313-cp313-macosx_14_0_arm64.whl |
|---|---|
| Size | 17.7 MB |
| Tags | CPython 3.13 macOS 14.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
01df7a673b66e49615f80b3dd3a6e30308b8317ab4bee18432cf53f1c7d6c691
|
|
BLAKE2b-256 checksum How to use checksums |
adbbd9b6383c2c29f424c84b6392b599697a991230214854f6013e5b84a3cbfd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 11, 2026.
Transparency logRelease files / tensorplay-1.0.0-cp312-cp312-win_amd64.whl
| Download URL | tensorplay-1.0.0-cp312-cp312-win_amd64.whl |
|---|---|
| Size | 101.0 MB |
| Tags | CPython 3.12 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
5295fbe826abab64aaa402ad2be8ebc8b40a1656c0ab2d54325ac20b110fd3b1
|
|
BLAKE2b-256 checksum How to use checksums |
84443c44c294f824f0eb913d7f94891ff3ac49b8e976cbf48d30de31cd9d240d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.13
|
Release files / tensorplay-1.0.0-cp312-cp312-manylinux_2_39_aarch64.whl
| Download URL | tensorplay-1.0.0-cp312-cp312-manylinux_2_39_aarch64.whl |
|---|---|
| Size | 62.3 MB |
| Tags | CPython 3.12 Linux glibc 2.39+ ARM64 |
|
SHA-256 checksum How to use checksums |
b1bec23ce6878a13ad69b98215c49df4e726390fa560846829db6c6581daab4c
|
|
BLAKE2b-256 checksum How to use checksums |
227ddd16ce50ea4ac3530015029817b9de33f144a262d0f32865196e89e6ba29
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 11, 2026.
Transparency logRelease files / tensorplay-1.0.0-cp312-cp312-manylinux_2_35_x86_64.whl
| Download URL | tensorplay-1.0.0-cp312-cp312-manylinux_2_35_x86_64.whl |
|---|---|
| Size | 86.8 MB |
| Tags | CPython 3.12 Linux glibc 2.35+ x86-64 |
|
SHA-256 checksum How to use checksums |
711f23ccaed0fac33a94932432fb93c2ce6cf9462f4b97c6c0d098c8da20acf8
|
|
BLAKE2b-256 checksum How to use checksums |
e9c1f078c7983b6e69d6a7f612215b7ab9662af8719c7fc707d07aa0f5e6985b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 11, 2026.
Transparency logRelease files / tensorplay-1.0.0-cp312-cp312-macosx_14_0_arm64.whl
| Download URL | tensorplay-1.0.0-cp312-cp312-macosx_14_0_arm64.whl |
|---|---|
| Size | 17.7 MB |
| Tags | CPython 3.12 macOS 14.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
9710db9bc7077f93d3c897e66ba4560e09482f319dce4b145450357fa4ed046e
|
|
BLAKE2b-256 checksum How to use checksums |
e8f51c701737be192cfe7c9c4117210f640e3ed1db03bb9595a8b3ff0dd22c9d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 11, 2026.
Transparency logRelease files / tensorplay-1.0.0-cp311-cp311-win_amd64.whl
| Download URL | tensorplay-1.0.0-cp311-cp311-win_amd64.whl |
|---|---|
| Size | 101.0 MB |
| Tags | CPython 3.11 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
311fb4f313340762f0d5fe4e4b9c79b97cf3466077e0b7579d6fc17b8ba21d9e
|
|
BLAKE2b-256 checksum How to use checksums |
1c80901a02007a20821c49f361830498e58ff60206a0fcb4479f647001802354
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.13
|
Release files / tensorplay-1.0.0-cp311-cp311-manylinux_2_39_aarch64.whl
| Download URL | tensorplay-1.0.0-cp311-cp311-manylinux_2_39_aarch64.whl |
|---|---|
| Size | 62.3 MB |
| Tags | CPython 3.11 Linux glibc 2.39+ ARM64 |
|
SHA-256 checksum How to use checksums |
a7da77e8fa453a10b5d7108e32aa88c1bdd1107527beaa0f4499c040a5da9c8a
|
|
BLAKE2b-256 checksum How to use checksums |
a162d64a5d5c7da37c42549b9a985daebae7669cf37e3e3f778629caf9851f32
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 11, 2026.
Transparency logRelease files / tensorplay-1.0.0-cp311-cp311-manylinux_2_35_x86_64.whl
| Download URL | tensorplay-1.0.0-cp311-cp311-manylinux_2_35_x86_64.whl |
|---|---|
| Size | 86.8 MB |
| Tags | CPython 3.11 Linux glibc 2.35+ x86-64 |
|
SHA-256 checksum How to use checksums |
e6b790b423c2ae0bdd6838a738d71c2bf60656e14f63d2d46826b4ac36e62882
|
|
BLAKE2b-256 checksum How to use checksums |
b86d4152ffa088dc9205c910c73fb972fbf814397ba797993d5c874ac765aba0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 11, 2026.
Transparency logRelease files / tensorplay-1.0.0-cp311-cp311-macosx_14_0_arm64.whl
| Download URL | tensorplay-1.0.0-cp311-cp311-macosx_14_0_arm64.whl |
|---|---|
| Size | 17.7 MB |
| Tags | CPython 3.11 macOS 14.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
f9e0c302cad03731ab8a1959c4c3b59f5da5492fc779b8f271e68a811f6f5281
|
|
BLAKE2b-256 checksum How to use checksums |
0aad61882988311325c4421f4e9a0ea124c1d44c16c61f95b083f86d3da7ba5a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 11, 2026.
Transparency logRelease files / tensorplay-1.0.0-cp310-cp310-win_amd64.whl
| Download URL | tensorplay-1.0.0-cp310-cp310-win_amd64.whl |
|---|---|
| Size | 101.0 MB |
| Tags | CPython 3.10 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
3f3212e452d7b5e0956ddd696b6d6913594d6b30aced1af0ef75cc0a00a2c455
|
|
BLAKE2b-256 checksum How to use checksums |
01040a984f704ae536233f994b1c8bb56043059afa13eac0c1d0c18ca030e80e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.13
|
Release files / tensorplay-1.0.0-cp310-cp310-manylinux_2_39_aarch64.whl
| Download URL | tensorplay-1.0.0-cp310-cp310-manylinux_2_39_aarch64.whl |
|---|---|
| Size | 62.3 MB |
| Tags | CPython 3.10 Linux glibc 2.39+ ARM64 |
|
SHA-256 checksum How to use checksums |
37b91bfaefd55d113480ca136f514abda0c34aedd6f7884d814366724ca0771d
|
|
BLAKE2b-256 checksum How to use checksums |
4e53f3f5a869bdc8bf35e730becaf81678ef4ef18f83c2d7fbdc5e6fca2ff993
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 11, 2026.
Transparency logRelease files / tensorplay-1.0.0-cp310-cp310-manylinux_2_35_x86_64.whl
| Download URL | tensorplay-1.0.0-cp310-cp310-manylinux_2_35_x86_64.whl |
|---|---|
| Size | 86.8 MB |
| Tags | CPython 3.10 Linux glibc 2.35+ x86-64 |
|
SHA-256 checksum How to use checksums |
4ffdaa7021cecae5403936b7a72cf2fd1b25fff1f914a9d211f44ebbae518a34
|
|
BLAKE2b-256 checksum How to use checksums |
8f5942ee79d3fa3a12124e0bfa62ef5e9f097ad12d73a76ee1d167cf2aae6e4e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 11, 2026.
Transparency logRelease files / tensorplay-1.0.0-cp310-cp310-macosx_14_0_arm64.whl
| Download URL | tensorplay-1.0.0-cp310-cp310-macosx_14_0_arm64.whl |
|---|---|
| Size | 17.7 MB |
| Tags | CPython 3.10 macOS 14.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
625a6913dcaaa3b50157aec6e524ea1d8b134e2edac14717430bd257f1db34d0
|
|
BLAKE2b-256 checksum How to use checksums |
189457287ea269f36dde899218dc4e9828e1215aee2b0dfc1168065aedc383d3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 11, 2026.
Transparency log