Skip to main content

A research framework for Byzantine-robust distributed ML

Project description

ByzPy

ByzPy is a unified Python framework for Byzantine-robust distributed machine learning. It provides a powerful actor runtime, declarative computation graphs, and batteries-included aggregators and attack simulators.

Installation

Install from PyPI:

pip install byzpy              # CPU baseline
pip install "byzpy[gpu]"       # add CUDA/UCX extras
pip install "byzpy[dev]"       # add development tools (pytest, coverage)

Quick Start

from byzpy.aggregators.coordinate_wise.median import CoordinateWiseMedian
import torch

# Create aggregator
aggregator = CoordinateWiseMedian(chunk_size=4096)

# Aggregate gradients
gradients = [torch.randn(1000) for _ in range(10)]
result = aggregator.aggregate(gradients)

Features

  • Byzantine-robust aggregators – Krum, MDA, trimmed mean, geometric median, and more
  • Unified actor runtime – threads, processes, GPUs, and TCP/UCX remotes share a single API
  • Declarative computation graphs – build heterogeneous pipelines with deterministic scheduling
  • Complete examples – parameter-server and peer-to-peer demos included

CLI Tools

byzpy version                # installed version
byzpy doctor                 # environment diagnostics
byzpy list aggregators       # discover built-ins

Documentation

📖 Full documentation: https://byzpy.github.io/byzpy/

Links:

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

byzpy-0.1.4.tar.gz (153.2 kB view details)

Uploaded Source

Built Distribution

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

byzpy-0.1.4-py3-none-any.whl (241.3 kB view details)

Uploaded Python 3

File details

Details for the file byzpy-0.1.4.tar.gz.

File metadata

  • Download URL: byzpy-0.1.4.tar.gz
  • Upload date:
  • Size: 153.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for byzpy-0.1.4.tar.gz
Algorithm Hash digest
SHA256 ccd4105a1e98fd2839dacffd7c289159c7d0b6ed579f13371ea6e1a19dfd38db
MD5 10e365b7d8d2b38ed3150c726db6c71d
BLAKE2b-256 ab74fd852ffdd195f6f126448555c1e0112d2f22e37c71b2ba2e2e679c0a8578

See more details on using hashes here.

File details

Details for the file byzpy-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: byzpy-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 241.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for byzpy-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 405aacc9294ae5f831e619b0c6284bcf3c6e1063c4496a4439c5932d443c69b2
MD5 65a7e7344a06aa233891a78c00aa583a
BLAKE2b-256 2106b9a84ad05880b613f46d56a79597229a0eed8205b27ea4684445f9d05c2d

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