tutorial dgx-spark getting-started deployment

Iniziare con NemoClaw su DGX Spark

NVIDIA AI

NVIDIA AI

@nvidiaai

March 20, 2026

10 min di lettura

Iniziare con NemoClaw su DGX Spark

Iniziare con NemoClaw su DGX Spark

Il NVIDIA DGX Spark è la piattaforma di sviluppo ideale per NemoClaw. Con la sua architettura Grace Blackwell che integra 128 GB di memoria unificata e fino a 1 petaflop di calcolo IA, un singolo DGX Spark può eseguire l'intero stack NemoClaw — incluso Nemotron 120B MoE — localmente sulla tua scrivania.

Questo tutorial ti guida attraverso il processo di configurazione completo, dall'unboxing all'esecuzione del tuo primo blueprint di agente protetto.

Prerequisiti

  • NVIDIA DGX Spark (o qualsiasi sistema con GPU NVIDIA con 24 GB+ di VRAM per il modello quantizzato)
  • Ubuntu 22.04 LTS o successivo (DGX OS viene preinstallato su Spark)
  • Docker 24.0+ con NVIDIA Container Toolkit
  • 50 GB di spazio libero su disco per modelli e container

Passo 1: Installare il CLI NemoClaw

Il CLI NemoClaw è l'interfaccia principale per gestire lo stack. Installalo tramite l'installer ufficiale:

bash
# Download and run the NemoClaw installer
curl -fsSL https://github.com/NVIDIA/NemoClaw | bash

# Verify installation
nemoclaw version
# Output: nemoclaw v1.0.0-preview (built for linux/arm64)

# Initialize NemoClaw in your project directory
mkdir my-first-agent && cd my-first-agent
nemoclaw init

Il comando nemoclaw init crea la struttura del progetto:

my-first-agent/
├── nemoclaw.yaml          # Main configuration
├── policies/
│   ├── sandbox.yaml       # OpenShell sandbox policies
│   ├── network.yaml       # Network access policies
│   └── privacy.yaml       # Privacy Router configuration
├── blueprints/
│   └── starter.yaml       # Default agent blueprint
└── scripts/
    ├── setup.sh           # Environment setup script
    └── test-agent.sh      # Agent smoke test

Passo 2: Configurare lo stack

Modifica nemoclaw.yaml per configurare la tua distribuzione:

yaml
# nemoclaw.yaml
apiVersion: nemoclaw.nvidia.com/v1
kind: NemoClawConfig
metadata:
  name: my-first-deployment
spec:
  # Model configuration
  model:
    provider: local
    name: nemotron-120b-moe
    quantization: int4  # Use INT4 for DGX Spark
    gpuLayers: all

  # OpenShell configuration
  openshell:
    enabled: true
    isolationLevel: standard  # standard | strict | paranoid
    auditLog: true

  # Privacy Router configuration
  privacyRouter:
    enabled: true
    defaultRoute: local
    cloudEndpoints: []  # No cloud endpoints for local-only setup

  # Network Policy Engine
  networkPolicy:
    enabled: true
    defaultAction: deny
    allowlist:
      - "*.internal.company.com"

  # Agent configuration
  agent:
    framework: openclaw
    version: "3.13"
    maxConcurrentTasks: 8

Passo 3: Scaricare il modello Nemotron

NemoClaw utilizza Nemotron 120B MoE come motore di valutazione delle policy. Su DGX Spark, utilizziamo la variante quantizzata INT4 che si adatta comodamente nei 128 GB di memoria unificata:

bash
# Pull the Nemotron model (approximately 35GB)
nemoclaw model pull nemotron-120b-moe-int4

# Verify the model is ready
nemoclaw model list
# Output:
# NAME                        SIZE     STATUS
# nemotron-120b-moe-int4      34.7GB   ready

Per i sistemi con meno memoria, NemoClaw supporta anche modelli più piccoli:

bash
# Alternative: Nemotron 8B for systems with 24GB VRAM
nemoclaw model pull nemotron-nano-4b

Passo 4: Avviare il runtime NemoClaw

Lancia l'intero stack con un singolo comando:

bash
# Start all NemoClaw services
nemoclaw up

# Output:
# ✓ OpenShell runtime started (kernel modules loaded)
# ✓ Nemotron 120B MoE loaded (34.7GB, 4-bit quantized)
# ✓ Privacy Router initialized (local-only mode)
# ✓ Network Policy Engine active (deny-by-default)
# ✓ OpenClaw agent framework ready
#
# NemoClaw is running at http://localhost:7860
# Dashboard: http://localhost:7860/dashboard
# API: http://localhost:7860/api/v1

La dashboard fornisce visibilità in tempo reale sull'esecuzione degli agenti, le valutazioni delle policy e gli eventi di sicurezza.

Passo 5: Distribuire il primo blueprint

I blueprint sono modelli di agenti preconfigurati con policy di sicurezza integrate. Distribuiamo il blueprint del supporto clienti:

bash
# List available blueprints
nemoclaw blueprint list
# Output:
# NAME                  DESCRIPTION                          SECURITY LEVEL
# customer-support      Tier-1 support ticket handling       standard
# sales-ops            CRM and sales automation              standard
# security-ops         Alert triage and remediation           strict
# infra-management     Cloud resource management              strict
# code-review          PR analysis and vulnerability scan     standard
# data-pipeline        ETL orchestration                      standard

