> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.nvidia.com/nemo/evaluator/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.nvidia.com/nemo/evaluator/_mcp/server.

# Deployment Guide

## Deployment Matrix

| Environment                                     | Sharding                            | Live Serve             | Regression Gate          | Effort  |
| ----------------------------------------------- | ----------------------------------- | ---------------------- | ------------------------ | ------- |
| [Local Deployment](/deployment/local)           | Manual via env vars                 | `nel serve`            | `nel compare`            | Minimal |
| [Docker Compose](/deployment/docker)            | Per-container env vars              | docker-compose service | Script                   | Low     |
| [SLURM](/deployment/slurm)                      | `nel eval run` with executor config | `nel serve`            | sbatch chain             | Medium  |
| [Kubernetes Deployment](/deployment/kubernetes) | Indexed Job                         | Deployment + Service   | CI pipeline              | Medium  |
| [Ray Deployment](/deployment/ray)               | `@ray.remote` tasks                 | N/A                    | Script                   | Medium  |
| [GitLab CI](/deployment/ci-regression)          | CI variables per job                | N/A                    | `regression:check` stage | Low     |

## Which deployment to choose?

```mermaid
flowchart TD
    START["How big is your eval?"] --> SIZE{"> 1000 problems<br />or > 4 repeats?"}
    SIZE -->|No| LOCAL["Local CLI<br />nel eval run"]
    SIZE -->|Yes| INFRA{"What infra?"}

    INFRA --> HPC["HPC cluster"]
    INFRA --> CLOUD["Cloud / K8s"]
    INFRA --> RAYC["Ray cluster"]

    HPC --> SLURM["SLURM<br />nel eval run config.yaml"]
    CLOUD --> K8S["K8s Indexed Job"]
    RAYC --> RAY["Ray launcher"]

    LOCAL --> CI{"Need regression gate?"}
    CI -->|Yes| GITLAB["GitLab CI"]
    CI -->|No| DONE["Done"]
```