抢先体验 NVIDIA Jetson Orin Nano Super——最经济实惠的生成式 AI 超级计算机

2025-06-04

抢先体验 NVIDIA Jetson Orin Nano Super——最经济实惠的生成式 AI 超级计算机

目录

NVIDIA 刚刚发布了其最新产品——Jetson Orin Nano 超级开发套件,彻底革新了边缘计算。这不仅仅是一次增量更新,更是一次重大飞跃,以前所未有的 249 美元价格将生成式 AI 功能带入了边缘计算领域。

Jetson Nano 与 Jetson Orin Nano Super 的比较

NVIDIA Jetson Orin Nano 超级开发套件是一款紧凑但功能强大的计算机,它重新定义了小型边缘设备的生成式 AI。

它可提供高达 67 TOPS 的 AI 性能(比其前代产品提高了 1.7 倍),可以无缝运行各种生成式 AI 模型,例如视觉转换器、大型语言模型、视觉语言模型等。

它为开发者、学生和创客提供最经济实惠且易于访问的平台,并借助 NVIDIA AI 软件和广泛的 AI 软件生态系统,实现边缘计算生成式 AI 的普及。现有的 Jetson Orin Nano 开发者套件用户只需升级软件即可体验性能提升,让每个人都能
通过生成式 AI 开启新的可能。

了解 Jetson AI 实验室

jetson_orin_1

让我们深入了解一下它的规格,看看它与前代产品相比如何:

特征 Orin Nano 原装 Orin Nano Super 改进
GPU架构 NVIDIA Ampere(1024 个 CUDA 核心、32 个 Tensor 核心)@ 635 MHz NVIDIA Ampere(1024 个 CUDA 核心、32 个 Tensor 核心)@ 1020 MHz 1.6倍GPU时钟
人工智能性能 40 TOPS(稀疏)/ 20 TOPS(密集) 67 TOPS(稀疏)/ 33 TOPS(密集) 1.7 倍 AI 性能
中央处理器 6核Arm Cortex-A78AE @ 1.5 GHz 6核Arm Cortex-A78AE @ 1.7 GHz 1.13 倍 CPU 时钟
记忆 8GB 128 位 LPDDR5 @ 68 GB/s 8GB 128 位 LPDDR5 @ 102 GB/s 1.5倍内存带宽
模块电源 7瓦/15瓦 7瓦/15瓦/25瓦 附加电源模式

NVIDIA Jetson Orin Super 有多强?

jetson_orin_2

Super 版本最引人注目的是其性能改进:

  • AI 计算性能提高 1.7 倍(67 TOPS vs 40 TOPS)
  • 内存带宽增加 1.5 倍(102 GB/s vs 68 GB/s)
  • 更高的 GPU 和 CPU 时钟速度,带来更好的整体性能

生成式人工智能能力

NVIDIA Jetson™ 平台运行 NVIDIA AI 软件堆栈,并配备各种针对特定用例的应用程序框架。这些框架包括用于机器人技术的 NVIDIA Isaac™、用于视觉 AI 的 NVIDIA Metropolis 和用于传感器处理的 NVIDIA Holoscan。您可以使用 NVIDIA Omniverse™ Replicator 进行合成数据生成 (SDG),并使用 NVIDIA TAO Toolkit 对 NVIDIA® NGC™ 目录中的预训练 AI 模型进行微调,从而节省大量时间。

Orin Nano Super 最令人印象深刻的方面之一是它能够运行各种类型的生成式 AI 模型:
大型语言模型 (LLM):

模型 性能提升
骆驼-3.1 8B 1.37倍
骆驼 3.2 3B 1.55倍
Qwen2.5 7B 1.53倍
杰玛2 2B 1.63倍
杰玛2 9B 1.28倍
菲 3.5 3B 1.54倍
SmoLLM2 1.7B 1.57倍

视觉语言模型(VLM):

模型 性能提升
维拉 1.5 3B 1.51倍
维拉 1.5 8B 1.45倍
拉瓦 1.6 7B 1.36倍
Qwen2-VL-2B 1.57倍
实习生VL2.5-4B 2.04倍
PaliGemma2-3B 1.58倍
SmoLVLM-2B 1.59倍

视觉变形金刚

模型 性能提升
clip-vit-base-patch32 1.60倍
clip-vit-base-patch16 1.69倍
DINOv2-基础-补丁14 1.68倍
SAM2 基地 1.43倍
接地-DINO 1.52倍
vit-base-patch16-224 1.61倍
vit-base-patch32-224 1.60倍

I/O 和连接

