Skip to main content

Reactor runtime with public model API

Project description

Reactor Runtime

A Python runtime for building real-time video processing models. This runtime abstracts all the techincal implementations of real-time networking, allowing researchers and models developers to run their model focusing only on the ML code.

You can think of this similarly to the way you write Telegram/Discord applications or bots using SDKs. You don't have to worry about the networking and the protocols of the medium. Instead, you can put all your effort in writing your application code, which in this case is ML code.

Documentation: https://docs.reactor.inc/runtime/overview

Installation

pip install reactor-runtime

Development Setup

Proto dependencies are fetched from the private reactor-team/reactor-proto repo. The version is defined in pyproject.toml under [tool.reactor-proto].

# Set your GitHub token (required for private repo access)
export GH_TOKEN=your_github_token

# Install with proto dependencies
make install

# Or fetch protos separately
make proto

The proto wheel is downloaded to generated/ (gitignored). Once installed, proto types are available via:

from api import reactor_pb2
from api.types import api_types_pb2, base_pb2

Publishing

make publish

The publish script performs two key transformations before building:

1. Obfuscation

All files and directories prefixed with _ are stripped from the published package (except __init__.py and __pycache__). This allows you to keep private/internal code in the repository that won't be shipped to users.

Example: A _cloud/ directory or _internal.py file will exist in the repo for development but won't appear in the PyPI package.

2. Proto Vendoring

The script uses AST analysis to scan all remaining (public) source files and identifies which api.* modules are actually imported. Only those specific proto files are copied into the published package.

This means:

  • Users don't need access to the private reactor-proto repo
  • The published package is self-contained with proto types bundled
  • Only the protos actually used by public code are included, keeping the package minimal

Prerequisite: Run make proto before publishing to ensure proto types are installed locally for vendoring.

Reactor CLI

Docs: https://docs.reactor.inc/runtime/cli-reference

Coding Models

Guide: https://docs.reactor.inc/runtime/coding-models

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

reactor_runtime-1.6.1.tar.gz (156.9 kB view details)

Uploaded Source

Built Distribution

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

reactor_runtime-1.6.1-py3-none-any.whl (199.3 kB view details)

Uploaded Python 3

File details

Details for the file reactor_runtime-1.6.1.tar.gz.

File metadata

  • Download URL: reactor_runtime-1.6.1.tar.gz
  • Upload date:
  • Size: 156.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for reactor_runtime-1.6.1.tar.gz
Algorithm Hash digest
SHA256 ec76d97713537439e2d87fb083662778c85c2ab375c5e607ba4b7f9ee9030626
MD5 3bbb7022ced06c408a9796bd941de0e2
BLAKE2b-256 56a1f1a64eb0fe7deb00501bc075d5073acb0a527eae6385fd52aba05cbde089

See more details on using hashes here.

File details

Details for the file reactor_runtime-1.6.1-py3-none-any.whl.

File metadata

  • Download URL: reactor_runtime-1.6.1-py3-none-any.whl
  • Upload date:
  • Size: 199.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for reactor_runtime-1.6.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d44fc97cf9aa2d7d5b4721fec5a06592d77b36a3c3250cec90b8dd79a4b7e04a
MD5 4954cbc3969645d4e6bfd427d025e2be
BLAKE2b-256 c3ab98ae85492eb93e215889ecd2d90b8b9eaf7d27794cc6146c46bff286b820

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