Installazione di OpenClaw su NVIDIA Jetson Orion

Nvidia Jetson Orin Nano whit OpenClaw

Questo articolo descrive il processo di installazione e configurazione di OpenClaw su un sistema NVIDIA Jetson utilizzato come nodo edge AI locale, denominato Orion. L'obiettivo è creare un ambiente in grado di eseguire agenti AI e modelli linguistici locali tramite Ollama su architettura ARM64, integrando il gateway OpenClaw e l'interfaccia di orchestrazione. L'esperienza descritta si basa su una configurazione reale eseguita su Ubuntu Server con GPU NVIDIA e accesso tramite SSH.

Introduzione

L'esecuzione di modelli linguistici su infrastrutture edge rappresenta una delle evoluzioni più rilevanti nel campo dei sistemi di intelligenza artificiale distribuita. Le piattaforme NVIDIA Jetson, grazie alla loro architettura ARM64 e alla presenza di acceleratori GPU dedicati, permettono di costruire nodi di calcolo AI locali con consumi energetici ridotti.

OpenClaw è un framework progettato per orchestrare agenti AI locali, modelli linguistici e integrazioni con servizi esterni. Quando combinato con Ollama, OpenClaw consente di eseguire modelli linguistici direttamente su hardware locale senza dipendere da servizi cloud.

In questo lavoro documentiamo l'installazione completa di OpenClaw su un sistema Jetson denominato Orion, evidenziando le problematiche incontrate e le soluzioni adottate.

Architettura del sistema

Il sistema Orion è configurato come nodo AI locale accessibile via rete interna. Il sistema operativo utilizzato è Ubuntu Server su architettura ARM64. L'ambiente software è composto da Node.js, pnpm, Ollama e OpenClaw.

OpenClaw opera come orchestratore degli agenti mentre Ollama funge da provider dei modelli linguistici. Il gateway OpenClaw espone un'interfaccia HTTP locale utilizzata per l'accesso tramite browser e per l'interazione con i servizi interni.

Installazione dei prerequisiti

L'installazione parte da una distribuzione Ubuntu Server aggiornata. Dopo l'accesso tramite SSH al dispositivo Jetson, è necessario installare Node.js e il gestore di pacchetti pnpm.

Una volta installati i prerequisiti, è possibile procedere con l'installazione di OpenClaw tramite npm. L'installazione rende disponibile il comando openclaw, utilizzato per gestire gateway, agenti e configurazione del sistema.

Configurazione di Ollama

Per permettere a OpenClaw di eseguire modelli linguistici locali è necessario installare Ollama. Dopo l'installazione del runtime, è possibile scaricare modelli compatibili con sistemi edge.

Nel nostro caso sono stati testati modelli compatti come Qwen 2.5 3B e Qwen 3.5 4B, che mostrano prestazioni adeguate su hardware Jetson grazie al compromesso tra dimensione del modello e capacità computazionale disponibile.

Il download dei modelli avviene tramite il comando:

ollama pull qwen2.5:3b

Una volta scaricato il modello, Ollama espone un endpoint locale utilizzato da OpenClaw come provider LLM.

Onboarding di OpenClaw

La configurazione iniziale del sistema avviene tramite il wizard di onboarding. Questo strumento guida la configurazione del workspace, del provider dei modelli e delle integrazioni.

Nel caso di sistemi headless accessibili via SSH è consigliato eseguire il comando:

openclaw onboard --skip-daemon

Questa opzione evita l'installazione automatica del servizio systemd, che può generare problemi in sessioni SSH o ambienti embedded.

Durante il processo di onboarding viene configurato il collegamento tra OpenClaw e Ollama come provider dei modelli linguistici.

Avvio del gateway

Terminata la configurazione iniziale è possibile avviare il gateway OpenClaw.

openclaw gateway run

Il gateway espone un endpoint HTTP locale tipicamente sulla porta 18789. L'interfaccia web può essere raggiunta tramite browser all'indirizzo:

http://IP_DEL_DISPOSITIVO:18789