界面 规格
相机 2个MIPI CSI-2 22针摄像头连接器
PCIe M.2 键 M x4 PCIe Gen 3
附加 PCIe M.2 键 M x2 PCIe Gen3
扩张 M.2 Key E PCIe (x1)、USB 2.0、UART、I2S 和 I2C
USB 4 个 USB 3.2 Gen2 A 型 + 1 个 C 型(用于调试)
网络 1个GbE连接器
展示 DisplayPort 1.2 (+MST)
贮存 microSD 插槽(UHS-1 卡最高支持 SDR104 模式)
通用输入输出 40针扩展接头

开发人员友好功能

特征 描述
软件堆栈 全面支持 TensorRT-LLM
框架兼容性 与流行框架的原生兼容性
Jetson 生态系统 Jetson 软件堆栈和微服务支持
部署 预构建容器,可快速部署

人工智能开发工具

工具 描述
TensorRT 优化 使用 TensorRT 优化推理
量化支持 INT8/FP16量化支持
多模型推理 能够同时运行多个模型
集装箱化 Docker 容器支持,轻松部署

Jetson Orin Super 入门

图片8

本指南将指导您在 Jetson 设备上设置 Ollama,将其与 Open WebUI 集成,并配置系统以实现最佳 GPU 利用率。无论您是开发者还是 AI 爱好者,此设置都能让您在 Jetson 设备上充分发挥 LLM 的潜力。

先决条件

你需要什么?

注意:NVIDIA Jetson Orin Nano 开发套件不支持
HDMI,但它有一个 DisplayPort 输出端口。您可以使用
适配器将该套件连接到仅支持 HDMI 的显示器或电视。

  • NVMe SSD(代替 SD 卡)

注意:如果您真的想运行
AI 工作负载,我强烈建议您使用 NVMe SSD。将 NVMe SSD 添加到 Jetson 开发板

图像

  • WiFi适配器
  • 无线键盘
  • 无线鼠标
  • 用于安装 SDK Manager 的 Linux 笔记本电脑

注意:需要使用 NVIDIA SDK 管理器将 Jetson Orin SDK 卡映像刷入开发板。不要浪费时间直接将其写入 SD 卡。使用 SDK 管理器可以节省您的时间。

软件

  • 下载 Jetson SD 卡镜像

请务必从此链接下载最新的 JetPack 6.2 SDK。您的 Jetson Orin Nano 开发套件出厂时预装了旧固件,与 JetPack 6.x 不兼容。点击此处下载

  • 安装在本地系统上的 Etcher

使用此链接下载 Jetson SDK

入门

  • 使用 SDK 管理器刷新 Jetson 开发板 - 正确的方法

要使用 SDK 管理器烧写 Orin Nano,必须先将其置于“恢复模式”。为此,请在 Orin Nano 卡背面的 FC_REC 和 GND 引脚(引脚 2 和 3)之间连接跳线或跳线。请参阅此博客了解更多信息。

图片8

跳线针

  • 确保 SDK 管理器检测到 Jetson 主板和 NVMe SSD
  • 将操作系统刷入 NVMe SSD

图片6

步骤1.验证L4T版本

要检查 NVIDIA Jetson 设备(例如 Jetson Nano、Jetson Xavier)上的 L4T(Linux for Tegra)版本,请按照以下步骤操作:

运行以下命令来检索您当前的 L4T 版本。

head -n 1 /etc/nv_tegra_release

结果:

head -n 1 /etc/nv_tegra_release
# R36 (release), REVISION: 4.3, GCID: 38968081, BOARD: generic, EABI: aarch64, DATE: Wed Jan  8 01:49:37 UTC 2025
Enter fullscreen mode Exit fullscreen mode

以下是受支持的 L4T 版本列表:

  • 35.3.1
  • 35.4.1
  • 35.5.0
  • 36.3.0

如果您的 L4T 版本与上面列出的支持版本不匹配,您可能需要在 NVIDIA Jetson 设备上重新刷写系统。您可能需要在另一台计算机上使用 SDK 管理器来重新刷写设备。您可以下载 SDK 管理器并按照NVIDIA 官方开发者网站上的教程进行操作。

第 2 步:保持apt最新状态:

   sudo apt update && sudo apt upgrade
Enter fullscreen mode Exit fullscreen mode

步骤3.安装jetpack

   sudo apt install jetpack
Enter fullscreen mode Exit fullscreen mode

步骤 4. 添加用户

将您的用户添加到 docker 组并重新启动 Docker 服务以应用更改:

   sudo usermod -aG docker $USER && \
   newgrp docker && \
   sudo systemctl daemon-reload && \
   sudo systemctl restart docker
