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.18.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.18.tar.gz.
File metadata
- Download URL: vajra_streamer-0.0.18.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 |
98d7d1aba95026d4618ec16ce143e6dd03fb4803267da855876f182335451528
|
|
| MD5 |
6fb912fabc59af9e0144c360a195b7b1
|
|
| BLAKE2b-256 |
a8a7f880b84acacd18b358891fcb024c831cc7a14339dabe398a904a237bb1f9
|
File details
Details for the file vajra_streamer-0.0.18-cp310-cp310-manylinux_2_34_x86_64.whl.
File metadata
- Download URL: vajra_streamer-0.0.18-cp310-cp310-manylinux_2_34_x86_64.whl
- Upload date:
- Size: 8.0 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 |
75f7c4c23e380e15c8555afd5a7a69b4eed0568d2dc387132b921215e389ea23
|
|
| MD5 |
421d3473d605919b45275376eaff8307
|
|
| BLAKE2b-256 |
5d43b320a29362c8e4a9bedd48ef05c92fa7663a6f2fd2df45deabe779a6d119
|