Show HN: ローカル車載AIとしてQwenを使ったRaspberry Piを作成しました

2026/08/26 0:20

Show HN: ローカル車載AIとしてQwenを使ったRaspberry Piを作成しました

RSS: https://news.ycombinator.com/rss

要約

Japanese Translation:

以下の改善版は、すべての技術仕様、アーキテクチャフロー、およびインストール詳細を取り入れながら明瞭さを維持しています:

サマリー(改善版)

CarWatch は、アクティブなインターネット接続を必要とせず、ローカルダイヤアウトトンネルを使用して NAT 障壁を突破して機能するように設計された、Raspberry Pi 5 で実行される完全オフライン AI 自動車エージェントです。Qwen3.6-35B-A3B モデルをローカルで実行し(14.3 GB の VRAM で約 3.5 トークン/秒の処理速度)、SD カードに格納されている 745 ページのオーナーズマニュアル上で辞書的 RAG を採用することで、引用付きで正確な応答を実現します。システムは、エネルギーベースの VAD と

whisper.cpp
を使用した連続的なハンズフリー音声入力を特徴とし、クラウド STT や起動語を必要としないようになっています。ライブテレメトリ(温度、スロットリング、メモリ)を監視し、ブート時に自己起動する systemd サービスによって管理されることで、「自己認識」を実現しています。実際の車部品を組み合わせて構築されており、WOLFBOX G900 ダッシュカム(プローブモード)、ELM327 OBD ツール(DoIP 読み取りが検証済み)を含むため、グループマインドルームへの参加を
@gle
ハンドルを使用してプライベート AI アシスタントとして展開準備完了です。アクティブ冷却および別々の電源供給を必要とします。

元のサマリー: CarWatch は、Raspberry Pi 5 上で実行される完全オフラインのチャットエージェントにより、車載 AI を革新します。アクティブなインターネット接続は不要で、Qwen3.6-35B という大規模言語モデルをローカルで実行することで会話を安全に処理し、Retrieval-Augmented Generation (RAG) を使用してローカルのオーナーズマニュアルから質問に答えます。RAG は関連するコンテキストを取得することで、正確で引用付きの応答を確保します。「自己認識」を維持するため、ライブハードウェアテレメトリを監視し、ブートアップ時や更新中も稼働するように systemd によるサービス管理を行います。ガレージ内など一般的な接続問題を解決するために、CarWatch は専門的なダイヤアウトトンネルを使用してネットワーク障壁(NAT)を突破し、外部 Wi-Fi がなくても到達可能に保たれます。WOLFBOX G900 ダッシュカムや ELM327 エンジン診断ツールなどの実際の車部品を使用しており、プロジェクトは現在 DoIP による基本的なエンジンデータ読み取りが検証済みです。このアーキテクチャにより、プライバシーを重視する企業がクラウドサーバーに依存せず、既存ハードウェアから直接インテリジェントなアシスタンスを提供するハンズフリーで自己更新可能な自動車エージェントを展開できるようになります。

本文

オフライン完結の「車内チャットルームエージェント」:CarWatch(カーウォッチ)

Raspberry Pi 5 を車載化し、ローカル環境で 35B パラメータ規模の AI モデルを実行。あなたの GroupMind ルームに

@gle
(またはお好みの名称)として参加し、他のエージェント同様にお知らせを送信します。

  • 投稿範囲: 出発・到着、旅路の要約、事故時のダッシュカム映像など、あらゆる情報の投稿が可能。
  • 承認と返信: CodeWatch を通じたスマートフォンやウォッチから遠隔操作できます。
  • 表示位置: Open PR は CodeWatch のダッシュボード上で、ClawWatch や WhereWatch と並んで表示されます。
  • 動作環境: 実在のハードウェア(Raspberry Pi 5、16 GB RAM)で動作し、約 300 ユーロのコストです。

🧠 AI モデル構成

使用しているモデルは Qwen3.6-35B-A3B です。

  • メモリアプリケーション: Unsloth の UD-Q3_K_S ダイナミッククォンタ化を使用(メモリ使用量:14.3 GB)。
  • 処理速度:
    • 生成速度:約 3.5 トークン/秒
    • プロンプト処理:25+ トークン/秒
  • 熱設計: 動作温度は最大 65°Cまで持続可能。
  • 独立性: クラウド接続、インターネット接続、サブスクリプションのいずれも不要。