Enter fullscreen mode Exit fullscreen mode

步骤5.安装jetson-examples

   pip3 install jetson-examples
Enter fullscreen mode Exit fullscreen mode

步骤6.重启系统

   sudo reboot
Enter fullscreen mode Exit fullscreen mode

步骤 7. 安装 Ollama

   reComputer run ollama
Enter fullscreen mode Exit fullscreen mode

可选:如果您通过运行上述命令ssh并遇到错误command not found: reComputer,则可以通过执行以下命令解决此问题:

   source ~/.profile
Enter fullscreen mode Exit fullscreen mode

步骤 8. 运行模型

我能够运行 DeepSeek R1 模型,总体结果非常令人印象深刻。

asciicast

步骤 9. 从 Ollama 库安装模型(例如 llama3.2)

ollama pull llama3.2
Enter fullscreen mode Exit fullscreen mode

步骤 9. 通过 Docker 安装并运行 Open WebUI

Jetson Orin 默认安装了 Docker。截至撰写本文时,我已默认安装了以下 Docker 二进制文件:

ajeetraina@ajeetraina-desktop:~$ sudo docker version
[sudo] password for ajeetraina:
Client: Docker Engine - Community
 Version:           28.0.1
 API version:       1.48
 Go version:        go1.23.6
 Git commit:        068a01e
 Built:             Wed Feb 26 10:41:16 2025
 OS/Arch:           linux/arm64
 Context:           default

Server: Docker Engine - Community
 Engine:
  Version:          28.0.1
  API version:      1.48 (minimum version 1.24)
  Go version:       go1.23.6
  Git commit:       bbd0a17
  Built:            Wed Feb 26 10:41:16 2025
  OS/Arch:          linux/arm64
  Experimental:     false
 containerd:
  Version:          1.7.25
  GitCommit:        bcc810d6b9066471b0b6fa75f557a15a1cbf31bb
 runc:
  Version:          1.2.4
  GitCommit:        v1.2.4-0-g6c52b3f
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0
Enter fullscreen mode Exit fullscreen mode
docker run -d -p 3000:8080 --gpus all --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:cuda
Enter fullscreen mode Exit fullscreen mode

步骤10.通过docker安装并运行OpenWebUI

安装完成后,您可以通过浏览器中访问 YOUR_SERVER_IP:3000 来访问 GUI。

通过导航至 YOUR_SERVER_IP/ollama/docs#/ 访问 API 端点。如需完整文档,请参阅官方资源:Ollama API 文档(推荐)和 Open WebUI API 端点。

使用 GPU

此安装方法使用单个容器镜像,该镜像将 Open WebUI 与 Ollama 捆绑在一起,从而允许通过单个命令进行简化的设置。请根据您的硬件设置选择适当的命令:

sudo docker run -d -p 3000:8080 --gpus=all -v ollama:/root/.ollama -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:ollama
Enter fullscreen mode Exit fullscreen mode

仅使用 CPU

仅适用于 CPU:如果您不使用 GPU,请改用以下命令:

sudo docker run -d -p 3000:8080 -v ollama:/root/.ollama -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:ollama
Enter fullscreen mode Exit fullscreen mode

这两个命令都有助于 Open WebUI 和 Ollama 的内置、无忧安装,确保您可以快速启动并运行一切。

配置完成后,Open WebUI 可通过http://localhost:3000访问,Ollama 可通过http://localhost:11434运行。此设置提供了一个无缝且 GPU 加速的环境,用于在 NVIDIA Jetson 设备上本地运行和管理 LLM。

设置 TensorRT LLM

TensorRT-LLM 本质上是一种专用工具,可以使大型语言模型(如 ChatGPT)在 NVIDIA 硬件上运行得更快。

可以这样想:如果说常规语言模型就像汽车引擎,可以带你从 A 点到达 B 点,那么 TensorRT-LLM 就像一套高性能调优套件,可以让同一引擎更加高效、强大。
简而言之:

  • 它采用通常响应较慢的 AI 语言模型并对其进行优化,使其运行速度更快。
  • 它专为 Jetson Orin 等 NVIDIA 硬件而设计,可帮助其在运行复杂的 AI 模型时发挥出超乎寻常的作用。
  • 它的工作原理是重组模型来消除低效率,类似于机械师在不改变基本设计的情况下调整汽车发动机以获得更好的性能。
  • 最终结果是,在您的设备上可能太慢而无法实用的 AI 模型现在可以以合理的响应时间运行。

