All posts

自宅AIサーバーの日常の使い道とAIに管理を任せて分かったこと

ローカルAIで開発するためになんとなくロマンで買ったサーバー(MiniPC)なんですが、今のところはその用途以外のところでも結構役に立っていてなんだかモヤっています。

例えば、各機器のスピーカー出力をネットワーク経由でサーバーに集めて、そこにつないだスピーカーから音を出すようにしたり、日々のマインドログを貯めるためのハブとしても利用していたりします。

そんなローカルAIサーバーですが、作成段階からChatGPTに構成から実装まで行ってもらい、都度資料にまとめてもらって、機能を足したり更新したりするのもChatGPTに相談したり、変更してもらったりしています。今回は普段どんなことに使っているのかと、管理をほぼAIに任せてみて気づいたことを書いてみたいと思います。

音声入力を自前で動かせるのは結構助かる

AIでの開発について調べていると、音声入力をおすすめするYouTuberの方をよく見かけるんですよね。キーボードで打つより、話して指示した方が作業がはかどるという話です。

私もそれに感化された口で、音声入力を導入しようかなと考えたんですが、検討していたサービスはサブスクリプションだったことと、クラウドに音声を送ることが少し気になっていました。そもそもお金もかかるしね。

そこでたまたま、音声入力をするアプリケーションをAIで自作してみようというYouTubeの企画を見ました。これなら自分でもできるんじゃないかと思ったのが、導入のきっかけの一つです。最初は古いゲーミングPCにWhisperを導入し、音声入力を動かしていました。

ローカルAI用のサーバを買ったので、せっかくなら音声入力機能をローカルAIサーバーに移行させようということで、Qwen3-ASR-1.7B-JAを常駐させています。このモデル実は旧環境では動かすこと仕様上無理で、泣く泣くあきらめたモデルなんですね。なので、実装できると知った時にかなり喜んだのを覚えています(笑)自分が使う日本語特有の単語なんかもよく認識してくれるので、かなり満足しています。ローカル環境で動かしているのでもちろん、音声入力のためのサブスクへ入らなくていいのも助かりますね。

メインPCを止めるとスピーカーが使いにくかった

私は家に複数台PCを置いているのですが、以前からスピーカー出力をまとめたいなと思っていたんです。

なので、以前はSound Blaster X5をメインPCに接続し、各機器のスピーカー出力をX5へ集約して、そこにつないだスピーカーから再生していました。サブPCやNintendo Switch 2のスピーカー出力もまとめていたのですが、メインPCを停止するとスピーカーから音が出なくなるのが困りごとでした。サブPCはノートPCなので実は常時起動していたりするので、メインPCを立ち上げたくないときはサブPCで動画見たり調べものしたりしてたんですよね

なので苦肉の策で、メインPCにつないだ給電できるUSBハブを経由してX5を接続し、PCを止めてもX5には電源が来るようにしてみました。これでメインPCが動いていなくても、X5のミキサー機能は使えるようになってこれはいいぞ!となったわけです。

ただ、この方法にも欠点がありました。その環境では、メインPCを止めるとX5が一時的に休止状態に入ったようになって音が出なくなり、X5を再起動すると再び音が出る、なんとも珍妙な動きになっていたんです。何とか使えていたのでとりあえず我慢して、毎回のこの操作が必要なのは不便を承知で、日々だましだまし使っていたという感じです。

そんな中、ひょんなことからホームスピーカーの導入を考え、各機器のスピーカー出力をサーバーへ集約する仕組みがないか、ChatGPTへ相談しました。その時布団に入りながら寝ぼけた状態でChatGPT Liveで適当に相談していたんですが、そこで教えてもらったのが、「Voicemeeter」を使ってPCのスピーカー出力をネットワーク経由で送る方法でした。ChatGPT Liveの機能をその時すごいと実感しました。

サーバーに集めるようにしたらPCを増やすのも楽になった

今は、Windows PC側のVoicemeeterから、VBANという仕組みを使ってスピーカー出力をネットワーク経由でサーバーへ送っています。サーバー側では受信用ソフトとPipeWireで各PCのスピーカー出力をミキシングし、サーバーへUSB接続したSound Blaster X5を通して、接続先のスピーカーから再生しています。

構成としては「各Windows PCのスピーカー出力(Voicemeeter) → ネットワーク → サーバーで受信・ミキシング → X5 → スピーカー」という流れです。現在は2台のWindows PCのスピーカー出力をこの経路でサーバーに集約しています。

こうしてからは、メインPCを止めたときにスピーカー出力が不安定になる問題がなくなりました。メインPCが動いているかどうかを気にしなくてよくなったのはかなり大きいですね。

新しくPCを追加しても、この仕組みに組み込めばいいので楽になりました。スピーカー出力を集める先が決まっていると、自分でも扱いやすいんですよね。そもそも家で一人で使うPCを何台も持っているのがおかしいというツッコミがきそうで怖いですが・・・(笑)