📖 車載マニュアルに基づく回答(RAG)

SD カードに搭載された「745 ページの車輌所有マニュアル」を独自の RAG(レクシカル・検索)エンジンで参照します。

  • 出典付き回答: 回答には必ずページ番号付きの出典を示します。
  • 拒否ポリシー: マニュアルに記載のない事項については、明確に「記載されていないため回答できません」と拒否します。

🔬 根拠のある自己知識(Self-Knowledge)

各質問に対して、機器からライブで読み取る状態情報を基盤とした回答が可能です。

  • 監視対象: 温度、スロットリング制御、ファン回転数、メモリ使用量、ディスク空き容量、ネットワーク状況、ロードされている AI モデルなど。
  • 根拠のない断言禁止: 「感知できないこと」は「感知できない」と即座に宣言します。
  • システムプロンプト設計: 未知の情報は事実として沈黙して読み込まれることがないよう設計されています。

🎙️ ハンドフリーボイス(音声対話)

エネルギーに基づく VAD(音声活動検出)→ Whisper.cpp の処理をすべて Raspberry Pi 上で完結させ、常に待機しています。

  • 起動不要: 「起動コマンド」の儀式も不要です。
  • クラウド STT 非使用: クラウドによる音声認識(STT)を使用しません。
  • 処理フロー: 話しかけるだけで発言を拾い、「根拠のあるパイプライン」を通じて処理し、ルームに回答を送ります。

📡 自律運用・保守管理

  • 自動起動:
    systemd
    サービスが起動時に自動的にスタック全体(モデルサーバー、ルームエージェント、音声リスナー、スマホダッシュボード、エンジンモニターなど)を立ち上げます。
  • リモートメンテナンス:
    • リポジトリから自動でアップデートを取得(1 時間ごと+ダッシュボードの「今すぐ更新」ボタン)。
    • 電話機ホットスポットの NAT の背後からもトンネルを確立しアクセス可能です。「車内にラップトップを持って行く」作業は不要になります。
  • 3 レイヤの接続性:
    1. 電話機ホットスポット
    2. 自宅 WiFi
    3. 車自身が提供するフォールバックアクセスポイント これらにより、信号がゼロのガレージ内でもいつでもアクセス可能です。

開発ログ: 試行錯誤の行き詰まりも含めたすべてが

docs/plan.md
に記録されています。

🌐 エコシステムとアーキテクチャ

この一族はすべて

thinkoff.io
で公開されています。

  • CodeWatch: 手首上のエージェント(ソース:codewatch-cli)。「車を監視する」CarWatch と兄弟プロジェクトです。
  • ClawWatch: 手首上の健康監視機能。

📐 システムアーキテクチャ図

flowchart LR
    subgraph car [車内環境 - Raspberry Pi 5]
        MIC[USB マイク] --> LISTEN[carwatch-listen<br/>VAD + whisper.cpp]
        LISTEN --> BRAIN[llama.cpp サーバー<br/>Qwen3.6-35B-A3B]
        MANUAL[(所有者マニュアル RAG<br/>745 ページ、SD カード搭載)] --> BRAIN
        STATE[selfstate<br/>温度 / ファン / ネットワーク / モデル] --> BRAIN
        OBD[carwatch-obd<br/>OBD ケーブル監視] --> AGENT
        BRAIN --> AGENT[carwatch-agent<br/>@gle ルームエージェント]
        DASH[Web ダッシュボード :8088<br/>ステータス / 更新 / ボイス / WiFi]
        UPD[self-アップデート<br/>1 時間ごとの git pull] -.updates.-> car
        REACH[dial-out トンネル<br/>NAT 背後からのアクセス可能化]
    end
    AGENT <-->|投稿 / メンション | GM[GroupMind ルーム]
    GM <--> PHONE[あなたのスマホ / ウォッチ<br/>CodeWatch]
    DASH <-->|同一 WiFi | PHONE

