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.33.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.33-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.33.tar.gz.

File metadata

  • Download URL: vajra_streamer-0.0.33.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.33.tar.gz
Algorithm Hash digest
SHA256 bed52328d92afd87af0a656c7875f63aa5ada7c297e3dc32e8c012c790f08c2d
MD5 601a23b4a27d39114f99c86138de4f8c
BLAKE2b-256 582ff39233f67b2c8a6befd318b5033c3e0353add0192078f2d77f1cb7665ad0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for vajra_streamer-0.0.33-py3-none-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 c95e9cae89d7c29acb5723bf9633f4662aa718f094a13d35e124e83181fc29cb
MD5 d2d02b30b1d4829340324c490526ae2e
BLAKE2b-256 c43d4e16a25f3601744624eb27421f7c1f67966d3be6a27238cd98c74ab38d37

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