Casa ImpresaAI Rivisitazione di NVIDIA Jetson AGX Orin: pacchetto minuscolo, modelli linguistici di grandi dimensioni

Rivisitazione di NVIDIA Jetson AGX Orin: pacchetto minuscolo, modelli linguistici di grandi dimensioni

by Colin Balzer

Rivisitiamo Jetson AGX Orin e mostriamo come ottenere un LLM di tipo Chat-GPT sul dispositivo a basso consumo.

Nota dell'editore: abbiamo avuto l'opportunità di sederci e approfondire la piattaforma NVIDIA Jetson con un nuovo membro del nostro team. Dai un'occhiata al nostro articolo dell'anno scorso in cui abbiamo eseguito un modello di visione su una versione del prodotto finale di Jetson, il Lenovo SE70

Con la piattaforma Jetson di NVIDIA, gli sviluppatori sono in grado di esplorare opzioni di IA specificatamente studiate per lo sviluppo di IA edge. Questi sistemi consentono prestazioni del server abilitate alla GPU in un pacchetto che puoi tenere in una mano. Un enorme ringraziamento a NVIDIA per averci fornito il kit di sviluppo Jetson AGX Orin da provare e vedere quanto può essere facile avere il proprio LLM locale.

NVIDIA Jetson AGX ORINIl Jetson AGX Orin DevKit è disponibile in un design con fattore di forma ridotto, solo 11 cm o circa 4.3 pollici di larghezza e lunghezza e 7.2 cm (circa 2.8 pollici) di altezza. All'interno del Jetson AGX Orin Dev Kit, si trova una GPU con architettura NVIDIA Ampere a 2048 core con 64 Tensor Core e una frequenza massima di 1.3 GHz. C'è anche una CPU Arm Cortex 12-core A78AE v8.2 a 64 bit con cache L3 da 2 MB, cache L6 da 3 MB e una frequenza massima di 2.20 GHz.

Parte anteriore NVIDIA Jetson AGX ORIN

Questi due componenti di potenza, abbinati a 64 GB di memoria unificata LPDDR5 con velocità di 204.8 GB/s, si combinano per creare l'impresa più impressionante di questa piccola macchina: 275 TOP nei modelli con 64 GB dalla piccola GPU e DLA. Si tratta di 8.6 volte il numero di TOPS rispetto al predecessore di NVIDIA, il Jetson AGX Xavier, che ha fornito solo 32 TOPS.

Scheda madre NVIDIA Jetson AGX ORIN

Sotto il cofano ci sono anche due slot M.2: un PCIe Gen 4×4 Key M per qualsiasi spazio di archiviazione aggiuntivo oltre all'eMMC da 64 GB e un Gen 4×1 Key E per le connessioni wireless. La connettività online però non è un problema, con un connettore RJ10 da 45 gigabit. Inoltre c'è un header a 40 pin (per UART, SPI, I2S, I2C, CAN, PWM, DMIC e GPIO), un header di automazione a 12 pin, un header del pannello audio a 10 pin, un header JTAG a 10 pin, un header Basetta ventola a 4 pin, connettore di backup della batteria RTC a 2 pin e connettore MIPI CSI-16 a 2 corsie per telecamere CSI.

Non manca nemmeno la connettività esterna. Sono disponibili sei porte USB: due porte USB-A 3.2 Gen 2, due porte USB-A 3.2 Gen 1 e USB-C 3.2 Gen 2. Di queste due porte USB-C, una può fornire velocità fino a 20 Gbps per il flashing e il trasferimento dei dati, mentre l'altra è dedicata all'alimentazione da 60 W. Se hai bisogno di una porta USB-C aggiuntiva, è disponibile un collegamento di alimentazione aggiuntivo tramite un jack di alimentazione CC. Tuttavia, il sistema viene fornito solo con l'alimentatore USB-C. C'è anche uno slot per scheda micro SD per un'opzione di archiviazione rapida e una porta micro USB-B che funge da porta di debug seriale.

Slot PCIe esterno NVIDIA Jetson AGX ORIN

Nascosto sotto una copertura magnetica, si trova lo slot PCIe Gen 4×16 esterno. Inoltre, lo slot PCIe esterno supporta una connessione fino a PCIe 4×8. Non avendo la possibilità di alimentare internamente una GPU, lo slot è più adatto per qualcosa come una scheda NIC ad alta velocità. Per un'opzione di visualizzazione dedicata, Orin ha una DisplayPort 1.4.

Jetson AGX Xavier contro Jetson AGX Orin

