Jetson サンプルクイックスタート

はじめに

Seeed Studios の jetson-examples リポジトリは、NVIDIA Jetson デバイス向けの事前ビルド済み、すぐ使える AI サンプルを提供します。環境設定や依存関係のインストールに何時間もかける必要はなく、Docker コンテナを使用して単一のコマンドで複雑な AI モデルをデプロイできます。

このモジュールでは、jetson-examples CLI ツールを使用して Jetson デバイスに LLM やその他の AI モデルを迅速にデプロイする方法を説明します。

jetson-examples

jetson-examples とは?

jetson-examples は次の機能を持つコマンドラインツールです:

  • 人気の AI モデルのワンラインデプロイを提供
  • 隔離された、再現可能な環境のためにDocker コンテナを使用
  • Jetson ハードウェア用の事前最適化設定を含む
  • 複数のフレームワークをサポート:PyTorch、TensorRT、Ollama など
機能説明
簡単なインストールpip3 install jetson-examples でインストール
ワンコマンド実行reComputer run でデプロイ
Docker ベースデバイス間で一貫した環境
自動設定Jetson パフォーマンス用に事前調整
定期的な更新新規サンプルが定期的に追加

インストール

CLI ツールのインストール

bash
# pip で jetson-examples をインストール
pip3 install jetson-examples

# インストールを確認
reComputer --help

代替:手動 Docker セットアップ

手動制御を好む場合:

bash
# Docker をインストール(まだの場合)
sudo apt-get update
sudo apt-get install -y docker.io

# ユーザーを docker グループに追加(ログアウト/ログインが必要)
sudo usermod -aG docker $USER

# Docker を確認
docker --version

jetson-examples-install

利用可能な LLM サンプル

jetson-examples リポジトリで利用できる LLM 関連のサンプル:

テキストのみ LLM

サンプルタイプモデルサイズコマンド
llama3テキスト (LLM)4.9GB モデルreComputer run llama3
gemma4テキスト (LLM)2.5GB モデルreComputer run gemma4
qwen3.5-4bテキスト (LLM)2.5GB モデルreComputer run qwen3.5-4b
qwen3.6-35bテキスト (LLM)28GB モデルreComputer run qwen3.6-35b
nemotron-3-nanoテキスト (LLM)24.5GB モデルreComputer run nemotron-3-nano
text-generation-webuiテキスト (LLM)3.9GB モデルreComputer run text-generation-webui

ビジョン言語モデル (VLM)

サンプルタイプモデルサイズコマンド
llava-v1.5VLM13GB モデルreComputer run llava-v1.5-7b
llava-v1.6VLM13GB モデルreComputer run llava-v1.6-vicuna-7b
live-vlm-webuiVLM13GB モデルreComputer run live-vlm-webui
gemma4VLM2.5GB モデルreComputer run gemma4

オーディオ&音声

サンプルタイプモデルサイズコマンド
whisperASR(音声からテキスト)1.5GB モデルreComputer run whisper
parler-ttsTTS(テキストから音声)6.9GB イメージreComputer run parler-tts

推論サーバー

サンプルタイプモデルサイズコマンド
ollama推論サーバー10.5GB イメージreComputer run ollama

はじめに

サンプル 1:Ollama の実行

Jetson で LLM を始める 가장 빠른方法:

bash
# Docker で Ollama をデプロイ
reComputer run ollama

実行すると、モデルを引き引いて実行できます:

bash
# Docker コンテナに入る
docker exec -it ollama bash

# モデルを引き引いて実行
ollama run llama3.2:3b

サンプル 2:ビジョン言語モデルの実行

bash
# 画像理解用に LLaVA をデプロイ
reComputer run llava-v1.5-7b

画像を理解して説明するモデルがセットアップされます。

サンプル 3:テキスト生成 WebUI のデプロイ

LLM と対話する全機能 Web インターフェースの場合:

bash
# text-generation-webui (Oobabooga) をデプロイ
reComputer run text-generation-webui

Web インターフェースにアクセス:http://localhost:5000

サンプル 4:音声認識用の Whisper のデプロイ

bash
# 音声からテキストへの OpenAI Whisper をデプロイ
reComputer run whisper

実践例:チャットボットの構築

jetson-examples を使用してシンプルなチャットボットを作成しましょう:

ステップ 1:Ollama をデプロイ

bash
reComputer run ollama

ステップ 2:モデルを引き引く

bash
# 実行中のコンテナを確認
docker ps

# Ollama コンテナに入る
docker exec -it ollama ollama pull llama3.2:3b