# Deploy the customer support blueprint
nemoclaw blueprint deploy customer-support
  • Policy sandbox OpenShell (limita l'accesso al filesystem e alla rete)
  • Regole di policy Nemotron (rilevamento dati personali, classificazione delle intenzioni)
  • Whitelist di rete (solo endpoint API approvati)
  • Workflow di approvazione dell'operatore (escalation per rimborsi, modifiche account)

Passo 6: Testare il tuo agente

Invia una richiesta di test al tuo agente protetto:

bash
# Send a test message to the agent
nemoclaw agent test --blueprint customer-support \
  --message "Customer John Smith (ID: 12345) is asking about their recent order #ORD-9876. They want to know the delivery status."

# Output:
# ┌──────────────────────────────────────────────┐
# │ NemoClaw Security Report                      │
# ├──────────────────────────────────────────────┤
# │ Policy Evaluation:     PASS (45ms)            │
# │ Intent Classification: customer-inquiry       │
# │ Data Sensitivity:      internal               │
# │ Model Route:           local (nemotron-120b)  │
# │ Sandbox:               cs-agent-sandbox-001   │
# │ Network Access:        crm.api, orders.api    │
# │ PII Detected:          name, customer-id      │
# │ PII Action:            redacted-from-logs     │
# │ Approval Required:     no                     │
# ├──────────────────────────────────────────────┤
# │ Agent Response:                                │
# │ "I've checked order #ORD-9876 for the         │
# │  customer. The order shipped on March 18       │
# │  via FedEx (tracking: FX123456789). Expected  │
# │  delivery is March 21."                        │
# └──────────────────────────────────────────────┘
  • Ha classificato l'intenzione come una richiesta cliente di routine
  • Ha rilevato i dati personali (nome e ID del cliente) e li ha mascherati nei log
  • Ha instradato la richiesta al modello Nemotron locale
  • Ha concesso l'accesso alla rete solo alle API CRM e ordini
  • Ha determinato che non era necessaria l'approvazione umana

Passo 7: Monitorare con la dashboard

Apri http://localhost:7860/dashboard nel tuo browser per accedere alla dashboard di monitoraggio NemoClaw. Le funzionalità principali includono:

  • Flusso eventi in tempo reale — ogni azione dell'agente, valutazione della policy e decisione di sicurezza
  • Avvisi violazioni policy — notifica istantanea quando un agente tenta azioni non autorizzate
  • Log di audit — registro completo e immutabile di tutte le attività degli agenti
  • Metriche di performance — latenza, throughput e utilizzo delle risorse
  • Coda di approvazione — richieste di approvazione umana in attesa per azioni ad alto rischio

Pattern di configurazione comuni

Connessione ad API esterne

Per consentire al tuo agente di accedere a servizi esterni, aggiorna la policy di rete:

yaml
# policies/network.yaml
networkPolicy:
  egress:
    allow:
      - domain: "api.zendesk.com"
        methods: [GET, POST, PUT]
        headers:
          required: ["Authorization"]
      - domain: "api.stripe.com"
        methods: [GET]  # Read-only access to payment data

Configurazione dell'approvazione dell'operatore

Configura i workflow di approvazione per le operazioni sensibili:

yaml
# policies/sandbox.yaml
approvalWorkflow:
  enabled: true
  rules:
    - action: "refund.process"
      condition: "amount > 100"
      approvers: ["support-leads"]
      channel: "slack"
      timeout: "10m"
    - action: "account.modify"
      condition: "always"
      approvers: ["account-managers"]
      channel: "teams"
      timeout: "15m"

Abilitazione del routing verso modelli cloud

Per i compiti non sensibili, puoi abilitare il routing verso modelli cloud per migliori prestazioni:

yaml
# policies/privacy.yaml
privacyRouter:
  defaultRoute: local
  cloudEndpoints:
    - name: "nvidia-nim"
      url: "https://build.nvidia.com"
      apiKey: "${NVIDIA_API_KEY}"
      allowedSensitivity: ["public", "internal"]

Risoluzione dei problemi

Il modulo kernel OpenShell non riesce a caricarsi

bash
# Check kernel module status
nemoclaw diagnose openshell

# If using a custom kernel, ensure eBPF is enabled
# and the kernel version is 5.15+

Memoria insufficiente per il caricamento del modello

bash
# Check available GPU memory
nemoclaw diagnose gpu

# Switch to a smaller quantization or model
nemoclaw model pull nemotron-120b-moe-int2  # Smaller but less accurate
nemoclaw model pull nemotron-nano-4b  # Much smaller

Prossimi passi

Ora disponi di una distribuzione NemoClaw pienamente operativa sul tuo DGX Spark. Da qui puoi:

  1. 1.Personalizzare le policy di sicurezza per il tuo caso d'uso specifico
  2. 2.Creare blueprint personalizzati per i workflow degli agenti della tua organizzazione
  3. 3.Integrare con i tuoi strumenti SIEM e di osservabilità esistenti
  4. 4.Passare a una distribuzione multi-nodo utilizzando la modalità NemoClaw Cluster

Consulta il prossimo articolo di questa serie per un approfondimento sul runtime di sicurezza OpenShell.

Rimani al passo

Ricevi novità sulle release di NemoClaw, bollettini di sicurezza e aggiornamenti dall'ecosistema. Zero spam, puoi cancellarti in qualunque momento.