TensorRT-LLM 是一个高性能 LLM 推理库,具有高级量化、注意核和分页键值缓存功能。针对 Jetson AGX Orin 的 TensorRT-LLM 代码库 v0.12.0-jetson 分支已包含针对 JetPack 6.1 从源代码构建 TensorRT-LLM 的初始支持。

我强烈推荐 NVMe SSD,因为它的存储速度和空间都很好。

  • tensorrt_llm 容器镜像占用 18.5GB
  • 模型空间(>10GB)
git clone https://github.com/dusty-nv/jetson-containers
bash jetson-containers/install.sh
Enter fullscreen mode Exit fullscreen mode

为 Llama 构建 TensorRT-LLM 引擎

您可以在代码库的 examples/llama 目录下找到将 Llama 转换为 TensorRT-LLM 的步骤,也可以在文档中找到。此脚本将自动执行应用 INT4 量化的 Llama-7B 的转换过程,并对模型运行一些生成和性能检查:

首先,获取 Hugging Face API 令牌,将其传递给命令并运行它:

首先,创建具有适当权限的目录:

sudo mkdir -p /tmp/llama2-config
sudo chmod 777 /tmp/llama2-config
Enter fullscreen mode Exit fullscreen mode

然后尝试再次创建文件:

cat > /tmp/llama2-config/config.json << 'EOF'
{
  "_name_or_path": "meta-llama/Llama-2-7b-chat-hf",
  "architectures": ["LlamaForCausalLM"],
  "attn_implementation": "sdpa",
  "bos_token_id": 1,
  "eos_token_id": 2,
  "hidden_act": "silu",
  "hidden_size": 4096,
  "initializer_range": 0.02,
  "intermediate_size": 11008,
  "max_position_embeddings": 4096,
  "model_type": "llama",
  "num_attention_heads": 32,
  "num_hidden_layers": 32,
  "num_key_value_heads": 32,
  "pretraining_tp": 1,
  "rms_norm_eps": 1e-05,
  "rope_scaling": null,
  "tie_word_embeddings": false,
  "torch_dtype": "float16",
  "transformers_version": "4.31.0",
  "use_cache": true,
  "vocab_size": 32000
}
EOF
Enter fullscreen mode Exit fullscreen mode

还创建标记器配置:

cat > /tmp/llama2-config/tokenizer_config.json << 'EOF'
{
  "add_bos_token": true,
  "add_eos_token": false,
  "bos_token": {
    "__type": "AddedToken",
    "content": "<s>",
    "lstrip": false,
    "normalized": true,
    "rstrip": false,
    "single_word": false
  },
  "clean_up_tokenization_spaces": false,
  "eos_token": {
    "__type": "AddedToken",
    "content": "</s>",
    "lstrip": false,
    "normalized": true,
    "rstrip": false,
    "single_word": false
  },
  "model_max_length": 1000000000000000019884624838656,
  "tokenizer_class": "LlamaTokenizer",
  "unk_token": {
    "__type": "AddedToken",
    "content": "<unk>",
    "lstrip": false,
    "normalized": true,
    "rstrip": false,
    "single_word": false
  }
}
EOF
Enter fullscreen mode Exit fullscreen mode

现在是时候转换模型了:

jetson-containers run \
  -e HUGGINGFACE_TOKEN=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 \
  -e FORCE_BUILD=on \
  -v /tmp/llama2-config:/tmp/llama2-config \
  dustynv/tensorrt_llm:0.12-r36.4.0 \
  bash -c "cd /opt/TensorRT-LLM/examples/llama && python3 convert_checkpoint.py \
  --model_dir /tmp/llama2-config \
  --output_dir /data/models/tensorrt_llm/Llama-2-7b-chat-hf-gptq \
  --dtype float16 \
  --quant_ckpt_path /data/models/huggingface/models--TheBloke--Llama-2-7B-Chat-GPTQ/snapshots/d5ad9310836dd91b6ac6133e2e47f47394386cea/model.safetensors \
  --use_weight_only \
  --weight_only_precision int4_gptq \
  --group_size 128 \
  --per_group"
Enter fullscreen mode Exit fullscreen mode

太棒了!转换现在运行成功了。你可以看到它以每秒 4.83 次迭代的速度处理了 550 次迭代,这是一个不错的进展。

该命令运行正常,模型正在转换为 TensorRT-LLM 格式。此过程将持续一段时间,因为它会处理所有模型层和权重,以针对您的 Jetson 硬件进行优化。

要在不进入容器的情况下运行转换过程,您需要创建一个处理完整工作流程的命令。我将创建一个您可以保存并运行的脚本:

#!/bin/bash

# Save this as convert_llama_gptq.sh and make it executable with: chmod +x convert_llama_gptq.sh