🔄 ローカル処理 vs オンライン処理:戦略

「ローカル処理」が製品の本質であり、「オンライン処理」はそれを補完する要素です。ガレージ、トンネル、無電波地域などゼロ接続環境でも十分に機能しなければなりません。

✅ 常時ローカル(信号なしでも動作)

  • 音声入力と AI モデルによる回答
  • SD カード搭載マニュアルからの回答(RAG)
  • 車自身から提供されるスマホダッシュボード(ステータス表示、WiFi 切り替え、ボイストグル、更新ボタン)
  • 旅路・状態追跡

⏳ 接続切れ時のキューイング

  • ルームへの投稿、映像のアップロード、返信などは失われません。
  • outbox(送信中待機リスト) に溜め込まれ、接続が回復した後で配信されます。

☁️ オンライン専用機能

遠隔アクセス可能性(dial-out トンネル)、自己アップデート、高度な AI へのエスカレーションは以下の順序で行われます。

  1. まず車載ローカル LAN 上のモデルサーバーへリクエストを送る(クラウド不使用)。
  2. 次に、オンライン接続が確立され、かつ明示的に「クラウド利用」を求められた場合のみ、車の予算制限付きキーを使ってクラウド AI にアクセスします。

鉄則: 安全に関わる情報は決してネットワークに依存しません。社会的な機能や負荷の高い処理は、状況に応じて優雅に退化(デグレード)します。

📋 ステータス:実証済み・開発中・計画済み

車には路面と接する 4 つの接触点(タイヤ)しかありません。そこだけが現実に触れ合う場所です。「その 4 つの点について、それぞれの原則」を守ります。

  • 感知できることだけを主張せよ。
  • 検証できたことだけを断言せよ。
  • 中間的な状態は大声でラベル付けせよ。
  • 失敗はありのままに報告せよ(銀色の縁取りは付けない)。

🛡️ 「誠実性ポリシー」

機能は「実証済み(Proven)」とみなされるには、実際の車両上で動作させたことが必要です。

  • 構築・テスト済み(Built + Tested): コードがシミュレータに対してエンドツーンドで動作することを指し、物理的な車両との接触はまだ含まれません。
機能ステータス
@gle
ルームエージェント(対応、回答、ハートビート)
実証済み(毎日の運用中)
所有者マニュアルからの RAG(ページ出典付き)実証済み
スマホダッシュボード(ステータス、WiFi、更新ボタン等)実証済み
ハンドフリーボイス(VAD リスナー → Whisper → 回答配信)実証済み(Pi 上で実際の音声変換完了)
自己アップデート(1 時間タイマー+ダッシュボードボタン)実証済み
NAT 背後からの遠隔アクセス可能性(cloudflared 速いトンネル)実証済み(インターネット経由到達可能)
DoIP/ENET を通じた OBD エンジン情報読み取り構築・テスト済みのみ(架空ゲートウェイとのテスト:
tests/fake_gateway.py
。実際の車両検証は次回のドライブで実施)
ダッシュカム映像のカプセル抽出(WOLFBOX G900, hisnet CGI API)探索完了、パイプライン接続待ち
MBUX ドアシューボードのレンダリング、ミラーアイコンストリップ計画済み

🔧 ハードウェア(参考構成)

  • 計算機: Raspberry Pi 5(16 GB RAM)。アクティブクーリング必須(SoC は冷却なしでスロットリングします)。
  • 音声入力: USB マイク(ボイス用:クラス準拠のどれでも可)。
  • ダッシュカム: WOLFBOX G900 3 チャンネル(WiFi AP 機能。CarWatch がここからイベント映像を収集)。
  • OBD アクセス: イーサネットから OBD への変換ケーブル(DoIP/ENET)——サポートは実装済み。フォールバック手段として標準的な ELM327 クラスアダプターも使用可能。
  • 電源:
    • ダッシュカムのハードワイヤリングキットがカメラを電力供給。
    • Raspberry Pi は別途5V/5A の USB-C 電源が必要(12V PD アダプターを使用、または車の 230V ソケット+壁面電源ユニット)。

🚀 インストール(Pi 上)

