sglang-setup

por nvidia

Implante um servidor de inferência SGLang em uma estação NVIDIA DGX Station GB300 com o container cu130, cache de prefixo RadixAttention e suporte a saída JSON estruturada.

npx skills add https://github.com/nvidia/dgx-spark-playbooks --skill sglang-setup

SGLang Setup on DGX Station

Deploy an SGLang inference server on DGX Station with validated configuration.

Steps

  1. Find the GB300 GPU index. Run:

    nvidia-smi --query-gpu=index,name --format=csv,noheader
    

    Identify the device index for the GB300 (typically device 1). Use this index for --gpus below. Do NOT use --gpus all — mixed coherency will cause CUDA failures.

  2. Ask the user which model to serve. If they don't have a preference, suggest:

    • Qwen/Qwen3-8B — small, fast, good for testing
    • Qwen/Qwen3-32B — medium, good balance
    • meta-llama/Llama-3.1-70B-Instruct — large general-purpose
  3. Check if the user has an HF_TOKEN. Pass inline with -e HF_TOKEN="...".

  4. Deploy the container. Use this validated configuration:

    docker pull lmsysorg/sglang:latest-cu130
    
    docker run -d \
      --name sglang-server \
      --gpus '"device=<GB300_INDEX>"' \
      --ipc host \
      --ulimit memlock=-1 \
      --ulimit stack=67108864 \
      -p 30000:30000 \
      -e HF_TOKEN="<TOKEN>" \
      -v "$HOME/.cache/huggingface/hub:/root/.cache/huggingface/hub" \
      lmsysorg/sglang:latest-cu130 \
      sglang serve --model-path "<MODEL>" \
        --host 0.0.0.0 \
        --port 30000 \
        --context-length 32768 \
        --mem-fraction-static 0.85
    

    Container version: Use lmsysorg/sglang:latest-cu130. The cu130 tag is required for Blackwell SM103 support.

    First launch downloads the model and compiles kernels. This takes extra time — subsequent starts are faster.

  5. Wait for the server to be ready. Monitor logs:

    docker logs -f sglang-server
    
  6. Test the server:

    curl http://localhost:30000/v1/chat/completions \
      -H "Content-Type: application/json" \
      -d '{
        "model": "<MODEL>",
        "messages": [{"role": "user", "content": "Hello"}],
        "max_tokens": 64
      }'
    
  7. Report the result to the user, including:

    • Model loaded and serving on port 30000
    • How to stop: docker stop sglang-server && docker rm sglang-server

Key features

  • RadixAttention — automatic KV cache reuse across requests sharing prefixes. On by default, no flag needed. Verify with: docker logs sglang-server 2>&1 | grep "cached-token" | tail -5
  • Structured JSON output — use response_format.json_schema in API requests for guaranteed valid JSON.
  • Chunked prefill — add --chunked-prefill-size 8192 to break long prefills into chunks, reducing time-to-first-token.

Tuning parameters

ParameterDefaultAgent workloadsThroughput workloads
--context-length3276832768-655368192-16384
--mem-fraction-static0.850.80-0.850.85-0.88
--chunked-prefill-sizeoff4096-81928192
--enable-metricsoffOptionalRecommended

Structured output example

curl http://localhost:30000/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "<MODEL>",
    "messages": [{"role": "user", "content": "List three programming languages."}],
    "max_tokens": 512,
    "response_format": {
      "type": "json_schema",
      "json_schema": {
        "name": "languages",
        "schema": {
          "type": "object",
          "properties": {
            "languages": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "name": {"type": "string"},
                  "primary_use": {"type": "string"}
                },
                "required": ["name", "primary_use"]
              }
            }
          },
          "required": ["languages"]
        }
      }
    }
  }'

Mais skills de nvidia

fhir-basics
nvidia
Ensina aos agentes como funcionam as APIs FHIR R4, quais recursos estão disponíveis, como consultá-los com parâmetros de busca e como analisar corretamente todos os formatos de resposta…
compileiq-validate-result
nvidia
Use APÓS a conclusão de uma Pesquisa e ANTES de reivindicar qualquer aceleração ou enviar um ACF. Carrega o CSV dump_results, extrai os K melhores candidatos (objetivo único)…
changelog-audit
nvidia
Auditar o CHANGELOG.md do Warp antes de um lançamento: recuperar entradas perdidas, ordenar por impacto ao usuário, refinar a linguagem das entradas, ajustar quebras de linha e (no modo de branch de lançamento) incrementar comparação…
dgx-diagnose
nvidia
Diagnostique problemas comuns do DGX Station GB300 — falhas de CUDA, direcionamento incorreto de GPU, bugs de contêiner vLLM/SGLang, problemas de estado MIG, erros de NVLink/Fabric Manager,…
aicr-managing-openvex
nvidia
Use when adding, updating, or removing CVE/GHSA suppressions in `.openvex.json` — the OpenVEX document consumed by the daily image vulnerability scan workflow.…
aicr-creating-slide-decks
nvidia
Use ao criar um deck de slides HTML autocontido ou um ponto visual de discussão para um conceito técnico ou fluxo de trabalho (ex.: demos/*.html) — exibido em tela cheia ou…
aicr-creating-guided-demos
nvidia
Estrutura um script de demonstração guiada interativa (demos/*.sh), ao vivo ou no ritmo do usuário, com o padrão Frame → Tell → Show → Close. Aciona em "demo script", "guided…
aicr-analyzing-snapshots
nvidia
Use ao analisar um arquivo YAML de snapshot AICR, revisando o estado do cluster, comparando características de provedores, extraindo insights de topologia de GPU/rede, ou…