NVIDIA bemutatja, hogyan lehet bevezetni és futtatni beágyazott AI-modelleket a DGX Spark 64GB rendszeren a TensorRT Edge-LLM segítségével. A cikk gyakorlati lépéseket ad a környezet előkészítéséhez, a Nemotron-3.5 Lightning modell indításához és egy OpenAI-kompatibilis szerver elindításához, valamint ismerteti az opcionális DSpark spekulatív dekódolás használatát a generálás gyorsítására. Végül teljesítményadatokat közölnek különböző munkaterheltekre vonatkozóan.
Miért fontos ez
Fizikai (edge) AI-alkalmazások — például a vezetőfigyelem és a kabin állapotának megfigyelése, robotok környezetfelismerése és feladattervezése, vagy gépsorok koordinálása — szigorú memória-, energia- és késleltetési korlátok között működnek. A TensorRT Edge-LLM és a DGX Spark 64GB platform lehetővé teszi fejlesztők számára, hogy modelleket prototípusként, finomhangolásra és tesztelésre futtassanak a fejlesztői környezeten, majd ugyanazt az inferencia-keretrendszert alkalmazzák végponti eszközökön (például NVIDIA Jetson Thor, NVIDIA DRIVE AGX Thor, NVIDIA IGX Thor).
Előfeltételek és környezet
A példák lefuttatásához szükséges:
- DGX Spark 64GB rendszeren telepített támogatott NVIDIA szoftverstack
- NVIDIA CUDA 13
- TensorRT 10.16.1.11 vagy újabb (a 10.x sorozaton belül)
- Python 3.10–3.12
A bemutatott példákat TensorRT Edge-LLM 0.11.1 és TensorRT 10.16.1.11 verziókkal tesztelték.
Telepítés és környezet előkészítése
A DGX Sparkon nyissunk terminalt, hozzunk létre és aktiváljunk egy virtuális környezetet, majd telepítsük a TensorRT Edge-LLM csomagot:
python3 -m venv --system-site-packages .venv-edgellm source .venv-edgellm/bin/activate python -m pip install --upgrade pip python -m pip install "tensorrt-edgellm[server]==0.11.1"
A virtuális környezet elkülöníti az új csomagokat, de hozzáférést biztosít a rendszer Python-csomagjaihoz, köztük a TensorRT-hez.
Ellenőrizzük a TensorRT verzióját és hogy a TensorRT Edge-LLM runtime betöltődik-e:
python -c "import tensorrt as trt; v = tuple(map(int, trt.version.split('.'))); assert (10, 16, 1, 11) <= v < (11,), f'TensorRT >=10.16.1.11 and <11 required; found {trt.version}'; from tensorrt_edgellm import runtime; runtime.load()"
Ha a rendszerben kompatibilis TensorRT kötődések nem érhetők el, a NVIDIA TensorRT pip telepítési útmutatója szerint telepíthető egy kompatibilis 10.x verzió a virtuális környezetben, majd a fenti ellenőrző parancs újrafuttatható.
Nemotron-3.5 Lightning indítása chat módban
A virtuális környezettel aktív állapotban indítsunk el egy chatet a Nemotron-3.5 Lightning modellel:
trtedge chat nvidia/NVIDIA-Nemotron-3.5-Lightning-30B-A3B-NVFP4
Az első indításkor a modell letöltése (kb. 21 GB) és a TensorRT engine-ek építése időt vesz igénybe. Az alapértelmezett tárolóhely a ~/.cache/tensorrt-edgellm; gondoskodjunk elegendő tárhelyről a modell és az engine-ek számára. A későbbi indítások újrahasznosítják a megfeleltetett cache-elt engine-eket.
Miután megjelent a chat prompt, próbáljuk ki az alábbi parancsot:
Convert 25°C to Fahrenheit. Answer in one sentence.
Példa válasz: 25°C is equal to 77°F.
A beszélgetést folytathatjuk további kérdésekkel, vagy a /exit paranccsal kiléphetünk.
Modell kiszolgálása OpenAI-kompatibilis API-n
A fejlesztéshez és alkalmazásprototípusokhoz indíthatunk lokális OpenAI-kompatibilis szervert:
trtedge serve nvidia/NVIDIA-Nemotron-3.5-Lightning-30B-A3B-NVFP4
--host 127.0.0.1
--port 8000
A szerver felépíti vagy újrahasználja a konfigurációnak megfelelő engine-t. Egy másik terminálban ellenőrizzük az állapotot:
curl -fsS http://127.0.0.1:8000/health/ready
A válaszban a "status":"ready" megerősíti, hogy a szerver készen áll. Küldjünk egy promptot a chat completions végpontra:
curl -fsS -N http://127.0.0.1:8000/v1/chat/completions
-H "Content-Type: application/json"
-d '{
"model": "nvidia/NVIDIA-Nemotron-3.5-Lightning-30B-A3B-NVFP4",
"messages": [
{
"role": "user",
"content": "Convert 25°C to Fahrenheit. Answer in one sentence."
}
],
"stream": true,
"temperature": 0,
"max_tokens": 128
}'
A válasz JSON eseményekként streamel. A szervert futtatva további kéréseket fogad, a szerver leállításához használjuk a Ctrl+C-t.
Opcionális: DSpark spekulatív dekódolás bekapcsolása
A generálás felgyorsításához használhatjuk a DSpark spekulatív dekódolást, amely egy draft modellt használ több javasolt token előállítására, amelyet a fő modell egy menetben ellenőriz. Három spekulatív token engedélyezéséhez állítsuk le a szervert (Ctrl+C), majd indítsuk újra a következő konfigurációval:
trtedge serve nvidia/NVIDIA-Nemotron-3.5-Lightning-30B-A3B-NVFP4
--host 127.0.0.1
--port 8000
--speculative-config '{
"method": "dspark",
"model": "nvidia/NVIDIA-Nemotron-3.5-Lightning-30B-A3B-NVFP4-DSpark",
"num_speculative_tokens": 3
}'
A szerver készenléte után ismét küldhetünk kéréseket a chat completions végpontra. Kísérletezhetünk a num_speculative_tokens és egyéb beállítások értékével a generálási sebesség és a pontosság hangolására.
Teljesítmény DGX Spark 64GB-en
A cikkben közölt mérések szerint a TensorRT Edge-LLM alacsony válaszidőt és gyors token-generálást biztosít NVIDIA Nemotron-3.5 Lightning modellel DGX Spark 64GB rendszeren. A mért adatok (medián time-to-first-token és átlagos generálási sebesség token/s):
- DSpark OFF, SpeedBench 1K: medián TTFT 201.0 ms, sebesség 73.3 token/s
- DSpark OFF, SpeedBench 2K: medián TTFT 329.5 ms, sebesség 72.8 token/s
- DSpark OFF, HumanEval prompts: medián TTFT 98.1 ms, sebesség 73.4 token/s
- DSpark ON, SpeedBench 1K: medián TTFT 203.0 ms, sebesség 108.5 token/s
- DSpark ON, SpeedBench 2K: medián TTFT 331.6 ms, sebesség 105.3 token/s
- DSpark ON, HumanEval prompts: medián TTFT 98.7 ms, sebesség 126.9 token/s
A táblázat megjegyzései:
- A generálási sebesség a kérésenkénti átlagos token/s érték, a time-to-first-token idejét nem tartalmazza.
- DSpark három draft tokent használ a mérésekben.
- A DSpark-pal történő inferencia csúcsmemória-használata 27.9 GB volt, beleértve az operációs rendszert.
- A méréseket DGX Spark 64GB-en végezték DGX OS 7.6.0 (Ubuntu 24.04.4 LTS) alatt, NVFP4-gyel és thinking engedélyezve, batch méret 1, egy párhuzamos streaming kérés, 128-token kimeneti limit mellett. Átlagos bemenet-hosszok: SpeedBench 1K 1,153 token, SpeedBench 2K 2,247 token, HumanEval 139 token.
Következő lépések
A fejlesztők kipróbálhatnak más, támogatott modelleket — például képet és videót értelmező vision-language modelleket, valamint beszédfelismerési és text-to-speech modelleket —, és folytathatják alkalmazásaik fejlesztését Sparkon. Érdemes tanulmányozni a TensorRT Edge-LLM dokumentációját a célplatformra vonatkozó modellek és munkafolyamatok követelményeiről, illetve a Nemotron fejlesztői oldalát és a nyílt Nemotron modelleket és adatokat a Hugging Face-en, valamint a build.nvidia.com oldalon elérhető Blueprints forrásait.