以下の手順でインストールします。

git clone https://github.com/ThinkOffApp/CarWatch.git
cd CarWatch
./install.sh

⚙️ 設定と認証

インストール後、認証情報を

/etc/carwatch/config.json
に設定してください(リポジトリには含めないでください——
config.example.json
を参照)。

その後、サービスを有効化して起動します:

sudo systemctl enable --now carwatch

♻️ 自己アップデート機能

これ以降、車は自分自身を最新の状態に保ちます。

  • 自動更新:
    update.sh
    がこのリポジトリのメインブランチをプルし、新しい systemd ユニットをインストール、サービスを再起動します(起動時タイマー実行)。
  • 手動ダッシュボード更新: Web ダッシュボードボタンから実行可能。
  • CLI からの手動実行:
curl -sSL https://raw.githubusercontent.com/ThinkOffApp/CarWatch/main/update.sh | bash

📝 設定項目詳細

config.example.json
をコピーして
/etc/carwatch/config.json
に保存します。

  • api_base
    : あなたの GroupMind サーバー URL(例:
    https://groupmind.one
  • api_key
    : エージェント用の API キー(車を新規作成し、他のエージェントのキーを再利用しないこと。コミットしないこと)
  • room
    : 車が発信するルームスラグ
  • handle
    : 車の表示ハンドル名(例:
    @gle
  • home_ssids
    : 「自宅に駐車中」とみなされる WiFi ネットワーク名リスト
  • wolfbox
    : ダッシュカムの AP 名・パスワード、ポーリング間隔

🔍 WOLFBOX のベンチデイ・プローブテスト

WOLFBOX の HTTP API は公式ドキュメント化されていません。したがって

carwatch-probe
が発見プロセスを担います。

python3 -m carwatch.wolfbox --probe

手順:

  1. 最初に Pi をダッシュカムの WiFi AP に接続してください。
  2. プロブが既知のファームウェアエンドポイントパターンを巡回し、返ってくる回答を出力します。
  3. これにより、カメラ固有の実在パスで
    wolfbox.py
    の TODO を埋めていきます。

📜 ライセンス

  • ライセンス: AGPL-3.0(ClawWatch と同じ)
  • 著作権: (C) 2026 ThinkOff / Petrus Pennanen

同じ日のほかのニュース

一覧に戻る →

2026/08/26 6:39

Python の事前宣言定数は少し奇妙です

## Japanese Translation: Python は 6 つのプリデークレードされた項目を持っています:`True`, `False`, `None`, `__debug__`, `Ellipsis`(`...`), および `NotImplemented`。これらはしばしば「定数」と呼ばれますが、その挙動は大きく異なります。 このうち 4 つ(`True`, `False`, `None`, `__debug__`)は通常の識別子ではなく特別な構文的トークンです。そのため: • `x.True` などの式は `SyntaxError` を発生させます。 • 他の文脈では構文上問題がないにもかかわらず、これらに直接代入または削除を行うことは `SyntaxError` を引き起こします(例:`__debug__ = 67` または `del __debug__`)。 • オブジェクト上の属性経由でのアクセス(例:`obj.__debug__`)は無効ではありませんが、`builtins` 内のエントリを変更する(`getattr`/`setattr` を通じて)ことは、構文的トークンの挙動には影響しません。 対照的に、`Ellipsis` と `NotImplemented` は通常のビルトイン関数に近い動作を示します: • 代入によってグローバルにシャドウ化されることが可能です(例:`NotImplemented = 67`)。 • `builtins` 内の値を変更してもモジュールレベルでの名前には影響しますが、構文的トークン(`...` または `NotImplemented` という識別子)そのものには変更はありません。 さらに、`__debug__` は通常 `True` ですが、Python を `-O` フラグで実行すると `False` になります。これら 6 つの項目を区別する exact な設計理由、特になぜ 4 つだけが構文的トークンとして特別扱いされ、残りの 2 つは通常のビルトインとして扱われるのかは、現在も不明です。

2026/08/25 22:01

Apple、M6 と M5 Ultra を発表する

## Japanese Translation: 8 月 25 日(2026 年)、カリフォルニア州クアパティーノでアップルは、地域のアートフィシャルインテリジェンスを変革することを目的とした革命的なシリコンチップを発表しました。頭部のイノベーションは、Mac mini 向けの新しい **M6 チップ**であり、画期的な **2 ナノメートル製造プロセス**を特徴としています。このチップは、12 コア CPU(2 つのスーパークコア、4 つのパフォーマンスコア、および 6 つのエフィシェンシーコアから構成)、ニューラルアクセラレータを備えた 12 コア GPU、そして最大 32GB の統一メモリを高速で最大 170GB/s の速度でサポートします。 新しい Mac Studio とペア付けられているのは、アップルの最初のクワッドダイアーキテクチャであり、高度なウルトラフュージョン技術を利用した **M5 Ultra**です。これは、最大 36 コアの CPU コアと最大 80 コアの GPU コアで構成され、1.2TB/s の帯域幅で驚くべき 512GB の統一メモリをサポートする大規模なスケーラビリティを提供します。M5 Ultra は、AI における M3 Ultra に比べて最大 4.5 倍のパーク GPU コンピューティングを提供するため、大きなパフォーマンスの向上が期待されます。両方のチップは、高解像度のビデオ編集や複雑なエージェントワークフローを可能にする先進的なグラフィック機能を備えており、第 3 世代レイトレーシングとハードウェア加速メッシュシェーディングが含まれています。 これらのアップグレードにより、「Apple Intelligence」(2026 年秋の macOS 27 で、Apple Beta Software プログラムを通じて利用可能)がユーザーデバイスの上で完全に動作し、数百億パラメータを持つ最先端 AI モデルをクラウドサーバーに依存せずにホストできるようになります。新しい開発者フレームワークにより、Xcode や Core ML のようなツールを使用して大規模言語モデルのローカルでの微調整が可能となり、英語、中国語、日本語、韓国語を含む複数の言語で利用できる強力なプライバシー重視のオンデバイス AI 計算への決定的なシフトを示しています。

2026/08/25 23:06

OpenAI Jalapeño:Nvidia Blackwell より優れている

## Japanese Translation: OpenAI は、Broadcom との協力による約 16 ヶ月の開発(2024 年中盤から開始)を経て、「Jalapeño」という推論専用の ASIC を発表しました。LLM の推論のためにゼロから設計された Jalapeño は、過剰な特殊化ではなく極限までのハードウェア・ソフトウェアのコデザインと一般化に依存しており、推定的デコードや特定のワークロード調整を必要とせず、あらゆるモデル推論シナリオで高い性能を実現しています。 InferenceX スイートを用いた独立したベンチマーク(Hot Chips で実施)により、Jalapeño はトークン毎ワットあたりで Nvidia、AMD、Google のチップを上回ることが確認されました。TSMC の N3P プロセスで作製され、HBM4 メモリを備えるこのチップは、GPU に見られる固定されたレイテンシを排除するために順序変換コアと L1 キャッシュを採用し、MXFP 数値形式およびウェイト定数型シンタリック配列を用いて性能の急激な低下を防いでいます。OpenAI の独自プログラミング言語「Gluon」は、高効率を実現するために直接永続スレッドにマッピングされたハンドチューニング済みカーネルを可能にしています。 システムアーキテクチャは、CPU ホストラック(「Katsu」、AMD EPYC プロセッサ搭載)と ASIC ラック(「Vindaloo」、トレイあたり 16 チップ)から構成されます。この設計により、ハイブリッド銅線/光ネットワークを活用して最大 2,048 ユニットまで柔軟にグローバルなスケールアップが可能です。2025 年 11 月にタプトアウト(A0 ステッピング)され、初版はすぐにデプロイが可能で、タプトアウト直後にスループットの大幅な向上が実現されています。現在ファブ内にある将来の B0 ステッピングでは、効率性が約 25% 向上しており、Nvidia の Rubin チップに比べて優れた消費電力性能を提供します。生産は 2027 年に段階的に増産され、多くの出力は翌年の後半に期待されており、OpenAI パートナーが信頼性データを収集する期間としては 1 月までとされています。