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.19.tar.gz
(3.8 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.19.tar.gz.
File metadata
- Download URL: vajra_streamer-0.0.19.tar.gz
- Upload date:
- Size: 3.8 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1cdb19896f736ef31feb2cf6633e8d29f5aca2658bceff97320be4373d070804
|
|
| MD5 |
5e370ac1b8fcd00aae360c87fcebd626
|
|
| BLAKE2b-256 |
4467dff5ceb4a4d1a2f311f739e21833ee80d5bcb7f84638e8c96ad1bd6362a4
|
File details
Details for the file vajra_streamer-0.0.19-py3-none-manylinux_2_34_x86_64.whl.
File metadata
- Download URL: vajra_streamer-0.0.19-py3-none-manylinux_2_34_x86_64.whl
- Upload date:
- Size: 8.0 MB
- Tags: Python 3, 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 |
11ca1f022c4d3d84decc812695ebcb36e9104fd3132801bd070fd4f85274cbdf
|
|
| MD5 |
a3d8c02103188279e8f67c6bd7b9bd93
|
|
| BLAKE2b-256 |
6737521e6492f81b0eb87d66359d9027afc0bc408f096d354aba10764660d924
|