# Run the container with all the necessary steps in sequence
jetson-containers run \
  -it \
  dustynv/tensorrt_llm:0.12-r36.4.0 \
  bash -c '
    # Step 1: Install GPTQ model support
    pip install gptqmodel

    # Step 2: Download the complete model with configs
    cd /tmp
    python3 -c "from transformers import AutoModelForCausalLM; AutoModelForCausalLM.from_pretrained('\''TheBloke/Llama-2-7B-Chat-GPTQ'\'', trust_remote_code=True)"

    # Step 3: Find the snapshot directory
    SNAPSHOT_DIR=$(find /root/.cache/huggingface/hub/models--TheBloke--Llama-2-7B-Chat-GPTQ/snapshots -type d | head -1)
    echo "Using model directory: $SNAPSHOT_DIR"

    # Step 4: Run the conversion
    cd /opt/TensorRT-LLM/examples/llama
    python3 convert_checkpoint.py \
      --model_dir $SNAPSHOT_DIR \
      --output_dir /data/models/tensorrt_llm/Llama-2-7b-chat-hf-gptq \
      --dtype float16 \
      --use_weight_only \
      --weight_only_precision int4_gptq \
      --group_size 128 \
      --per_group
Enter fullscreen mode Exit fullscreen mode

将此脚本保存到文件中,使其可执行,然后运行它。整个过程将在容器内按顺序执行,无需您手动进入容器。
脚本如下:

  • 安装 GPTQ 模型支持
  • 下载包含所有配置的完整模型
  • 查找下载模型的实际快照目录
  • 使用正确的目录运行转换

请注意,这仍然需要相当长的时间才能完成,尤其是转换步骤。该过程运行时,您将在终端中看到输出。

#!/bin/bash

# Save this as convert_llama_gptq.sh and make it executable with: chmod +x convert_llama_gptq.sh

# Run the container with all the necessary steps in sequence
jetson-containers run \
  -it \
  dustynv/tensorrt_llm:0.12-r36.4.0 \
  bash -c '
    # Step 1: Install required packages
    pip install auto-gptq

    # Step 2: Create a config directory with required files
    mkdir -p /tmp/llama_config

    # Create config.json
    cat > /tmp/llama_config/config.json << EOF
{
  "_name_or_path": "meta-llama/Llama-2-7b-chat-hf",
  "architectures": ["LlamaForCausalLM"],
  "bos_token_id": 1,
  "eos_token_id": 2,
  "hidden_act": "silu",
  "hidden_size": 4096,
  "initializer_range": 0.02,
  "intermediate_size": 11008,
  "max_position_embeddings": 4096,
  "model_type": "llama",
  "num_attention_heads": 32,
  "num_hidden_layers": 32,
  "num_key_value_heads": 32,
  "rms_norm_eps": 1e-05,
  "rope_scaling": null,
  "tie_word_embeddings": false,
  "transformers_version": "4.31.0",
  "use_cache": true,
  "vocab_size": 32000
}
EOF

    # Step 3: Run the conversion
    cd /opt/TensorRT-LLM/examples/llama
    python3 convert_checkpoint.py \
      --model_dir /tmp/llama_config \
      --output_dir /data/models/tensorrt_llm/Llama-2-7b-chat-hf-gptq \
      --dtype float16 \
      --quant_ckpt_path /data/models/huggingface/models--TheBloke--Llama-2-7B-Chat-GPTQ/snapshots/d5ad9310836dd91b6ac6133e2e47f47394386cea/model.safetensors \
      --use_weight_only \
      --weight_only_precision int4_gptq \
      --group_size 128 \
      --per_group
Enter fullscreen mode Exit fullscreen mode

结论

Jetson Orin Nano 超级开发者套件代表了边缘 AI 计算领域的一个重要里程碑。它以前所未有的价格将数据中心级的 AI 功能带到了边缘,使其成为开发者、研究人员和企业在边缘部署高级 AI 应用的理想平台。

更强大的 AI 性能、更强大的内存带宽以及更广泛的模型支持,使其成为任何认真对待边缘 AI 开发的人的理想之选。249 美元的价格,它不仅仅是一款产品,更是一场 AI 计算领域的革命。

在下一篇博文中,我们将深入探讨模型优化。敬请期待。

参考

文章来源:https://dev.to/ajeetraina/first-look-at-nvidia-jetson-orin-nano-super-the-most-affordable-generative-ai-supercomputer-1pe9
PREV
如何在 Mac OS 上安装和配置 NVM
NEXT
如何使用 HTML、CSS 和 JavaScript 创建秒表。