Skip to content

Latest commit

 

History

History

README.md

Choose an installation path

Documentation index

Start here. The correct path depends on where the model runs and on what the platform lets you control; it does not depend only on the operating-system name.

If you already have an OpenAI-compatible endpoint and only want to open the TUI on macOS or Linux, use the copy-and-run English quickstart or 中文教程. It does not deploy a model or require Docker.

Three questions

  1. Do you need to run the model on a local NVIDIA GPU?
    • No: use the macOS or ordinary Linux guide and configure a hosted OpenAI-compatible endpoint.
    • Yes: continue to question 2.
  2. Can you select a custom OCI image when creating the GPU instance?
    • Yes: use the GPU cloud and custom-image guide. The platform pulls the image before the container starts; nested Docker is not required.
    • No: continue to question 3.
  3. Can this Linux environment run docker info, and can Docker pass through the GPU?

Environment chooser

Your environment FrontierAgent Model runtime Guide
macOS laptop or desktop native, optionally Docker hosted/remote endpoint macOS
Linux laptop, server, or CI without a local model scripts/run-linux.sh (native, bubblewrap, or Docker) hosted/remote endpoint Linux
Any host with Docker and no local Python environment published agent container hosted/remote endpoint Docker and Compose
Linux bare metal or VM with an NVIDIA GPU and Docker daemon native or agent container SGLang container Linux NVIDIA + Docker
RunPod-style service that accepts your image at instance creation inside the provider container prebuilt FrontierAgent GPU image GPU cloud images
Existing x86_64 Linux GPU environment without nested Docker scripts/run-linux-gpu.sh isolated native SGLang process Linux NVIDIA native
Windows WSL2, treated as Linux hosted or WSL2-reachable endpoint Linux

Chinese-speaking macOS users can follow the detailed macOS 中文安装与一键启动指南.

GPU driver / CUDA / SGLang tracks

Local-model serving only supports two reviewed tracks. Select by the host driver shown in nvidia-smi — not by the CUDA version printed inside any container:

Track NVIDIA driver SGLang pin Status
cu13 (official default) 580 or newer 0.5.17 recommended and verified on RTX 5090 32 GB
cu12 (compatibility hint) 525 or newer 0.5.10.post1 best-effort native fallback observed on RTX 5090 32 GB with driver 570; cannot use --language-only

New and supported deployments use cu13. The cu12 row is a compatibility hint for otherwise blocked older-driver environments, not a second recommended configuration or a production-default promise.

A driver of 580 or newer also runs the cu12 track, because a newer driver still supports older CUDA runtimes. The 580 boundary decides which track a host can use, not which one it must: pick cu12 only when the driver is below 580. The RTX 5090 itself does not require the cu13 track: a 32 GB card on driver 570 has also passed the native cu12 chain test when paired with a CUDA 12.9 JIT toolkit.

Picking the wrong track fails late — during model load, with CUDA or Triton errors that do not name the real cause. Check the GPU compatibility matrix first.

Before choosing a 35B profile, check the GPU, driver, VRAM, and SGLang compatibility matrix. A compatible CUDA runtime does not guarantee that a model fits in VRAM. The SGLang configuration reference explains the .env.sglang templates, each variable, and a safe tuning sequence.

What each layer is responsible for

GPU host or cloud platform
├── NVIDIA driver and assigned GPU
├── optional container runtime / platform image loader
├── SGLang CUDA and PyTorch userspace
├── model weights and Hugging Face cache
└── FrontierAgent, calling SGLang through an OpenAI-compatible URL

The host supplies the driver and GPU. A GPU image supplies CUDA userspace, PyTorch, SGLang, and FrontierAgent, but never the host driver. Model weights and tokens should be mounted or injected at runtime rather than baked into a public image.

Safe first test

Whichever GPU route you choose, validate in this order:

  1. nvidia-smi can enumerate the assigned GPU.
  2. The selected SGLang/CUDA track matches the driver.
  3. The small infrastructure profile becomes healthy.
  4. The intended checkpoint fits and returns a structured tool call.
  5. FrontierAgent reaches the endpoint.

Health and parser success prove the deployment plumbing. They do not by themselves prove model quality or safe production concurrency.