Metadata-Version: 2.4
Name: rex-framework
Version: 0.1.2
Summary: Remote Executable eXecution — inference with remotely-stored model weights
Author: Rohan R
License-Expression: Apache-2.0
Project-URL: Repository, https://github.com/rotsl/rex-framework.git
Project-URL: Documentation, https://rotsl.github.io/rex-framework/
Project-URL: Issues, https://github.com/rotsl/rex-framework/issues
Keywords: ml,inference,remote-weights,streaming,pytorch
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: safetensors>=0.4.0
Requires-Dist: aiohttp>=3.9.0
Requires-Dist: pydantic>=2.0
Requires-Dist: lz4>=4.3.0
Requires-Dist: zstandard>=0.21.0
Requires-Dist: click>=8.1.0
Requires-Dist: rich>=13.0.0
Requires-Dist: pyyaml>=6.0
Requires-Dist: structlog>=23.0.0
Requires-Dist: huggingface_hub>=0.23.0
Requires-Dist: jsonschema>=4.21.0
Provides-Extra: pytorch
Requires-Dist: torch>=2.0.0; extra == "pytorch"
Provides-Extra: dev
Requires-Dist: pytest>=7.4.0; extra == "dev"
Requires-Dist: pytest-asyncio>=0.21.0; extra == "dev"
Requires-Dist: pytest-cov>=4.1.0; extra == "dev"
Requires-Dist: pytest-timeout>=2.1.0; extra == "dev"
Requires-Dist: mypy>=1.5.0; extra == "dev"
Requires-Dist: ruff>=0.1.0; extra == "dev"
Requires-Dist: pre-commit>=3.5.0; extra == "dev"
Requires-Dist: mkdocs>=1.5.0; extra == "dev"
Requires-Dist: mkdocs-material>=9.4.0; extra == "dev"
Requires-Dist: mkdocstrings[python]>=0.24.0; extra == "dev"
Provides-Extra: google-drive
Requires-Dist: google-api-python-client>=2.100.0; extra == "google-drive"
Requires-Dist: google-auth-oauthlib>=1.1.0; extra == "google-drive"
Provides-Extra: onedrive
Requires-Dist: msal>=1.24.0; extra == "onedrive"
Provides-Extra: bench
Requires-Dist: matplotlib>=3.7.0; extra == "bench"
Requires-Dist: pandas>=2.1.0; extra == "bench"
Requires-Dist: jinja2>=3.1.0; extra == "bench"
Provides-Extra: jax
Requires-Dist: jax>=0.4.20; extra == "jax"
Provides-Extra: tensorflow
Requires-Dist: tensorflow>=2.15.0; extra == "tensorflow"
Requires-Dist: h5py>=3.10.0; extra == "tensorflow"
Provides-Extra: all
Requires-Dist: rex-framework[bench,dev,google-drive,jax,onedrive,pytorch,tensorflow]; extra == "all"
Dynamic: license-file

# Rex Framework Package Overview

Rex Framework enables inference with remotely stored model weights without downloading full model checkpoints to local storage.

Package intent:
- Primary: enable end users to run Rex for conversion, serving, and inference workflows.
- Secondary: support validation-oriented usage in CI and application test environments.

This package is intended for:
- Cloud-first inference where model chunks are fetched on demand.
- Memory-bounded environments where full checkpoint residency is undesirable.
- Notebook workflows, including Kaggle and Google Colab.

## What You Get In This Package

- Python API for loading Rex manifests and running inference.
- CLI tools for conversion, validation, inspection, serving, benchmarking, and demo runs.
- Optional extras for PyTorch, cloud storage integrations, and benchmark tooling.
- The package is designed for runtime use; the repository's full test suite is not shipped in the PyPI artifacts.

## Install

Minimal package:

```bash
pip install rex-framework
```

Recommended for real inference workloads:

```bash
pip install "rex-framework[pytorch]"
```

With all optional features:

```bash
pip install "rex-framework[all]"
```

## Core Principle

Rex executes with bounded local residency by streaming model chunks from remote storage through HTTP range fetches and cache-aware scheduling.

## Feature Controls

The installed package lets users turn major runtime features on or off through `RexConfig`.

Common controls include:
- Cache enforcement and local residency limits.
- Cache policy selection (`lru`, `lfu`, `weighted_utility`).
- Prefetch enable/disable and prefetch-window tuning.
- Graph scheduler vs sequential scheduler mode.
- Graph partitioning toggle.
- Disk cache enable/disable.
- Adaptive fetch concurrency enable/disable.
- Tracing and log-format controls.

Use the package guide for detailed examples and valid config fields.

## Notebook Usage (Kaggle/Colab)

Typical flow:
1. Install the package in the notebook kernel.
2. Point `load_model` at a manifest reachable from remote storage.
3. Run inference without downloading full model weights.

## Package Guide

For package-specific CLI and API workflows, see:
- [rex_framework_package_guide.md](rex_framework_package_guide.md)

For repository development details and deep architecture notes, use repo documentation instead of package docs.
