This repository provides instructions for building an inference environment for NVIDIA Audio Flamingo Next using DevContainer. It supports high-speed inference using NVIDIA GPUs. The focus is on creating a reproducible DevContainer configuration and managing dependencies using UV.
0
stars
10
commits
Python
primary language
Apr 15, 2026
updated
NVIDIA Audio Flamingo Next の推論環境を DevContainer で構築するリポジトリです。
NVIDIA GPU を使用した高速推論に対応しています。
再現性のある DevContainer 構成と uv ベースの依存管理を中心に整理しています。
Python 依存は requirements.txt ではなく pyproject.toml と uv.lock を正本として管理します。
Hugging Face のモデルキャッシュは /workspace/.cache/huggingface に保存するため、コンテナを作り直してもワーキングディレクトリが残っている限り再ダウンロードを避けられます。
VS Code でこのリポジトリを開き、コマンドパレット(Ctrl+Shift+P / Cmd+Shift+P)から
「Dev Containers: Reopen in Container」 を選択します。
コンテナのビルドには CUDA 12.8 ベースイメージと uv による依存解決を含むため、
初回は数分かかることがあります。
uv run python -c "import torch; print(torch.cuda.is_available(), torch.cuda.get_device_name(0))"
uv run streamlit run app.py
ブラウザで http://localhost:8501 が開きます。音声ファイルをアップロードして質問を入力するだけで推論できます。モデルは st.cache_resource でセッション中に常駐します。
uv run python inference.py --audio path/to/audio.wav --question "この音声は何ですか?"
サーバーを起動するとモデルが一度だけロードされ、以降は HTTP 経由で高速に推論できます。
uv run python server.py --device cuda --host 127.0.0.1 --port 8000
推論リクエストの送信例:
curl -s -X POST http://127.0.0.1:8000/infer \
-H "Content-Type: application/json" \
-d '{"audio": "/abs/path/to/audio.wav", "question": "この音声は何ですか?"}' \
| python -m json.tool
ヘルスチェック:
curl http://127.0.0.1:8000/health
uv lock
uv sync
モデル取得時のレート制限や警告を避けたい場合は、事前に HF_TOKEN を設定してください。
export HF_TOKEN=your_huggingface_token
python -m unittest discover -s tests -v
.
├── .devcontainer/
│ ├── devcontainer.json # DevContainer 設定(GPU アクセス含む)
│ └── Dockerfile # CUDA 12.8 + uv + 非 root ユーザー設定
├── app.py # Streamlit UI(ブラウザから推論)
├── inference.py # 単発推論 CLI
├── server.py # 常駐 HTTP 推論サーバー(モデルを一度だけロード)
├── pyproject.toml # Python 依存定義
├── tests/ # 軽量ユニットテスト
├── uv.lock # uv ロックファイル
├── requirements.txt # 互換用の旧依存一覧
└── README.md
| 項目 | バージョン |
|---|---|
| CUDA | 12.8.1 |
| cuDNN | 9.x |
| Python | 3.11 |
| PyTorch | 2.7+ (cu128) |
| パッケージ管理 | uv |
| transformers | Audio Flamingo Next 対応ビルド |
uv run python inference.py \
--audio <音声ファイルパス> # WAV / MP3 / FLAC など
--question "質問テキスト" # (省略時: "What do you hear in this audio?")
--model nvidia/audio-flamingo-next-hf # HuggingFace モデル ID
--device cuda # cuda または cpu
--max-new-tokens 512 # 生成トークン数上限
存在しないファイルや未対応拡張子を指定した場合は、モデルをロードする前に明示的にエラー終了します。
AutoModelForCausalLM ではなく、モデルカードの推奨どおり AutoModel と chat template ベースで読み込みます。transformers では audioflamingonext が未対応なため、このリポジトリでは uv の source 設定で Audio Flamingo Next 対応ビルドを固定しています。w
ERROR: Audio file not found:
指定した音声ファイルのパスを確認してください。WARNING: CUDA is not available. Falling back to CPU.:
GPU が見えていないため CPU 実行に切り替わっています。DevContainer を GPU 付きで起動しているか確認してください。The installed transformers build does not support Audio Flamingo Next:
uv sync --frozen --no-dev を再実行し、README 記載の依存構成を使ってください。HF_TOKEN を設定してください。MIT License を採用しています。詳細は LICENSE を参照してください。
Python
92.5%
Dockerfile
7.5%
This repository provides instructions for building an inference environment for NVIDIA Audio Flamingo Next using DevContainer. It supports high-speed inference using NVIDIA GPUs. The focus is on creating a reproducible DevContainer configuration and managing dependencies using UV.
0
stars
10
commits
Python
primary language
Apr 15, 2026
updated
NVIDIA Audio Flamingo Next の推論環境を DevContainer で構築するリポジトリです。
NVIDIA GPU を使用した高速推論に対応しています。
再現性のある DevContainer 構成と uv ベースの依存管理を中心に整理しています。
Python 依存は requirements.txt ではなく pyproject.toml と uv.lock を正本として管理します。
Hugging Face のモデルキャッシュは /workspace/.cache/huggingface に保存するため、コンテナを作り直してもワーキングディレクトリが残っている限り再ダウンロードを避けられます。
VS Code でこのリポジトリを開き、コマンドパレット(Ctrl+Shift+P / Cmd+Shift+P)から
「Dev Containers: Reopen in Container」 を選択します。
コンテナのビルドには CUDA 12.8 ベースイメージと uv による依存解決を含むため、
初回は数分かかることがあります。
uv run python -c "import torch; print(torch.cuda.is_available(), torch.cuda.get_device_name(0))"
uv run streamlit run app.py
ブラウザで http://localhost:8501 が開きます。音声ファイルをアップロードして質問を入力するだけで推論できます。モデルは st.cache_resource でセッション中に常駐します。
uv run python inference.py --audio path/to/audio.wav --question "この音声は何ですか?"
サーバーを起動するとモデルが一度だけロードされ、以降は HTTP 経由で高速に推論できます。
uv run python server.py --device cuda --host 127.0.0.1 --port 8000
推論リクエストの送信例:
curl -s -X POST http://127.0.0.1:8000/infer \
-H "Content-Type: application/json" \
-d '{"audio": "/abs/path/to/audio.wav", "question": "この音声は何ですか?"}' \
| python -m json.tool
ヘルスチェック:
curl http://127.0.0.1:8000/health
uv lock
uv sync
モデル取得時のレート制限や警告を避けたい場合は、事前に HF_TOKEN を設定してください。
export HF_TOKEN=your_huggingface_token
python -m unittest discover -s tests -v
.
├── .devcontainer/
│ ├── devcontainer.json # DevContainer 設定(GPU アクセス含む)
│ └── Dockerfile # CUDA 12.8 + uv + 非 root ユーザー設定
├── app.py # Streamlit UI(ブラウザから推論)
├── inference.py # 単発推論 CLI
├── server.py # 常駐 HTTP 推論サーバー(モデルを一度だけロード)
├── pyproject.toml # Python 依存定義
├── tests/ # 軽量ユニットテスト
├── uv.lock # uv ロックファイル
├── requirements.txt # 互換用の旧依存一覧
└── README.md
| 項目 | バージョン |
|---|---|
| CUDA | 12.8.1 |
| cuDNN | 9.x |
| Python | 3.11 |
| PyTorch | 2.7+ (cu128) |
| パッケージ管理 | uv |
| transformers | Audio Flamingo Next 対応ビルド |
uv run python inference.py \
--audio <音声ファイルパス> # WAV / MP3 / FLAC など
--question "質問テキスト" # (省略時: "What do you hear in this audio?")
--model nvidia/audio-flamingo-next-hf # HuggingFace モデル ID
--device cuda # cuda または cpu
--max-new-tokens 512 # 生成トークン数上限
存在しないファイルや未対応拡張子を指定した場合は、モデルをロードする前に明示的にエラー終了します。
AutoModelForCausalLM ではなく、モデルカードの推奨どおり AutoModel と chat template ベースで読み込みます。transformers では audioflamingonext が未対応なため、このリポジトリでは uv の source 設定で Audio Flamingo Next 対応ビルドを固定しています。w
ERROR: Audio file not found:
指定した音声ファイルのパスを確認してください。WARNING: CUDA is not available. Falling back to CPU.:
GPU が見えていないため CPU 実行に切り替わっています。DevContainer を GPU 付きで起動しているか確認してください。The installed transformers build does not support Audio Flamingo Next:
uv sync --frozen --no-dev を再実行し、README 記載の依存構成を使ってください。HF_TOKEN を設定してください。MIT License を採用しています。詳細は LICENSE を参照してください。
Python
92.5%
Dockerfile
7.5%