【DEEPX】自然言語でエッジAIアプリを自律開発!「dx-agent-dev」をVS Code(Copilot)とWSLで試し、ラズパイ5で動かしてみた(デモ動画あり)

はじめに:DEEPXの新機能「Agent-Driven Development」とは?

ごんた🐶です。エッジAI半導体メーカーのDEEPXが、統合SDK環境「dx-all-suite」においてAgent-Driven Development(エージェント駆動開発:dx-agent-dev)のベータ版を公開しました。

自然言語で「どんなアプリを作りたいか」を指示するだけで、AIコーディングツール(GitHub Copilot、Cursor、Claude Code等)がDEEPXのナレッジベースを読み込み、要件定義(Brainstorming)→ 実装計画 → テスト駆動開発(TDD)→ コード生成・検証までを自律的に完走してくれる開発フレームワークです。

今回は、手元のWindows PC(WSL)上のVS Code+無料版GitHub Copilotを使ってコードを自律生成させ、DX-M1 NPUを搭載したRaspberry Pi 5で動かすまでの実践レポートをお届けします。

検証環境と構成

開発と実機実行の環境を以下のように分離して検証しました。

  • 開発環境(コード生成・テスト検証):
    • Windows 11 + WSL(Ubuntu)
    • VS Code + GitHub Copilot Chat(無料プラン)
  • ターゲット実行環境(NPU推論):
    • Raspberry Pi 5
    • DEEPX DX-M1 M.2 モジュール(NPU)
    • DEEPX DX-RT SDK

ステップ1:WSLとVS Code環境のセットアップ

まずはWSL側のLinux領域にDEEPXのリポジトリを準備します。

# ホームディレクトリで再帰的クローン
cd ~
git clone --recursive https://github.com/DEEPX-AI/dx-all-suite.git

# VS Codeでプロジェクトを開く
cd dx-all-suite
code .

必要な拡張機能

VS Codeの拡張機能マーケットプレイスから、「WSLにインストール」で以下を導入します。

  • GitHub Copilot Chat(従来の補完機能も統合済み)
  • Python

ポイント:リポジトリのルート(dx-all-suite)でVS Codeを開くことで、.github/copilot-instructions.md やエージェント定義が自動認識されます。

ステップ2:直面した課題とWSLでの回避策

Copilot Chatを開き、Showcaseにあるスクワットミニゲームのプロンプトを投入したところ、最初の壁に直面しました。

@dx-suite-builder Build a squat-counting fitness mini-game using yolo26n-pose on DEEPX NPU, validate with dx-agent-dev-showcase/mini-game-squat-fitness/sample/squat_demo.mp4.

発生したエラー:ハードウェア検証ガード

The build is blocked by missing DEEPX runtime prerequisites:
sanity_check.sh --dx_rt failed
dx_engine and dxcli are unavailable

エージェントはコード生成だけでなく「その場でのNPU実機推論と動画出力」まで完走しようとするため、DX-M1が接続されていない開発用WSLでは検証チェックで停止してしまいます。

解決策:プロンプトで「ハードウェア検証スキップ」を指定

エージェントに対し、「ホストはWSL開発機のため実機チェックをパスし、純粋なPythonロジックと単体テスト(TDD)の生成に集中すること」を明示します。

ステップ3:ゼロからリッチなUI(HUD)を生成させるプロンプト

Showcaseの既存コードを流用せず、新規ディレクトリにアーケードゲーム風のリッチなHUD付きアプリをゼロから書かせるため、以下のプロンプトを実行しました。

@dx-suite-builder Build a squat-counting fitness mini-game using yolo26n-pose from scratch inside the directory "dx-agent-dev-showcase/my-squat-fitness".

Constraints & Requirements:
1. Fresh Generation: Do not reuse existing files. Generate all source files, modules, and tests from scratch.
2. Target Environment: Target is Raspberry Pi 5 with DX-M1, but current host is WSL without DX-RT. Bypass local DX-RT sanity checks.
3. Architecture & Logic:
   - Calculate joint angles (hip, knee, ankle) from yolo26-pose keypoints.
   - Implement an FSM (STANDING, DESCENDING, BOTTOM/GOOD, ASCENDING, COUNT).
   - Keep core geometric and FSM logic pure Python without NPU runtime dependencies.
