technical architecture openshell nemotron

Approfondimento sull'architettura NemoClaw

Eric Ericsson

Eric Ericsson

@eericsson

March 19, 2026

12 min di lettura

Approfondimento sull'architettura NemoClaw

Approfondimento sull'architettura NemoClaw

NemoClaw non è un singolo prodotto — è un'architettura di sicurezza a livelli progettata per rendere gli agenti IA autonomi sicuri per la distribuzione in produzione. Questo articolo percorre ogni livello, spiega come interagiscono e fornisce il contesto tecnico necessario per valutare NemoClaw nella propria infrastruttura.

Panoramica dell'architettura

Lo stack NemoClaw è composto da quattro livelli principali, ognuno dei quali affronta una dimensione diversa della sicurezza degli agenti:

┌─────────────────────────────────────────────┐
│              Agent Application               │
│         (OpenClaw Agent Framework)           │
├─────────────────────────────────────────────┤
│             Privacy Router                    │
│    (Local vs. Cloud Model Routing)           │
├─────────────────────────────────────────────┤
│           Nemotron Policy Engine              │
│    (120B MoE Intent Classification)          │
├─────────────────────────────────────────────┤
│             OpenShell Runtime                 │
│    (Kernel-Level Sandbox + Isolation)        │
├─────────────────────────────────────────────┤
│          Host OS / Hardware (DGX)             │
└─────────────────────────────────────────────┘

Ogni livello funziona in modo indipendente e può essere distribuito autonomamente, ma lo stack completo fornisce una sicurezza in profondità che nessun singolo livello può raggiungere da solo.

Livello 1: Runtime di sicurezza OpenShell

OpenShell è il fondamento del modello di sicurezza di NemoClaw. Fornisce sandboxing a livello kernel per l'esecuzione degli agenti, garantendo che anche un agente compromesso non possa fuggire dal proprio perimetro di sicurezza.

Come funziona OpenShell

OpenShell utilizza una combinazione di namespace del kernel Linux, filtri seccomp-BPF e programmi eBPF personalizzati di NVIDIA per creare ambienti di esecuzione isolati per ogni attività dell'agente:

yaml
# openshell-policy.yaml
apiVersion: openshell.nvidia.com/v1
kind: SandboxPolicy
metadata:
  name: customer-support-agent
spec:
  isolation:
    network: restricted
    filesystem: read-only
    syscalls: minimal
  resources:
    maxMemory: 4Gi
    maxCPU: 2
    gpuAccess: inference-only
  permissions:
    allowedAPIs:
      - crm.read
      - crm.update
      - ticket.create
      - ticket.resolve
    deniedAPIs:
      - admin.*
      - billing.*
      - user.delete
  auditLog:
    enabled: true
    destination: siem://security-events

Ogni chiamata di sistema effettuata dall'agente viene intercettata dal livello eBPF di OpenShell, classificata secondo la policy e quindi autorizzata, negata o escalata per l'approvazione umana. L'intero pipeline decisionale viene eseguito nello spazio kernel, aggiungendo meno di 50 microsecondi di latenza per chiamata di sistema.

Workflow di approvazione dell'operatore

Per le operazioni ad alto rischio — eliminazione di dati, modifica dell'infrastruttura, invio di comunicazioni esterne — OpenShell può mettere in pausa l'esecuzione dell'agente e instradare l'azione verso un operatore umano per l'approvazione:

typescript
// Approval workflow configuration
const approvalPolicy = {
  triggers: [
    { action: 'data.delete', threshold: 'always' },
    { action: 'infra.modify', threshold: 'always' },
    { action: 'email.send', threshold: 'external-only' },
    { action: 'payment.process', threshold: 'above-100-usd' },
  ],
  channels: ['slack', 'teams', 'pagerduty'],
  timeout: '15m',
  defaultAction: 'deny',
};

Questo garantisce che gli agenti possano operare autonomamente per le attività di routine, mantenendo al contempo la supervisione umana per le azioni consequenziali.

Livello 2: Motore di policy Nemotron 120B MoE

Il modello Nemotron 120B Mixture-of-Experts funge da motore intelligente di valutazione delle policy di NemoClaw. A differenza dei tradizionali sistemi di sicurezza basati su regole, Nemotron può comprendere l'intenzione dietro le azioni degli agenti e valutarle rispetto a policy di sicurezza in linguaggio naturale.

Classificazione delle intenzioni

Quando un agente richiede un'azione, Nemotron classifica l'intenzione su più dimensioni:

  • Sensibilità: Quanto sono sensibili i dati coinvolti? (pubblica, interna, confidenziale, riservata)
  • Reversibilità: Questa azione può essere annullata? (completamente reversibile, parzialmente reversibile, irreversibile)
  • Portata: Quanti sistemi o utenti sono coinvolti? (singolo, team, organizzazione, esterno)
  • Conformità: Questa azione rientra in qualche framework normativo? (GDPR, HIPAA, SOC 2, PCI-DSS)

La classificazione viene eseguita in meno di 200 ms su una singola GPU A100, e in meno di 50 ms su un DGX Spark con la variante quantizzata del modello.

Policy in linguaggio naturale

I team di sicurezza possono definire le policy in linguaggio naturale, che Nemotron interpreta e applica:

Policy: "Customer support agents may access customer records for active tickets only.
         They may not access financial data, modify account settings, or communicate
         with customers outside of the ticketing system. All PII must be redacted
         from internal logs."

Nemotron converte queste policy in linguaggio naturale in regole di sicurezza eseguibili, colmando il divario tra l'intento del team di sicurezza e l'applicazione tecnica.

Livello 3: Privacy Router

Il Privacy Router è il livello di routing intelligente dei modelli di NemoClaw. Determina se ogni attività dell'agente deve essere elaborata da un modello locale (Nemotron in esecuzione on-premises) o instradata verso un endpoint di modello cloud, in base alla classificazione della sensibilità dei dati.

Logica di routing

python
# Simplified Privacy Router logic
def route_request(request: AgentRequest) -> ModelEndpoint:
    sensitivity = classify_sensitivity(request.context)

    if sensitivity in ['restricted', 'confidential']:
        # Highly sensitive data stays local
        return local_nemotron_endpoint

    if sensitivity == 'internal':
        # Internal data can use cloud with encryption
        return cloud_endpoint_with_e2e_encryption

    if sensitivity == 'public':
        # Public data can use any endpoint for best performance
        return optimal_cloud_endpoint

    # Default: local processing
    return local_nemotron_endpoint

Il Privacy Router mantiene una cache di classificazione in tempo reale, in modo che le richieste ripetute con contesto simile vengano instradate senza rivalutazione. Nei benchmark, il router aggiunge meno di 5 ms di latenza alla pipeline delle richieste.

Conformità alla residenza dei dati

Per le organizzazioni soggette a requisiti di residenza dei dati (GDPR europeo, PIPL cinese, ecc.), il Privacy Router può imporre vincoli di routing geografico:

yaml
privacyRouter:
  residencyRules:
    - region: EU
      dataTypes: [personalData, financialData]
      allowedEndpoints: [eu-west-1-local, eu-central-1-local]
    - region: CN
      dataTypes: [all]
      allowedEndpoints: [cn-north-1-local]
  fallback: local-only

Livello 4: Motore di policy di rete

Il motore di policy di rete controlla quali risorse esterne un agente può accedere. Opera come proxy trasparente, ispezionando e filtrando tutte le richieste di rete in uscita dalle sandbox degli agenti.

Definizione della policy

yaml
networkPolicy:
  name: sales-ops-agent
  egress:
    allow:
      - domain: "*.salesforce.com"
        methods: [GET, POST, PATCH]
      - domain: "api.hubspot.com"
        methods: [GET]
      - domain: "smtp.company.com"
        ports: [587]
    deny:
      - domain: "*"  # deny all other outbound traffic
  ingress:
    allow:
      - source: "webhook.salesforce.com"
        path: "/api/v1/events"
  inspection:
    tlsDecrypt: true
    logPayloads: false
    scanForPII: true

Il motore di policy di rete supporta l'intercettazione TLS per le richieste in uscita (con gestione appropriata dei certificati), consentendo di analizzare i payload delle richieste per individuare fughe accidentali di dati personali.

Assemblare il tutto

Quando un agente OpenClaw riceve un compito, la richiesta attraversa lo stack NemoClaw come segue:

  1. 1.OpenClaw riceve il compito e costruisce un piano di esecuzione
  2. 2.Privacy Router classifica la sensibilità dei dati e seleziona l'endpoint del modello appropriato
  3. 3.Nemotron valuta il piano di esecuzione rispetto alle policy di sicurezza e classifica l'intenzione
  4. 4.OpenShell crea una sandbox isolata per l'esecuzione del compito
  5. 5.Il motore di policy di rete configura l'accesso alla rete della sandbox in base al ruolo dell'agente
  6. 6.L'agente viene eseguito all'interno della sandbox, con ogni azione sottoposta ad audit
  7. 7.Le azioni ad alto rischio vengono escalate agli operatori umani per l'approvazione
  8. 8.I risultati vengono restituiti attraverso il Privacy Router, con i dati personali mascherati nei log

L'intera pipeline aggiunge circa 300 ms di latenza alla prima richiesta in una sessione, e meno di 100 ms per le richieste successive (grazie alla cache). Per la maggior parte dei carichi di lavoro enterprise, questo overhead è trascurabile rispetto al tempo di inferenza del modello.

Benchmark delle prestazioni

Su un singolo DGX Spark:

MetricaValore
Latenza valutazione policy (p50)45 ms
Latenza valutazione policy (p99)180 ms
Tempo di creazione sandbox120 ms
Applicazione policy di rete15 ms
Throughput (agenti simultanei)64
Overhead di memoria per sandbox256 MB

Su un cluster DGX H100 (8 GPU):

MetricaValore
Latenza valutazione policy (p50)12 ms
Latenza valutazione policy (p99)45 ms
Throughput (agenti simultanei)512

Per iniziare

La documentazione dell'architettura NemoClaw è disponibile su GitHub su nvidia/nemoclaw. Ogni livello può essere distribuito indipendentemente, quindi puoi adottare NemoClaw in modo incrementale — iniziando dal sandboxing OpenShell e aggiungendo gli altri livelli man mano che i tuoi requisiti di sicurezza evolvono.

Nel prossimo articolo, ti guideremo attraverso un tutorial pratico per distribuire l'intero stack NemoClaw su un DGX Spark.

Rimani al passo

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