Durante i primi test è emersa la necessità di esporre l'interfaccia tramite HTTPS per poter accedere al servizio in modo sicuro e compatibile con alcune integrazioni web. Il gateway OpenClaw, tuttavia, espone nativamente solo un endpoint HTTP locale.

La soluzione adottata è stata l'introduzione di un reverse proxy basato su Caddy. Il server Caddy è stato configurato per intercettare le richieste HTTPS in ingresso e inoltrarle al gateway OpenClaw in esecuzione sulla porta locale. In questo modo il traffico TLS viene gestito dal reverse proxy mentre OpenClaw continua a operare sulla propria porta interna.

Nel sistema Orion il flusso finale delle richieste risulta quindi strutturato nel seguente modo: il browser stabilisce una connessione HTTPS con il server Caddy, il quale gestisce la terminazione TLS e inoltra le richieste HTTP al gateway OpenClaw sulla porta 18789.

Problemi riscontrati

Durante i test iniziali sono emerse alcune problematiche legate all'accesso remoto al gateway. In alcuni casi il browser mostrava un errore di connessione rifiutata.

L'analisi del problema ha evidenziato che il gateway risultava avviato ma non correttamente esposto sulla rete locale. Questo comportamento può verificarsi quando il servizio viene eseguito solo in loopback.

Un ulteriore aspetto osservato riguarda la presenza di numerose sessioni attive nell'interfaccia di OpenClaw. Questo fenomeno è dovuto alla creazione automatica di sessioni temporanee per ogni agente o richiesta generata durante i test.

Ottimizzazione per sistemi Jetson

L'utilizzo di modelli linguistici su hardware edge richiede un'attenta selezione delle dimensioni del modello. Test empirici indicano che modelli tra 3B e 4B parametri rappresentano un buon compromesso tra qualità e velocità su Jetson.

Nel sistema Orion il modello Qwen 3.5 4B ha mostrato una buona stabilità operativa e tempi di risposta adeguati per l'utilizzo con agenti OpenClaw.

Limitazioni computazionali e scelta architetturale

Durante i test operativi è emerso un limite significativo legato all'esecuzione locale dei modelli linguistici sul dispositivo Jetson. Sebbene modelli compatti come Qwen 2.5 3B e Qwen 3.5 4B possano essere eseguiti tramite Ollama su architettura ARM64, le prestazioni risultano limitate in termini di latenza e throughput.

Nel contesto di utilizzo reale del sistema Orion, l'inferenza locale produceva tempi di risposta troppo elevati per l'uso interattivo degli agenti OpenClaw. Questo comportamento è attribuibile principalmente a tre fattori: la limitata memoria disponibile per modelli di dimensioni superiori, la potenza di calcolo GPU ridotta rispetto a sistemi desktop o server e l'overhead introdotto dalla gestione degli agenti.

Per questo motivo l'architettura finale adottata separa il nodo di orchestrazione dagli LLM. Il dispositivo Jetson Orion continua a eseguire OpenClaw come gateway e orchestratore degli agenti, mentre il provider dei modelli linguistici viene eseguito su un'infrastruttura esterna più performante.

Questa soluzione consente di mantenere il Jetson come nodo edge leggero, responsabile della gestione degli agenti, delle integrazioni e delle automazioni, delegando l'inferenza dei modelli linguistici a un sistema con maggiore capacità computazionale.

Conclusioni

L'esperienza descritta dimostra che OpenClaw può essere installato con successo su piattaforme NVIDIA Jetson e utilizzato come nodo di orchestrazione per sistemi di intelligenza artificiale distribuiti.

Tuttavia, i test evidenziano che l'esecuzione locale di modelli linguistici su hardware edge presenta limiti significativi in termini di prestazioni. In scenari operativi reali risulta quindi più efficace adottare un'architettura ibrida nella quale il nodo Jetson gestisce l'orchestrazione degli agenti mentre l'inferenza dei modelli viene eseguita su un sistema remoto.

Questo approccio consente di sfruttare i vantaggi dell'edge computing mantenendo al tempo stesso la capacità di utilizzare modelli linguistici più performanti e scalabili.