ステップ 3:API でテスト

bash
# チャット API をテスト
curl http://localhost:11434/api/chat -d '{
  "model": "llama3.2:3b",
  "messages": [
    {"role": "user", "content": "What can you help me with?"}
  ],
  "stream": false
}'

ステップ 4:Python 統合

python
import requests

def chat_with_model(user_message, model="llama3.2:3b"):
    response = requests.post(
        "http://localhost:11434/api/chat",
        json={
            "model": model,
            "messages": [{"role": "user", "content": user_message}],
            "stream": False
        }
    )
    return response.json()["message"]["content"]

# インタラクティブなチャット
while True:
    user_input = input("You: ")
    if user_input.lower() in ['quit', 'exit', 'q']:
        break
    response = chat_with_model(user_input)
    print(f"AI: {response}\n")

コンテナの管理

一般的な Docker コマンド

bash
# 実行中のコンテナをリスト
docker ps

# すべてのコンテナをリスト(停止中のものも含む)
docker ps -a

# コンテナログを表示
docker logs <container-name>

# コンテナを停止
docker stop <container-name>

# コンテナを再起動
docker restart <container-name>

# コンテナを削除
docker rm <container-name>

# 実行中のコンテナに入る
docker exec -it <container-name> bash

リソース監視

bash
# コンテナのリソース使用を監視
docker stats

# ディスク使用を確認
docker system df

デプロイのカスタマイズ

環境変数

多くのサンプルは環境変数による設定をサポートしています:

bash
# 例:Ollama のモデルパラメータを設定
docker run -d \
  --name ollama \
  --gpus all \
  -e OLLAMA_HOST=0.0.0.0:11434 \
  -p 11434:11434 \
  ollama/ollama:latest

ボリュームマウント

コンテナの再起動間でデータを永続化:

bash
# モデルストレージにローカルディレクトリをマウント
docker run -d \
  --name ollama \
  --gpus all \
  -v /path/to/models:/root/.ollama \
  -p 11434:11434 \
  ollama/ollama:latest

ネットワーク設定

ネットワーク上の他のデバイスからサービスにアクセス:

bash
# すべてのインターフェースにバインド(localhost だけでなく)
docker run -d \
  --name ollama \
  --gpus all \
  -p 0.0.0.0:11434:11434 \
  ollama/ollama:latest

パフォーマンスのヒント

1. GPU パススルーを使用

Docker が GPU アクセスを持っていることを確認:

bash
# コンテナ内の GPU アクセスを確認
docker exec -it <container-name> nvidia-smi

2. 適切なメモリを割り当て

bash
# コンテナメモリを制限(オプション、マルチコンテナ設定用)
docker run -d \
  --name ollama \
  --gpus all \
  --memory=12g \
  --memory-swap=16g \
  ollama/ollama:latest

3. SSD ストレージを使用

モデルは SSD からの方が SD カードや eMMC より速くロードされます。

一般的な問題と解決策

問題 1:Docker の権限が拒否された

問題Got permission denied while trying to connect to the Docker daemon socket

解決策

bash
# ユーザーを docker グループに追加
sudo usermod -aG docker $USER

# ログアウトして再ログインして変更を反映
# または現在のセッションで実行:
newgrp docker

問題 2:コンテナが起動しない

問題:コンテナが起動直後に終了する

解決策

bash
# コンテナログでエラーを確認
docker logs <container-name>

# 利用可能なリソースを確認
free -h
df -h
nvidia-smi

サンプルのリポジトリとプロジェクト

jetson-examples リポジトリのこれらのサンプルを探索:

llama-factory

Jetson デバイスで LLM をファインチューン:

bash
reComputer run llama-factory

モデル/データサイズ:13.5GB

live-vlm-webui

リアルタイムビジョン言語モデルインターフェース:

bash
reComputer run live-vlm-webui

機能:AI 理解を伴うライブカメラフィード処理

deep-live-cam

リアルタイム顔交換と処理:

bash
reComputer run deep-live-cam

実践演習

  1. jetson-examples ツールをインストール
  2. Ollama をデプロイ して llama3.2:3b を実行
  3. 画像理解用に LLaVA をデプロイ
  4. デプロイされたモデルと対話する Python スクリプトを作成
  5. グラフィカルインターフェース用に Open WebUI を設定
  6. リポジトリ内の 他のサンプルを探索

参考文献


次へモジュール 5.6:ASR + LLM + TTS パイプラインの構築 で完全な音声アシスタントを作成しましょう!