Skip to main content

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)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vajra_streamer-0.0.19-py3-none-manylinux_2_34_x86_64.whl (8.0 MB view details)

Uploaded Python 3manylinux: glibc 2.34+ x86-64

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

Hashes for vajra_streamer-0.0.19.tar.gz
Algorithm Hash digest
SHA256 1cdb19896f736ef31feb2cf6633e8d29f5aca2658bceff97320be4373d070804
MD5 5e370ac1b8fcd00aae360c87fcebd626
BLAKE2b-256 4467dff5ceb4a4d1a2f311f739e21833ee80d5bcb7f84638e8c96ad1bd6362a4

See more details on using hashes here.

File details

Details for the file vajra_streamer-0.0.19-py3-none-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for vajra_streamer-0.0.19-py3-none-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 11ca1f022c4d3d84decc812695ebcb36e9104fd3132801bd070fd4f85274cbdf
MD5 a3d8c02103188279e8f67c6bd7b9bd93
BLAKE2b-256 6737521e6492f81b0eb87d66359d9027afc0bc408f096d354aba10764660d924

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page