Skip to main content

Installation

This page installs the pie CLI. After this, see Initial setup to create a config and run your first prompt.

Install

On Linux and macOS:

curl -fsSL https://pie-project.org/install.sh | bash

On Windows (PowerShell):

irm https://pie-project.org/install.ps1 | iex

The installer downloads a release archive and installs pie into ~/.local/bin on Unix or %LOCALAPPDATA%\Pie\bin on Windows. It picks a build for your platform automatically:

  • Linux (x86_64 or arm64) with an NVIDIA GPU: cuda13.0 (driver 580+) or cuda12.8 (driver 525+). The installer also reads your GPU's compute capability (nvidia-smi) and downloads the matching per-compute-capability binary — e.g. sm90 for H100, sm100 for B200/GB200, sm120 for RTX 50 — so the download is small and architecture-optimal. It falls back to an all-architecture build if your exact capability isn't published.
  • Other Linux, macOS Apple Silicon: portable. GPU via Vulkan (Linux) or Metal (macOS), with a built-in CPU fallback.
  • Windows: vulkan (CPU + any Vulkan-capable GPU), or cuda for NVIDIA.

If pie is not on your PATH, add the install directory:

echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc

Linux CUDA prerequisites

The CUDA flavors require a matching NVIDIA driver, the CUDA toolkit runtime libraries, and NCCL on the host. On Debian or Ubuntu with NVIDIA's package repositories configured:

sudo apt install libnccl2 libnccl-dev

If pie doctor reports missing libraries on a CUDA build, install the runtime that matches the flavor (CUDA 12.x for cuda12.8, CUDA 13.x for cuda13.0).

Verify

pie --version
pie doctor

pie doctor checks platform readiness, lists compiled-in drivers, probes GPU visibility, and confirms that ~/.pie/config.toml and any subprocess driver venvs resolve.

Optional: inferlet authoring

The release installer provides the pie engine CLI. To scaffold, build, and publish inferlets, install Bakery from PyPI:

pip install pie-bakery

This provides the standalone bakery command and the Python package used by pie new / pie build.

Optional: Python-backed drivers

The pie binary runs the embedded cuda_native and portable drivers without Python. Python is required only for the subprocess drivers: vllm, sglang, and tensorrt_llm. Install one with:

Note: The vllm and sglang drivers are currently not supported on Windows. Please use the portable driver on Windows, or run these drivers in WSL/Linux.

pie driver vllm install ~/.pie/venvs/vllm --run
pie driver vllm set venv ~/.pie/venvs/vllm

Replace vllm with sglang or tensorrt-llm for the other drivers. Each driver gets a Python 3.12 virtual environment with its pinned wheels. See the driver reference for what each driver does and when to pick it.

Advanced installation

Most users do not need anything in this section.

Choose a build manually

Override the auto-picked flavor with PIE_FLAVOR, and (for CUDA) the compute capability with PIE_CC:

curl -fsSL https://pie-project.org/install.sh | PIE_FLAVOR=portable bash
curl -fsSL https://pie-project.org/install.sh | PIE_FLAVOR=cuda12.8 bash
# Force a specific compute capability (e.g. on a build host without the GPU):
curl -fsSL https://pie-project.org/install.sh | PIE_FLAVOR=cuda13.0 PIE_CC=90 bash

On Windows:

$env:PIE_FLAVOR = "cuda"; irm https://pie-project.org/install.ps1 | iex
PlatformAvailable flavors
Linux x86_64portable, cuda12.8, cuda13.0 (per-CC: sm80/86/89/90/100/120)
Linux aarch64portable, cuda12.8, cuda13.0 (per-CC: sm90/100)
macOS Apple Siliconportable
Windows x86_64vulkan, cuda

Intel Macs are not supported.

The Linux cuda* flavors bundle the embedded cuda_native driver (the recommended CUDA path on Linux). Windows cuda uses the portable driver with a CUDA backend, as there is no native Windows driver.

Override the install directory

curl -fsSL https://pie-project.org/install.sh | PIE_INSTALL_DIR=/usr/local/bin bash

Install a specific version

curl -fsSL https://pie-project.org/install.sh | PIE_VERSION=0.4.0 bash

Install from source

For development:

git clone https://github.com/pie-project/pie.git
cd pie

# Default features: embedded portable driver plus the always-linked dummy.
cargo install --path server

# Include the embedded CUDA driver too.
CUDACXX=/usr/local/cuda/bin/nvcc \
cargo install --path server --features driver-portable,driver-cuda

# Build the release binary for Linux/macOS.
cargo install --path server --features driver-portable

Re-run pie doctor after building to confirm which drivers are compiled in.

Windows CMD

curl -fsSL https://pie-project.org/install.cmd -o install.cmd && install.cmd && del install.cmd

Next steps