A fast zero-copy PyTorch tensor streamer
Project description
Vajra
A fast zero-copy PyTorch tensor streamer powered by Dlang.
Usage
Once installed, you can use Vajra in any Python script or Jupyter Notebook:
import torch
from vajra import VajraStreamer, StreamConfig
# Configure the streamer (optional, uses defaults otherwise)
config = StreamConfig(
auth_token="hf_YOUR_TOKEN", # Required for gated models like Llama 3
chunk_size_mb=64,
chunk_workers=16,
gpu_workers=3,
disable_cache=False
)
# Context manager ensures VRAM is freed when done
with VajraStreamer(config) as streamer:
# Pass the URL or a Hugging Face repo ID
# (e.g. "meta-llama/Meta-Llama-3-8B")
tensors = streamer.load("meta-llama/Meta-Llama-3-8B")
# 'tensors' is a dictionary mapping tensor names to zero-copy PyTorch tensors
# that are backed directly by the downloaded GPU memory.
for name, tensor in tensors.items():
print(f"Tensor: {name}, Shape: {tensor.shape}, Dtype: {tensor.dtype}")
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
vajra_streamer-0.0.13.tar.gz
(5.5 MB
view details)
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 vajra_streamer-0.0.13.tar.gz.
File metadata
- Download URL: vajra_streamer-0.0.13.tar.gz
- Upload date:
- Size: 5.5 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8f2c68cc0b5635eb1d7a5b30eeaf5dc2bc56973229f1f796b63e69ee47ae2840
|
|
| MD5 |
9adeabe3a33cbf2f757fcb05d0ceeae7
|
|
| BLAKE2b-256 |
c04124b0e51dd474c5b136161ef1e1836e0d07431de19cf0f7254e81d1f4ddf9
|
File details
Details for the file vajra_streamer-0.0.13-cp310-cp310-manylinux_2_34_x86_64.whl.
File metadata
- Download URL: vajra_streamer-0.0.13-cp310-cp310-manylinux_2_34_x86_64.whl
- Upload date:
- Size: 7.6 MB
- Tags: CPython 3.10, manylinux: glibc 2.34+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c4612a15d78b9c6138c4b4a32f364358042c6f2d0d97ae7c0089c68edc5d14e1
|
|
| MD5 |
60b3fdf80d0951f3c2de0321ff7b4a3c
|
|
| BLAKE2b-256 |
ee0f2ad6f855f772bef58994b98c4abc86f8a613e7f58b4a25c195ea251d33e9
|