地元の LLM にビデオ ドアホンの制御を任せました。これはおそらくスマート カメラの未来です

in tech

一部の Ring ドアホンは AI 機能を使用して、不在時に訪問者と対話できます。私は Ring ドアベルを捨てて、完全にローカルで実行される Reolink ドアベルを購入しましたが、ローカル LLM を使用して同様の機能を再現できないか疑問に思いました。部分的には成功しました。

ドアホンにやってほしかったこと

AIを活用したコンシェルジュ

女性と男性が使用中のドアベルを鳴らします。 クレジット: リング

この考えはかなりもっともらしいと思われた。誰かがドアホンを鳴らしてホーム アシスタントが誰も家にいないことを検出すると、ドアホンは発信者に全員が外出していることを説明し、名前と電話の理由を尋ねます。次に、応答を聞き、その内容を処理し、それに応じて応答する必要があります。

クラウドベースの LLM を使用すれば、これは現実的な目標と思われます。テキストから音声への変換、および音声からテキストへの変換は、クラウドベースのサービスを使用することで非常に簡単に行うことができます。 LLM は中央に位置し、発信者の発言を入力として受け取り、ドアホンが話す応答を生成します。

ローカル LLM でこれを行うのはより困難であることはわかっていました。私の比較的弱いハードウェアでは小規模なモデルしか実行できず、これらのモデルは仕事に耐えられない可能性があります。すべてをローカルで実行できるかどうかを試してみる価値があると考えました。

Reolink Wi-Fi ビデオドアホン。

解決

2K

電源

バッテリー

Reolink のバッテリー駆動の Wi-Fi ビデオ ドアベルは、誰が外にいるかを知るのに最適な方法です。 2K 解像度と 150°x150° の頭からつま先までのビューを備えたこのビデオ ドアベルは、既存のセットアップに応じてバッテリーまたは有線で電源を供給できます。


設定方法

TTS アウト、ウィスパー イン、オラマが真ん中

これを機能させるために必要な主要なコンポーネントは 3 つありました。ドアホンが発信者に声を出して話せるように、テキストを音声に変換 (TTS) する方法が必要でした。発信者の発言をすべて文字テキストに変換して LLM に渡すことができるように、音声をテキストに変換 (STT) する方法が必要でした。そして、操作全体の頭脳となるローカル LLM を実行する方法が必要でした。

ありがたいことに、ホーム アシスタントには、これらのコンポーネントごとに優れたオプションがいくつかあります。 Piper はローカル TTS エンジンで、書かれたテキストを音声に変換し、ドアホンから再生できます。完全にローカルで実行され、Raspberry Pi 4 上で実行できるほど軽量です。

ホーム アシスタントからの、iPhone 上の誰かが玄関にいるという不気味な通知。

AI を使用してホーム アシスタントを使用して玄関に誰がいるかを説明する方法

ビデオドアホンが検出した人物について AI が生成した説明を取得します。

Whisper は、同等のローカル STT コンポーネントを提供します。発信者が話しているときにドアホンによって録音された音声を取得し、それをローカル LLM に渡すことができるテキストに変換できます。繰り返しになりますが、完全にローカルで実行されます。これがこのプロジェクトの私の目標でした。

パズルの最後のピースはオラマです。これは、ローカルの大規模言語モデルを独自のハードウェア上で実行できるようにするツールです。 Ollama を Home Assistant に接続するために使用できる Home Assistant の統合があります。

ボトルネックは、実行する LLM モデルの機能です。弱いハードウェアでは、より小型で機能の低いモデルしか実行できず、実行しようとするモデルが大きくなるほど、応答が遅くなる可能性があります。応答の生成に時間がかかりすぎないように、かなり小さなモデルを使用する必要がありました。

現実は私の希望と一致しませんでした

コンセプトは良いが、実行は良くない

雨の中の Reolink ビデオドアホン。 クレジット: レオリンク

すべてをセットアップするのに時間がかかりました。ホーム アシスタントの場合はいつものように、大変な作業のほとんどは他の人たちが行っていました。 Reolink ドアベルを介してオーディオと TTS を再生する方法を説明した便利な GitHub Gist があり、非常に役に立ちました。

ドアホンからの音声による挨拶がまだ再生されている間に音声キャプチャが開始されるという問題が発生し、状況が台無しになりましたが、最終的にはそれを回避する方法を見つけました。

私のアイデアの最初の部分はうまくいきました。ドアベルが押されると、LLM は音声による挨拶を生成し、ドアベルのスピーカーから再生します。全員が外出中であることを説明し、発信者に名前と電話の目的を尋ねます。

その後、ドアホンが音声応答を録音し、STT がそれをテキストに変換します。ここまでは順調ですね。

問題は、AI を搭載したドアホンと双方向の会話を試みても機能しないことでした。小さな LLM は混乱してナンセンスなことを話し始め、応答が返ってくるまでに時間がかかりすぎます。

このコンセプトは、十分に強力な LLM がショーを実行することでさらにうまく機能する可能性があります。しかし、宝くじに当たるまでは、自分が持っているものに固執します。

実行可能な代替案を構築しました

実はかなりしっかりした設定なんです

ビデオ ドアホンに残されたメッセージを転送する通知。

主な問題点は発信者と会話しようとすることであったため、プロセスのその部分を単純に切り取りました。代わりに、発信者が名前と電話の理由を伝えると、STT がこれをテキストに変換し、そのテキストが通知として私の電話に送信されます。その後、ドアホンはメッセージを伝えると告げ、会話を終了します。

つまり、外出中に誰かがドアベルを鳴らすたびに、それが誰で、なぜ電話をかけてきたのかを知らせる通知が届くということです。ほとんどの場合はそれなりにうまく機能しますが、問題が発生した場合には、時折少し陽気な通知が表示されます。ただし、ほとんどの場合、これは本当に便利な機能です。


これが世界が向かっている方向です

現在のトレンドはあらゆるものにAIが導入されており、その勢いがすぐに衰えることはなさそうです。 Ring の AI を活用したコンシェルジュは便利ですが、プライバシーに関してはあまり評判が良くありません。良いニュースは、少しの努力でこれらの機能の少なくとも一部を完全にローカルで再作成できることです。

このテーマについてさらに詳しく知りたい方は以下をご覧ください

完全ガイドはこちら

関連記事

前の投稿
これにより、あなたが VPN を使用していることがわかります
次の投稿
Android スマートフォンを root 化せずに、バッテリーを消耗するアプリをフリーズします