caratteristica Jetson AGX Xavier 64GB Kit di sviluppo Jetson AGX Orin da 64 GB
Prestazioni dell'IA 32 TOP 275 TOP
GPU GPU NVIDIA Volta a 512 core con 64 Tensor Core GPU NVIDIA Ampere da 2048 core con 64 core Tensor
Frequenza massima GPU Non specificato 1.3GHz
CPU CPU NVIDIA Carmel Arm v8 a 8.2 bit a 64 core, 8 MB L2 + 4 MB L3 CPU Arm Cortex-A12AE v78 a 8.2 bit a 64 core, 3 MB L2 + 6 MB L3
Frequenza massima della CPU 2.2GHz 2.2GHz
Acceleratore DL 2xNVDLA v1 Non specificato
Frequenza massima DLA 1.4GHz Non specificato
Acceleratore di visione 2xPVA 1 PVA v2
Memorie LPDDR64x da 4 GB, 136.5 GB/s LPDDR64 da 5 GB, 204.8 GB/s
Archiviazione eMMC 32 da 5.1GB, 64GB disponibile in versione industriale Non specificato
Codifica video 4x 4K60 (H.265), 8x 4K30 (H.265), 16x 1080p60 (H.265), 32x 1080p30 (H.265) Non specificato
Video Decode 2x 8K30 (H.265), 6x 4K60 (H.265), 12x 4K30 (H.265), 26x 1080p60 (H.265), 52x 1080p30 (H.265) Non specificato
Telecamera CSI Fino a 6 telecamere (36 tramite canali virtuali), 16 corsie MIPI CSI-2, 8 corsie SLVS-EC, D-PHY 1.2 (fino a 40 Gbps), C-PHY 1.1 (fino a 62 Gbps) Non specificato
PCIe 1×8, 1×4, 1×2, 2×1 (PCIe Gen4, porta root ed endpoint) Slot PCIe x16 che supporta x8 PCIe Gen4, slot M.2 Key M con x4 PCIe Gen4, slot M.2 Key E con x1 PCIe Gen4
USB 3 USB 3.2 Gen2 (10 Gbps), 4 USB 2.0 USB-C per alimentazione (15-60 W), USB-C singola per flashing e programmazione, Micro B per debug seriale, 2x USB 3.2 Gen2 (USB Type-C), 2x USB 3.2 Gen2 (USB Type-A), 2x USB 3.2 Gen1 (USB tipo A), USB 2.0 (USB Micro-B)
Networking 1 GBE Connettore RJ45 fino a 10 GbE
Dsiplay 3 modalità multimodali DP 1.4/eDP 1.4/HDMI 2.0 1x connettore DisplayPort 1.4a (+MST).
Altro I / O 5x UART, 3x SPI, 4x I2S, 8x I2C, 2x CAN, PWM, DMIC, GPIO Header a 40 pin (UART, SPI, I2S, I2C, CAN, PWM, DMIC, GPIO), header di automazione a 12 pin, header del pannello audio a 10 pin, header JTAG a 10 pin, header della ventola a 4 pin, 2 pin Connettore di backup della batteria RTC, slot microSD, jack di alimentazione CC, pulsanti di alimentazione, ripristino forzato e ripristino
Potenza 10-30W 15-60 W (tramite USB-C)

Configurazione lato AI/SDK NVIDIA

I Large Language Models (LLM) sono IA, come ChatGPT o Ollama, che sono stati addestrati su grandi quantità di dati. Con un ingombro così ridotto, è difficile credere che si possa gestire un modello di IA locale e privato. Attualmente stiamo vedendo spuntare sul mercato laptop “AI PC” di Intel, AMD e Snapdragon con NPU dedicate. Questi dispositivi, simili alla piattaforma Jetson, eseguono silicio dedicato sul die, che dispone di funzionalità aggiuntive di accelerazione dell'intelligenza artificiale. Concettualmente, questi componenti sono progettati per funzionare in modo simile al nostro cervello (da qui il “neurale” in NPU) e consentono l’elaborazione simultanea di grandi quantità di dati. L'inclusione delle NPU significa che CPU e GPU sono libere per elaborare altre attività, portando a un computer molto più efficiente, sia in termini di potenza che di elaborazione.

Tuttavia, i 40 TOPS prodotti da Lunar Lake di Intel o la piattaforma 50 TOPS di AMD non sono ancora eccezionali quanto la potenza combinata della GPU e della CPU di Jetson Orin Devkits, ottenendo i 275 TOPS pubblicizzati. La potenza è più che sufficiente per avere un'intelligenza artificiale localmente nel tuo ufficio o anche nella tua casa/laboratorio! Altri componenti che aiutano con l'intelligenza artificiale sono i due acceleratori NVDLA v2 Deep Learning (DL), che facilitano la velocità con cui il sistema è in grado di eseguire processi di intelligenza artificiale; e un singolo acceleratore di visione, che accelera la velocità con cui la visione artificiale è in grado di elaborare le immagini.

La configurazione del sistema per eseguire l'intelligenza artificiale è semplificata dalle numerose guide NVIDIA. Per iniziare, devi assicurarti di eseguire il flashing del tuo Jetson con Ubuntu, quindi seguire questi 6 passaggi:

