Démarrer avec NemoClaw sur DGX Spark
Le NVIDIA DGX Spark est la plateforme de développement idéale pour NemoClaw. Avec son architecture Grace Blackwell offrant 128 Go de mémoire unifiée et jusqu'à 1 pétaflop de calcul IA, un seul DGX Spark peut exécuter l'intégralité de la pile NemoClaw — y compris Nemotron 120B MoE — localement sur votre bureau.
Ce tutoriel vous guide à travers le processus de configuration complet, du déballage à l'exécution de votre premier blueprint d'agent sécurisé.
Prérequis
- •NVIDIA DGX Spark (ou tout système avec un GPU NVIDIA disposant de 24 Go+ de VRAM pour le modèle quantifié)
- •Ubuntu 22.04 LTS ou version ultérieure (DGX OS est préinstallé sur le Spark)
- •Docker 24.0+ avec NVIDIA Container Toolkit
- •50 Go d'espace disque libre pour les modèles et conteneurs
Étape 1 : Installer le CLI NemoClaw
Le CLI NemoClaw est l'interface principale pour gérer la pile. Installez-le via l'installateur officiel :
# 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
La commande nemoclaw init crée la structure du projet :
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
Étape 2 : Configurer la pile
Modifiez nemoclaw.yaml pour configurer votre déploiement :
# 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
Étape 3 : Télécharger le modèle Nemotron
NemoClaw utilise Nemotron 120B MoE comme moteur d'évaluation des politiques. Sur DGX Spark, nous utilisons la variante quantifiée INT4 qui s'intègre confortablement dans les 128 Go de mémoire unifiée :
# 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
Pour les systèmes avec moins de mémoire, NemoClaw prend également en charge des modèles plus petits :
# Alternative: Nemotron 8B for systems with 24GB VRAM
nemoclaw model pull nemotron-nano-4b
Étape 4 : Démarrer le runtime NemoClaw
Lancez la pile complète avec une seule commande :
# 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
Le tableau de bord offre une visibilité en temps réel sur l'exécution des agents, les évaluations de politiques et les événements de sécurité.
Étape 5 : Déployer votre premier blueprint
Les blueprints sont des modèles d'agents préconfigurés avec des politiques de sécurité intégrées. Déployons le blueprint de support client :
# 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
- •Politique de bac à sable OpenShell (restreint l'accès au système de fichiers et au réseau)
- •Règles de politique Nemotron (détection des données personnelles, classification d'intention)
- •Liste blanche réseau (uniquement les endpoints d'API approuvés)
- •Workflow d'approbation par l'opérateur (escalade pour les remboursements, les modifications de compte)
Étape 6 : Tester votre agent
Envoyez une requête de test à votre agent sécurisé :
# 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." │
# └──────────────────────────────────────────────┘
- •A classifié l'intention comme une demande client routinière
- •A détecté les données personnelles (nom et identifiant du client) et les a masquées dans les journaux
- •A routé la requête vers le modèle Nemotron local
- •A accordé l'accès réseau uniquement aux API CRM et commandes
- •A déterminé qu'aucune approbation humaine n'était requise
Étape 7 : Surveiller avec le tableau de bord
Ouvrez http://localhost:7860/dashboard dans votre navigateur pour accéder au tableau de bord de surveillance NemoClaw. Les fonctionnalités clés incluent :
- •Flux d'événements en temps réel — chaque action d'agent, évaluation de politique et décision de sécurité
- •Alertes de violation de politique — notification instantanée lorsqu'un agent tente des actions non autorisées
- •Journal d'audit — enregistrement complet et immuable de toutes les activités des agents
- •Métriques de performance — latence, débit et utilisation des ressources
- •File d'approbation — demandes d'approbation humaine en attente pour les actions à haut risque
Modèles de configuration courants
Connexion aux API externes
Pour permettre à votre agent d'accéder à des services externes, mettez à jour la politique réseau :
# 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
Configuration de l'approbation par l'opérateur
Configurez des workflows d'approbation pour les opérations sensibles :
# 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"
Activation du routage vers les modèles cloud
Pour les tâches non sensibles, vous pouvez activer le routage vers les modèles cloud pour de meilleures performances :
# policies/privacy.yaml
privacyRouter:
defaultRoute: local
cloudEndpoints:
- name: "nvidia-nim"
url: "https://build.nvidia.com"
apiKey: "${NVIDIA_API_KEY}"
allowedSensitivity: ["public", "internal"]
Dépannage
Le module noyau OpenShell ne parvient pas à se charger
# Check kernel module status
nemoclaw diagnose openshell
# If using a custom kernel, ensure eBPF is enabled
# and the kernel version is 5.15+
Mémoire insuffisante pour le chargement du modèle
# 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
Prochaines étapes
Vous disposez désormais d'un déploiement NemoClaw pleinement opérationnel sur votre DGX Spark. À partir de là, vous pouvez :
- 1.Personnaliser les politiques de sécurité pour votre cas d'utilisation spécifique
- 2.Créer des blueprints personnalisés pour les workflows d'agents de votre organisation
- 3.Intégrer avec vos outils SIEM et d'observabilité existants
- 4.Passer à un déploiement multi-nœuds en utilisant le mode NemoClaw Cluster
Consultez le prochain article de cette série pour une plongée technique dans le runtime de sécurité d'OpenShell.