AIに何かを作ってもらう方はまだ試行錯誤していますが、このスピーカー出力の集約は常時動いているサーバーがあってよかったなと思う使い方です。

作った構成は資料にも残してもらっている

いろいろ機能を足していると、今どういう構成になっているのかも残しておきたくなります。ChatGPTに構築や変更をしてもらったあとは、そのままサーバーの状態や入れたものをまとめてもらって、Markdownの資料にしています。機能を追加したいときも、新しいモデルを試したいときも、それを見てもらえば話を進めやすいので、これはやっておいてよかったですね。

会話の中にしか残っていないと、チャットを変えたときにまた説明することになります。資料があれば、今の環境を見てもらいながら続きを相談できます。

ただし、構成を変えたら、その場で資料も更新してもらう必要があります。それを怠ると、AIと会話していて「なんか話がずれるな」と感じることがあるので、そこは押さえておこうと思っています。

ただですね。注意点があって何でもかんでも資料を作らせると結構無秩序にファイルやらフォルダやら作り始めるので、なるべくこちらからフォルダの作り方、ファイルのまとめ方は指示しておいた方がよいと感じています。後からプロジェクトフォルダ見たらファイルの多さに仰天しますからね。

管理はほぼAI任せ、でも見るところはちゃんと見る

更新やセキュリティパッチなどの管理は、今はほとんどAIに任せています。資料を見て調べてもらって、必要な作業を進めてもらう感じです。

ここで使っているのはChatGPT側のパソコン操作の機能です。構築や管理はこちらに頼んでいて、ローカルLLMのモデル導入や普段の管理まで基本的には自動化して任せています。

と言っても、基本的に作業都度成果物などは確認して、なるべく変な実装していないか確認しています。前にあったのが、先ほどの音声入力の環境を構築した時に、待機中もCPUの1コア分ぐらいを使い続ける既知の問題があったんですが、これをかなりの重大な問題だととらえて、様々な検証やら回避方法を実行しようとしていたので、そこで私が割って入って、その問題はとりあえず、そんなに影響デカくないしパッチが出てからでも遅くはないんだから棚上げしておいてよと指示したりもしました。

その後、もともと困っていない問題だったので、一旦パッチを待とうと思っていたんですが、定期的にパッチを確認してもらったときに、ここぞとばかりにAIが毎回この話を持ってきて、まだパッチは出てないから構成を変えたり回避する策を考えます!ってドヤ顔で言ってきたので、もうパッチ出るまで待っててよと再度止めに入ることで次からは何も言ってこなくなりました。

管理を任せて思うことは、結構エンタープライズレベルのものを個人管理のものに適用して、考えて考え抜いた結果、レートリミットで何もできなくなるという、こういう状態が起きやすいなと感じました。

問題だけでなくどうしてほしいかも書いておきたい

この問題は運用資料に注意事項として書いてもらっていたんですが、「パッチが出るまで待ちたい」「今は迂回策を調べなくていい」というところまではしっかりと資料に明記しなかったことが原因だと思っています。

なので、最近はめんどくさいというか使用量の無駄遣いを承知で、プロジェクトフォルダ内に生成されたフォルダやファイルを賢いモデルに全部見てもらって、記載内容の整理や不要な記載を削除、課題として微妙なところに書いているところを課題管理資料にしっかり明記させるみたいな、人間がやってるプロジェクト管理みたいなことをそのままやらせている感じがあって、こういうとことはまだまだ弱いんだなと痛感しました。

よく巷で言われている人間に残された仕事はAIの成果物を正しくチェックするということにもつながっているようにも感じています。

サーバー管理を任せるけど、自分でもちゃんとコントロールしていく。そんな単純なことに気づかされたという話でした。

いろいろ試せるサーバーが一台あるのはやっぱり面白い

インフラエンジニアをやっているのもあって、常時動いているサーバーが一台あると、いろいろ試せるのが面白いんですよね。使いたいソフトを自分で入れて、構成を変えながら試せるのは結構楽しいです。

今後はサブスクで使っているものも、一部はOSSで置き換えられないかなと思っています。実際にどれぐらい契約や費用を減らせるかは、まだこれからですが。

OSSのカスタマイズなんかもAIに頼んでみたら楽しそうだなと思ってたりもします。

AIサーバーとして十分に役立っているかは、まだ何とも言えないところでが、それでもスピーカー出力をまとめて使いやすくしたり、自分でいろいろ試せたりするので、買ってよかったと思うところはあります。

ローカルAIでやりたいことも試しつつ、家で便利に使えることも少しずつ増やしていけたらいいなと思っています。

購入時に何を比較したかは「RyzenのローカルAIサーバーを買った理由と使って分かった難しさ」、チャットや資料を分ける考え方は「AIとの開発で一番変えたことは一つのチャットで作り続けないことだった」で紹介していますので気になったら見てみてください。

Discussion

No comments yet