Passaggio 1: installa NVIDIA SDK Manager

Le istruzioni complete e i download saranno disponibili sul sito NVIDIA SDK. Per questo processo è richiesto un account sviluppatore gratuito.

Passaggio 2: apri NVIDIA SDK Manager installato su Ubuntu

Passaggio 3: ambiente di sviluppo

Questo passaggio serve per confermare che hai tutte le tue anatre in fila. Conferma il prodotto, le configurazioni di sistema, la versione dell'SDK e gli SDK aggiuntivi. Per la nostra configurazione, abbiamo utilizzato il kit di sviluppo Jetson AGX Orin, Ubuntu 22.04, JetPack 6.0 e Deep Stream 7.0.

Passaggio 4: dettagli e licenza

Questo passaggio funge da schermata di installazione e garantisce che tutti i componenti host e di destinazione vengano scaricati e installati. Questo è anche il posto dove selezionare la posizione di download corretta. Il sistema host richiede 15 GB di spazio di archiviazione e il sistema di destinazione richiede 17 GB di spazio di archiviazione.

Passaggio 5: processo di configurazione

Questo passaggio funge da finestra di conferma per completare la configurazione. Qui selezionerai la modalità di ripristino, scegliendo se sarà una modalità di ripristino forzato manuale o automatica, essendo automatica quando il sistema è già stato flashato e funzionante. Da qui puoi impostare/confermare il tuo indirizzo IP, aggiungere un nome utente e una password, scegliere la configurazione OEM e il dispositivo di archiviazione di destinazione. Una volta impostato tutto, potrai fare clic sull'opzione Flash.

Passaggio 6: finalizzazione del riepilogo

Infine, questo passaggio eseguirà il sistema. Successivamente, sarai in grado di eseguire il codice:

jetson-containers run --name ollama $(autotag ollama)

L'esecuzione della prima riga di codice avvierà il file Ollama LLM. Ollama è una piattaforma popolare che rende semplice e facile la configurazione e lo sviluppo locale di LLM, potendo anche essere configurati all'interno o all'esterno del contenitore. Include una libreria di modelli integrata di pesi prequantizzati e verrà scaricata ed eseguita automaticamente utilizzando llama.cpp dietro le quinte come inferenza. Il contenitore Ollama è stato compilato con il supporto CUDA, rendendolo perfetto per l'uso su Jetson AGX Orin. Quindi eseguendo il codice:

docker esegui -it --rm --network=host --add-host=host.docker.internal:host-gateway ghcr.io/open-webui/open-webui:main

Potrai quindi accedere all'Open Web User Interface (OWUI) sull'IP del dispositivo o all'indirizzo DNS sulla porta 8080, che funzionerà come chatbot. L'OWUI funge da plug-in per l'API del server Ollama, ma può anche utilizzare ChatGPT di OpenAI, Llama-3 di Meta o Phi-3 Mini di Microsoft come plug-in.

Sebbene con un budget energetico così basso, il tempo per il primo token per i modelli più grandi sia notevolmente lento, la piattaforma è comunque in grado di fornire prestazioni accettabili una volta caricata.

Conclusione

Il kit di sviluppo Jetson AGX Orin offre prestazioni significative in un fattore di forma compatto. Man mano che le soluzioni PC AI diventano sempre più rilevanti, la piattaforma Jetson si distingue, soprattutto se si considerano le limitazioni TOPS delle NPU integrate nelle nuove versioni di CPU. Jetson AGX Orin fornisce un solido trampolino di lancio per gli sviluppatori, in particolare quelli che richiedono applicazioni native ARM, aiutando nella convalida e nel perfezionamento del modello.

Sebbene si tratti di un kit di sviluppo, la sua facilità d'uso e la sua ampia potenza lo rendono un eccellente punto di partenza per le aziende che intraprendono il loro viaggio nell'intelligenza artificiale. La piattaforma Jetson mette in mostra l'immenso potenziale delle soluzioni AI con fattore di forma ridotto: progettate con eleganza, estremamente efficienti dal punto di vista energetico e in grado di fornire 275 TOP di prestazioni AI. Questa combinazione rende la piattaforma Jetson paragonabile a server AI molto più grandi montati su rack.

Le guide complete di NVIDIA semplificano il processo di flashing e distribuzione di una varietà di modelli IA, di cui l'intelligenza artificiale generativa è solo un pezzo del puzzle. Per le aziende pronte a sviluppare e implementare l'intelligenza artificiale, il kit di sviluppo Jetson AGX Orin offre una combinazione perfetta di efficienza energetica, ingombro ridotto e prestazioni IA eccezionali, rendendolo la scelta ideale per esplorare e implementare le tecnologie IA.

Kit di sviluppo Jetson AGX Orin

Interagisci con StorageReview

Newsletter | YouTube | Podcast iTunes/Spotify | Instagram | Twitter | TikTok | RSS feed