Switchyard has separate packages for Python integrations and standalone Rust serving.
- Python 3.10 or newer for
nemo-switchyard - Rust 1.96.1 or newer for
switchyard-serverand the Rust libraries - Linux x86_64 wheels require an x86-64-v3 / AVX2-class CPU
- Linux aarch64 wheels require a Neoverse N1-class CPU
Install the Python package to embed libsy algorithms or host the native server through PyO3:
pip install nemo-switchyardThe base package has no Python runtime dependencies. Its native extension owns the libsy and server implementations.
Install the native Rust proxy from crates.io:
cargo install --locked switchyard-server
switchyard-server --config routes.toml --dry-run
switchyard-server --config routes.toml --port 4000See Getting Started for a complete TOML
deployment and switchyard-server for the
configuration reference.
Add the crates needed by an embedded application:
[dependencies]
switchyard-libsy = "0.2.0"
switchyard-protocol = "0.2.0"
switchyard-llm-client = "0.2.0"
switchyard-translation = "0.2.0"switchyard-libsy owns algorithms, switchyard-protocol owns provider-neutral
request and response types, switchyard-translation owns wire conversion, and
switchyard-llm-client performs translated HTTP calls.
From a checkout:
uv sync
uv run maturin develop
cargo test --workspace
uv run pytest tests/ -vThe dev dependency group contains testing and linting tools and is not exposed
in the published wheel metadata.