tutorial dgx-spark getting-started deployment

Pierwsze kroki z NemoClaw na DGX Spark

NVIDIA AI

NVIDIA AI

@nvidiaai

March 20, 2026

10 min czytania

Pierwsze kroki z NemoClaw na DGX Spark

Pierwsze kroki z NemoClaw na DGX Spark

NVIDIA DGX Spark to idealna platforma deweloperska dla NemoClaw. Dzięki architekturze Grace Blackwell oferującej 128 GB zunifikowanej pamięci i do 1 petaflopa mocy obliczeniowej AI, pojedynczy DGX Spark może uruchomić cały stos NemoClaw — w tym Nemotron 120B MoE — lokalnie na Twoim biurku.

Ten poradnik przeprowadzi Cię przez kompletny proces konfiguracji, od rozpakowania do uruchomienia pierwszego zabezpieczonego szablonu agenta.

Wymagania wstępne

  • NVIDIA DGX Spark (lub dowolny system z GPU NVIDIA z 24+ GB VRAM dla kwantyzowanego modelu)
  • Ubuntu 22.04 LTS lub nowszy (DGX OS jest preinstalowany na Spark)
  • Docker 24.0+ z NVIDIA Container Toolkit
  • 50 GB wolnej przestrzeni dyskowej na modele i kontenery

Krok 1: Instalacja CLI NemoClaw

CLI NemoClaw to główny interfejs do zarządzania stosem. Zainstaluj go za pomocą oficjalnego instalatora:

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

Polecenie nemoclaw init tworzy strukturę projektu:

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

Krok 2: Konfiguracja stosu

Edytuj nemoclaw.yaml, aby skonfigurować wdrożenie:

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

Krok 3: Pobranie modelu Nemotron

NemoClaw używa Nemotron 120B MoE jako silnika oceny polityk. Na DGX Spark korzystamy z kwantyzowanego wariantu INT4, który komfortowo mieści się w 128 GB zunifikowanej pamięci:

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

Dla systemów z mniejszą ilością pamięci NemoClaw obsługuje również mniejsze modele:

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

Krok 4: Uruchomienie środowiska NemoClaw

Uruchom cały stos jednym poleceniem:

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

Panel monitorowania zapewnia widoczność w czasie rzeczywistym wykonywania agentów, oceny polityk i zdarzeń bezpieczeństwa.

Krok 5: Wdrożenie pierwszego szablonu

Szablony to wstępnie skonfigurowane wzorce agentów z wbudowanymi politykami bezpieczeństwa. Wdrożmy szablon obsługi klienta:

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
  • Politykę sandboxa OpenShell (ogranicza dostęp do systemu plików i sieci)
  • Reguły polityk Nemotron (wykrywanie danych osobowych, klasyfikacja intencji)
  • Listę dozwolonych adresów sieciowych (tylko zatwierdzone punkty końcowe API)
  • Proces zatwierdzania przez operatora (eskalacja dla zwrotów, zmian konta)

Krok 6: Testowanie agenta

Wyślij testowe żądanie do zabezpieczonego agenta:

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."                        │
# └──────────────────────────────────────────────┘
  • Sklasyfikował intencję jako rutynowe zapytanie klienta
  • Wykrył dane osobowe (imię klienta i ID) i zredagował je z logów
  • Przekierował żądanie do lokalnego modelu Nemotron
  • Udzielił dostępu sieciowego wyłącznie do API CRM i zamówień
  • Stwierdził, że zatwierdzenie przez człowieka nie jest wymagane

Krok 7: Monitoring za pomocą panelu

Otwórz http://localhost:7860/dashboard w przeglądarce, aby uzyskać dostęp do panelu monitorowania NemoClaw. Kluczowe funkcje to:

  • Strumień zdarzeń w czasie rzeczywistym — każde działanie agenta, ocena polityki i decyzja bezpieczeństwa
  • Alerty o naruszeniach polityk — natychmiastowe powiadomienie, gdy agent próbuje wykonać nieautoryzowane działania
  • Dziennik audytu — kompletny, niezmienny zapis wszystkich aktywności agentów
  • Metryki wydajności — opóźnienie, przepustowość i wykorzystanie zasobów
  • Kolejka zatwierdzeń — oczekujące żądania zatwierdzenia dla działań o wysokim ryzyku

Typowe wzorce konfiguracji

Łączenie z zewnętrznymi API

Aby umożliwić agentowi dostęp do zewnętrznych usług, zaktualizuj politykę sieciową:

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

Konfiguracja zatwierdzania przez operatora

Skonfiguruj procesy zatwierdzania dla wrażliwych operacji:

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"

Włączenie routingu przez modele chmurowe

Dla niwrażliwych zadań można włączyć routing przez modele chmurowe w celu lepszej wydajności:

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

Rozwiązywanie problemów

Moduł jądra OpenShell nie ładuje się

bash
# Check kernel module status
nemoclaw diagnose openshell

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

Brak pamięci przy ładowaniu modelu

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

Następne kroki

Masz teraz w pełni działające wdrożenie NemoClaw na DGX Spark. Stąd możesz:

  1. 1.Dostosować polityki bezpieczeństwa do konkretnego przypadku użycia
  2. 2.Tworzyć niestandardowe szablony dla procesów agentów w Twojej organizacji
  3. 3.Zintegrować z istniejącymi narzędziami SIEM i obserwowalności
  4. 4.Skalować do wdrożenia wielowęzłowego za pomocą trybu NemoClaw Cluster

Sprawdź następny wpis z tej serii, w którym szczegółowo omówimy środowisko bezpieczeństwa OpenShell.

Bądź na bieżąco

Otrzymuj powiadomienia o nowych wersjach NemoClaw, zaleceniach bezpieczeństwa i nowościach z ekosystemu. Żadnego spamu — wypisz się w dowolnej chwili.