4. Rich HUD UI (Arcade Fitness Style):
   - Semi-transparent dark arcade dashboard overlay.
   - Large COUNT display and animated popups (DOWN!, UP!, GOOD REP!).
   - Dynamic red/yellow/green depth gauge.
   - Color-coded skeleton with neon-green active leg highlighting.
5. Deliverables:
   - squat_logic.py, test_squat_logic.py, yolo26n_pose_squat_sync.py, run.sh
6. Verification: Execute `python3 -m unittest test_squat_logic.py` locally and ensure it passes.

生成結果:8件の単体テストと全検証をパス!

約6分後、Copilotが自律的にテストコードの作成、実行、ロジック修正を繰り返し、以下の出力とともに完了しました。

▲ 生成完了時のターミナル出力。終了シグナル [DX-AGENT-DEV: DONE] が確認できます。

  • Updated: yolo26n_pose_squat_sync.py(半透明ダッシュボード、深度ゲージ、ポップアップ演出、ネオングリーン強調骨格)
  • Validation passed:
    • 8 tests passed(角度計算・FSM遷移の単体テスト)
    • Python syntax: PASS
    • Shell syntax: PASS
    • JSON config: PASS

ローカルのWSL環境でも、幾何計算やFSM状態管理の単体テストがすべてクリアされた状態でファイル一式が完成しました。

ステップ4:Raspberry Pi 5(実機DX-M1)へデプロイして動かす

完成したコードをラズパイ5へ転送し、NPU推論を実行します。

1. コードの転送(WSL側から実行)

scp -r ~/dx-all-suite/dx-agent-dev-showcase/my-squat-fitness \
    <ラズパイのユーザー名>@<ラズパイのIPアドレス>:~/dx-all-suite/dx-agent-dev-showcase/

2. ラズパイ5側での実行

cd ~/dx-all-suite/dx-agent-dev-showcase/my-squat-fitness

# DX-M1 NPUで推論実行(サンプル動画を処理して動画保存)
python3 yolo26n_pose_squat_sync.py \
    --model /path/to/yolo26n-pose.dxnn \
    --video sample/squat_demo.mp4 \
    --no-display \
    --save output_arcade_hud.mp4

実機デモ動画:Raspberry Pi 5 + DX-M1での動作結果

以下が、実際にRaspberry Pi 5とDX-M1 NPU上で推論を行い、Copilotが生成したアーケード風HUDを描画したデモ動画です。

※検証用映像にはDEEPX公式Showcase同梱のサンプル動画(AI生成映像)を使用しています。

デモ動画の注目ポイント

  • 半透明のダッシュボードとネオングリーン骨格:人物の骨格追跡に加え、負荷がかかる脚部が強調表示されています。
  • ダイナミックな深度ゲージ:膝・腰の屈曲角度に合わせてゲージがリアルタイムに伸縮し、十分な深さに達すると「GOOD REP!」のポップアップが出現します。
  • DX-M1による軽快なNPU推論:Raspberry Pi 5単体では重いPose推定モデル(YOLO pose)も、DX-M1アクセラレータによりスムーズに推論処理が行われています。

まとめ:使ってみて分かったエージェント駆動開発の強み

  1. 環境依存を切り離す設計力プロンプトで意図を伝えることで、NPU実機に依存する「推論部」と、CPUで検証可能な「ロジック・HUD描画部」を綺麗に分離して実装してくれます。
  2. 無料枠のAIツールでも十分実用的専用の有償エージェント環境を用意しなくても、日常的に使っているVS Codeと無料のGitHub CopilotでDEEPXの独自ルールに沿ったコード生成が完走しました。
  3. 具体的なUI要件を渡すほどリッチになる「アーケード風」「半透明」「カラーゲージ」といった具体的なキーワードを指定することで、OpenCVの透過ブレンド等を駆使した完成度の高いデモ画面が一発で生成されます。

エッジAIデバイス向けのアプリ開発において、プロトタイピングの工数を劇的に圧縮できる強力な仕組みだと実感しました。DX-M1にご興味持って頂けた皆様、是非弊社までお問い合わせください!